Message ID | 20200815163514.11631-3-hauke@hauke-m.de (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [1/3] MIPS: DTS: img: marduk: Add SPI NAND flash | expand |
Hello Hauke, I would like to ask how to write UART nodes of SC16IS752, our CU1000-Neo board also uses SC16IS752 to expand GPIOs and UARTs, and the bluetooth module (from AP6212A) is connected to UART expanded by SC16IS752, but I don't know how to write UART node, so bluetooth cannot be used normally at present. Thanks and best regards! 在 2020/8/16 上午12:35, Hauke Mehrtens 写道: > Add NXP SC16IS752IPW SPI-UART controller to device tree. > > This controller drives 2 UARTs and 7 LEDs on the board. > > Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> > --- > arch/mips/boot/dts/img/pistachio_marduk.dts | 51 +++++++++++++++++++++ > 1 file changed, 51 insertions(+) > > diff --git a/arch/mips/boot/dts/img/pistachio_marduk.dts b/arch/mips/boot/dts/img/pistachio_marduk.dts > index 633a41954cc0..f4965a484b72 100644 > --- a/arch/mips/boot/dts/img/pistachio_marduk.dts > +++ b/arch/mips/boot/dts/img/pistachio_marduk.dts > @@ -46,6 +46,46 @@ > regulator-max-microvolt = <1800000>; > }; > > + /* EXT clock from ca8210 is fed to sc16is752 */ > + ca8210_ext_clk: ca8210-ext-clk { > + compatible = "fixed-clock"; > + #clock-cells = <0>; > + clock-frequency = <16000000>; > + clock-output-names = "ca8210_ext_clock"; > + }; > + > + gpioleds { > + compatible = "gpio-leds"; > + user1 { > + label = "marduk:red:user1"; > + gpios = <&sc16is752 0 GPIO_ACTIVE_LOW>; > + }; > + user2 { > + label = "marduk:red:user2"; > + gpios = <&sc16is752 1 GPIO_ACTIVE_LOW>; > + }; > + user3 { > + label = "marduk:red:user3"; > + gpios = <&sc16is752 2 GPIO_ACTIVE_LOW>; > + }; > + user4 { > + label = "marduk:red:user4"; > + gpios = <&sc16is752 3 GPIO_ACTIVE_LOW>; > + }; > + user5 { > + label = "marduk:red:user5"; > + gpios = <&sc16is752 4 GPIO_ACTIVE_LOW>; > + }; > + user6 { > + label = "marduk:red:user6"; > + gpios = <&sc16is752 5 GPIO_ACTIVE_LOW>; > + }; > + user7 { > + label = "marduk:red:user7"; > + gpios = <&sc16is752 6 GPIO_ACTIVE_LOW>; > + }; > + }; > + > leds { > compatible = "pwm-leds"; > heartbeat { > @@ -95,6 +135,17 @@ > extclock-freq = <16000000>; > extclock-gpio = <2>; > }; > + > + sc16is752: sc16is752@1 { > + compatible = "nxp,sc16is752"; > + reg = <1>; > + clocks = <&ca8210_ext_clk>; > + spi-max-frequency = <4000000>; > + interrupt-parent = <&gpio0>; > + interrupts = <11 IRQ_TYPE_EDGE_FALLING>; > + gpio-controller; > + #gpio-cells = <2>; > + }; > }; > > &spfi1 {
diff --git a/arch/mips/boot/dts/img/pistachio_marduk.dts b/arch/mips/boot/dts/img/pistachio_marduk.dts index 633a41954cc0..f4965a484b72 100644 --- a/arch/mips/boot/dts/img/pistachio_marduk.dts +++ b/arch/mips/boot/dts/img/pistachio_marduk.dts @@ -46,6 +46,46 @@ regulator-max-microvolt = <1800000>; }; + /* EXT clock from ca8210 is fed to sc16is752 */ + ca8210_ext_clk: ca8210-ext-clk { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <16000000>; + clock-output-names = "ca8210_ext_clock"; + }; + + gpioleds { + compatible = "gpio-leds"; + user1 { + label = "marduk:red:user1"; + gpios = <&sc16is752 0 GPIO_ACTIVE_LOW>; + }; + user2 { + label = "marduk:red:user2"; + gpios = <&sc16is752 1 GPIO_ACTIVE_LOW>; + }; + user3 { + label = "marduk:red:user3"; + gpios = <&sc16is752 2 GPIO_ACTIVE_LOW>; + }; + user4 { + label = "marduk:red:user4"; + gpios = <&sc16is752 3 GPIO_ACTIVE_LOW>; + }; + user5 { + label = "marduk:red:user5"; + gpios = <&sc16is752 4 GPIO_ACTIVE_LOW>; + }; + user6 { + label = "marduk:red:user6"; + gpios = <&sc16is752 5 GPIO_ACTIVE_LOW>; + }; + user7 { + label = "marduk:red:user7"; + gpios = <&sc16is752 6 GPIO_ACTIVE_LOW>; + }; + }; + leds { compatible = "pwm-leds"; heartbeat { @@ -95,6 +135,17 @@ extclock-freq = <16000000>; extclock-gpio = <2>; }; + + sc16is752: sc16is752@1 { + compatible = "nxp,sc16is752"; + reg = <1>; + clocks = <&ca8210_ext_clk>; + spi-max-frequency = <4000000>; + interrupt-parent = <&gpio0>; + interrupts = <11 IRQ_TYPE_EDGE_FALLING>; + gpio-controller; + #gpio-cells = <2>; + }; }; &spfi1 {
Add NXP SC16IS752IPW SPI-UART controller to device tree. This controller drives 2 UARTs and 7 LEDs on the board. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> --- arch/mips/boot/dts/img/pistachio_marduk.dts | 51 +++++++++++++++++++++ 1 file changed, 51 insertions(+)