单片机/MCU论坛
直播中

吕钢格

7年用户 976经验值
私信 关注
[问答]

MCP251X can驱动移植nuc980采样用设备树配置时,中断如何配置设备树?

MCP251X can驱动移植  nuc980 采样用设备树配置时,中断如何配置设备树?
                spi0: spi@b0061000 {
                        status = "okay";
                        #address-cells = <1>;
                        #size-cells = <0>;
                        pinctrl-names = "default";

                        ......
                        
                        mcp251xfd: can0@0 {
                                reg = <0>;
                                compatible = "microchip,mcp251xfd";
                                interrupt-parent = < aic>;//中断如何配置设备树??? 如何对应PA0
                                interrupts = ;//中断如何配置设备树??? 如何对应PA0
                                spi-cpha = <0>;
                                spi-cpol = <0>;
                                spi-max-frequency = <2000000>;
                                status = "okay";
                        };
                };

回帖(1)

凌流浪

2024-1-17 15:33:25
您可以在设备树中为MCP251X的中断配置一个中断控制器,并将其与SPI控制器的中断信号相连。以下是一个设备树配置示例:

spi0: spi@b0061000 {
    status = "okay";
    #address-cells = <1>;

    mcp251x@0 {
        compatible = "microchip,mcp251x";
        reg = <0>;
        interrupt-parent = <&interrupt_controller>;
        interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
        spi-max-frequency = <10000000>;

        ...

    };
};

interrupt_controller: interrupt-controller {
    compatible = "interrupt-controller";
    #interrupt-cells = <2>;

    ...
};

在上面的示例中,我们假设中断控制器的节点名称为interrupt-controller,并且与MCP251X设备节点位于同一层级。

要实现中断支持,您还需要在MCP251X驱动程序中配置中断处理程序,并在中断处理程序中处理MCP251X的中断事件。具体的实现会根据您所使用的驱动程序而有所不同。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分