我在BeaglebBone Black( SDK-PROCESSOR2.00.02.11版本 )上使用RTL8723BS的WIFI模塊,ifconfig -a发现没有wlan0设备,ifconfig wlan0 up回應No Such Deivce,我有額外安裝廠商給的rtl8723bs-master Drvier,開機也有init進去,目前感覺是SDIO pin mux有出錯,我是用的是mmc2(軟體為mmc3),以下為我修改的兩個dts,能幫我看看是否哪裡設定錯了嗎? 感謝。
am335x-bone-common.dtsi檔案有新增的程式碼 :
&am33xx_pinmux {
mmc3_pins: pinmux_mmc3_pins {
pinctrl-single,pins = <
0x44 (PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a1.mmc2_dat0, INPUT_PULLUP | MODE3 */
0x48 (PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a2.mmc2_dat1, INPUT_PULLUP | MODE3 */
0x4C (PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a3.mmc2_dat2, INPUT_PULLUP | MODE3 */
0x78 (PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_ben1.mmc2_dat3, INPUT_PULLUP | MODE3 */
0x88 (PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_csn3.mmc2_cmd, INPUT_PULLUP | MODE3 */
0x8C (PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_clk.mmc2_clk, INPUT_PULLUP | MODE3 */
>;
};
}
am335x-boneblack.dts 檔案:
{
wlan_en_reg: fixedregulator@2 { compatible = "regulator-fixed"; regulator-name = "wlan-en-regulator"; regulator-min-microvolt = <3000000>; regulator-max-microvolt = <3000000>; startup-delay-us = <70000>; enable-active-high; };
};
&mmc3 {
dmas = <&edma_xbar 12 0 1
&edma_xbar 13 0 2>;
dma-names = "tx","rx";
status = "okay";
vmmc-supply = <&wlan_en_reg>;
bus-width = <4>;
pinctrl-names = "default";
pinctrl-0 = <&mmc3_pins>;
ti,non-removable;
ti,needs-special-hs-handling;
cap-power-off-card;
keep-power-in-suspend;
#address-cells = <1>;
#size-cells = <0>;
};
補充 :
關於mmc的訊息
root@am335x-evm:~# dmesg | grep -i mmc
[ 1.174537] omap_hsmmc 48060000.mmc: GPIO lookup for consumer cd
[ 1.174553] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
[ 1.174579] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/mmc@48060000[0]' - status (0)
[ 1.174653] omap_hsmmc 48060000.mmc: Got CD GPIO
[ 1.179296] omap_hsmmc 48060000.mmc: GPIO lookup for consumer wp
[ 1.179303] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
[ 1.179313] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@48060000[0]'
[ 1.179321] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@48060000[0]'
[ 1.179329] omap_hsmmc 48060000.mmc: using lookup tables for GPIO lookup
[ 1.179338] omap_hsmmc 48060000.mmc: lookup for GPIO wp failed
[ 1.213443] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer cd
[ 1.213463] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
[ 1.213475] of_get_named_gpiod_flags: can't parse 'cd-gpios' property of node '/ocp/mmc@481d8000[0]'
[ 1.213484] of_get_named_gpiod_flags: can't parse 'cd-gpio' property of node '/ocp/mmc@481d8000[0]'
[ 1.213492] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
[ 1.213500] omap_hsmmc 481d8000.mmc: lookup for GPIO cd failed
[ 1.213590] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer wp
[ 1.213598] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
[ 1.213606] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@481d8000[0]'
[ 1.213614] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@481d8000[0]'
[ 1.213622] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
[ 1.213629] omap_hsmmc 481d8000.mmc: lookup for GPIO wp failed
[ 1.250040] mmc0: host does not support reading read-only switch, assuming write-enable
[ 1.258396] omap_hsmmc 47810000.mmc: GPIO lookup for consumer cd
[ 1.258409] omap_hsmmc 47810000.mmc: using device tree for GPIO lookup
[ 1.258421] of_get_named_gpiod_flags: can't parse 'cd-gpios' property of node '/ocp/mmc@47810000[0]'
[ 1.258430] of_get_named_gpiod_flags: can't parse 'cd-gpio' property of node '/ocp/mmc@47810000[0]'
[ 1.258437] omap_hsmmc 47810000.mmc: using lookup tables for GPIO lookup
[ 1.258446] omap_hsmmc 47810000.mmc: lookup for GPIO cd failed
[ 1.258456] omap_hsmmc 47810000.mmc: GPIO lookup for consumer wp
[ 1.258463] omap_hsmmc 47810000.mmc: using device tree for GPIO lookup
[ 1.258471] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@47810000[0]'
[ 1.258479] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@47810000[0]'
[ 1.258486] omap_hsmmc 47810000.mmc: using lookup tables for GPIO lookup
[ 1.258494] omap_hsmmc 47810000.mmc: lookup for GPIO wp failed
[ 1.260980] mmc0: new high speed SDHC card at address 59b4
[ 1.267116] mmcblk0: mmc0:59b4 USD 7.36 GiB
[ 1.273315] mmcblk0: p1 p2
[ 1.332862] mmc1: MAN_BKOPS_EN bit is not set
[ 1.384321] mmc1: new high speed MMC card at address 0001
[ 1.390303] mmcblk1: mmc1:0001 S10004 3.56 GiB
[ 1.395553] mmcblk1boot0: mmc1:0001 S10004 partition 1 4.00 MiB
[ 1.402068] mmcblk1boot1: mmc1:0001 S10004 partition 2 4.00 MiB
[ 1.409885] mmcblk1: p1
[ 1.782804] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 4.146961] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 10.764207] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[ 11.143351] EXT4-fs (mmcblk1p1): recovery complete
[ 11.148205] EXT4-fs (mmcblk1p1): mounted filesystem with ordered data mode. Opts: (null)