Firefly开源社区

DTS如何将总线编号传给内核

64

积分

0

威望

0

贡献

游客

积分
64
发表于 2018-6-28 16:23:52     
1.在DTS中添加SPI驱动结点描述,如下所示: kernel/arch/arm/boot/dts/rk3128-fireprime.dts
只传给内核,使用的是SPI0,且使用CS0,spi-max-frequency:设置spi使用的最高频率。
spi-cpha,spi-cpol:设置SPI工作模式为SPI_MODE_1,
但没有设置SPI的总线编号,总线编号是如何传给内核的,他是如何确定使用那个硬件SPI控制器的
&spi0 {
         status = "okay";                                                                                                   
         max-freq = <24000000>;
         spidev@00 {                                                                                                         
                 compatible = "rockchip,spi_firefly";
                 reg = <0x00>;
                 spi-max-frequency = <14000000>;
                 spi-cpha = <1>;
                 //spi-cpol = <1>;
         };
};
2.SPI0的寄存器地址和地址长度是如何计算的,我再规格书中只找到
The UART0’s Base Address is 0x20060000.
The UART1’s Base Address is 0x20064000.
The UART2’s Base Address is 0x20068000.没找到SPI的Base Address,还请多指教
spi0: spi@20074000 {
                compatible = "rockchip,rockchip-spi";
                reg = <0x20074000 0x1000>;


回复

使用道具 举报

753

积分

4

威望

0

贡献

技术大神

Rank: 3Rank: 3

积分
753
发表于 2018-7-2 09:43:59     
额,最终决定是哪个硬件控制器的还是要看地址,规格书里面应该有,你没找到而已,实在不行,你在dtsi里面先找到spi的地址,再反推,到规格书里面找
回复

使用道具 举报

*滑块验证:

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表