首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spidev读取eeprom id

spidev读取eeprom id
EN

Stack Overflow用户
提问于 2018-05-27 15:48:20
回答 1查看 818关注 1票数 0

OS: Linux,我正在用户空间中编写一个spidev应用程序来读取EEPROM id。我的设备树条目如下:

代码语言:javascript
复制
spi0: spi@ffda4000 {
    compatible = "snps,dw-apb-ssi";
    #address-cells = <1>;
    #size-cells = <0>;
    reg = <0xffda4000 0x100>;
    interrupt-parent = <&intc>;
    interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
    num-cs = <2>;
    cs-gpios = <&porta 7 GPIO_ACTIVE_HIGH>, <&porta 0 GPIO_ACTIVE_HIGH>;
    bus-num = <0>;
    tx-dma-channel = <&pdma 16>;
    rx-dma-channel = <&pdma 17>;
    clocks = <&spi_m_clk>;
    status = "disabled";
};

然后:

代码语言:javascript
复制
&spi0 {
    status = "okay";
    m25p10_spi@0 {
        compatible = "m25p10";
        reg = <0>;  /* chip select */
        spi-max-frequency = <20000000>;
        /* m25p,fast-read; */
        enable-dma = <0>;
    };
    spidev@0 {
        compatible = "rohm,dh2228fv";
        reg = <0>;  /* chip select */
        spi-max-frequency = <20000000>;
        enable-dma = <0>;
    };
};

其思想是在与m25p10相同的节点上设置spidev,这样当用户空间应用程序打开"/dev/spidev0.0“句柄时,它实际上是在与m25p10对话。但我无法启动linux。这种方法有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-28 09:20:17

这不管用。一个设备- DT中的一个定义。

另外,为什么你需要有spidev设备?您已经拥有了m25p10_spi,它应该显示为MTD设备(类似于/dev/mtd0),从用户空间访问它应该没有问题。

更新:

看起来OP希望通过RDID命令保留MTD和读取设备唯一ID,而当前的m25p10驱动程序不支持这个命令。

我可能错了,但对我来说,最简单的解决方案是扩展驱动程序,使用RDID数据创建sysfs条目,即在探测期间读取。

一些宝贵的资源:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50553870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档