The "sdhci-esdhc-imx: probe of 400b1000.esdhc failed with error -22" message.

cancel
Showing results for 
Search instead for 
Did you mean: 

The "sdhci-esdhc-imx: probe of 400b1000.esdhc failed with error -22" message.

322 Views
lyudmilavoronin
Contributor II

Hello

We have the board that has wl1837 connected to esdhc0 of vybrid vf6xx via the 1.8 V - 3.3 V transformer.
My image is based on timesys linux kernel 3.13.
When booting up, the kernel gives me: "sdhci-esdhc-imx: probe of 400b1000.esdhc failed with error -22".

What does the 22 error mean in this message?

Anybody know what might be the problem?

#Is there errors in my device tree?

Additional information:

I put this in my device tree:

in vf610_marvell.dtsi:

(My vf610_marvell.dtsi file is based on ~/twr_vf600/kernel-source/linux-3.13/arch/arm/boot/dts/vf610.dtsi)
(I take this from ~/twr_vf600/kernel-source/linux-4.4/arch/arm/boot/dts/vfxxx.dtsi)

esdhc0: esdhc@400b1000 {
compatible = "fsl,imx53-esdhc";
reg = <0x400b1000 0x1000>;
interrupts = <27 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks VF610_CLK_IPG_BUS>,
<&clks VF610_CLK_PLATFORM_BUS>,
<&clks VF610_CLK_ESDHC0>;
clock-names = "ipg", "ahb", "per";
status = "disabled";
};

in vf610-twr_wifi.dts:

(My vf610-twr_wifi.dts file is based on ~/twr_vf600/kernel-source/linux-3.13/arch/arm/boot/dts/vf610-twr.dts)

wlan_en_reg: fixedregulator@2 {

compatible = "regulator-fixed";
regulator-name = "wlan-en-regulator";
regulator-min-microvolt = <3300000>; //Before were 1.8V but my processor doesn't support this.
regulator-max-microvolt = <3300000>; //Before were 1.8V but my processor doesn't support this.
gpio = <&gpio2 24 0>; // WLAN_ENABLE, PORT2[24], PTD9
startup-delay-us = <70000>;
enable-active-high;

};


&esdhc0 {
status = "okay";
vmmc-supply = <&wlan_en_reg>;
bus-width = <4>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_esdhc0 &pinctrl_wlan_pins>;
ti,non-removable;
ti,needs-special-hs-handling; //I am not sure that it is necessary!!!
cap-power-off-card;
keep-power-in-suspend;
#address-cells = <1>;
#size-cells = <0>;
wlcore: wlcore@0 {
compatible = "ti,wl1837";
reg = <2>;
interrupt-parent = <&gpio1>; // WLAN_IRQ, PORT1[31], PTD31
interrupts = <31 IRQ_TYPE_EDGE_RISING>;
};
};

pinctrl_wlan_pins: wlan_pins {
fsl,pins = <
VF610_PAD_PTD9__GPIO_88 0x2182 // WLAN_ENABLE
VF610_PAD_PTD31__GPIO_63 0x22ed // WLAN_IRQ
>;
};

pinctrl_esdhc0: esdhc0grp {
fsl,pins = <
VF610_PAD_PTC0__ESDHC0_CLK 0x31ef
VF610_PAD_PTC1__ESDHC0_CMD 0x31ef
VF610_PAD_PTC2__ESDHC0_DAT0 0x31ef
VF610_PAD_PTC3__ESDHC0_DAT1 0x31ef
VF610_PAD_PTC4__ESDHC0_DAT2 0x31ef
VF610_PAD_PTC5__ESDHC0_DAT3 0x31ef
>;
};


vf610_marvell.dtsi and vf610-twr_wifi.dts files are attached.

Settings for wi-fi and wl1837 drivers and firmware are in .config file, which is attached.

thanks

Labels (3)
Tags (1)
0 Kudos
1 Reply

131 Views
jamesbone
NXP TechSupport
NXP TechSupport

timesyssupport‌, Can you please help on this topic?

0 Kudos