The TI E2E™ design support forums will undergo maintenance from Sept. 28 to Oct. 2. If you need design support during this time, contact your TI representative or open a new support request with our customer support center.

This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PROCESSOR-SDK-AM57X: custom board boot error

Part Number: PROCESSOR-SDK-AM57X
Other Parts Discussed in Thread: AM5718, DRA722

hi all,

I am using
Board Name : AM5718 custom board
Processor SDK version :ti-processor-sdk-linux-am57xx-evm-06.03.00.106
Linux version : linux-4.19.94+gitAUTOINC+be5389fd85-gbe5389fd85
U-boot Version : u-boot-2019.01+gitAUTOINC+333c3e72d3-g333c3e72d3

below link i disused my issue 3 months back due to my hardware issue i could able to check and update the result sorry for that 

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1022279/processor-sdk-am57x-custom-board-boot-error/3783585#3783585 

Can you try below:

diff --git a/arch/arm/boot/dts/am57xx-idk-common.dtsi b/arch/arm/boot/dts/am57xx-idk-common.dtsi
index c85703b70335..26ef2a63f2b8 100644
--- a/arch/arm/boot/dts/am57xx-idk-common.dtsi
+++ b/arch/arm/boot/dts/am57xx-idk-common.dtsi
@@ -535,9 +535,9 @@
&mmc1 {
status = "okay";
vmmc-supply = <&v3_3d>;
- vqmmc-supply = <&ldo1_reg>;
+ //vqmmc-supply = <&ldo1_reg>;
bus-width = <4>;
- cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
+ //cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
};

i tried above i am facing same error.

i got tps65903x: could not set LDO1 voltage. this error also, colud you please find the below log

uboot log

U-Boot SPL 2019.01-g323d51410c-dirty (Jul 27 2021 - 15:42:48 +0530)
DRA722-GP ES2.0
no pinctrl state for default mode
unable to get I2C bus. ret 1
tps65903x: could not set LDO1 voltage.
Trying to boot from MMC1
no pinctrl state for default mode
Loading Environment from FAT... OK


U-Boot 2019.01-g323d51410c-dirty (Aug 31 2021 - 10:18:10 +0530)

CPU : DRA722-GP ES2.0
Model: TI AM5718 IDK
Board: AM571x IDK REV 1.CA
DRAM: 1 GiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
Loading Environment from FAT... OK
unable to get I2C bus. ret 1
unable to get I2C bus. ret 1
unable to get I2C bus. ret 1
i2c_write: error waiting for data ACK (status=0x116)
cdce9xx_reg_write: failed for addr:5, ret:-121
Net:

