My kernel base version is 3.10.53 and the BSP is made by using yocto project build system. The BSP was working well.
Additionally, I were trying to add USB host 1 for imx6solo custom board.
So, the reference device tree files of sabareauto ware used for usbh1.
And the pins such as USB_H1_DN, USB_H1_DP, USB_H1_VBUS were assigned exactly. But we didn't use USB_H1_PWR and didn't control VBUS pin. The VBUS pin just connected to 5V source.
I think that It was no problem.
Finally, The EHCI host controller was checked in my menuconfig.
I have tried to boot my custom board, but my board seems like not to recognize USB salve device(AX88772A USB-to-Ethernet Adapter).
I think that the following log said some issue of USB related.
.
.
platform usb_h1_vbus.28: Driver reg-fixed-voltage requests probe deferral
platform usb_otg_vbus.29: Driver reg-fixed-voltage requests probe deferral
.
.
.
usbcore: registered new interface driver asix
usbcore: registered new interface driver ax88179_178a
usbcore: registered new interface driver cdc_ether
usbcore: registered new interface driver net1080
usbcore: registered new interface driver cdc_subset
usbcore: registered new interface driver zaurus
usbcore: registered new interface driver cdc_ncm
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-pci: EHCI PCI platform driver
usbcore: registered new interface driver usb-storage
imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517
Could anyone check it and give me some idea to solve?
The below is start-up log.
root@imx6solosabreauto:~#
root@imx6solosabreauto:~# dmesg
Booting Linux on physical CPU 0x0
Linux version 3.10.17-1.0.0_ga+gdac46dc (hansungkim@hansungkim-15N540-RFLGL) (gcc version 4.8.2 (GCC) ) #2 SMP PREEMPT Fri Mar 11 17:59:11 KST 2016
CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: Freescale i.MX6 Quad/DualLite (Device Tree), model: Freescale i.MX6 DualLite/Solo SABRE Automotive Board
Memory policy: ECC disabled, Data cache writealloc
On node 0 totalpages: 32768
free_area_init_node: node 0, pgdat 80c77880, node_mem_map 80ce2000
DMA zone: 256 pages used for memmap
DMA zone: 0 pages reserved
DMA zone: 32768 pages, LIFO batch:7
PERCPU: Embedded 8 pages/cpu @80df7000 s8896 r8192 d15680 u32768
pcpu-alloc: s8896 r8192 d15680 u32768 alloc=8*4096
pcpu-alloc: [0] 0
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 32512
Kernel command line: console=ttymxc3,115200 nosmp arm_freq=800 root=/dev/mtdblock3 rootfstype=jffs2 weim-nor
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 116560k/116560k available, 14512k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0x88800000 - 0xff000000 (1896 MB)
lowmem : 0x80000000 - 0x88000000 ( 128 MB)
pkmap : 0x7fe00000 - 0x80000000 ( 2 MB)
modules : 0x7f000000 - 0x7fe00000 ( 14 MB)
.text : 0x80008000 - 0x80be1b90 (12135 kB)
.init : 0x80be2000 - 0x80c272c0 ( 277 kB)
.data : 0x80c28000 - 0x80c78aa0 ( 323 kB)
.bss : 0x80c78aa0 - 0x80ce1f4c ( 422 kB)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Preemptible hierarchical RCU implementation.
RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
NR_IRQS:16 nr_irqs:16 16
L310 cache controller enabled
l2x0: 16 ways, CACHE_ID 0x410000c8, AUX_CTRL 0x32050000, Cache size: 524288 B
sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms
CPU identified as i.MX6DL, silicon rev 1.1
Console: colour dummy device 80x30
Calibrating delay loop... 1581.05 BogoMIPS (lpj=7905280)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
Initializing cgroup subsys net_prio
CPU: Testing write buffer coherency: ok
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x80604050 - 0x806040a8
Brought up 1 CPUs
SMP: Total of 1 processors activated (1581.05 BogoMIPS).
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
pinctrl core: initialized pinctrl subsystem
regulator-dummy: no parameters
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
Use WDOG1 as reset source
syscon 20c8000.anatop: regmap [mem 0x020c8000-0x020c8fff] registered
vdd1p1: 800 <--> 1375 mV at 1125 mV
vdd3p0: 2800 <--> 3150 mV at 3000 mV
vdd2p5: 2000 <--> 2750 mV at 2425 mV
cpu: 725 <--> 1450 mV at 1150 mV
vddpu: 725 <--> 1450 mV
vddsoc: 725 <--> 1450 mV at 1200 mV
syscon 20e0000.iomuxc-gpr: regmap [mem 0x020e0000-0x020e0037] registered
syscon 21bc000.ocotp-ctrl: regmap [mem 0x021bc000-0x021bffff] registered
hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 4 bytes.
imx6dl-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver
bio: create slab <bio-0> at 0
mxs-dma 110000.dma-apbh: initialized
cs42888_supply: 3300 mV
vio1: 3300 mV
vio2: 3300 mV
vd: 3300 mV
va: 5000 mV
platform usb_h1_vbus.28: Driver reg-fixed-voltage requests probe deferral
platform usb_otg_vbus.29: Driver reg-fixed-voltage requests probe deferral
3P3V: 3300 mV
i2c-core: driver [max17135] using legacy suspend method
i2c-core: driver [max17135] using legacy resume method
SCSI subsystem initialized
libata version 3.00 loaded.
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Linux video capture interface: v2.00
pps_core: LinuxPPS API ver. 1 registered
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
PTP clock support registered
imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
MIPI CSI2 driver module loaded
Advanced Linux Sound Architecture Driver Initialized.
Switching to clocksource mxc_timer1
NET: Registered protocol family 2
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP: reno registered
UDP hash table entries: 256 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
PCI: CLS 0 bytes, default 64
hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available
pureg-dummy: no parameters
Bus freq driver module loaded
VFS: Disk quotas dquot_6.5.2
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
NFS: Registering the id_resolver key type
Key type id_resolver registered
Key type id_legacy registered
jffs2: version 2.2. (NAND) �© 2001-2006 Red Hat, Inc.
fuse init (API version 7.22)
msgmni has been set to 227
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
imx-weim 21b8000.weim: WEIM driver registered.
MIPI DSI driver module loaded
mxc_sdc_fb fb.20: register mxc display driver ldb
mxc_sdc_fb fb.20: NO mxc display driver found!
mxc_sdc_fb fb.21: register mxc display driver hdmi
mxc_sdc_fb fb.21: NO mxc display driver found!
imx_epdc_fb 20f4000.epdc: can't get/select pinctrl
platform hannstar_cabc.18: Driver hannstar-cabc requests probe deferral
imx-sdma 20ec000.sdma: no iram assigned, using external mem
imx-sdma 20ec000.sdma: loaded firmware 1.1
imx-sdma 20ec000.sdma: initialized
Serial: IMX driver
2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 58) is a IMX
21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 61) is a IMX
console [ttymxc3] enabled
serial: Freescale lpuart driver
[drm] Initialized drm 1.1.0 20060810
[drm] Initialized vivante 1.0.0 20120216 on minor 0
brd: module loaded
loop: module loaded
8000000.nor: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000001 Chip ID 0x002801
Amd/Fujitsu Extended Query Table at 0x0040
Amd/Fujitsu Extended Query version 1.5.
number of CFI chips: 1
4 ofpart partitions found on MTD device 8000000.nor
Creating 4 MTD partitions on "8000000.nor":
0x000000000000-0x0000000a0000 : "uboot"
0x0000000a0000-0x0000000c0000 : "dtb"
0x0000000c0000-0x0000008c0000 : "kernel"
0x0000008c0000-0x0000058c0000 : "rootfs"
CAN device driver interface
fec 2188000.ethernet (unregistered net_device): Invalid MAC address: 00:00:00:00:00:00
fec 2188000.ethernet (unregistered net_device): Using random MAC address: 02:24:97:a4:d6:84
libphy: fec_enet_mii_bus: probed
fec 2188000.ethernet eth0: registered PHC device 0
usbcore: registered new interface driver asix
usbcore: registered new interface driver ax88179_178a
usbcore: registered new interface driver cdc_ether
usbcore: registered new interface driver net1080
usbcore: registered new interface driver cdc_subset
usbcore: registered new interface driver zaurus
usbcore: registered new interface driver cdc_ncm
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-pci: EHCI PCI platform driver
usbcore: registered new interface driver usb-storage
imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517
platform 2184200.usb: Driver imx_usb requests probe deferral
mousedev: PS/2 mouse device common for all mice
i2c-core: driver [isl29023] using legacy suspend method
i2c-core: driver [isl29023] using legacy resume method
snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0
i2c /dev entries driver
i2c-core: driver [mag3110] using legacy suspend method
i2c-core: driver [mag3110] using legacy resume method
imx2-wdt 20bc000.wdog: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=0)
cpuidle: using governor ladder
cpuidle: using governor menu
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
sdhci-esdhc-imx 2190000.usdhc: could not get ultra high speed state, work on normal mode
mmc0: no vqmmc regulator found
mmc0: no vmmc regulator found
mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA
mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed
mxc_asrc 2034000.asrc: mxc_asrc registered
mxc_vpu 2040000.vpu: VPU initialized
caam 2100000.caam: device ID = 0x0a16010000000100 (Era -524)
caam 2100000.caam: job rings = 2, qi = 0
caam 2100000.caam: authenc-hmac-md5-cbc-aes-caam
caam 2100000.caam: authencesn-hmac-md5-cbc-aes-caam
caam 2100000.caam: authenc-hmac-sha1-cbc-aes-caam
caam 2100000.caam: authencesn-hmac-sha1-cbc-aes-caam
caam 2100000.caam: authenc-hmac-sha224-cbc-aes-caam
caam 2100000.caam: authencesn-hmac-sha224-cbc-aes-caam
caam 2100000.caam: authenc-hmac-sha256-cbc-aes-caam
caam 2100000.caam: authencesn-hmac-sha256-cbc-aes-caam
caam 2100000.caam: authenc-hmac-md5-cbc-des3_ede-caam
caam 2100000.caam: authencesn-hmac-md5-cbc-des3_ede-caam
caam 2100000.caam: authenc-hmac-sha1-cbc-des3_ede-caam
caam 2100000.caam: authencesn-hmac-sha1-cbc-des3_ede-caam
caam 2100000.caam: authenc-hmac-sha224-cbc-des3_ede-caam
caam 2100000.caam: authencesn-hmac-sha224-cbc-des3_ede-caam
caam 2100000.caam: authenc-hmac-sha256-cbc-des3_ede-caam
caam 2100000.caam: authencesn-hmac-sha256-cbc-des3_ede-caam
caam 2100000.caam: authenc-hmac-md5-cbc-des-caam
caam 2100000.caam: authencesn-hmac-md5-cbc-des-caam
caam 2100000.caam: authenc-hmac-sha1-cbc-des-caam
caam 2100000.caam: authencesn-hmac-sha1-cbc-des-caam
caam 2100000.caam: authenc-hmac-sha224-cbc-des-caam
caam 2100000.caam: authencesn-hmac-sha224-cbc-des-caam
caam 2100000.caam: authenc-hmac-sha256-cbc-des-caam
caam 2100000.caam: authencesn-hmac-sha256-cbc-des-caam
caam 2100000.caam: ecb-des-caam
caam 2100000.caam: ecb-arc4-caam
caam 2100000.caam: ecb-aes-caam
caam 2100000.caam: ctr-aes-caam
caam 2100000.caam: cbc-aes-caam
caam 2100000.caam: ecb-des3-caam
caam 2100000.caam: cbc-3des-caam
caam 2100000.caam: cbc-des-caam
caam 2100000.caam: fsl,sec-v4.0 algorithms registered in /proc/crypto
platform 2101000.jr0: registering rng-caam
platform caam_sm: caam_sm_test: 8-byte key test match OK
platform caam_sm: caam_sm_test: 16-byte key test match OK
platform caam_sm: caam_sm_test: 32-byte key test match OK
platform caam_secvio.37: security violation service handlers armed
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
i2c-core: driver [cs42888] using legacy suspend method
i2c-core: driver [cs42888] using legacy resume method
imx-cs42888 sound-cs42888.31: failed to find codec platform device
imx-cs42888: probe of sound-cs42888.31 failed with error -22
imx-spdif sound-spdif.34: dir-hifi <-> 2004000.spdif mapping ok
imx-audio-hdmi sound-hdmi.33: initialize HDMI-audio failed. load HDMI-video first!
imx-tuner-si476x sound-fm.32: failed to find FM platform device
imx-tuner-si476x: probe of sound-fm.32 failed with error -22
TCP: cubic registered
NET: Registered protocol family 10
sit: IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
can: controller area network core (rev 20120528 abi 9)
NET: Registered protocol family 29
can: raw protocol (rev 20120528)
can: broadcast manager protocol (rev 20120528 t)
can: netlink gateway (rev 20130117) max_hops=1
8021q: 802.1Q VLAN Support v1.8
Key type dns_resolver registered
VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
platform usb_h1_vbus.28: Driver reg-fixed-voltage requests probe deferral
platform usb_otg_vbus.29: Driver reg-fixed-voltage requests probe deferral
platform hannstar_cabc.18: Driver hannstar-cabc requests probe deferral
imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517
platform 2184200.usb: Driver imx_usb requests probe deferral
input: gpio-keys.17 as /devices/soc0/gpio-keys.17/input/input0
platform usb_h1_vbus.28: Driver reg-fixed-voltage requests probe deferral
snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 1970-01-01 00:00:00 UTC (0)
platform usb_otg_vbus.29: Driver reg-fixed-voltage requests probe deferral
ALSA device list:
platform hannstar_cabc.18: Driver hannstar-cabc requests probe deferral
imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517
#0: imx-spdif
platform 2184200.usb: Driver imx_usb requests probe deferral
VFS: Mounted root (jffs2 filesystem) readonly on device 31:3.
devtmpfs: mounted
Freeing unused kernel memory: 276K (80be2000 - 80c27000)
udevd[140]: starting version 182
evbug: Connected device: input0 (gpio-keys.17 at gpio-keys/input0)
platform usb_h1_vbus.28: Driver reg-fixed-voltage requests probe deferral
platform usb_otg_vbus.29: Driver reg-fixed-voltage requests probe deferral
platform hannstar_cabc.18: Driver hannstar-cabc requests probe deferral
imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517
platform 2184200.usb: Driver imx_usb requests probe deferral
ERROR: v4l2 capture: slave not found!
fec 2188000.ethernet eth0: no PHY, assuming direct connection to switch
libphy: PHY fixed-0:00 not found
fec 2188000.ethernet eth0: could not attach to PHY
root@imx6solosabreauto:~#
root@imx6solosabreauto:~# lsusb
unable to initialize libusb: -99
root@imx6solosabreauto:~#
root@imx6solosabreauto:~#
root@imx6solosabreauto:~#
Solved! Go to Solution.
Thank you for your help.
Actually, The VBUS for usb_h1 was connecting to 5V source directly.
So, I modified the reg_usb_h1_vbus with "regulator-always-on". in the *.dtsi file for my custom board
After modified, usbh1 worked very well.
jimmychan
Thank you for your response of my problem.
I modified to the kernel configuration related to USB driver as the below.
But, I got the same start-up log with no recognize USB.
is It enough for using usbh1?
I think that the below log message is related to vbus voltage.
Actually, I had a imx6qsabre sd evk board. And I could find a different log message about the vbus.
Do anyone have idea the below log what is different?
The below log message of my custom board is related to USB Host 1 operation or recognition?
my custom board based on imx6solo
platform usb_h1_vbus.28: Driver reg-fixed-voltage requests probe deferral
platform usb_otg_vbus.29: Driver reg-fixed-voltage requests probe deferral
imx6q evk board
usb_otg_vbus: 5000 mV
usb_h1_vbus: 5000 mV
platform usb_h1_vbus.28: Driver reg-fixed-voltage requests probe deferral
platform usb_otg_vbus.29: Driver reg-fixed-voltage requests probe deferral
Because you defined the regulators for usb_h1_vbus and usb_otg_vbus in <your_board>.dtsi file.
Thank you for your help.
Actually, The VBUS for usb_h1 was connecting to 5V source directly.
So, I modified the reg_usb_h1_vbus with "regulator-always-on". in the *.dtsi file for my custom board
After modified, usbh1 worked very well.
May be some related USB driver not being loaded. Please check it in the kernel configuration and then build it as "Y", not "M" (module).