MT7628AN 使用SPI的CS1接SD卡问题

fensnote 2017-12-09 01:55:46
大家好,最近项目准备用mt7628的方案,发现一个比较纠结的问题,SD卡与网口有复用,正好还需要用到多个网口;
SD卡只能用spi连接了,spi的cs0连接了spi flash,所以只能用spi的cs1,
现在的问题是sd卡一直识别不了,连不上;
麻烦大家帮看下:

cs1也是复用引脚,这个已经配置了,还有就是dts里的配置,接下来贴给大家看下,帮看看问题:
pinctrl {
compatible = "ralink,rt2880-pinmux";
pinctrl-names = "default";
pinctrl-0 = <&state_default>;
state_default: pinctrl0 {
};
spi_pins: spi {
spi {
ralink,group = "spi";
ralink,function = "spi";
};
};
//复用配置在此
spi_cs1_pins: spi_cs1 {
spi_cs1 {
ralink,group = "spi cs1";
ralink,function = "spi cs1";
};
};
spi@b00 {
compatible = "ralink,mt7621-spi","ralink,rt5350-spi";
reg = <0xb00 0x100>;

resets = <&rstctrl 18>;
reset-names = "spi";

#address-cells = <1>;
#size-cells = <1>;

pinctrl-names = "default";
pinctrl-0 = <&spi_pins>;

status = "disabled";
};



配置cs1连接sd卡,m25p80是flash,后面是我添加的mmc_spi:
palmbus@10000000 {
spi@b00 {
status = "okay";

pinctrl-names = "default";
pinctrl-0 = <&spi_pins>, <&spi_cs1_pins>;

m25p80@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "mx25l25635e";
reg = <0 0>;
linux,modalias = "m25p80", "mx25l25635e";
spi-max-frequency = <40000000>;
m25p,chunked-io = <31>;

partition@0 {
label = "u-boot";
reg = <0x0 0x30000>;
read-only;
};

partition@30000 {
label = "u-boot-env";
reg = <0x30000 0x10000>;
};

factory: partition@40000 {
label = "factory";
reg = <0x40000 0x10000>;
read-only;
};

partition@50000 {
label = "firmware";
reg = <0x50000 0x1fb0000>;
};
};

mmc_spi@1 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "mmc-spi-slot";
reg = <1 0>;
linux,modalias = "mmc_spi", "mmc-spi-slot";
spi-max-frequency = <25000000>;

spi-cpol = <0>;
spi-cpha = <0>;

status = "okay";
};
};
内核配置也都选上了,


启动时,会打印:
[ 0.760000] mmc_spi spi32766.1: OF: voltage-ranges unspecified
[ 0.770000] mmc_spi spi32766.1: ASSUMING 3.2-3.4 V slot power
[ 0.820000] mmc_spi spi32766.1: SD/MMC host mmc0, no WP, no poweroff
但是dev下面没有节点,

查看调试信息
cat /sys/kernel/debug/mmc0/ios
clock: 0 Hz
vdd: 0 (invalid)
bus mode: 2 (push-pull)
chip select: 1 (active high)
power mode: 0 (off)
bus width: 0 (1 bits)

麻烦大家帮看下!!感激不尽!
timing spec: 0 (legacy)
signal voltage: 1 (3.30 V)
...全文
650 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
jklinux 2017-12-10
  • 打赏
  • 举报
回复
建议先检查下"/sys/bus/spi/device"下有没有mmc-spi-slot设备,再检查"/sys/bus/spi/driver"下有没有mmc_spi的设备驱动是否有与设备匹配。

4,441

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