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.

AM625-Q1: Failed to initialize CC3301MOD WiFi BT combo module connected over MMC2

Part Number: AM625-Q1
Other Parts Discussed in Thread: BP-CC3301MOD, CC3300, SK-AM62-LP, , M2-CC3351, AM625, CC3301MOD

Tool/software:

Hi,

We're trying interface BP-CC3301MOD Booster Pack module in Shared SDIO mode. However we're getting timeout error "mmc_attach_sdio() mmc_send_io_op_cond FAILED, err=-110".

Below is the dts snippet


&{/} {
wlan_en: regulator-30 {
compatible = "regulator-fixed";
regulator-name = "wlan_en";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&vcc_3v3_sys>;

gpios = <&main_gpio0 71 GPIO_ACTIVE_HIGH>;

enable-active-high;
startup-delay-us = <70000>;

pinctrl-names = "default";
pinctrl-0 = <&wlan_en_pins_default>;
};
};

&main_pmx0 {
wlan_en_pins_default: wlan-en-pins-default {
pinctrl-single,pins = <
AM62X_IOPAD(0x124, PIN_OUTPUT, 7) /* (A23) MMC2_SDCD.GPIO0_71 */
>;
};

main_mmc2_pins_default: main-mmc2-pins-default {
pinctrl-single,pins = <
AM62X_IOPAD(0x120, PIN_INPUT, 0) /* (C24) MMC2_CMD */
AM62X_IOPAD(0x118, PIN_INPUT, 0) /* (D25) MMC2_CLK */
AM62X_IOPAD(0x114, PIN_INPUT, 0) /* (B24) MMC2_DAT0 */
AM62X_IOPAD(0x110, PIN_INPUT, 0) /* (C25) MMC2_DAT1 */
AM62X_IOPAD(0x10c, PIN_INPUT, 0) /* (E23) MMC2_DAT2 */
AM62X_IOPAD(0x108, PIN_INPUT, 0) /* (D24) MMC2_DAT3 */
>;
};
};

&sdhci2 {
status = "okay";
bootph-all;
vmmc-supply = <&wlan_en>;
pinctrl-names = "default";
pinctrl-0 = <&main_mmc2_pins_default>;
bus-width = <4>;
non-removable;
ti,fails-without-test-cd;
cap-power-off-card;
keep-power-in-suspend;
ti,driver-strength-ohm = <50>;

broken-cd;
post-power-on-delay-ms = <0x1f4>;
disable-wp;
no-1-8-v;

#address-cells = <1>;
#size-cells = <0>;
wifi: cc3300@2 {
compatible = "ti,cc3300";
reg = <2>;
};

// TI-BLE-SDIO interface
btti: btti@1 {
compatible = "ti,cc33xxbt";
reg = <1>;
};
};

We're able to see the reset happening and some data in MMC2_CMD line using Oscilloscope. But there is no data in data lines.

Attaching the dmesg logs.

Please help in resolving the issue.