/********************************************************

I compared evm(idk) boot log(working boot log) and custom boot log i found difference in LDO1 to LDO9 voltage supply could you please find the attached img

please help me to slove this error.

thanks and regards 

chandana

  • Hi Chandana,

    On your custom board is the PMIC connected on I2C1? Can you please confirm that?
    Also have you done the pin mux for the i2c that connects the PMIC on your custom board.

    If I2C writes to PMIC work then we will have progress with the boot.

    Best Regards,
    Keerthy

  • hi keerthy,

    thanks for response.

    On your custom board is the PMIC connected on I2C1? Can you please confirm that?

    yes, i2c1 is connect to pmic.

    Also have you done the pin mux for the i2c that connects the PMIC on your custom board.

    yes, i did in ti/sdk/board-support/u-boot-2019.01+gitAUTOINC+333c3e72d3-g333c3e72d3/board/ti/am57xx/mux_data.h


    If I2C writes to PMIC work then we will have progress with the boot.

    there only i am facing issue,

    in idk board this is working fine, in custom board(sysboot pin, pmic, sdcard schematic is same as idk board ) its not working,

    boot log:

    U-Boot SPL 2019.01-g323d51410c-dirty (Nov 24 2021 - 15:39:45 +0530)
    DRA722-GP ES2.0
    no pinctrl state for default mode
    unable to get I2C bus. ret 1
    tps65903x: could not set LDO1 voltage.
    ** Unable to read file dra7-ipu1-fw.xem4 **
    Firmware loading failed
    Trying to boot from MMC1
    no pinctrl state for default mode
    Loading Environment from FAT... *** Warning - bad CRC, using default environment

    Loading Environment from MMC... *** Warning - bad CRC, using default environment

    U-Boot 2019.01-g323d51410c-dirty (Nov 24 2021 - 15:39:45 +0530)

    CPU : DRA722-GP ES2.0
    Model: TI AM5718 IDK
    Board: AM571x IDK REV 1.3B
    DRAM: 1 GiB
    board init
    MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
    Loading Environment from FAT... *** Warning - bad CRC, using default environment

    Loading Environment from MMC... *** Warning - bad CRC, using default environment

    board late init
    unable to get I2C bus. ret 1
    unable to get I2C bus. ret 1
    power value = 191unable to get I2C bus. ret 1
    omp write
    i2c_write: error waiting for data ACK (status=0x116)
    cdce9xx_reg_write: failed for addr:5, ret:-121
    Net:
    Warning: ethernet@48484000 using MAC address from ROM
    eth0: ethernet@48484000
    Hit any key to stop autoboot: 0
    switch to partitions #0, OK
    mmc0 is current device
    SD/MMC found on device 0
    ** Unable to read file boot.scr **
    ** Unable to read file uEnv.txt **
    switch to partitions #0, OK
    mmc0 is current device
    SD/MMC found on device 0
    4448768 bytes read in 200 ms (21.2 MiB/s)
    128480 bytes read in 8 ms (15.3 MiB/s)
    ## Flattened Device Tree blob at 88000000
    Booting using the fdt blob at 0x88000000
    Loading Device Tree to 8ffdd000, end 8ffff5df ... OK

    Starting kernel ...

    [ 0.000000] Booting Linux on physical CPU 0x0
    [ 0.000000] Linux version 4.19.94-gbe5389fd85 (oe-user@oe-host) (gcc version 8.3.0 (GNU Toolchain for the A-profile Architecture 8.3-2019.00
    [ 0.000000] CPU: ARMv7 Processor [412fc0f2] revision 2 (ARMv7), cr=30c5387d
    [ 0.000000] CPU: div instructions available: patching division code
    [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
    [ 0.000000] OF: fdt: Machine model: TI AM5718 IDK
    [ 0.000000] Memory policy: Data cache writealloc
    [ 0.000000] efi: Getting EFI parameters from FDT:
    [ 0.000000] efi: UEFI not found.
    [ 0.000000] Reserved memory: created CMA memory pool at 0x0000000095800000, size 56 MiB
    [ 0.000000] OF: reserved mem: initialized node ipu2-memory@95800000, compatible id shared-dma-pool
    [ 0.000000] Reserved memory: created CMA memory pool at 0x0000000099000000, size 64 MiB
    [ 0.000000] OF: reserved mem: initialized node dsp1-memory@99000000, compatible id shared-dma-pool
    [ 0.000000] Reserved memory: created DMA memory pool at 0x000000009d000000, size 32 MiB
    [ 0.000000] OF: reserved mem: initialized node ipu1-memory@9d000000, compatible id shared-dma-pool
    [ 0.000000] cma: Reserved 24 MiB at 0x00000000be400000
    [ 0.000000] OMAP4: Map 0x00000000bfd00000 to (ptrval) for dram barrier
    [ 0.000000] DRA722 ES2.0
    [ 0.000000] random: get_random_bytes called from start_kernel+0xb4/0x470 with crng_init=0
    [ 0.000000] percpu: Embedded 15 pages/cpu s32396 r8192 d20852 u61440
    [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 202048
    [ 0.000000] Kernel command line: console=ttyS2,115200n8 root=PARTUUID=cd75415d-02 rw rootfstype=ext4 rootwait
    [ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
    [ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
    [ 0.000000] Memory: 641888K/815104K available (10240K kernel code, 335K rwdata, 2800K rodata, 2048K init, 268K bss, 25760K reserved, 147456)
    [ 0.000000] Virtual kernel memory layout:
    [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    [ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
    [ 0.000000] vmalloc : 0xf0800000 - 0xff800000 ( 240 MB)
    [ 0.000000] lowmem : 0xc0000000 - 0xf0000000 ( 768 MB)
    [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
    [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
    [ 0.000000] .text : 0x(ptrval) - 0x(ptrval) (12256 kB)
    [ 0.000000] .init : 0x(ptrval) - 0x(ptrval) (2048 kB)
    [ 0.000000] .data : 0x(ptrval) - 0x(ptrval) ( 336 kB)
    [ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 269 kB)
    [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [ 0.000000] rcu: Preemptible hierarchical RCU implementation.
    [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=2 to nr_cpu_ids=1.
    [ 0.000000] Tasks RCU enabled.
    [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
    [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    [ 0.000000] GIC: Using split EOI/Deactivate mode
    [ 0.000000] OMAP clockevent source: timer1 at 32786 Hz
    [ 0.000000] arch_timer: cp15 timer(s) running at 6.14MHz (phys).
    [ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x16af5adb9, max_idle_ns: 440795202250 ns
    [ 0.000005] sched_clock: 56 bits at 6MHz, resolution 162ns, wraps every 4398046511023ns
    [ 0.000018] Switching to timer-based delay loop, resolution 162ns
    [ 0.000293] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns
    [ 0.000302] OMAP clocksource: 32k_counter at 32768 Hz
    [ 0.000785] Console: colour dummy device 80x30
    [ 0.000828] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.29 BogoMIPS (lpj=61475)
    [ 0.000844] pid_max: default: 32768 minimum: 301
    [ 0.000965] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
    [ 0.000980] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
    [ 0.001542] CPU: Testing write buffer coherency: ok
    [ 0.001578] CPU0: Spectre v2: using ICIALLU workaround
    [ 0.001797] /cpus/cpu@0 missing clock-frequency property
    [ 0.001811] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
    [ 0.059873] Setting up static identity map for 0x80200000 - 0x80200060
    [ 0.079881] rcu: Hierarchical SRCU implementation.
    [ 0.100065] EFI services will not be available.
    [ 0.119938] smp: Bringing up secondary CPUs ...
    [ 0.119949] smp: Brought up 1 node, 1 CPU
    [ 0.119960] SMP: Total of 1 processors activated (12.29 BogoMIPS).
    [ 0.119969] CPU: All CPU(s) started in HYP mode.
    [ 0.119977] CPU: Virtualization extensions available.
    [ 0.120405] devtmpfs: initialized
    [ 0.150115] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
    [ 0.150409] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [ 0.150427] futex hash table entries: 256 (order: 2, 16384 bytes)
    [ 0.152975] pinctrl core: initialized pinctrl subsystem
    [ 0.153529] DMI not present or invalid.
    [ 0.153803] NET: Registered protocol family 16
    [ 0.160925] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [ 0.161831] omap_hwmod: l3_main_2 using broken dt data from ocp
    [ 0.351804] cpuidle: using governor ladder
    [ 0.351843] cpuidle: using governor menu
    [ 0.362691] OMAP GPIO hardware version 0.1
    [ 0.386583] No ATAGs?
    [ 0.386627] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
    [ 0.386643] hw-breakpoint: maximum watchpoint size is 8 bytes.
    [ 0.387536] OMAP DMA hardware revision 0.0
    [ 0.422602] edma 43300000.edma: memcpy is disabled
    [ 0.426057] edma 43300000.edma: TI EDMA DMA engine driver
    [ 0.433439] omap-dma-engine 4a056000.dma-controller: OMAP DMA engine driver (LinkedList1/2/3 supported)
    [ 0.437047] omap-iommu 40d01000.mmu: 40d01000.mmu registered
    [ 0.437236] omap-iommu 40d02000.mmu: 40d02000.mmu registered
    [ 0.437489] omap-iommu 58882000.mmu: 58882000.mmu registered
    [ 0.437733] omap-iommu 55082000.mmu: 55082000.mmu registered
    [ 0.438086] iommu: Adding device 58820000.ipu to group 1
    [ 0.438167] iommu: Adding device 55020000.ipu to group 2
    [ 0.438292] iommu: Adding device 40800000.dsp to group 0
    [ 0.439655] SCSI subsystem initialized
    [ 0.440847] palmas 0-0058: Irq flag is 0x00000004
    [ 0.470578] palmas 0-0058: POLARITY_CTRL update failed: -121
    [ 0.470947] palmas: probe of 0-0058 failed with error -121
    [ 0.471203] omap_i2c 48070000.i2c: bus 0 rev0.12 at 400 kHz
    [ 0.471406] media: Linux media interface: v0.10
    [ 0.471446] videodev: Linux video capture interface: v2.00
    [ 0.471525] pps_core: LinuxPPS API ver. 1 registered
    [ 0.471535] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [ 0.471556] PTP clock support registered
    [ 0.471589] EDAC MC: Ver: 3.0.0
    [ 0.481193] omap-mailbox 48840000.mailbox: omap mailbox rev 0x400
    [ 0.481377] omap-mailbox 48842000.mailbox: omap mailbox rev 0x400
    [ 0.490749] Advanced Linux Sound Architecture Driver Initialized.
    [ 0.491577] clocksource: Switched to clocksource arch_sys_counter
    [ 0.499799] NET: Registered protocol family 2
    [ 0.500401] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes)
    [ 0.500431] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
    [ 0.500494] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
    [ 0.500853] TCP: Hash tables configured (established 8192 bind 8192)
    [ 0.500931] UDP hash table entries: 512 (order: 2, 16384 bytes)
    [ 0.500966] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
    [ 0.501100] NET: Registered protocol family 1
    [ 0.531619] RPC: Registered named UNIX socket transport module.
    [ 0.531631] RPC: Registered udp transport module.
    [ 0.531640] RPC: Registered tcp transport module.
    [ 0.531648] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [ 0.532839] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
    [ 0.533773] Initialise system trusted keyrings
    [ 0.533939] workingset: timestamp_bits=14 max_order=18 bucket_order=4
    [ 0.539063] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [ 0.549591] NFS: Registering the id_resolver key type
    [ 0.549617] Key type id_resolver registered
    [ 0.549626] Key type id_legacy registered
    [ 0.549667] ntfs: driver 2.1.32 [Flags: R/O].
    [ 0.551772] Key type asymmetric registered
    [ 0.551785] Asymmetric key parser 'x509' registered
    [ 0.551837] bounce: pool size: 64 pages
    [ 0.551873] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [ 0.551885] io scheduler noop registered
    [ 0.551894] io scheduler deadline registered
    [ 0.551998] io scheduler cfq registered (default)
    [ 0.552008] io scheduler mq-deadline registered
    [ 0.552018] io scheduler kyber registered
    [ 0.557757] pinctrl-single 4a003400.pinmux: 282 pins, size 1128
    [ 0.557916] pinctrl-single 4a002e8c.pinmux: please update dts to use #pinctrl-cells = <1>
    [ 0.557975] pinctrl-single 4a002e8c.pinmux: initialized with no interrupts
    [ 0.557986] pinctrl-single 4a002e8c.pinmux: 1 pins, size 4
    [ 0.581927] dra7-pcie 51000000.pcie: Linked as a consumer to phy-4a094000.pciephy.1
    [ 0.582401] dra7-pcie 51000000.pcie: host bridge /ocp/axi@0/pcie@51000000 ranges:
    [ 0.582447] dra7-pcie 51000000.pcie: IO 0x20003000..0x20012fff -> 0x00000000
    [ 0.582475] dra7-pcie 51000000.pcie: MEM 0x20013000..0x2fffffff -> 0x20013000
    [ 1.582746] dra7-pcie 51000000.pcie: Phy link never came up
    [ 1.582886] dra7-pcie 51000000.pcie: PCI host bridge to bus 0000:00
    [ 1.582901] pci_bus 0000:00: root bus resource [bus 00-ff]
    [ 1.582914] pci_bus 0000:00: root bus resource [io 0x0000-0xffff]
    [ 1.582925] pci_bus 0000:00: root bus resource [mem 0x20013000-0x2fffffff]
    [ 1.589213] PCI: bus0: Fast back to back transfers disabled
    [ 1.595174] PCI: bus1: Fast back to back transfers enabled
    [ 1.595220] pci 0000:00:00.0: BAR 0: assigned [mem 0x20100000-0x201fffff 64bit]
    [ 1.595240] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
    [ 1.595583] pcieport 0000:00:00.0: Signaling PME with IRQ 167
    [ 1.595717] pcieport 0000:00:00.0: AER enabled with IRQ 167
    [ 1.644769] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [ 1.648454] console [ttyS2] disabled
    [ 1.648515] 48020000.serial: ttyS2 at MMIO 0x48020000 (irq = 45, base_baud = 3000000) is a 8250
    [ 2.602455] console [ttyS2] enabled
    [ 2.608088] omap_rng 48090000.rng: Random Number Generator ver. 20
    [ 2.614437] random: fast init done
    [ 2.618000] random: crng init done
    [ 2.636083] brd: module loaded
    [ 2.645524] loop: module loaded
    [ 2.654061] m25p80 spi0.0: s25fl256s1 (32768 Kbytes)
    [ 2.659121] 7 fixed-partitions partitions found on MTD device spi0.0
    [ 2.665609] Creating 7 MTD partitions on "spi0.0":
    [ 2.670426] 0x000000000000-0x000000040000 : "QSPI.SPL"
    [ 2.676347] 0x000000040000-0x000000140000 : "QSPI.u-boot"
    [ 2.682487] 0x000000140000-0x0000001c0000 : "QSPI.u-boot-spl-os"
    [ 2.689183] 0x0000001c0000-0x0000001d0000 : "QSPI.u-boot-env"
    [ 2.695654] 0x0000001d0000-0x0000001e0000 : "QSPI.u-boot-env.backup1"
    [ 2.702814] 0x0000001e0000-0x0000009e0000 : "QSPI.kernel"
    [ 2.708897] 0x0000009e0000-0x000002000000 : "QSPI.file-system"
    [ 2.716042] libphy: Fixed MDIO Bus: probed
    [ 2.781615] davinci_mdio 48485000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [ 2.789312] davinci_mdio 48485000.mdio: detected phy mask fffffffe
    [ 2.797665] libphy: 48485000.mdio: probed
    [ 2.801762] davinci_mdio 48485000.mdio: phy[0]: device 48485000.mdio:00, driver Micrel KSZ9031 Gigabit PHY
    [ 2.812266] cpsw 48484000.ethernet: Detected MACID = 40:06:a0:ab:57:7c
    [ 2.818883] cpsw 48484000.ethernet: initialized cpsw ale version 1.4
    [ 2.825332] cpsw 48484000.ethernet: ALE Table size 1024
    [ 2.830628] cpsw 48484000.ethernet: cpts: overflow check period 500 (jiffies)
    [ 2.838698] cpsw 48484000.ethernet: cpsw: Detected MACID = 40:06:a0:ab:57:7d
    [ 2.847093] i2c /dev entries driver
    [ 2.855926] sdhci: Secure Digital Host Controller Interface driver
    [ 2.862166] sdhci: Copyright(c) Pierre Ossman
    [ 2.867407] sdhci-pltfm: SDHCI platform and OF driver helper
    [ 2.874043] omap_gpio 4805d000.gpio: Could not set line 27 debounce to 200000 microseconds (-22)
    [ 2.882892] sdhci-omap 4809c000.mmc: Got CD GPIO
    [ 2.887754] sdhci-omap 4809c000.mmc: Linked as a consumer to regulator.4
    [ 2.894540] sdhci-omap 4809c000.mmc: failed to set system capabilities
    [ 2.901175] sdhci-omap 4809c000.mmc: Dropping the link to regulator.4
    [ 2.908500] sdhci-omap 480b4000.mmc: failed to set sy+-----------------------------+
    [ 2.916619] ledtrig-cpu: registered to indicate activ| |
    [ 2.927984] NET: Registered protocol family 10 | Cannot open /dev/ttyUSB0! |
    [ 2.943511] Segment Routing with IPv6 | |
    [ 2.947257] sit: IPv6, IPv4 and MPLS over IPv4 tunnel+-----------------------------+
    [ 2.953759] NET: Registered protocol family 17
    [ 2.958435] Key type dns_resolver registered
    [ 2.962905] Registering SWP/SWPB emulation handler
    [ 2.967722] omap_voltage_late_init: Voltage driver support not added
    [ 2.974121] Power Management for TI OMAP4+ devices.
    [ 2.979738] Loading compiled-in X.509 certificates
    [ 3.010690] dmm 4e000000.dmm: workaround for errata i878 in use
    [ 3.018378] dmm 4e000000.dmm: initialized all PAT entries
    [ 3.026135] omap_gpio 4805d000.gpio: Could not set line 27 debounce to 200000 microseconds (-22)
    [ 3.034996] sdhci-omap 4809c000.mmc: Got CD GPIO
    [ 3.039883] sdhci-omap 4809c000.mmc: Linked as a consumer to regulator.4
    [ 3.046683] sdhci-omap 4809c000.mmc: failed to set system capabilities
    [ 3.053343] sdhci-omap 4809c000.mmc: Dropping the link to regulator.4
    [ 3.060604] sdhci-omap 480b4000.mmc: failed to set system capabilities
    [ 3.068283] omap_gpio 4805d000.gpio: Could not set line 27 debounce to 200000 microseconds (-22)
    [ 3.077163] sdhci-omap 4809c000.mmc: Got CD GPIO
    [ 3.082040] sdhci-omap 4809c000.mmc: Linked as a consumer to regulator.4
    [ 3.088814] sdhci-omap 4809c000.mmc: failed to set system capabilities
    [ 3.095464] sdhci-omap 4809c000.mmc: Dropping the link to regulator.4
    [ 3.102687] sdhci-omap 480b4000.mmc: failed to set system capabilities
    [ 3.110160] hctosys: unable to open rtc device (rtc0)
    [ 3.116142] ALSA device list:
    [ 3.119127] No soundcards found.
    [ 3.123455] Waiting for root device PARTUUID=cd75415d-02...

    could you please help me to fix this issue

    thanks and regards 

    chandana

  • Hi Chandana,


    [ 3.123455] Waiting for root device PARTUUID=cd75415d-02...

    You have come all the way to file system? So even though the ldo1 errors occur you are able to get to kernel stage.

    Can you please try the below command from U-Boot:

    setenv args_mmc "run finduuid;setenv bootargs console=${console} ${optargs} root=/dev/mmcblk0p2 rw rootfstype=${mmcrootfstype}"
    saveenv
    boot

    Let me know if that helps you get to Linux kernel prompt. If yes please click on verify answer.

    Best Regards,
    Keerthy

  • hi keerthy,

    thank you for the reply

    Can you please try the below command from U-Boot:

    setenv args_mmc "run finduuid;setenv bootargs console=${console} ${optargs} root=/dev/mmcblk0p2 rw rootfstype=${mmcrootfstype}"
    saveenv
    boot

    i tried above command in u-boot prompt, i got error as below

    [    4.008042] Waiting for root device /dev/mmcblk0p2...

    thanks and regards

    chandana

  • [ 3.077163] sdhci-omap 4809c000.mmc: Got CD GPIO
    [ 3.082040] sdhci-omap 4809c000.mmc: Linked as a consumer to regulator.4
    [ 3.088814] sdhci-omap 4809c000.mmc: failed to set system capabilities
    [ 3.095464] sdhci-omap 4809c000.mmc: Dropping the link to regulator.4
    [ 3.102687] sdhci-omap 480b4000.mmc: failed to set system capabilities

    Which GPIO is the card detect GPIO on your custom board? Is it same as IDK board? Is the LDO1 connected to MMC-SD?
    Also have you commented that in Linux DTS as well or you just commented in the U-Boot dts?

    - Keerthy

  • hi keerthy,

    thanks for response

    Which GPIO is the card detect GPIO on your custom board? Is it same as IDK board? Is the LDO1 connected to MMC-SD?

    yes, same as IDK board,gpio6 27.

    Also have you commented that in Linux DTS as well or you just commented in the U-Boot dts?

    my kernel dtsi (am57xx-idk-common.dtsi)file as below

    &mmc1 {
    status = "okay";
    vmmc-supply = <&v3_3d>;
    //vqmmc-supply = <&v3_3d>;
    vqmmc-supply = <&ldo1_reg>;
    //vqmmc-supply = <&ldo1_reg>;
    bus-width = <4>;
    cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
    no-1-8-v;
    };

    my kernel DTS(am571x-idk.dts) as below


    &mmc1 {
    pinctrl-names = "default", "hs";
    pinctrl-0 = <&mmc1_pins_default_no_clk_pu>;
    pinctrl-1 = <&mmc1_pins_hs>;
    };

    thanks and regards

    chandana 

  • ] sdhci-omap 4809c000.mmc: Got CD GPIO
    [ 3.082040] sdhci-omap 4809c000.mmc: Linked as a consumer to regulator.4
    [ 3.088814] sdhci-omap 4809c000.mmc: failed to set system capabilities
    [ 3.095464] sdhci-omap 4809c000.mmc: Dropping the link to regulator.4
    [ 3.102687] sdhci-omap 480b4000.mmc: failed to set system capabilities

    Hi Chandana,

    Can you add debug prints in the mmc driver? It seems like it has been trying multiple times to probe and it fails at a particular point.

    drivers/mmc/host/omap_hsmmc.c in the probe function. I suspect something is deferring probe. Debug prints will help.

    - Keerthy

  • hi keerthy,

    thank you for your information

    Can you add debug prints in the mmc driver? It seems like it has been trying multiple times to probe and it fails at a particular point.

    i added printk in mmc driver(mmc/host/sdhci-omap.c) in probe function its calling 3 times.

    boot log:

    ...

    [ 2.777458] i2c /dev entries driver
    [ 2.786184] sdhci: Secure Digital Host Controller Interface driver
    [ 2.792423] sdhci: Copyright(c) Pierre Ossman
    [ 2.797624] sdhci-pltfm: SDHCI platform and OF driver helper
    [ 2.804058] sdhci_omap_probe
    [ 2.807242] sdhci-omap 4809c000.mmc: Linked as a consumer to regulator.4
    [ 2.814042] sdhci-omap 4809c000.mmc: failed to set system capabilities
    [ 2.820680] sdhci-omap 4809c000.mmc: Dropping the link to regulator.4
    [ 2.828667] ledtrig-cpu: registered to indicate activity on CPUs
    [ 2.840500] NET: Registered protocol family 10
    [ 2.856049] Segment Routing with IPv6
    [ 2.859791] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [ 2.866303] NET: Registered protocol family 17
    [ 2.870970] Key type dns_resolver registered
    [ 2.875454] Registering SWP/SWPB emulation handler
    [ 2.880270] omap_voltage_late_init: Voltage driver support not added
    [ 2.886669] Power Management for TI OMAP4+ devices.
    [ 2.891648] prcm2***********************
    [ 2.895589] prcm2***********************
    [ 2.899529] prcm2***********************
    [ 2.904118] Loading compiled-in X.509 certificates
    [ 2.935347] dmm 4e000000.dmm: workaround for errata i878 in use
    [ 2.942990] dmm 4e000000.dmm: initialized all PAT entries
    [ 2.949823] sdhci_omap_probe
    [ 2.953095] sdhci-omap 4809c000.mmc: Linked as a consumer to regulator.4
    [ 2.959885] sdhci-omap 4809c000.mmc: failed to set system capabilities
    [ 2.966556] sdhci-omap 4809c000.mmc: Dropping the link to regulator.4
    [ 2.974040] sdhci_omap_probe
    [ 2.977184] sdhci-omap 4809c000.mmc: Linked as a consumer to regulator.4
    [ 2.984020] sdhci-omap 4809c000.mmc: failed to set system capabilities
    [ 2.990654] sdhci-omap 4809c000.mmc: Dropping the link to regulator.4
    [ 2.997698] hctosys: unable to open rtc device (rtc0)
    [ 3.003646] ALSA device list:
    [ 3.006631] No soundcards found.
    [ 3.010927] Waiting for root device /dev/mmcblk0p2...

    how to fix this and why it is calling multiple times?

    thanks and regards

    chandana

  • hi keerthy,

    i am waiting for you response.

    thanks and regards

    chandana 

  • hi keerthy ,

    my kernel code is failing in sdhci_omap_probe()->sdhci_omap_set_capabilitie()->vqmmc = regulator_get(dev, "vqmmc")

    vqmmc = regulator_get(dev, "vqmmc");
    printk("vqmmc = %d\n",vqmmc);
    if (IS_ERR(vqmmc)) {
    printk("PTR_ERR, reg_put\n");
    ret = PTR_ERR(vqmmc);
    goto reg_put;
    }

    it is entering to if conduction.

    thanks and regards

    chandana

  • @keerty

    Our findings are following

    1. Getting the regulator was failing. 

    2. PMIC driver probe is failing because of i2c remote io error. We are sure that we have some issue in the i2c bus.

    Question 

    Is there a possibility to by pass the regulator initialization  and still get the SDIO controller succeed?. 

    Your inputs will be very valuable for our custom board porting.

    -cb

  • @keerthy ,

    We were able to solve the issue.  The findings are the following.

    1. PMIC was failing because the i2c  connection to the PMIC was failing which led to the regulator failure which inturn failed the SDIO intiailization.

    2. Once the i2c connection was restored everything worked fine.

    @keerthy Thank you for providing pointers which helped to nail the issue.