From bf179173d121eb51a5597e25f1a80e825f34d4eb Mon Sep 17 00:00:00 2001 From: blogic Date: Sun, 16 Dec 2012 10:03:11 +0000 Subject: [PATCH] [lantiq] add falcon devicetree files git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34711 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- target/linux/lantiq/image/EASY98000NOR.dts | 65 +++++++++ target/linux/lantiq/image/EASY98000SFLASH.dts | 74 ++++++++++ target/linux/lantiq/image/Makefile | 8 +- target/linux/lantiq/image/falcon.dtsi | 201 ++++++++++++++++++++++++++ 4 files changed, 344 insertions(+), 4 deletions(-) create mode 100644 target/linux/lantiq/image/EASY98000NOR.dts create mode 100644 target/linux/lantiq/image/EASY98000SFLASH.dts create mode 100644 target/linux/lantiq/image/falcon.dtsi diff --git a/target/linux/lantiq/image/EASY98000NOR.dts b/target/linux/lantiq/image/EASY98000NOR.dts new file mode 100644 index 0000000000..46497f48d1 --- /dev/null +++ b/target/linux/lantiq/image/EASY98000NOR.dts @@ -0,0 +1,65 @@ +/dts-v1/; + +/include/ "falcon.dtsi" + +/ { + model = "EASY98000 - Lantiq Falcon (NOR)"; + + chosen { + bootargs = "console=ttyLTQ0,115200 init=/etc/preinit"; + }; + + memory@0 { + reg = <0x0 0x2000000>; + }; + + localbus@10000000 { + cfi@0 { + compatible = "lantiq,nor"; + bank-width = <2>; + reg = <0x0 0x4000000>; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "uboot"; + reg = <0x00000 0x40000>; + }; + + partition@10000 { + label = "uboot_env"; + reg = <0x40000 0x40000>; + }; + + partition@20000 { + label = "linux"; + reg = <0x80000 0x3d0000>; + }; + }; + }; + + pinmux0 { + compatible = "lantiq,pinctrl-falcon"; + pinctrl-names = "default"; + pinctrl-0 = <&state_default>; + + state_default: pinmux { + asc0 { + lantiq,groups = "asc0"; + lantiq,function = "asc"; + }; + ntr { + lantiq,groups = "ntr8k"; + lantiq,function = "ntr"; + }; + i2c { + lantiq,groups = "i2c"; + lantiq,function = "i2c"; + }; + hrst { + lantiq,groups = "hrst"; + lantiq,function = "rst"; + }; + }; + }; +}; diff --git a/target/linux/lantiq/image/EASY98000SFLASH.dts b/target/linux/lantiq/image/EASY98000SFLASH.dts new file mode 100644 index 0000000000..47f8b47ff1 --- /dev/null +++ b/target/linux/lantiq/image/EASY98000SFLASH.dts @@ -0,0 +1,74 @@ +/dts-v1/; + +/include/ "falcon.dtsi" + +/ { + model = "EASY98000 - Lantiq Falcon (SFLASH)"; + + chosen { + bootargs = "console=ttyLTQ0,115200 init=/etc/preinit"; + }; + + memory@0 { + reg = <0x0 0x2000000>; + }; + + localbus@10000000 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "lantiq,sflash-falcon", "simple-bus"; + busnum = <0>; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "s25fl129p0"; + reg = <0 0>; + linux,modalias = "m25p80", "s25fl129p0"; + spi-max-frequency = <10000000>; + + partition@0 { + reg = <0x0 0x00080000>; + label = "SPI (RO) U-Boot Image"; + read-only; + }; + + partition@80000 { + reg = <0x00080000 0x00080000>; + label = "SPI (RO) DTB Image"; + read-only; + }; + + partition@100000 { + reg = <0x00100000 0x00400000>; + label = "SPI (RO) Linux Kernel Image"; + read-only; + }; + }; + }; + + pinmux0 { + compatible = "lantiq,pinctrl-falcon"; + pinctrl-names = "default"; + pinctrl-0 = <&state_default>; + + state_default: pinmux { + asc0 { + lantiq,groups = "asc0"; + lantiq,function = "asc"; + }; + ntr { + lantiq,groups = "ntr8k"; + lantiq,function = "ntr"; + }; + i2c { + lantiq,groups = "i2c"; + lantiq,function = "i2c"; + }; + hrst { + lantiq,groups = "hrst"; + lantiq,function = "rst"; + }; + }; + }; +}; diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile index 019bd58696..c76c17aea1 100644 --- a/target/linux/lantiq/image/Makefile +++ b/target/linux/lantiq/image/Makefile @@ -106,11 +106,11 @@ endef ifeq ($(CONFIG_TARGET_lantiq_falcon),y) -Image/BuildKernel/Profile/EASY98000=$(call Image/BuildKernel/Template,EASY98000) -Image/Build/Profile/EASY98000=$(call Image/Build/$(1),$(1),EASY98000) +Image/BuildKernel/Profile/EASY98000NOR=$(call Image/BuildKernel/Template,EASY98000NOR) +Image/Build/Profile/EASY98000NOR=$(call Image/Build/$(1),$(1),EASY98000NOR) -Image/BuildKernel/Profile/EASY98020=$(call Image/BuildKernel/Template,EASY98020) -Image/Build/Profile/EASY98020=$(call Image/Build/$(1),$(1),EASY98020) +Image/BuildKernel/Profile/EASY98000SFLASH=$(call Image/BuildKernel/Template,EASY98000SFLASH) +Image/Build/Profile/EASY98000SFLASH=$(call Image/Build/$(1),$(1),EASY98000SFLASH) endif diff --git a/target/linux/lantiq/image/falcon.dtsi b/target/linux/lantiq/image/falcon.dtsi new file mode 100644 index 0000000000..ec1b450bad --- /dev/null +++ b/target/linux/lantiq/image/falcon.dtsi @@ -0,0 +1,201 @@ +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "lantiq,falcon"; + + cpus { + cpu@0 { + compatible = "mips,mips34kc"; + }; + }; + + localbus@10000000 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "lantiq,localbus", "simple-bus"; + reg = <0x10000000 0xC000000>; + ranges = <0x0 0x10000000 0xC000000>; + }; + + ebu@18000000 { + compatible = "lantiq,ebu-falcon"; + reg = <0x18000000 0x100>; + }; + + sbs2@1D000000 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "lantiq,sysb2", "simple-bus"; + reg = <0x1D000000 0x1000000>; + ranges = <0x0 0x1D000000 0x1000000>; + + sysgpe@700000 { + compatible = "lantiq,sysgpe-falcon"; + reg = <0x700000 0x100>; + }; + + gpio0: gpio@810000 { + #gpio-cells = <2>; + compatible = "lantiq,gpio-falcon"; + gpio-controller; + interrupt-parent = <&icu0>; + interrupts = <44>; + reg = <0x810000 0x80>; + lantiq,bank = <0>; + }; + + gpio2: gpio@810100 { + #gpio-cells = <2>; + compatible = "lantiq,gpio-falcon"; + gpio-controller; + interrupt-parent = <&icu0>; + interrupts = <46>; + reg = <0x810100 0x80>; + lantiq,bank = <2>; + }; + + syseth@B00000 { + compatible = "lantiq,syseth-falcon"; + reg = <0xB00000 0x100>; + }; + + pad@B01000 { + compatible = "lantiq,pad-falcon"; + reg = <0xB01000 0x100>; + lantiq,bank = <0>; + }; + + pad@B02000 { + compatible = "lantiq,pad-falcon"; + reg = <0xB02000 0x100>; + lantiq,bank = <2>; + }; + }; + + fpi@1E000000 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "lantiq,fpi", "simple-bus"; + reg = <0x1E000000 0x1000000>; + ranges = <0x0 0x1E000000 0x1000000>; + + serial@100B00 { + status = "disabled"; + compatible = "lantiq,asc"; + reg = <0x100B00 0x100>; + interrupt-parent = <&icu0>; + interrupts = <104 105 106>; + line = <1>; + }; + + serial@100C00 { + compatible = "lantiq,asc"; + reg = <0x100C00 0x100>; + interrupt-parent = <&icu0>; + interrupts = <104 105 106>; + line = <0>; + }; + + i2c@200000 { + compatible = "lantiq,lantiq-i2c"; + reg = <0x200000 0x10000>; + interrupt-parent = <&icu0>; + interrupts = <18 19 20 21>; + gpios = <&gpio1 7 0 &gpio1 8 0>; + }; + + gpio1: gpio@800100 { + #gpio-cells = <2>; + compatible = "lantiq,gpio-falcon"; + gpio-controller; + interrupt-parent = <&icu0>; + interrupts = <45>; + reg = <0x800100 0x100>; + lantiq,bank = <1>; + }; + + gpio3: gpio@800200 { + status = "disabled"; + #gpio-cells = <2>; + compatible = "lantiq,gpio-falcon"; + gpio-controller; + interrupt-parent = <&icu0>; + interrupts = <47>; + reg = <0x800200 0x100>; + lantiq,bank = <3>; + }; + + gpio4: gpio@800300 { + status = "disabled"; + #gpio-cells = <2>; + compatible = "lantiq,gpio-falcon"; + gpio-controller; + interrupt-parent = <&icu0>; + interrupts = <48>; + reg = <0x800300 0x100>; + lantiq,bank = <4>; + }; + + pad@800400 { + compatible = "lantiq,pad-falcon"; + reg = <0x800400 0x100>; + lantiq,bank = <1>; + }; + + pad@800500 { + status = "disabled"; + compatible = "lantiq,pad-falcon"; + reg = <0x800500 0x100>; + bank = <3>; + }; + + pad4@800600 { + status = "disabled"; + compatible = "lantiq,pad-falcon"; + reg = <0x800600 0x100>; + bank = <4>; + }; + + status@802000 { + compatible = "lantiq,status-falcon"; + reg = <0x802000 0x80>; + }; + + sys1@F00000 { + compatible = "lantiq,sys1-falcon"; + reg = <0xF00000 0x100>; + }; + }; + + sbs0@1F000000 { + + }; + + sbs1@1F700000 { + + }; + + biu@1F800000 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "lantiq,falcon"; + reg = <0x1F800000 0x800000>; + ranges = <0x0 0x1F800000 0x7FFFFF>; + + icu0: icu@80200 { + #interrupt-cells = <1>; + interrupt-controller; + compatible = "lantiq,icu"; + reg = <0x80200 0x28 + 0x80228 0x28 + 0x80250 0x28 + 0x80278 0x28 + 0x802a0 0x28>; + }; + + watchdog@803F0 { + compatible = "lantiq,wdt"; + reg = <0x803F0 0x10>; + }; + }; +}; -- 2.11.0