mirror of https://github.com/hak5/openwrt-owl.git
lantiq: add Falcon support
This adds support for the Intel Falcon SoC for GPON.
Support for the Falcon SoC was removed in commit c821836395
svn rev:
40392 from OpenWrt, this commit adds it again.
This patch adds a new subtarget for the Falcon SoC, but it still misses
all the drivers needed to control the GPON part.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
owl
parent
5cdbc86329
commit
9371542783
|
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
||||||
BOARD:=lantiq
|
BOARD:=lantiq
|
||||||
BOARDNAME:=Lantiq
|
BOARDNAME:=Lantiq
|
||||||
FEATURES:=squashfs
|
FEATURES:=squashfs
|
||||||
SUBTARGETS:=xrx200 xway xway_legacy
|
SUBTARGETS:=xrx200 xway xway_legacy falcon
|
||||||
MAINTAINER:=John Crispin <john@phrozen.org>
|
MAINTAINER:=John Crispin <john@phrozen.org>
|
||||||
|
|
||||||
KERNEL_PATCHVER:=4.4
|
KERNEL_PATCHVER:=4.4
|
||||||
|
|
|
@ -0,0 +1,110 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY88388 - Lantiq Falcon FTTDP8 Reference Board";
|
||||||
|
compatible = "lantiq,falcon-easy88388", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <0x198>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
led_pins: led-pins {
|
||||||
|
lantiq,pins = "io34", "io35", "io36", "io37", "io38",
|
||||||
|
"io39", "io40", "io41";
|
||||||
|
lantiq,function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
easy88388-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&led_pins &bootled_pins>;
|
||||||
|
|
||||||
|
GPON {
|
||||||
|
label = "easy88388:green:gpon";
|
||||||
|
gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
TEST {
|
||||||
|
label = "easy88388:green:test";
|
||||||
|
gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
STATUS {
|
||||||
|
label = "easy88388:green:status";
|
||||||
|
gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
ERROR {
|
||||||
|
label = "easy88388:red:error";
|
||||||
|
gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
DSL1 {
|
||||||
|
label = "easy88388:dsl:1";
|
||||||
|
gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
DSL2 {
|
||||||
|
label = "easy88388:dsl:2";
|
||||||
|
gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
DSL3 {
|
||||||
|
label = "easy88388:dsl:3";
|
||||||
|
gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
DSL4 {
|
||||||
|
label = "easy88388:dsl:4";
|
||||||
|
gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
DSL5 {
|
||||||
|
label = "easy88388:dsl:5";
|
||||||
|
gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
DSL6 {
|
||||||
|
label = "easy88388:dsl:6";
|
||||||
|
gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
DSL7 {
|
||||||
|
label = "easy88388:dsl:7";
|
||||||
|
gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
DSL8 {
|
||||||
|
label = "easy88388:dsl:8";
|
||||||
|
gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
|
@ -0,0 +1,84 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY88444 - Lantiq Falcon FTTdp G.FAST Reference Board";
|
||||||
|
compatible = "lantiq,falcon-easy88444", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <0x198>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
led_pins: led-pins {
|
||||||
|
lantiq,pins = "io34", "io35", "io37";
|
||||||
|
lantiq,function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
easy88444-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&led_pins &bootled_pins>;
|
||||||
|
|
||||||
|
GPON {
|
||||||
|
label = "easy88444:green:gpon";
|
||||||
|
gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
TEST {
|
||||||
|
label = "easy88444:green:test";
|
||||||
|
gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
STATUS {
|
||||||
|
label = "easy88444:green:status";
|
||||||
|
gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
GFAST1 {
|
||||||
|
label = "easy88444:gfast:1";
|
||||||
|
gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
GFAST2 {
|
||||||
|
label = "easy88444:gfast:2";
|
||||||
|
gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
GFAST3 {
|
||||||
|
label = "easy88444:gfast:3";
|
||||||
|
gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
GFAST4 {
|
||||||
|
label = "easy88444:gfast:4";
|
||||||
|
gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
|
@ -0,0 +1,114 @@
|
||||||
|
|
||||||
|
#include <dt-bindings/interrupt-controller/irq.h>
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "lantiq,falcon-easy98000", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
easy98000-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&bootled_pins>;
|
||||||
|
|
||||||
|
LED_0 {
|
||||||
|
label = "easy98000:green:gpon";
|
||||||
|
gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_1 {
|
||||||
|
label = "easy98000:red:gpon";
|
||||||
|
gpios = <&gpio0 10 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_2 {
|
||||||
|
label = "easy98000:green:gpon_tx";
|
||||||
|
gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_3 {
|
||||||
|
label = "easy98000:green:gpon_rx";
|
||||||
|
gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_4 {
|
||||||
|
label = "easy98000:green:voice";
|
||||||
|
gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_5 {
|
||||||
|
label = "easy98000:green:status";
|
||||||
|
gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&ebu_cs1 {
|
||||||
|
eth0: ethernet@0000000 {
|
||||||
|
compatible = "davicom,dm9000";
|
||||||
|
device_type = "network";
|
||||||
|
reg = <0x0000003 0x1>, <0x0000001 0x1>;
|
||||||
|
reg-names = "addr", "data";
|
||||||
|
interrupt-parent = <&gpio1>;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
local-mac-address = [ 00 00 00 00 00 00 ];
|
||||||
|
};
|
||||||
|
|
||||||
|
cpld@3c00000 {
|
||||||
|
compatible = "lantiq,easy98000_addon";
|
||||||
|
reg = <0x3c00000 0x2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
cpld@3c0000c {
|
||||||
|
compatible = "lantiq,easy98000_cpld_led";
|
||||||
|
reg = <0x3c0000c 0x2>, <0x3c00012 0x2>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/* // enable this for second uart:
|
||||||
|
&serial1 {
|
||||||
|
status = "okay";
|
||||||
|
};*/
|
||||||
|
|
||||||
|
&spi {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
eeprom@1 {
|
||||||
|
compatible = "atmel,at25", "atmel,at25160n";
|
||||||
|
reg = <2>;
|
||||||
|
spi-max-frequency = <1000000>;
|
||||||
|
spi-cpha;
|
||||||
|
spi-cpol;
|
||||||
|
|
||||||
|
pagesize = <32>;
|
||||||
|
size = <2048>;
|
||||||
|
address-width = <16>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
clock-frequency = <100000>;
|
||||||
|
|
||||||
|
/* eeprom-emulation by OMU */
|
||||||
|
eeprom@50 {
|
||||||
|
compatible = "at,24c02";
|
||||||
|
reg = <0x50>;
|
||||||
|
};
|
||||||
|
eeprom@51 {
|
||||||
|
compatible = "at,24c02";
|
||||||
|
reg = <0x51>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
|
@ -0,0 +1,40 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "EASY98000-base.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY98000 - Lantiq Falcon (NAND)";
|
||||||
|
compatible = "lantiq,falcon-easy98000-nand", "lantiq,falcon-easy98000", "lantiq,falcon";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &spi;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&ebu_cs0 {
|
||||||
|
gen_nand@0 {
|
||||||
|
compatible = "gen_nand", "lantiq,nand-falcon";
|
||||||
|
bank-width = <1>;
|
||||||
|
reg = <0x0 0x40000>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
linux,mtd-name = "gen_nand";
|
||||||
|
bbt-use-flash;
|
||||||
|
|
||||||
|
partition@0 {
|
||||||
|
label = "uboot";
|
||||||
|
reg = <0x00000 0x40000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@10000 {
|
||||||
|
label = "uboot_env";
|
||||||
|
reg = <0x40000 0x40000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@20000 {
|
||||||
|
label = "linux";
|
||||||
|
reg = <0x80000 0x3d0000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
|
@ -0,0 +1,38 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "EASY98000-base.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY98000 - Lantiq Falcon (NOR)";
|
||||||
|
compatible = "lantiq,falcon-easy98000-nor", "lantiq,falcon-easy98000", "lantiq,falcon";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &spi;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&ebu_cs0 {
|
||||||
|
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>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
|
@ -0,0 +1,16 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "EASY98000-base.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY98000 - Lantiq Falcon (SFLASH)";
|
||||||
|
compatible = "lantiq,falcon-easy98000-sflash", "lantiq,falcon-easy98000", "lantiq,falcon";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
spi1 = &spi;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
|
@ -0,0 +1,99 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY98020 - Lantiq Falcon Reference Board";
|
||||||
|
compatible = "lantiq,falcon-easy98020", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <0x198>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
led_pins: phy-led-pins {
|
||||||
|
lantiq,pins = "io42", "io41", "io38", "io37";
|
||||||
|
lantiq,function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
easy98020-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&bootled_pins>;
|
||||||
|
|
||||||
|
GPON {
|
||||||
|
label = "easy98020:green:gpon";
|
||||||
|
gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
TEST {
|
||||||
|
label = "easy98020:green:test";
|
||||||
|
gpios = <&gpio0 10 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
ETH {
|
||||||
|
label = "easy98020:green:status";
|
||||||
|
gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
VOICE {
|
||||||
|
label = "easy98020:green:voice";
|
||||||
|
gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
VIDEO {
|
||||||
|
label = "easy98020:green:video";
|
||||||
|
gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
easy98020-phy-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&led_pins>;
|
||||||
|
|
||||||
|
GE0_ACT {
|
||||||
|
label = "easy98020:ge0_act";
|
||||||
|
gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
GE0_LINK {
|
||||||
|
label = "easy98020:ge0_link";
|
||||||
|
gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
GE1_ACT {
|
||||||
|
label = "easy98020:ge1_act";
|
||||||
|
gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
GE1_LINK {
|
||||||
|
label = "easy98020:ge1_link";
|
||||||
|
gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
|
@ -0,0 +1,72 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY98020 - Lantiq Falcon Reference Board V1.8";
|
||||||
|
compatible = "lantiq,falcon-easy98020-V18", "lantiq,falcon-easy98020", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <0x198>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
led_pins: led-pins {
|
||||||
|
lantiq,pins = "io11", "io14", "io36", "io37", "io38";
|
||||||
|
lantiq,function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
easy98020-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&led_pins &bootled_pins>;
|
||||||
|
|
||||||
|
GPON {
|
||||||
|
label = "easy98020:green:gpon";
|
||||||
|
gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
TEST {
|
||||||
|
label = "easy98020:green:test";
|
||||||
|
gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
ETH {
|
||||||
|
label = "easy98020:green:status";
|
||||||
|
gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
VOICE {
|
||||||
|
label = "easy98020:green:voice";
|
||||||
|
gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
VIDEO {
|
||||||
|
label = "easy98020:green:video";
|
||||||
|
gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
|
@ -0,0 +1,85 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY98021 - Lantiq Falcon HGU Reference Board";
|
||||||
|
compatible = "lantiq,falcon-easy98021", "lantiq,falcon-easy98020", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,code = <0x198>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-mmc {
|
||||||
|
/* Place-holder for SIM-Card connector,
|
||||||
|
to list the used GPIOs, no official binding */
|
||||||
|
compatible = "gpio-mmc";
|
||||||
|
gpios = <&gpio0 3 GPIO_ACTIVE_HIGH>,
|
||||||
|
<&gpio0 3 GPIO_ACTIVE_HIGH>,
|
||||||
|
<&gpio0 2 GPIO_ACTIVE_HIGH>,
|
||||||
|
<0>; /* no CS */
|
||||||
|
gpio-names = "di", "do", "clk", "cs";
|
||||||
|
reset-gpio = <&gpio3 24 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
led_pins: led-pins {
|
||||||
|
lantiq,pins = "io11", "io14", "io36", "io37", "io38";
|
||||||
|
lantiq,function = "gpio";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
easy98021-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&led_pins &bootled_pins>;
|
||||||
|
|
||||||
|
GPON {
|
||||||
|
label = "easy98021:green:gpon";
|
||||||
|
gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
TEST {
|
||||||
|
label = "easy98021:red:test";
|
||||||
|
gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
ETH {
|
||||||
|
label = "easy98021:green:status";
|
||||||
|
gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
VOICE {
|
||||||
|
label = "easy98021:green:voice";
|
||||||
|
gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
SIMCARD {
|
||||||
|
label = "easy98021:green:simcard";
|
||||||
|
gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
|
@ -0,0 +1,80 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY98035SYNCE - Lantiq Falcon SFP Stick with SyncE";
|
||||||
|
compatible = "lantiq,falcon-easy98035synce", "lantiq,falcon-sfp", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
compatible = "lantiq,pinctrl-falcon";
|
||||||
|
|
||||||
|
asc0_func1: func1 {
|
||||||
|
func1_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
func1_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
asc0_func2: func2 {
|
||||||
|
func2_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <0>;
|
||||||
|
};
|
||||||
|
func2_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
asc0_func3: func3 {
|
||||||
|
func3_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
func3_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinselect-asc0 {
|
||||||
|
compatible = "lantiq,pinselect-asc0";
|
||||||
|
pinctrl-names = "asc0", "func1", "func2", "func3";
|
||||||
|
pinctrl-0 = <&asc0_pins>;
|
||||||
|
pinctrl-1 = <&asc0_func1>;
|
||||||
|
pinctrl-2 = <&asc0_func2>;
|
||||||
|
pinctrl-3 = <&asc0_func3>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&serial0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
/* use "empty" pinctrl to leave setting from u-boot enabled */
|
||||||
|
pinctrl-0 = < >;
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c {
|
||||||
|
status = "okay";
|
||||||
|
};
|
|
@ -0,0 +1,80 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "EASY98035SYNCE1588 - Lantiq Falcon SFP Stick with SyncE/1588";
|
||||||
|
compatible = "lantiq,falcon-easy98035synce1588", "lantiq,falcon-sfp", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
compatible = "lantiq,pinctrl-falcon";
|
||||||
|
|
||||||
|
asc0_func1: func1 {
|
||||||
|
func1_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
func1_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
asc0_func2: func2 {
|
||||||
|
func2_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <0>;
|
||||||
|
};
|
||||||
|
func2_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
asc0_func3: func3 {
|
||||||
|
func3_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
func3_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinselect-asc0 {
|
||||||
|
compatible = "lantiq,pinselect-asc0";
|
||||||
|
pinctrl-names = "asc0", "func1", "func2", "func3";
|
||||||
|
pinctrl-0 = <&asc0_pins>;
|
||||||
|
pinctrl-1 = <&asc0_func1>;
|
||||||
|
pinctrl-2 = <&asc0_func2>;
|
||||||
|
pinctrl-3 = <&asc0_func3>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&serial0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
/* use "empty" pinctrl to leave setting from u-boot enabled */
|
||||||
|
pinctrl-0 = < >;
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c {
|
||||||
|
status = "okay";
|
||||||
|
};
|
|
@ -0,0 +1,57 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "MDU - Lantiq Falcon / Vinax MDU Board";
|
||||||
|
compatible = "lantiq,falcon-mdu", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
mdu-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&bootled_pins>;
|
||||||
|
|
||||||
|
LED_0 {
|
||||||
|
label = "mdu:green:gpon";
|
||||||
|
gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_1 {
|
||||||
|
label = "mdu:green:status";
|
||||||
|
gpios = <&gpio0 10 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_2 {
|
||||||
|
label = "mdu:green:2";
|
||||||
|
gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_3 {
|
||||||
|
label = "mdu:green:3";
|
||||||
|
gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
LED_4 {
|
||||||
|
label = "mdu:green:4";
|
||||||
|
gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "keep";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
|
@ -0,0 +1,80 @@
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "falcon.dtsi"
|
||||||
|
#include "falcon-sflash-16M.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "SFP - Lantiq Falcon SFP Stick";
|
||||||
|
compatible = "lantiq,falcon-sfp", "lantiq,falcon";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs-append = "console=ttyLTQ0,115200 init=/etc/preinit";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
spi0 = &ebu_cs0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x0 0x4000000>; // 64M at 0x0
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
compatible = "lantiq,pinctrl-falcon";
|
||||||
|
|
||||||
|
asc0_func1: func1 {
|
||||||
|
func1_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,output = <0>;
|
||||||
|
};
|
||||||
|
func1_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
asc0_func2: func2 {
|
||||||
|
func2_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <0>;
|
||||||
|
};
|
||||||
|
func2_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
asc0_func3: func3 {
|
||||||
|
func3_tx {
|
||||||
|
lantiq,pins = "io32";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,output = <0>;
|
||||||
|
};
|
||||||
|
func3_rx {
|
||||||
|
lantiq,pins = "io33";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,input = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinselect-asc0 {
|
||||||
|
compatible = "lantiq,pinselect-asc0";
|
||||||
|
pinctrl-names = "asc0", "func1", "func2", "func3";
|
||||||
|
pinctrl-0 = <&asc0_pins>;
|
||||||
|
pinctrl-1 = <&asc0_func1>;
|
||||||
|
pinctrl-2 = <&asc0_func2>;
|
||||||
|
pinctrl-3 = <&asc0_func3>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&serial0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
/* use "empty" pinctrl to leave setting from u-boot enabled */
|
||||||
|
pinctrl-0 = < >;
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c {
|
||||||
|
status = "okay";
|
||||||
|
};
|
|
@ -0,0 +1,37 @@
|
||||||
|
|
||||||
|
&ebu_cs0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "lantiq,sflash-falcon", "simple-bus";
|
||||||
|
|
||||||
|
flash@0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "spansion,s25fl129p0", "spansion,s25fl129p1";
|
||||||
|
reg = <0 0>;
|
||||||
|
linux,mtd-name = "sflash";
|
||||||
|
spi-max-frequency = <80000000>;
|
||||||
|
m25p,fast-read;
|
||||||
|
|
||||||
|
partition@0 {
|
||||||
|
reg = <0x0 0x40000>;
|
||||||
|
label = "uboot";
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@40000 {
|
||||||
|
reg = <0x40000 0x80000>;
|
||||||
|
label = "uboot_env";
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@C0000 {
|
||||||
|
reg = <0xC0000 0x740000>;
|
||||||
|
label = "image0";
|
||||||
|
};
|
||||||
|
|
||||||
|
partition@800000 {
|
||||||
|
reg = <0x800000 0x800000>;
|
||||||
|
label = "image1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
|
@ -0,0 +1,388 @@
|
||||||
|
/ {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "lantiq,falcon";
|
||||||
|
|
||||||
|
cpus {
|
||||||
|
cpu@0 {
|
||||||
|
compatible = "mips,mips34kc";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &serial0;
|
||||||
|
serial1 = &serial1;
|
||||||
|
gpio0 = &gpio0;
|
||||||
|
gpio1 = &gpio1;
|
||||||
|
gpio2 = &gpio2;
|
||||||
|
gpio3 = &gpio3;
|
||||||
|
gpio4 = &gpio4;
|
||||||
|
};
|
||||||
|
|
||||||
|
clocks {
|
||||||
|
compatible = "simple-bus";
|
||||||
|
|
||||||
|
cpu_clk: cpu {
|
||||||
|
compatible = "fixed-clock";
|
||||||
|
#clock-cells = <0>;
|
||||||
|
clock-frequency = <400000000>;
|
||||||
|
clock-output-names = "cpu";
|
||||||
|
};
|
||||||
|
|
||||||
|
io_clk: io {
|
||||||
|
compatible = "fixed-clock";
|
||||||
|
#clock-cells = <0>;
|
||||||
|
clock-frequency = <200000000>;
|
||||||
|
clock-output-names = "io";
|
||||||
|
};
|
||||||
|
|
||||||
|
fpi_clk: fpi {
|
||||||
|
compatible = "fixed-clock";
|
||||||
|
#clock-cells = <0>;
|
||||||
|
clock-frequency = <100000000>;
|
||||||
|
clock-output-names = "fpi";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ebu_cs0: localbus@10000000 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "lantiq,localbus", "simple-bus";
|
||||||
|
reg = <0x10000000 0x4000000>;
|
||||||
|
ranges = <0x0 0x10000000 0x4000000>;
|
||||||
|
};
|
||||||
|
ebu_cs1: localbus@14000000 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "lantiq,localbus", "simple-bus";
|
||||||
|
reg = <0x14000000 0x4000000>;
|
||||||
|
ranges = <0x0 0x14000000 0x4000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
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>;
|
||||||
|
|
||||||
|
clock_sysgpe: clock-controller@700000 {
|
||||||
|
compatible = "lantiq,sysgpe-falcon";
|
||||||
|
reg = <0x700000 0x100>;
|
||||||
|
#clock-cells = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
mps@4000 {
|
||||||
|
compatible = "lantiq,mps-falcon", "lantiq,mps-xrx100";
|
||||||
|
reg = <0x4000 0x1000>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <154 155>;
|
||||||
|
lantiq,mbx = <&mpsmbx>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio0: gpio@810000 {
|
||||||
|
compatible = "lantiq,falcon-gpio";
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <44>;
|
||||||
|
reg = <0x810000 0x80>;
|
||||||
|
clocks = <&clock_syseth 16>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio2: gpio@810100 {
|
||||||
|
compatible = "lantiq,falcon-gpio";
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <46>;
|
||||||
|
reg = <0x810100 0x80>;
|
||||||
|
clocks = <&clock_syseth 17>;
|
||||||
|
};
|
||||||
|
|
||||||
|
clock_syseth: clock-controller@B00000 {
|
||||||
|
compatible = "lantiq,syseth-falcon";
|
||||||
|
reg = <0xB00000 0x100>;
|
||||||
|
#clock-cells = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pad@B01000 {
|
||||||
|
compatible = "lantiq,pad-falcon";
|
||||||
|
reg = <0xB01000 0x100>;
|
||||||
|
lantiq,bank = <0>;
|
||||||
|
clocks = <&clock_syseth 20>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pad@B02000 {
|
||||||
|
compatible = "lantiq,pad-falcon";
|
||||||
|
reg = <0xB02000 0x100>;
|
||||||
|
lantiq,bank = <2>;
|
||||||
|
clocks = <&clock_syseth 21>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
fpi@1E000000 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "lantiq,fpi", "simple-bus";
|
||||||
|
reg = <0x1E000000 0x1000000>;
|
||||||
|
ranges = <0x0 0x1E000000 0x1000000>;
|
||||||
|
|
||||||
|
serial1: serial@100B00 {
|
||||||
|
status = "disabled";
|
||||||
|
compatible = "lantiq,asc";
|
||||||
|
reg = <0x100B00 0x100>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <112 113 114>;
|
||||||
|
line = <1>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&asc1_pins>;
|
||||||
|
clocks = <&clock_sys1 11>;
|
||||||
|
};
|
||||||
|
|
||||||
|
serial0: serial@100C00 {
|
||||||
|
compatible = "lantiq,asc";
|
||||||
|
reg = <0x100C00 0x100>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <104 105 106>;
|
||||||
|
line = <0>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&asc0_pins>;
|
||||||
|
clocks = <&clock_sys1 12>;
|
||||||
|
};
|
||||||
|
|
||||||
|
spi: spi@100D00 {
|
||||||
|
status = "disabled";
|
||||||
|
compatible = "intel,falcon-spi", "intel,xrx100-spi", "lantiq,spi-lantiq-ssc";
|
||||||
|
interrupts = <22 23 24 25>;
|
||||||
|
interrupt-names = "spi_tx", "spi_rx", "spi_err", "spi_frm";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
reg = <0x100D00 0x100>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
clocks = <&clock_sys1 13>;
|
||||||
|
base_cs = <1>;
|
||||||
|
num_cs = <2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gptc@100E00 {
|
||||||
|
compatible = "lantiq,gptc-falcon";
|
||||||
|
reg = <0x100E00 0x100>;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c: i2c@200000 {
|
||||||
|
status = "disabled";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
compatible = "lantiq,lantiq-i2c";
|
||||||
|
reg = <0x200000 0x10000>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <18 19 20 21>;
|
||||||
|
gpios = <&gpio1 7 0 &gpio1 8 0>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&i2c_pins>;
|
||||||
|
clocks = <&clock_sys1 14>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio1: gpio@800100 {
|
||||||
|
compatible = "lantiq,falcon-gpio";
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <45>;
|
||||||
|
reg = <0x800100 0x100>;
|
||||||
|
clocks = <&clock_sys1 16>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio3: gpio@800200 {
|
||||||
|
compatible = "lantiq,falcon-gpio";
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <47>;
|
||||||
|
reg = <0x800200 0x100>;
|
||||||
|
clocks = <&clock_sys1 17>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio4: gpio@800300 {
|
||||||
|
compatible = "lantiq,falcon-gpio";
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
interrupt-parent = <&icu0>;
|
||||||
|
interrupts = <48>;
|
||||||
|
reg = <0x800300 0x100>;
|
||||||
|
clocks = <&clock_sys1 18>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pad@800400 {
|
||||||
|
compatible = "lantiq,pad-falcon";
|
||||||
|
reg = <0x800400 0x100>;
|
||||||
|
lantiq,bank = <1>;
|
||||||
|
clocks = <&clock_sys1 20>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pad@800500 {
|
||||||
|
compatible = "lantiq,pad-falcon";
|
||||||
|
reg = <0x800500 0x100>;
|
||||||
|
lantiq,bank = <3>;
|
||||||
|
clocks = <&clock_sys1 21>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pad@800600 {
|
||||||
|
compatible = "lantiq,pad-falcon";
|
||||||
|
reg = <0x800600 0x100>;
|
||||||
|
lantiq,bank = <4>;
|
||||||
|
clocks = <&clock_sys1 22>;
|
||||||
|
};
|
||||||
|
|
||||||
|
status@802000 {
|
||||||
|
compatible = "lantiq,status-falcon";
|
||||||
|
reg = <0x802000 0x80>;
|
||||||
|
};
|
||||||
|
|
||||||
|
clock_sys1: clock-controller@F00000 {
|
||||||
|
compatible = "lantiq,sys1-falcon";
|
||||||
|
reg = <0xF00000 0x100>;
|
||||||
|
#clock-cells = <1>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sbs0@1F000000 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "simple-bus";
|
||||||
|
reg = <0x1F000000 0x400000>;
|
||||||
|
ranges = <0x0 0x1F000000 0x400000>;
|
||||||
|
|
||||||
|
mpsmbx: mpsmbx@200000 {
|
||||||
|
reg = <0x200000 0x200>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sbs1@1F700000 {
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
biu@1F800000 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "lantiq,biu", "simple-bus";
|
||||||
|
reg = <0x1F800000 0x800000>;
|
||||||
|
ranges = <0x0 0x1F800000 0x800000>;
|
||||||
|
|
||||||
|
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>;
|
||||||
|
clocks = <&io_clk>; /* currently no effect */
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl {
|
||||||
|
compatible = "lantiq,pinctrl-falcon";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&state_default>;
|
||||||
|
|
||||||
|
state_default: pinctrl0 {
|
||||||
|
/*ntr {
|
||||||
|
lantiq,groups = "ntr8k";
|
||||||
|
lantiq,function = "ntr";
|
||||||
|
};*/
|
||||||
|
hrst {
|
||||||
|
lantiq,groups = "hrst";
|
||||||
|
lantiq,function = "rst";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
asc0_pins: asc0 {
|
||||||
|
asc0 {
|
||||||
|
lantiq,groups = "asc0";
|
||||||
|
lantiq,function = "asc";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
asc1_pins: asc1 {
|
||||||
|
asc1 {
|
||||||
|
lantiq,groups = "asc1";
|
||||||
|
lantiq,function = "asc";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
i2c_pins: i2c {
|
||||||
|
i2c {
|
||||||
|
lantiq,groups = "i2c";
|
||||||
|
lantiq,function = "i2c";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
bootled_pins: bootled {
|
||||||
|
bootled {
|
||||||
|
lantiq,groups = "bootled";
|
||||||
|
lantiq,function = "led";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
ntr_ntr8k: ntr8k {
|
||||||
|
ntr8k {
|
||||||
|
lantiq,groups = "ntr8k";
|
||||||
|
lantiq,function = "ntr";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
ntr_pps: pps {
|
||||||
|
pps {
|
||||||
|
lantiq,groups = "pps";
|
||||||
|
lantiq,function = "ntr";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
ntr_gpio: gpio {
|
||||||
|
gpio {
|
||||||
|
lantiq,pins = "io5";
|
||||||
|
lantiq,mux = <1>;
|
||||||
|
lantiq,output = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
slic_pins: slic {
|
||||||
|
slic {
|
||||||
|
lantiq,groups = "slic";
|
||||||
|
lantiq,function = "slic";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pinselect-ntr {
|
||||||
|
compatible = "lantiq,onu-ntr","lantiq,pinselect-ntr";
|
||||||
|
pinctrl-names = "ntr8k", "pps", "gpio";
|
||||||
|
pinctrl-0 = <&ntr_ntr8k>;
|
||||||
|
pinctrl-1 = <&ntr_pps>;
|
||||||
|
pinctrl-2 = <&ntr_gpio>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pinselect-asc1 {
|
||||||
|
compatible = "lantiq,onu-asc1","lantiq,pinselect-asc1";
|
||||||
|
pinctrl-names = "default", "asc1";
|
||||||
|
pinctrl-0 = <&slic_pins>;
|
||||||
|
pinctrl-1 = <&asc1_pins>;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
|
@ -0,0 +1,10 @@
|
||||||
|
CONFIG_MTD_NAND=y
|
||||||
|
CONFIG_MTD_NAND_ECC=y
|
||||||
|
CONFIG_MTD_SPLIT_FIRMWARE_NAME="linux"
|
||||||
|
CONFIG_PINCTRL_FALCON=y
|
||||||
|
# CONFIG_PSB6970_PHY is not set
|
||||||
|
# CONFIG_RTL8366_SMI is not set
|
||||||
|
CONFIG_SOC_FALCON=y
|
||||||
|
# CONFIG_SOC_TYPE_XWAY is not set
|
||||||
|
# CONFIG_SOC_XWAY is not set
|
||||||
|
CONFIG_SPI_FALCON=y
|
|
@ -0,0 +1,9 @@
|
||||||
|
define Profile/Default
|
||||||
|
NAME:=Default Profile
|
||||||
|
PRIORITY:=1
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Profile/Default/Description
|
||||||
|
Default package set compatible with most boards.
|
||||||
|
endef
|
||||||
|
$(eval $(call Profile,Default))
|
|
@ -0,0 +1,13 @@
|
||||||
|
ARCH:=mips
|
||||||
|
SUBTARGET:=falcon
|
||||||
|
BOARDNAME:=Falcon
|
||||||
|
FEATURES:=squashfs mips16 nand
|
||||||
|
CPU_TYPE:=24kc
|
||||||
|
|
||||||
|
DEFAULT_PACKAGES+= kmod-leds-gpio \
|
||||||
|
kmod-gpio-button-hotplug \
|
||||||
|
kmod-ledtrig-heartbeat
|
||||||
|
|
||||||
|
define Target/Description
|
||||||
|
Lantiq Falcon
|
||||||
|
endef
|
|
@ -565,4 +565,85 @@ TARGET_DEVICES += VGV7519BRN
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
ifeq ($(SUBTARGET),falcon)
|
||||||
|
|
||||||
|
define Device/EASY98000
|
||||||
|
IMAGE_SIZE := 3904k
|
||||||
|
DEVICE_TITLE := EASY98000 - Lantiq Falcon Eval Board NOR
|
||||||
|
DEVICE_DTS := EASY98000NOR
|
||||||
|
DEVICE_PACKAGES := kmod-dm9000 kmod-i2c-lantiq kmod-eeprom-at24
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY98000
|
||||||
|
|
||||||
|
define Device/EASY98000NAND
|
||||||
|
IMAGE_SIZE := 3904k
|
||||||
|
DEVICE_TITLE := EASY98000 - Lantiq Falcon Eval Board NAND
|
||||||
|
DEVICE_PACKAGES := kmod-dm9000 kmod-i2c-lantiq kmod-eeprom-at24
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY98000NAND
|
||||||
|
|
||||||
|
define Device/EASY98000SFLASH
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := EASY98000 - Lantiq Falcon Eval Board SFLASH
|
||||||
|
DEVICE_PACKAGES := kmod-dm9000 kmod-i2c-lantiq kmod-eeprom-at24
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY98000SFLASH
|
||||||
|
|
||||||
|
define Device/FALCON-MDU
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := MDU - Lantiq Falcon / VINAXdp MDU Board
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += FALCON-MDU
|
||||||
|
|
||||||
|
define Device/EASY88388
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := EASY88388 - Lantiq Falcon FTTDP8 Reference Board
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY88388
|
||||||
|
|
||||||
|
define Device/EASY88444
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := EASY88444 - Lantiq Falcon FTTdp G.FAST Reference Board
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY88444
|
||||||
|
|
||||||
|
define Device/FALCON-SFP
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := SFP - Lantiq Falcon SFP Stick
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += FALCON-SFP
|
||||||
|
|
||||||
|
define Device/EASY98035SYNCE
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := EASY98035SYNCE - Lantiq Falcon SFP Stick with Synchronous Ethernet
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY98035SYNCE
|
||||||
|
|
||||||
|
define Device/EASY98035SYNCE1588
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := EASY98035SYNCE1588 - Lantiq Falcon SFP Stick with SyncE and IEEE1588
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY98035SYNCE1588
|
||||||
|
|
||||||
|
define Device/EASY98020
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := EASY98020 - Lantiq Falcon SFU Reference Board
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY98020
|
||||||
|
|
||||||
|
define Device/EASY98020V18
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := EASY98020V18 - Lantiq Falcon SFU Reference Board V1.8
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY98020V18
|
||||||
|
|
||||||
|
define Device/EASY98021
|
||||||
|
IMAGE_SIZE := 7424k
|
||||||
|
DEVICE_TITLE := EASY98021 - Lantiq Falcon HGU Reference Board
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += EASY98021
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
$(eval $(call BuildImage))
|
$(eval $(call BuildImage))
|
||||||
|
|
Loading…
Reference in New Issue