OpenNuvoton / NUC980-linux-5.10.y

NUC980 Linux Kernel 5.10.y
Other
12 stars 7 forks source link

nuc980 linux-5.10 下SPI 怎么配置 所偶片选脚启用 下面是的设备树配置 #13

Open zwjin1210 opened 3 weeks ago

zwjin1210 commented 3 weeks ago
    pinctrl: pinctrl@b0000000 {
        spi0 {
            pinctrl_spi0: spi0 {
                nuvoton,pins =
                    <3 0x8 0x1 0
                     3 0x9 0x1 0
                     3 0xA 0x1 0
                     3 0xB 0x1 0
                     6 0xF 0x1 0
                    >;
            };
        };

        spi1 {
            pinctrl_spi1: spi1 {
                nuvoton,pins =
                    <1 0x6 0x6 0
                     1 0x4 0x6 0
                     1 0x5 0x6 0
                     1 0x7 0x6 0
                     1 0x1 0x6 0
                    >;
            };
        };
    };

    spi0: spi@b0061000 {
        status = "okay";
        #address-cells = <1>;
        #size-cells = <0>;
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_spi0>;
        num_cs  = <2>;
        lsb  = <0>;
        txneg   = <1>;
        rxneg   = <0>;
        divider = <4>;
        sleep   = <0>;
        txnum   = <0>;
        txbitlen = <8>;
        bus_num = <2>;

        spidev0_0@0 {
            compatible = "my_spidev";
            spi-max-frequency = <30000000>;
            reg = <0>;
        };
        spidev0_2@1 {
            compatible = "my_spidev";
            spi-max-frequency = <30000000>;
            reg = <1>;
        };          
    };

    spi1: spi@b0062000 {
        status = "okay";
        #address-cells = <1>;
        #size-cells = <0>;
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_spi1>;
        num_cs  = <2>;
        lsb  = <0>;
        txneg   = <1>;
        rxneg   = <0>;
        divider = <4>;
        sleep   = <0>;
        txnum   = <0>;
        txbitlen = <8>;
        bus_num = <2>;

        spidev1_0@0 {
            compatible = "my_spidev";
            spi-max-frequency = <30000000>;
            reg = <0>;
        };
        spidev1_1@1 {
            compatible = "my_spidev";
            spi-max-frequency = <30000000>;
            reg = <1>;
        };          
    };
};

image

cwweng-nuvoton commented 3 weeks ago

Hi,

請將設備樹改成如下:

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

        num_cs  = <2>;
        lsb  = <0>;
        txneg   = <1>;
        rxneg   = <0>;
        clkpol  = <0>;
        divider = <4>;
        sleep   = <0>;
        txnum   = <0>;
        txbitlen = <8>;
        bus_num = <1>;

        spidev0_0: spi@0 {
            compatible = "semtech,sx1301";
            reg = <0>;
            spi-max-frequency = <12000000>;
        };

        spidev0_1: spi@1 {
            compatible = "semtech,sx1301";
            reg = <1>;
            spi-max-frequency = <12000000>;
        };
    };

    spi1: spi@b0062000 {
        status = "okay";
        #address-cells = <1>;
        #size-cells = <0>;

        num_cs  = <2>;
        lsb  = <0>;
        txneg   = <1>;
        rxneg   = <0>;
        clkpol  = <0>;
        divider = <4>;
        sleep   = <0>;
        txnum   = <0>;
        txbitlen = <8>;
        bus_num = <2>;

        spidev1_0: spi@0 {
            compatible = "semtech,sx1301";
            reg = <0>;
            spi-max-frequency = <12000000>;
        };

        spidev1_1: spi@1 {
            compatible = "semtech,sx1301";
            reg = <1>;
            spi-max-frequency = <12000000>;
        };
    };

spi0 和 spi1 的 spidev 就可以產生在 /dev 目錄下 image