diff options
Diffstat (limited to 'target/linux')
-rw-r--r-- | target/linux/lantiq/image/Makefile | 20 | ||||
-rw-r--r-- | target/linux/lantiq/image/VG3503J.dts | 189 | ||||
-rw-r--r-- | target/linux/lantiq/xway/profiles/arv.mk | 8 |
3 files changed, 217 insertions, 0 deletions
diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile index 45f9e14..a226b4d 100644 --- a/target/linux/lantiq/image/Makefile +++ b/target/linux/lantiq/image/Makefile @@ -25,6 +25,12 @@ define PatchKernelLzma $(call CompressLzma,$(KDIR)/vmlinux-$(1),$(KDIR)/vmlinux-$(1).lzma) endef +define PatchKernelRaw + cp $(KDIR)/vmlinux $(KDIR)/vmlinux-$(1) + $(LINUX_DIR)/scripts/dtc/dtc -O dtb -o $(KDIR)/$(1).dtb ./$(1).dts + $(STAGING_DIR_HOST)/bin/patch-dtb $(KDIR)/vmlinux-$(1) $(KDIR)/$(1).dtb +endef + define MkBrnImage mkbrncmdline -i $(KDIR)/vmlinux-$(4) -o $(KDIR)/vmlinux-$(4)-brn BRN-BOOT $(6) $(call CompressLzma,$(KDIR)/vmlinux-$(4)-brn,$(KDIR)/vmlinux-$(4)-brn.lzma) @@ -70,6 +76,12 @@ define Image/BuildEVA/squashfs $(call prepare_generic_squashfs,$(BIN_DIR)/$(IMG_PREFIX)-$(2)-$(1).image.eva) endef +define Image/BuildRaw/squashfs + dd if=$(KDIR)/vmlinux-$(2) of=$(KDIR)/vmlinux-$(2)-$(1) bs=1M conv=sync + cat $(KDIR)/vmlinux-$(2)-$(1) $(KDIR)/root.$(1) > $(BIN_DIR)/$(IMG_PREFIX)-$(2)-$(1).image + $(call prepare_generic_squashfs,$(BIN_DIR)/$(IMG_PREFIX)-$(2)-$(1).image) +endef + define Image/BuildNANDEVA/jffs2-128k cp $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(2)-$(1).rootfs endef @@ -95,6 +107,11 @@ define Image/BuildKernel/Template $(CP) $(KDIR)/uImage-$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1)-uImage endef +define Image/BuildKernelRaw/Template + $(call PatchKernelRaw,$(1)) + $(CP) $(KDIR)/vmlinux-$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1)-vmlinux +endef + define Image/BuildKernelEVA/Template $(call PatchKernelLzma,$(1),$(if $(2),$(2) machtype=$(1),)) $(call MkImageEVA,$(1)) @@ -196,6 +213,9 @@ Image/Build/Profile/EASY80920NOR=$(call Image/Build/$(1),$(1),EASY80920NOR) Image/BuildKernel/Profile/FRITZ3370=$(call Image/BuildKernelEVA/Template,FRITZ3370) Image/Build/Profile/FRITZ3370=$(call Image/BuildNANDEVA/$(1),$(1),FRITZ3370) +Image/BuildKernel/Profile/VG3503J=$(call Image/BuildKernelRaw/Template,VG3503J) +Image/Build/Profile/VG3503J=$(call Image/BuildRaw/$(1),$(1),VG3503J) + endif diff --git a/target/linux/lantiq/image/VG3503J.dts b/target/linux/lantiq/image/VG3503J.dts new file mode 100644 index 0000000..cf95454 --- /dev/null +++ b/target/linux/lantiq/image/VG3503J.dts @@ -0,0 +1,189 @@ +/dts-v1/; + +/include/ "vr9.dtsi" + +/ { + model = "VG3503J - BT OpenReach VDSL Modem"; + + chosen { + bootargs = "console=ttyLTQ0,115200 init=/etc/preinit"; + }; + + memory@0 { + reg = <0x0 0x2000000>; + }; + + fpi@10000000 { + localbus@0 { + ranges = <0 0 0x0 0x3ffffff>; + nor-boot@0 { + compatible = "lantiq,nor"; + bank-width = <2>; + reg = <0 0x0 0x2000000>; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "uboot"; + reg = <0x00000 0x20000>; + }; + + partition@20000 { + label = "kernel"; + reg = <0x20000 0x400000>; + }; + + partition@420000 { + label = "rootfs"; + reg = <0x420000 0x320000>; + }; + + partition@740000 { + label = "btagent"; + reg = <0x740000 0x80000>; + }; + + partition@7c0000 { + label = "pri_bfocus_cfg"; + reg = <0x7c0000 0x10000>; + }; + + partition@7d0000 { + label = "sec_bfocus_cfg"; + reg = <0x7d0000 0x10000>; + }; + + partition@7e0000 { + label = "sysconfig"; + reg = <0x7e0000 0x10000>; + }; + + partition@7f0000 { + label = "misc_cfg"; + reg = <0x7f0000 0x10000>; + }; + }; + }; + + gpio: pinmux@E100B10 { + pinctrl-names = "default"; + pinctrl-0 = <&state_default>; + + state_default: pinmux { + mdio { + lantiq,groups = "mdio"; + lantiq,function = "mdio"; + }; + }; + }; + + eth@E108000 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "lantiq,xrx200-net"; + reg = < 0xE108000 0x3000 /* switch */ + 0xE10B100 0x70 /* mdio */ + 0xE10B1D8 0x30 /* mii */ + 0xE10B308 0x30 /* pmac */ + >; + interrupt-parent = <&icu0>; + interrupts = <73 72>; + + lan: interface@0 { + compatible = "lantiq,xrx200-pdi"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + mac-address = [ 00 11 22 33 44 55 ]; + + ethernet@2 { + compatible = "lantiq,xrx200-pdi-port"; + reg = <2>; + phy-mode = "mii"; + phy-handle = <&phy11>; + }; + ethernet@4 { + compatible = "lantiq,xrx200-pdi-port"; + reg = <4>; + phy-mode = "mii"; + phy-handle = <&phy13>; + }; + }; + + mdio@0 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "lantiq,xrx200-mdio"; + phy11: ethernet-phy@11 { + reg = <0x11>; + compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22"; + lantiq,c45-reg-init = <1 0 0 0>; + }; + phy13: ethernet-phy@13 { + reg = <0x13>; + compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22"; + lantiq,c45-reg-init = <1 0 0 0>; + }; + }; + }; + }; + + gphy-xrx200 { + compatible = "lantiq,phy-xrx200"; + firmware = "lantiq/vr9_phy22f_a1x.bin"; + phys = [ 00 01 ]; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <100>; + reset { + label = "reset"; + gpios = <&gpio 6 1>; + linux,code = <0x198>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + port2green { + label = "bt:green:port2"; + gpios = <&gpio 2 0>; + }; + lan2 { + label = "bt:green:lan2"; + gpios = <&gpio 5 0>; + }; + port2orange { + label = "bt:orange:port2"; + gpios = <&gpio 7 0>; + }; + power2 { + label = "power2"; + gpios = <&gpio 14 1>; + }; + dsl { + label = "dsl"; + gpios = <&gpio 19 1>; + }; + power { + label = "power"; + gpios = <&gpio 28 1>; + }; + lan1 { + label = "bt:green:lan1"; + gpios = <&gpio 44 0>; + }; + port1green { + label = "bt:green:port1"; + gpios = <&gpio 45 0>; + }; + port1orange { + label = "bt:orange:port1"; + gpios = <&gpio 47 0>; + }; + }; +}; diff --git a/target/linux/lantiq/xway/profiles/arv.mk b/target/linux/lantiq/xway/profiles/arv.mk index a4f11ca23..2131188 100644 --- a/target/linux/lantiq/xway/profiles/arv.mk +++ b/target/linux/lantiq/xway/profiles/arv.mk @@ -114,3 +114,11 @@ define Profile/ARV752DPW22 endef $(eval $(call Profile,ARV752DPW22)) + +define Profile/VG3503J + NAME:=BT Openreach - ECI VDSL Modem + PACKAGES:=kmod-ltq-vdsl-vr9-mei kmod-ltq-vdsl-vr9 \ + kmod-ltq-ptm-vr9 ltq-vdsl-app +endef + +$(eval $(call Profile,VG3503J)) |