[    1.904397] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 1200000 KHz, changing to: 1250000 KHz
[    1.916355] sdhci-am654 fa10000.mmc: DEBUG: sdhci_am654_probe() started for fa10000.mmc
[    1.923738] pca953x 1-0022: supply vcc not found, using dummy regulator
[    1.924412] sdhci-am654 fa10000.mmc: DEBUG: matched compatible 'ti,am62-sdhci'
[    1.931197] pca953x 1-0022: using AI
[    1.938446] sdhci-am654 fa10000.mmc: DEBUG: sdhci_pltfm_init successful
[    1.941967] pca953x 1-0022: failed writing register: -121
[    1.948389] sdhci-am654 fa10000.mmc: DEBUG: clk_xin clock obtained successfully
[    1.953974] pca953x 1-0022: probe with driver pca953x failed with error -121
[    1.961182] sdhci-am654 fa10000.mmc: DEBUG: regmap initialized successfully
[    1.975071] sdhci-am654 fa10000.mmc: DEBUG: sdhci_am654_get_of_property() started
[    1.976257] sdhci-am654 fa20000.mmc: DEBUG: sdhci_am654_probe() started for fa20000.mmc
[    1.977997] clk: Disabling unused clocks
[    1.982590] sdhci-am654 fa10000.mmc: DEBUG: strobe-sel = 0, clkbuf-sel = 7
[    1.982626] sdhci-am654 fa10000.mmc: DEBUG: sdhci_am654_get_of_property() completed
[    1.987795] PM: genpd: Disabling unused power domains
[    1.987922] ALSA device list:
[    1.987929]   No soundcards found.
[    1.990758] sdhci-am654 fa20000.mmc: DEBUG: matched compatible 'ti,am62-sdhci'
[    1.994580] sdhci-am654 fa10000.mmc: DEBUG: mmc_of_parse completed successfully
[    2.001804] sdhci-am654 fa20000.mmc: DEBUG: sdhci_pltfm_init successful
[    2.009020] sdhci-am654 fa10000.mmc: DEBUG: MMC caps: 0x00001041, caps2: 0x00040020
[    2.009027] sdhci-am654 fa10000.mmc: DEBUG: vmmc supply: found, vqmmc supply: found
[    2.014190] sdhci-am654 fa20000.mmc: DEBUG: clk_xin clock obtained successfully
[    2.017140] sdhci-am654 fa10000.mmc: DEBUG: clocks and power management setup complete
[    2.020534] sdhci-am654 fa20000.mmc: DEBUG: regmap initialized successfully
[    2.027640] sdhci-am654 fa10000.mmc: DEBUG: sdhci_am654_init() started
[    2.027653] sdhci-am654 fa10000.mmc: DEBUG: OTAP reset to default
[    2.035036] sdhci-am654 fa20000.mmc: DEBUG: sdhci_am654_get_of_property() started
[    2.041547] sdhci-am654 fa10000.mmc: DEBUG: IOMUX_PRESENT flag set, enabling pins
[    2.041554] sdhci-am654 fa10000.mmc: DEBUG: Setting slot type to REMOVABLE
[    2.049305] sdhci-am654 fa20000.mmc: DEBUG: strobe-sel = 0, clkbuf-sel = 7
[    2.056837] sdhci-am654 fa10000.mmc: DEBUG: Tuning for SDR50 enabled
[    2.064227] sdhci-am654 fa20000.mmc: DEBUG: ti,fails-without-test-cd property found, enabling FORCE_CDTEST quirk
[    2.072041] sdhci-am654 fa10000.mmc: DEBUG: Calling sdhci_setup_host()
[    2.079099] sdhci-am654 fa20000.mmc: DEBUG: sdhci_am654_get_of_property() completed
[    2.085624] sdhci-am654 fa10000.mmc: DEBUG: sdhci_setup_host() completed successfully
[    2.091628] sdhci-am654 fa20000.mmc: DEBUG: mmc_of_parse completed successfully
[    2.099051] mmc0: CQHCI version 5.10
[    2.099058] sdhci-am654 fa10000.mmc: DEBUG: CQE host added successfully
[    2.106635] sdhci-am654 fa20000.mmc: DEBUG: MMC caps: 0x00004101, caps2: 0x00040000
[    2.113442] sdhci-am654 fa10000.mmc: DEBUG: OTAP delay configuration completed
[    2.120384] sdhci-am654 fa20000.mmc: DEBUG: vmmc supply: found, vqmmc supply: found
[    2.126623] sdhci-am654 fa10000.mmc: DEBUG: Calling __sdhci_add_host()
[    2.136990] sdhci-am654 fa20000.mmc: DEBUG: clocks and power management setup complete
[    2.213171] sdhci-am654 fa20000.mmc: DEBUG: sdhci_am654_init() started
[    2.213409] sdhci-am654 fa10000.mmc: DEBUG: mmc_power_up() starting, ocr=0x300080
[    2.219722] sdhci-am654 fa20000.mmc: DEBUG: OTAP reset to default
[    2.233235] sdhci-am654 fa20000.mmc: DEBUG: IOMUX_PRESENT flag set, enabling pins
[    2.240719] sdhci-am654 fa20000.mmc: DEBUG: Setting slot type to EMBEDDED (non-removable)
[    2.248890] sdhci-am654 fa20000.mmc: DEBUG: Tuning for SDR50 enabled
[    2.255237] sdhci-am654 fa20000.mmc: DEBUG: Calling sdhci_setup_host()
[    2.259292] sdhci-am654 fa10000.mmc: DEBUG: mmc_power_up() completed successfully
[    2.262096] sdhci-am654 fa20000.mmc: DEBUG: sdhci_setup_host() completed successfully
[    2.269268] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
[    2.277045] mmc2: CQHCI version 5.10
[    2.284516] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan() started, rescan_disable=0
[    2.288070] sdhci-am654 fa20000.mmc: DEBUG: CQE host added successfully
[    2.295626] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan() proceeding with scan, removable=1
[    2.295675] sdhci-am654 fa10000.mmc: DEBUG: __sdhci_add_host() completed successfully
[    2.295681] sdhci-am654 fa10000.mmc: DEBUG: sdhci_am654_init completed successfully
[    2.295689] sdhci-am654 fa10000.mmc: DEBUG: sdhci_am654_probe completed successfully for fa10000.mmc
[    2.302262] sdhci-am654 fa20000.mmc: DEBUG: OTAP delay configuration completed
[    2.310482] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan() no card detected, starting frequency scan
[    2.318300] sdhci-am654 fa20000.mmc: DEBUG: Calling __sdhci_add_host()
[    2.325945] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan() trying different frequencies
[    2.365548] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan() trying frequency 400000 Hz (attempt 0)
[    2.365682] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() starting, ocr=0x300000
[    2.374246] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan_try_freq() starting, freq=400000 Hz
[    2.381737] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=0
[    2.389972] sdhci-am654 fa10000.mmc: DEBUG: mmc_power_up() already powered on, skipping
[    2.399083] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    2.407069] sdio_reset: ENTER - starting SDIO reset sequence
[    2.417319] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: calling regulator_enable()
[    2.423363] mmc_io_rw_direct_host: Command failed with error -110
[    2.437543] sdio_reset: Read SDIO_CCCR_ABORT failed with error -110, using default abort=0x08
[    2.446058] sdio_reset: Writing SDIO_CCCR_ABORT with value=0x08
[    2.452336] mmc_io_rw_direct_host: Command failed with error -110
[    2.458427] sdio_reset: EXIT - returning ret=-110
[    2.467502] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan_try_freq() trying SDIO attach
[    2.475241] sdhci-am654 fa10000.mmc: DEBUG: mmc_attach_sdio() starting
[    2.483215] sdhci-am654 fa10000.mmc: DEBUG: mmc_attach_sdio() mmc_send_io_op_cond FAILED, err=-110
[    2.492167] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan_try_freq() SDIO attach FAILED
[    2.499901] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan_try_freq() trying SD attach
[    2.507478] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator_enable() SUCCESS
[    2.508917] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan_try_freq() SD attach FAILED
[    2.523551] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan_try_freq() trying MMC attach
[    2.589796] mmc0: new HS200 MMC card at address 0001
[    2.595697] mmcblk0: mmc0:0001 EXA    15.0 GiB
[    2.603791]  mmcblk0: p1
[    2.607172] mmcblk0boot0: mmc0:0001 EXA    4.00 MiB
[    2.613838] mmcblk0boot1: mmc0:0001 EXA    4.00 MiB
[    2.620334] mmcblk0rpmb: mmc0:0001 EXA    4.00 MiB, chardev (239:0)
[    2.626720] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan_try_freq() MMC attach SUCCESS
[    2.634480] sdhci-am654 fa10000.mmc: DEBUG: mmc_rescan() completed, no polling scheduled
[    3.059342] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    3.068512] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    3.078776] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    3.603296] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() completed successfully
[    3.610794] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() started, rescan_disable=0
[    3.611300] mmc2: SDHCI controller on fa20000.mmc [fa20000.mmc] using ADMA 64-bit
[    3.618357] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() proceeding with scan, removable=0
[    3.625826] sdhci-am654 fa20000.mmc: DEBUG: __sdhci_add_host() completed successfully
[    3.634078] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() no card detected, starting frequency scan
[    3.641885] sdhci-am654 fa20000.mmc: DEBUG: sdhci_am654_init completed successfully
[    3.650831] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() trying different frequencies
[    3.658472] sdhci-am654 fa20000.mmc: DEBUG: sdhci_am654_probe completed successfully for fa20000.mmc
[    3.666284] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() trying frequency 400000 Hz (attempt 0)
[    3.680723] EXT4-fs (mmcblk0p1): warning: mounting fs with errors, running e2fsck is recommended
[    3.684092] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() starting, freq=400000 Hz
[    3.684102] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() already powered on, skipping
[    3.684108] sdio_reset: ENTER - starting SDIO reset sequence
[    3.684979] mmc_io_rw_direct_host: Command failed with error -110
[    3.720914] sdio_reset: Read SDIO_CCCR_ABORT failed with error -110, using default abort=0x08
[    3.729455] sdio_reset: Writing SDIO_CCCR_ABORT with value=0x08
[    3.736255] mmc_io_rw_direct_host: Command failed with error -110
[    3.742385] sdio_reset: EXIT - returning ret=-110
[    3.747115] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    3.756280] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    3.766574] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    3.779668] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    3.780938] EXT4-fs (mmcblk0p1): mounted filesystem 70efc7c8-e4e4-40fa-9ca3-842cb57eb774 r/w with ordered data mode. Quota mode: none.
[    3.788821] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    3.788838] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    3.801025] VFS: Mounted root (ext4 filesystem) on device 179:1.
[    3.813301] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying SDIO attach
[    3.821953] devtmpfs: mounted
[    3.827478] sdhci-am654 fa20000.mmc: DEBUG: mmc_attach_sdio() starting
[    3.830829] sdhci-am654 fa20000.mmc: DEBUG: mmc_attach_sdio() mmc_send_io_op_cond FAILED, err=-110
[    3.837085] Freeing unused kernel memory: 2752K
[    3.838190] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() SDIO attach FAILED
[    3.844810] Run /sbin/init as init process
[    3.853635] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying SD attach
[    3.858155]   with arguments:
[    3.858158]     /sbin/init
[    3.869246] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() SD attach FAILED
[    3.869967]   with environment:
[    3.877519] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying MMC attach
[    3.885067]     HOME=/
[    3.885071]     TERM=linux
[    3.885074]     mtdparts=spi-nand0:512k(ospi_nand.tiboot3),2m(ospi_nand.tispl),4m(ospi_nand.u-boot),256k(ospi_nand.env),256k(ospi_nand.env.backup),98048k@32m(ospi_nand.rootfs),256k@130816k(ospi_nand.phypattern)
[    3.892719] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    3.901854] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    3.912160] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    3.923476] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() MMC attach FAILED
[    3.931190] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() ALL attach methods failed, powering off
[    3.940800] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_off() starting
[    3.947244] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x0, regulator_enabled=1
[    3.956324] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: disabling regulator (vdd_bit=0)
[    3.965356] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator_disable() SUCCESS
[    3.975310] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_off() completed
[    3.981814] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() trying frequency 300000 Hz (attempt 1)
[    3.990564] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() starting, freq=300000 Hz
[    3.998880] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() starting, ocr=0x300000
[    4.006411] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=0
[    4.015579] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    4.025885] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: calling regulator_enable()
[    4.032630] systemd[1]: System time before build time, advancing clock.
[    4.097077] NET: Registered PF_INET6 protocol family
[    4.103474] Segment Routing with IPv6
[    4.107174] In-situ OAM (IOAM) with IPv6
[    4.111139] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator_enable() SUCCESS
[    4.141001] systemd[1]: systemd 255.17^ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -TPM2 -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=unified)
[    4.173018] systemd[1]: Detected architecture arm64.
[    4.189197] systemd[1]: Hostname set to <am62xx-lp-evm>.
[    4.432552] systemd[1]: Configuration file /usr/lib/systemd/system/ti-apps-launcher.service is marked executable. Please remove executable permission bits. Proceeding anyway.
[    4.480052] systemd[1]: Configuration file /usr/lib/systemd/system/seva-launcher.service is marked executable. Please remove executable permission bits. Proceeding anyway.
[    4.568935] systemd[1]: /usr/lib/systemd/system/bt-enable.service:9: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
[    4.661100] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    4.670337] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    4.680658] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    4.748963] systemd[1]: Queued start job for default target Graphical Interface.
[    4.795103] systemd[1]: Created slice Slice /system/getty.
[    4.814458] systemd[1]: Created slice Slice /system/modprobe.
[    4.834424] systemd[1]: Created slice Slice /system/serial-getty.
[    4.853767] systemd[1]: Created slice User and Session Slice.
[    4.871938] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[    4.891808] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    4.911602] systemd[1]: Expecting device /dev/ttyS2...
[    4.923615] systemd[1]: Reached target Path Units.
[    4.935488] systemd[1]: Reached target Remote File Systems.
[    4.951475] systemd[1]: Reached target Slice Units.
[    4.963486] systemd[1]: Reached target Swaps.
[    5.028997] systemd[1]: Listening on RPCbind Server Activation Socket.
[    5.047688] systemd[1]: Reached target RPC Port Mapper.
[    5.072139] systemd[1]: Listening on Process Core Dump Socket.
[    5.092081] systemd[1]: Listening on initctl Compatibility Named Pipe.
[    5.113460] systemd[1]: Listening on Journal Audit Socket.
[    5.132578] systemd[1]: Listening on Journal Socket (/dev/log).
[    5.152533] systemd[1]: Listening on Journal Socket.
[    5.173012] systemd[1]: Listening on Network Service Netlink Socket.
[    5.195242] systemd[1]: Listening on udev Control Socket.
[    5.203349] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() completed successfully
[    5.214008] sdio_reset: ENTER - starting SDIO reset sequence
[    5.221183] systemd[1]: Listening on udev Kernel Socket.
[    5.221234] mmc_io_rw_direct_host: Command failed with error -110
[    5.232610] sdio_reset: Read SDIO_CCCR_ABORT failed with error -110, using default abort=0x08
[    5.232615] sdio_reset: Writing SDIO_CCCR_ABORT with value=0x08
[    5.233725] mmc_io_rw_direct_host: Command failed with error -110
[    5.253123] sdio_reset: EXIT - returning ret=-110
[    5.257832] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    5.272480] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    5.283074] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    5.284249] systemd[1]: Listening on User Database Manager Socket.
[    5.296222] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    5.308729] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    5.308743] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    5.331731] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying SDIO attach
[    5.342680] sdhci-am654 fa20000.mmc: DEBUG: mmc_attach_sdio() starting
[    5.354866] sdhci-am654 fa20000.mmc: DEBUG: mmc_attach_sdio() mmc_send_io_op_cond FAILED, err=-110
[    5.363913] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() SDIO attach FAILED
[    5.371696] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying SD attach
[    5.383768] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() SD attach FAILED
[    5.391368] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying MMC attach
[    5.399020] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    5.408142] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    5.418401] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    5.429903] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() MMC attach FAILED
[    5.437555] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() ALL attach methods failed, powering off
[    5.439856] systemd[1]: Mounting Huge Pages File System...
[    5.447164] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_off() starting
[    5.447228] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x0, regulator_enabled=1
[    5.468090] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: disabling regulator (vdd_bit=0)
[    5.477070] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator_disable() SUCCESS
[    5.486955] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_off() completed
[    5.497242] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() trying frequency 200000 Hz (attempt 2)
[    5.502893] systemd[1]: Mounting POSIX Message Queue File System...
[    5.505980] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() starting, freq=200000 Hz
[    5.520553] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() starting, ocr=0x300000
[    5.520587] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=0
[    5.537171] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    5.547432] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: calling regulator_enable()
[    5.556073] systemd[1]: Mounting Kernel Debug File System...
[    5.580211] systemd[1]: Kernel Trace File System was skipped because of an unmet condition check (ConditionPathExists=/sys/kernel/tracing).
[    5.599418] systemd[1]: Mounting Temporary Directory /tmp...
[    5.619740] systemd[1]: Starting Create List of Static Device Nodes...
[    5.635419] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator_enable() SUCCESS
[    5.650754] systemd[1]: Starting Load Kernel Module configfs...
[    5.673950] systemd[1]: Starting Load Kernel Module drm...
[    5.698375] systemd[1]: Starting Load Kernel Module fuse...
[    5.720309] systemd[1]: Starting Start psplash boot splash screen...
[    5.753697] systemd[1]: Starting RPC Bind...
[    5.765007] fuse: init (API version 7.41)
[    5.768986] systemd[1]: File System Check on Root Device was skipped because of an unmet condition check (ConditionPathIsReadWrite=!/).
[    5.793679] systemd[1]: Starting Journal Service...
[    5.818888] systemd[1]: Starting Load Kernel Modules...
[    5.840652] systemd[1]: Starting Generate network units from Kernel command line...
[    5.877892] systemd[1]: Starting Remount Root and Kernel File Systems...
[    5.909163] systemd[1]: Starting Coldplug All udev Devices...
[    5.917551] systemd-journald[124]: Collecting audit messages is enabled.
[    5.945817] systemd[1]: Started RPC Bind.
[    5.960925] systemd[1]: Mounted Huge Pages File System.
[    5.964390] EXT4-fs (mmcblk0p1): re-mounted 70efc7c8-e4e4-40fa-9ca3-842cb57eb774 r/w. Quota mode: none.
[    5.991868] systemd[1]: Mounted POSIX Message Queue File System.
[    6.012534] systemd[1]: Mounted Kernel Debug File System.
[    6.032711] systemd[1]: Mounted Temporary Directory /tmp.
[    6.053437] systemd[1]: Finished Create List of Static Device Nodes.
[    6.073319] systemd[1]: modprobe@configfs.service: Deactivated successfully.
[    6.081580] systemd[1]: Finished Load Kernel Module configfs.
[    6.101388] systemd[1]: modprobe@drm.service: Deactivated successfully.
[    6.109247] systemd[1]: Finished Load Kernel Module drm.
[    6.128320] systemd[1]: Started Journal Service.
[    6.163389] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    6.173577] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    6.185855] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    6.430021] systemd-journald[124]: Received client request to flush runtime journal.
[    6.707412] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() completed successfully
[    6.715004] sdio_reset: ENTER - starting SDIO reset sequence
[    6.720807] mmc_io_rw_direct_host: Command failed with error -110
[    6.720823] sdio_reset: Read SDIO_CCCR_ABORT failed with error -110, using default abort=0x08
[    6.720829] sdio_reset: Writing SDIO_CCCR_ABORT with value=0x08
[    6.726975] mmc_io_rw_direct_host: Command failed with error -110
[    6.726989] sdio_reset: EXIT - returning ret=-110
[    6.727002] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    6.727011] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    6.727032] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    6.747672] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    6.747691] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    6.747707] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    6.761630] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying SDIO attach
[    6.761648] sdhci-am654 fa20000.mmc: DEBUG: mmc_attach_sdio() starting
[    6.776831] sdhci-am654 fa20000.mmc: DEBUG: mmc_attach_sdio() mmc_send_io_op_cond FAILED, err=-110
[    6.839557] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() SDIO attach FAILED
[    6.847337] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying SD attach
[    6.847522] audit: type=1334 audit(1736360579.812:2): prog-id=6 op=LOAD
[    6.861785] audit: type=1334 audit(1736360579.816:3): prog-id=7 op=LOAD
[    6.870675] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() SD attach FAILED
[    6.878345] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying MMC attach
[    6.886032] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    6.895191] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    6.905505] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    6.916404] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() MMC attach FAILED
[    6.929554] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() ALL attach methods failed, powering off
[    6.943214] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_off() starting
[    6.949717] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x0, regulator_enabled=1
[    6.949736] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: disabling regulator (vdd_bit=0)
[    6.949766] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator_disable() SUCCESS
[    6.951085] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_off() completed
[    6.951104] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() trying frequency 100000 Hz (attempt 3)
[    6.951112] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() starting, freq=100000 Hz
[    6.951118] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() starting, ocr=0x300000
[    6.951138] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=0
[    6.951145] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    6.951160] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: calling regulator_enable()
[    7.031414] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator_enable() SUCCESS
[    7.177919] audit: type=1334 audit(1736360580.140:4): prog-id=8 op=LOAD
[    7.184654] audit: type=1334 audit(1736360580.148:5): prog-id=9 op=LOAD
[    7.192156] audit: type=1334 audit(1736360580.156:6): prog-id=10 op=LOAD
[    7.280113] audit: type=1334 audit(1736360580.244:7): prog-id=11 op=LOAD
[    7.307442] audit: type=1334 audit(1736360580.268:8): prog-id=12 op=LOAD
[    7.571515] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    7.584072] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    7.599412] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    8.078610] audit: type=1334 audit(1753981786.617:9): prog-id=13 op=LOAD
[    8.147549] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_up() completed successfully
[    8.163356] sdio_reset: ENTER - starting SDIO reset sequence
[    8.178600] mmc_io_rw_direct_host: Command failed with error -110
[    8.191368] sdio_reset: Read SDIO_CCCR_ABORT failed with error -110, using default abort=0x08
[    8.207378] sdio_reset: Writing SDIO_CCCR_ABORT with value=0x08
[    8.222567] mmc_io_rw_direct_host: Command failed with error -110
[    8.235351] sdio_reset: EXIT - returning ret=-110
[    8.240186] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    8.249450] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    8.261034] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    8.280331] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    8.291403] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    8.301842] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    8.316946] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying SDIO attach
[    8.327373] sdhci-am654 fa20000.mmc: DEBUG: mmc_attach_sdio() starting
[    8.348354] sdhci-am654 fa20000.mmc: DEBUG: mmc_attach_sdio() mmc_send_io_op_cond FAILED, err=-110
[    8.363368] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() SDIO attach FAILED
[    8.371317] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying SD attach
[    8.396254] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() SD attach FAILED
[    8.407374] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() trying MMC attach
[    8.423146] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x15, regulator_enabled=1
[    8.436779] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: enabling regulator, voltage=3300000-3400000 uV
[    8.447572] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator already enabled, skipping enable call
[    8.466249] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() MMC attach FAILED
[    8.474058] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan_try_freq() ALL attach methods failed, powering off
[    8.484038] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_off() starting
[    8.495410] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: vdd_bit=0x0, regulator_enabled=1
[    8.509012] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: disabling regulator (vdd_bit=0)
[    8.518122] sdhci-am654 fa20000.mmc: DEBUG: mmc_regulator_set_ocr: regulator_disable() SUCCESS
[    8.528374] sdhci-am654 fa20000.mmc: DEBUG: mmc_power_off() completed
[    8.534981] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() FAILED to initialize non-removable card
[    8.535000] mmc2: Failed to initialize a non-removable card
[    8.535007] sdhci-am654 fa20000.mmc: DEBUG: mmc_rescan() completed, no polling scheduled

  • Hello Sai,

    Just want to first clear up a few things. I know you're using the BP-CC3301MOD, but how are you connecting this to the AM625-Q1? Are you using the SK-AM625-LP board? If so, are you using jumper wires to connect the boards? Also, if you're using the SK-AM62-LP board, then I highly recommend to use the M2-CC3351 as using jumper wires to the BP-CC3301MOD board will likely cause signal integrity issues.

    Next, some suggestions in the devicetree. In general I would recommend referring to the devicetree from the AM62x SDK because we have an example. You can find it here: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am625-sk-m2-cc3351.dtso?h=ti-linux-6.12.y

    Regardless, I will be specific in the differences I see:

    • You must add the MMC2_CLKB "pin" as well into the main_mmc2_pin_default: 
      AM62X_IOPAD(0x11c, PIN_INPUT, 0) /* (#N/A) MMC2_CLKB */
    • I would suggest removing the following:
      broken-cd;
      post-power-on-delay-ms = <0x1f4>;
      disable-wp;
      no-1-8-v;

    Everything else in the DTS seems to be correct.

  • Hi Sabeeh,

    * We're making a custom SOM board derived from AM625 LP SK.

    * Boards are connected with jumper cables.

    * I added suggested changes to device tree. Still seeing the timeout error.

    One thing we noticed is data, seen using oscilloscope, on MMC2_CMD line is not consistent. It appears in random initialization instances. We're seeing some noise in CLK and CMD lines, but it looks within the threshold.

  • Hello Sai,

    What do you mean by the MMC2_CMD line is not consistent? You should only see it active when the linux kernel is trying to send commands to the device.

    * Boards are connected with jumper cables.

    Again, I don't really recommend this. 

    Anyways, please ensure that the cc3301MOD board is configured correctly. If your am62 board is using 1.8V IO, then please select the 1.8V jumpers on the MOD board. 

    How are you supplying power to the cc3301MOD board?