diff options
-rw-r--r-- | recipes-kernel/linux/linux-at91-4.9.87/mtr/linux-4.9-mtr-device-tree.patch | 78 |
1 files changed, 44 insertions, 34 deletions
diff --git a/recipes-kernel/linux/linux-at91-4.9.87/mtr/linux-4.9-mtr-device-tree.patch b/recipes-kernel/linux/linux-at91-4.9.87/mtr/linux-4.9-mtr-device-tree.patch index 436fece..5f00e52 100644 --- a/recipes-kernel/linux/linux-at91-4.9.87/mtr/linux-4.9-mtr-device-tree.patch +++ b/recipes-kernel/linux/linux-at91-4.9.87/mtr/linux-4.9-mtr-device-tree.patch @@ -1,7 +1,7 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts linux-4.9.87/arch/arm/boot/dts/mtr.dts --- linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts 1969-12-31 18:00:00.000000000 -0600 +++ linux-4.9.87/arch/arm/boot/dts/mtr.dts 2019-01-03 15:17:51.799576663 -0600 -@@ -0,0 +1,262 @@ +@@ -0,0 +1,281 @@ +/* + * DTS file for Multi-Tech Systems mtr Hardware + * @@ -17,6 +17,9 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts linux-4.9.87/arch/arm/boo +/ { + model = "Multi-Tech Systems MTR"; + compatible = "atmel,at91sam9g25ek", "atmel,at91sam9x5ek", "atmel,at91sam9x5", "atmel,at91sam9"; ++ aliases { ++ serial1 = &uart0; ++ }; + + chosen { + bootargs = "mem=128M console=ttyS0,115200 root=/dev/mtdblock8 ro rootfstype=jffs2"; @@ -39,6 +42,7 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts linux-4.9.87/arch/arm/boo + + ahb { + apb { ++ /delete-node/ spi@f0004000; + macb0: ethernet@f802c000 { + phy-mode = "mii"; + status = "okay"; @@ -95,17 +99,26 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts linux-4.9.87/arch/arm/boo + AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PD13 periph A Data bit 7 */ + }; + -+ pinctrl_nand_16bits: nand_16bits-0 { ++ /delete-node/ nand_16bits-0; ++ }; ++ ++ /delete-node/ spi1; ++ ++ /* ++ * Pin A23 will be left floating when the power goes off on the radio. ++ * We need to pull it down to ensure it is low during radio power-off. ++ * pinctrl is loaded during the call to platform_device_register() in mts-io. ++ * If we need to customize this for various hardware revisions, these can ++ * be loaded as overlays prior to loading the mts-io module, overwriting the ++ * atmel,pins section. ++ */ ++ mts_io { ++ pinctrl_mts_io: mts_io-0 { + atmel,pins = -+ <AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD14 periph A Data bit 8 */ -+ AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD15 periph A Data bit 9 */ -+ AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD16 periph A Data bit 10 */ -+ AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD17 periph A Data bit 11 */ -+ AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD18 periph A Data bit 12 */ -+ AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD19 periph A Data bit 13 */ -+ AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD20 periph A Data bit 14 */ -+ AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PD21 periph A Data bit 15 */ -+ }; ++ <AT91_PIOA 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PA21 GPIO pull-up radio-power */ ++ AT91_PIOA 22 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PA22 GPIO pull-up radio-reset */ ++ AT91_PIOA 23 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>; /* PA23 GPIO pull-down radio-monitor */ ++ }; + }; + + 1wire_cm { @@ -113,20 +126,8 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts linux-4.9.87/arch/arm/boo + atmel,pins = <AT91_PIOB 18 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>; /* PB18 multidrive, conflicts with led */ + }; + }; -+ -+ radio_control { -+ pinctrl_radio_control: radio_control-0 { -+ atmel,pins = -+ <AT91_PIOA 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PA22 GPIO pull-up radio-power */ -+ AT91_PIOA 22 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PA22 GPIO pull-up radio-reset */ -+ }; -+ }; + }; + -+ usart0: serial@f801c000 { -+ status = "disabled"; -+ }; -+ + rtc@fffffeb0 { + status = "okay"; + }; @@ -134,10 +135,22 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts linux-4.9.87/arch/arm/boo + dbgu: serial@fffff200 { + status = "okay"; + }; ++ ++ spi@f0000000 { ++ /delete-node/ m25p80@0; ++ }; ++ ++ /delete-node/ serial@f801c000; + + uart0: serial@f8040000 { + status = "okay"; ++ atmel,use-dma-rx; ++ atmel,use-dma-tx; ++ dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(11)>, ++ <&dma0 1 (AT91_DMA_CFG_PER_ID(12) | AT91_DMA_CFG_FIFOCFG_ASAP)>; ++ dma-names = "tx", "rx"; + }; ++ + usb2: gadget@f803c000 { + atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>; + status = "okay"; @@ -212,7 +225,7 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts linux-4.9.87/arch/arm/boo + usb1: ehci@00700000 { + status = "okay"; + }; -+ }; ++ }; + + leds { + compatible = "gpio-leds"; @@ -263,6 +276,12 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/mtr.dts linux-4.9.87/arch/arm/boo + pinctrl-0 = <&pinctrl_1wire_cm>; + status = "okay"; + }; ++ mts-io-0 { ++ status = "okay"; ++ compatible = "mts,mts-io"; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_mts_io>; ++ }; +}; diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/at91sam9x5cm.dtsi linux-4.9.87/arch/arm/boot/dts/at91sam9x5cm.dtsi --- linux-4.9.87.orig/arch/arm/boot/dts/at91sam9x5cm.dtsi 2019-01-03 15:21:25.339570341 -0600 @@ -460,7 +479,7 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/at91sam9x5.dtsi linux-4.9.87/arch ssc0 = &ssc0; pwm0 = &pwm0; }; -@@ -963,54 +960,16 @@ +@@ -963,50 +960,7 @@ status = "disabled"; }; @@ -512,15 +531,6 @@ diff -Naru linux-4.9.87.orig/arch/arm/boot/dts/at91sam9x5.dtsi linux-4.9.87/arch uart0: serial@f8040000 { compatible = "atmel,at91sam9260-usart"; - reg = <0xf8040000 0x200>; -+ atmel,use-dma-rx; -+ atmel,use-dma-tx; -+ dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(11)>, -+ <&dma0 1 (AT91_DMA_CFG_PER_ID(12) | AT91_DMA_CFG_FIFOCFG_ASAP)>; -+ dma-names = "tx", "rx"; - interrupts = <15 IRQ_TYPE_LEVEL_HIGH 5>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart0>; diff --git a/arch/arm/boot/dts/at91sam9x5ek.dtsi b/arch/arm/boot/dts/at91sam9x5ek.dtsi index d3fa60aa..0fcaa00a 100644 --- a/arch/arm/boot/dts/at91sam9x5ek.dtsi |