* [PATCH v4] NI 169445 board support @ 2017-03-14 16:13 Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan ` (2 more replies) 0 siblings, 3 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-14 16:13 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips Add support for the National Instruments 169445 board ---- Changes from v3: - Remove unused ngpios DT property from documentation for the NAND GPIO bindings and the actual board device tree. - Add no-output property to the same, for the GPIO controller that is only used for input signals from NAND. ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH v4] NI 169445 board support 2017-03-14 16:13 [PATCH v4] NI 169445 board support Nathan Sullivan @ 2017-03-14 16:13 ` Nathan Sullivan 2017-03-14 16:13 ` [PATCH 1/2] gpio: mmio: add support for NI 169445 NAND GPIO Nathan Sullivan 2017-03-14 16:13 ` [PATCH 2/2] MIPS: NI 169445 board support Nathan Sullivan 2 siblings, 0 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-14 16:13 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips Add support for the National Instruments 169445 board ---- Changes from v3: - Remove unused ngpios DT property from documentation for the NAND GPIO bindings and the actual board device tree. - Add no-output property to the same, for the GPIO controller that is only used for input signals from NAND. ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 1/2] gpio: mmio: add support for NI 169445 NAND GPIO 2017-03-14 16:13 [PATCH v4] NI 169445 board support Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan @ 2017-03-14 16:13 ` Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan 2017-03-23 8:49 ` Linus Walleij 2017-03-14 16:13 ` [PATCH 2/2] MIPS: NI 169445 board support Nathan Sullivan 2 siblings, 2 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-14 16:13 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips, Nathan Sullivan The GPIO-based NAND controller on National Instruments 169445 hardware exposes a set of simple lines for the control signals. Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- .../bindings/gpio/ni,169445-nand-gpio.txt | 38 ++++++++++++++++++++++ drivers/gpio/gpio-mmio.c | 1 + 2 files changed, 39 insertions(+) create mode 100644 Documentation/devicetree/bindings/gpio/ni,169445-nand-gpio.txt diff --git a/Documentation/devicetree/bindings/gpio/ni,169445-nand-gpio.txt b/Documentation/devicetree/bindings/gpio/ni,169445-nand-gpio.txt new file mode 100644 index 0000000..ca2f8c7 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/ni,169445-nand-gpio.txt @@ -0,0 +1,38 @@ +Bindings for the National Instruments 169445 GPIO NAND controller + +The 169445 GPIO NAND controller has two memory mapped GPIO registers, one +for input (the ready signal) and one for output (control signals). It is +intended to be used with the GPIO NAND driver. + +Required properties: + - compatible: should be "ni,169445-nand-gpio" + - reg-names: must contain + "dat" - data register + - reg: address + size pairs describing the GPIO register sets; + order must correspond with the order of entries in reg-names + - #gpio-cells: must be set to 2. The first cell is the pin number and + the second cell is used to specify the gpio polarity: + 0 = active high + 1 = active low + - gpio-controller: Marks the device node as a gpio controller. + +Optional properties: + - no-output: disables driving output on the pins + +Examples: + gpio1: nand-gpio-out@1f300010 { + compatible = "ni,169445-nand-gpio"; + reg = <0x1f300010 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + }; + + gpio2: nand-gpio-in@1f300014 { + compatible = "ni,169445-nand-gpio"; + reg = <0x1f300014 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + no-output; + }; diff --git a/drivers/gpio/gpio-mmio.c b/drivers/gpio/gpio-mmio.c index d7d03ad..f7da40e 100644 --- a/drivers/gpio/gpio-mmio.c +++ b/drivers/gpio/gpio-mmio.c @@ -575,6 +575,7 @@ static void __iomem *bgpio_map(struct platform_device *pdev, static const struct of_device_id bgpio_of_match[] = { { .compatible = "brcm,bcm6345-gpio" }, { .compatible = "wd,mbl-gpio" }, + { .compatible = "ni,169445-nand-gpio" }, { } }; MODULE_DEVICE_TABLE(of, bgpio_of_match); -- 2.1.4 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 1/2] gpio: mmio: add support for NI 169445 NAND GPIO 2017-03-14 16:13 ` [PATCH 1/2] gpio: mmio: add support for NI 169445 NAND GPIO Nathan Sullivan @ 2017-03-14 16:13 ` Nathan Sullivan 2017-03-23 8:49 ` Linus Walleij 1 sibling, 0 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-14 16:13 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips, Nathan Sullivan The GPIO-based NAND controller on National Instruments 169445 hardware exposes a set of simple lines for the control signals. Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- .../bindings/gpio/ni,169445-nand-gpio.txt | 38 ++++++++++++++++++++++ drivers/gpio/gpio-mmio.c | 1 + 2 files changed, 39 insertions(+) create mode 100644 Documentation/devicetree/bindings/gpio/ni,169445-nand-gpio.txt diff --git a/Documentation/devicetree/bindings/gpio/ni,169445-nand-gpio.txt b/Documentation/devicetree/bindings/gpio/ni,169445-nand-gpio.txt new file mode 100644 index 0000000..ca2f8c7 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/ni,169445-nand-gpio.txt @@ -0,0 +1,38 @@ +Bindings for the National Instruments 169445 GPIO NAND controller + +The 169445 GPIO NAND controller has two memory mapped GPIO registers, one +for input (the ready signal) and one for output (control signals). It is +intended to be used with the GPIO NAND driver. + +Required properties: + - compatible: should be "ni,169445-nand-gpio" + - reg-names: must contain + "dat" - data register + - reg: address + size pairs describing the GPIO register sets; + order must correspond with the order of entries in reg-names + - #gpio-cells: must be set to 2. The first cell is the pin number and + the second cell is used to specify the gpio polarity: + 0 = active high + 1 = active low + - gpio-controller: Marks the device node as a gpio controller. + +Optional properties: + - no-output: disables driving output on the pins + +Examples: + gpio1: nand-gpio-out@1f300010 { + compatible = "ni,169445-nand-gpio"; + reg = <0x1f300010 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + }; + + gpio2: nand-gpio-in@1f300014 { + compatible = "ni,169445-nand-gpio"; + reg = <0x1f300014 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + no-output; + }; diff --git a/drivers/gpio/gpio-mmio.c b/drivers/gpio/gpio-mmio.c index d7d03ad..f7da40e 100644 --- a/drivers/gpio/gpio-mmio.c +++ b/drivers/gpio/gpio-mmio.c @@ -575,6 +575,7 @@ static void __iomem *bgpio_map(struct platform_device *pdev, static const struct of_device_id bgpio_of_match[] = { { .compatible = "brcm,bcm6345-gpio" }, { .compatible = "wd,mbl-gpio" }, + { .compatible = "ni,169445-nand-gpio" }, { } }; MODULE_DEVICE_TABLE(of, bgpio_of_match); -- 2.1.4 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 1/2] gpio: mmio: add support for NI 169445 NAND GPIO 2017-03-14 16:13 ` [PATCH 1/2] gpio: mmio: add support for NI 169445 NAND GPIO Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan @ 2017-03-23 8:49 ` Linus Walleij 1 sibling, 0 replies; 19+ messages in thread From: Linus Walleij @ 2017-03-23 8:49 UTC (permalink / raw) To: Nathan Sullivan Cc: Alexandre Courbot, Mark Rutland, devicetree, Rob Herring, Ralf Baechle, linux-kernel, linux-gpio, Linux MIPS On Tue, Mar 14, 2017 at 5:13 PM, Nathan Sullivan <nathan.sullivan@ni.com> wrote: > The GPIO-based NAND controller on National Instruments 169445 hardware > exposes a set of simple lines for the control signals. > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> Patch applied. Yours, Linus Walleij ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 2/2] MIPS: NI 169445 board support 2017-03-14 16:13 [PATCH v4] NI 169445 board support Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan 2017-03-14 16:13 ` [PATCH 1/2] gpio: mmio: add support for NI 169445 NAND GPIO Nathan Sullivan @ 2017-03-14 16:13 ` Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan 2017-03-23 22:29 ` Rob Herring 2 siblings, 2 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-14 16:13 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips, Nathan Sullivan Support the National Instruments 169445 board. Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- Documentation/devicetree/bindings/mips/ni.txt | 7 ++ MAINTAINERS | 8 ++ arch/mips/boot/dts/Makefile | 1 + arch/mips/boot/dts/ni/169445.dts | 100 ++++++++++++++++++++++++ arch/mips/boot/dts/ni/Makefile | 7 ++ arch/mips/configs/generic/board-ni169445.config | 27 +++++++ arch/mips/generic/Kconfig | 6 ++ arch/mips/generic/vmlinux.its.S | 25 ++++++ 8 files changed, 181 insertions(+) create mode 100644 Documentation/devicetree/bindings/mips/ni.txt create mode 100644 arch/mips/boot/dts/ni/169445.dts create mode 100644 arch/mips/boot/dts/ni/Makefile create mode 100644 arch/mips/configs/generic/board-ni169445.config diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt new file mode 100644 index 0000000..722bf2d --- /dev/null +++ b/Documentation/devicetree/bindings/mips/ni.txt @@ -0,0 +1,7 @@ +National Instruments MIPS platforms + +required root node properties: + - compatible: must be "ni,169445" + +CPU Nodes + - compatible: must be "mti,mips14KEc" diff --git a/MAINTAINERS b/MAINTAINERS index c265a5f..b72f059 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -8887,6 +8887,14 @@ F: include/linux/sunrpc/ F: include/uapi/linux/nfs* F: include/uapi/linux/sunrpc/ +NI169445 MIPS ARCHITECTURE +M: Nathan Sullivan <nathan.sullivan@ni.com> +L: linux-mips@linux-mips.org +S: Maintained +F: arch/mips/boot/dts/ni/ +F: arch/mips/configs/generic/board-ni169445.config +F: Documentation/devicetree/bindings/mips/ni.txt + NILFS2 FILESYSTEM M: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> L: linux-nilfs@vger.kernel.org diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile index b9db492..27b0f37 100644 --- a/arch/mips/boot/dts/Makefile +++ b/arch/mips/boot/dts/Makefile @@ -4,6 +4,7 @@ dts-dirs += img dts-dirs += ingenic dts-dirs += lantiq dts-dirs += mti +dts-dirs += ni dts-dirs += netlogic dts-dirs += pic32 dts-dirs += qca diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts new file mode 100644 index 0000000..9746576 --- /dev/null +++ b/arch/mips/boot/dts/ni/169445.dts @@ -0,0 +1,100 @@ +/dts-v1/; + +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "ni,169445"; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + cpu@0 { + device_type = "cpu"; + compatible = "mti,mips14KEc"; + clocks = <&baseclk>; + reg = <0>; + }; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x10000000>; + }; + + baseclk: baseclock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <50000000>; + }; + + cpu_intc: cpu_intc { + #address-cells = <0>; + compatible = "mti,cpu-interrupt-controller"; + interrupt-controller; + #interrupt-cells = <1>; + }; + + ahb@0 { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x1f300000 0x80FFF>; + + gpio1:gpio-controller@1f300010 { + compatible = "ni,169445-nand-gpio"; + reg = <0x10 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + }; + + gpio2:gpio-controller@1f300014 { + compatible = "ni,169445-nand-gpio"; + reg = <0x14 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + no-output; + }; + + nand@1f300000 { + compatible = "gpio-control-nand"; + nand-on-flash-bbt; + nand-ecc-mode = "soft_bch"; + nand-ecc-step-size = <512>; + nand-ecc-strength = <4>; + reg = <0x0 4>; + gpios = <&gpio2 0 0>, /* rdy */ + <&gpio1 1 0>, /* nce */ + <&gpio1 2 0>, /* ale */ + <&gpio1 3 0>, /* cle */ + <&gpio1 4 0>; /* nwp */ + }; + + serial@1f380000 { + compatible = "ns16550a"; + reg = <0x80000 0x1000>; + interrupt-parent = <&cpu_intc>; + interrupts = <6>; + clocks = <&baseclk>; + reg-shift = <0>; + }; + + ethernet@1f340000 { + compatible = "snps,dwmac-4.10a"; + interrupt-parent = <&cpu_intc>; + interrupts = <5>; + interrupt-names = "macirq"; + reg = <0x40000 0x2000>; + clock-names = "stmmaceth", "pclk"; + clocks = <&baseclk>, <&baseclk>; + + phy-mode = "rgmii"; + + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + }; +}; diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile new file mode 100644 index 0000000..66cfdff --- /dev/null +++ b/arch/mips/boot/dts/ni/Makefile @@ -0,0 +1,7 @@ +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb + +# Force kbuild to make empty built-in.o if necessary +obj- += dummy.o + +always := $(dtb-y) +clean-files := *.dtb *.dtb.S diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config new file mode 100644 index 0000000..0bae1f8 --- /dev/null +++ b/arch/mips/configs/generic/board-ni169445.config @@ -0,0 +1,27 @@ +CONFIG_FIT_IMAGE_FDT_NI169445=y + +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_OF_PLATFORM=y + +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC_PLATFORM=y + +CONFIG_MTD=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CMDLINE_PARTS=y + +CONFIG_MTD_NAND_ECC=y +CONFIG_MTD_NAND_ECC_BCH=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_GPIO=y +CONFIG_MTD_NAND_IDS=y + +CONFIG_MTD_UBI=y +CONFIG_MTD_UBI_BLOCK=y + +CONFIG_NETDEVICES=y +CONFIG_STMMAC_ETH=y +CONFIG_STMMAC_PLATFORM=y +CONFIG_DWMAC_GENERIC=y diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig index a606b3f..fbf0813 100644 --- a/arch/mips/generic/Kconfig +++ b/arch/mips/generic/Kconfig @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 Enable this to include support for booting on MIPS SEAD-3 FPGA-based development boards, which boot using a legacy boot protocol. +config FIT_IMAGE_FDT_NI169445 + bool "Include FDT for NI 169445" + help + Enable this to include the FDT for the 169445 platform from + National Instruments in the FIT kernel image. + endif diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S index f67fbf1..de851f7 100644 --- a/arch/mips/generic/vmlinux.its.S +++ b/arch/mips/generic/vmlinux.its.S @@ -29,3 +29,28 @@ }; }; }; + +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 +/ { + images { + fdt@ni169445 { + description = "NI 169445 device tree"; + data = /incbin/("boot/dts/ni/169445.dtb"); + type = "flat_dt"; + arch = "mips"; + compression = "none"; + hash@0 { + algo = "sha1"; + }; + }; + }; + + configurations { + conf@ni169445 { + description = "NI 169445 Linux Kernel"; + kernel = "kernel@0"; + fdt = "fdt@ni169445"; + }; + }; +}; +#endif -- 2.1.4 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 2/2] MIPS: NI 169445 board support 2017-03-14 16:13 ` [PATCH 2/2] MIPS: NI 169445 board support Nathan Sullivan @ 2017-03-14 16:13 ` Nathan Sullivan 2017-03-23 22:29 ` Rob Herring 1 sibling, 0 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-14 16:13 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips, Nathan Sullivan Support the National Instruments 169445 board. Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- Documentation/devicetree/bindings/mips/ni.txt | 7 ++ MAINTAINERS | 8 ++ arch/mips/boot/dts/Makefile | 1 + arch/mips/boot/dts/ni/169445.dts | 100 ++++++++++++++++++++++++ arch/mips/boot/dts/ni/Makefile | 7 ++ arch/mips/configs/generic/board-ni169445.config | 27 +++++++ arch/mips/generic/Kconfig | 6 ++ arch/mips/generic/vmlinux.its.S | 25 ++++++ 8 files changed, 181 insertions(+) create mode 100644 Documentation/devicetree/bindings/mips/ni.txt create mode 100644 arch/mips/boot/dts/ni/169445.dts create mode 100644 arch/mips/boot/dts/ni/Makefile create mode 100644 arch/mips/configs/generic/board-ni169445.config diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt new file mode 100644 index 0000000..722bf2d --- /dev/null +++ b/Documentation/devicetree/bindings/mips/ni.txt @@ -0,0 +1,7 @@ +National Instruments MIPS platforms + +required root node properties: + - compatible: must be "ni,169445" + +CPU Nodes + - compatible: must be "mti,mips14KEc" diff --git a/MAINTAINERS b/MAINTAINERS index c265a5f..b72f059 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -8887,6 +8887,14 @@ F: include/linux/sunrpc/ F: include/uapi/linux/nfs* F: include/uapi/linux/sunrpc/ +NI169445 MIPS ARCHITECTURE +M: Nathan Sullivan <nathan.sullivan@ni.com> +L: linux-mips@linux-mips.org +S: Maintained +F: arch/mips/boot/dts/ni/ +F: arch/mips/configs/generic/board-ni169445.config +F: Documentation/devicetree/bindings/mips/ni.txt + NILFS2 FILESYSTEM M: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> L: linux-nilfs@vger.kernel.org diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile index b9db492..27b0f37 100644 --- a/arch/mips/boot/dts/Makefile +++ b/arch/mips/boot/dts/Makefile @@ -4,6 +4,7 @@ dts-dirs += img dts-dirs += ingenic dts-dirs += lantiq dts-dirs += mti +dts-dirs += ni dts-dirs += netlogic dts-dirs += pic32 dts-dirs += qca diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts new file mode 100644 index 0000000..9746576 --- /dev/null +++ b/arch/mips/boot/dts/ni/169445.dts @@ -0,0 +1,100 @@ +/dts-v1/; + +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "ni,169445"; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + cpu@0 { + device_type = "cpu"; + compatible = "mti,mips14KEc"; + clocks = <&baseclk>; + reg = <0>; + }; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x10000000>; + }; + + baseclk: baseclock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <50000000>; + }; + + cpu_intc: cpu_intc { + #address-cells = <0>; + compatible = "mti,cpu-interrupt-controller"; + interrupt-controller; + #interrupt-cells = <1>; + }; + + ahb@0 { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x1f300000 0x80FFF>; + + gpio1:gpio-controller@1f300010 { + compatible = "ni,169445-nand-gpio"; + reg = <0x10 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + }; + + gpio2:gpio-controller@1f300014 { + compatible = "ni,169445-nand-gpio"; + reg = <0x14 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + no-output; + }; + + nand@1f300000 { + compatible = "gpio-control-nand"; + nand-on-flash-bbt; + nand-ecc-mode = "soft_bch"; + nand-ecc-step-size = <512>; + nand-ecc-strength = <4>; + reg = <0x0 4>; + gpios = <&gpio2 0 0>, /* rdy */ + <&gpio1 1 0>, /* nce */ + <&gpio1 2 0>, /* ale */ + <&gpio1 3 0>, /* cle */ + <&gpio1 4 0>; /* nwp */ + }; + + serial@1f380000 { + compatible = "ns16550a"; + reg = <0x80000 0x1000>; + interrupt-parent = <&cpu_intc>; + interrupts = <6>; + clocks = <&baseclk>; + reg-shift = <0>; + }; + + ethernet@1f340000 { + compatible = "snps,dwmac-4.10a"; + interrupt-parent = <&cpu_intc>; + interrupts = <5>; + interrupt-names = "macirq"; + reg = <0x40000 0x2000>; + clock-names = "stmmaceth", "pclk"; + clocks = <&baseclk>, <&baseclk>; + + phy-mode = "rgmii"; + + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + }; +}; diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile new file mode 100644 index 0000000..66cfdff --- /dev/null +++ b/arch/mips/boot/dts/ni/Makefile @@ -0,0 +1,7 @@ +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb + +# Force kbuild to make empty built-in.o if necessary +obj- += dummy.o + +always := $(dtb-y) +clean-files := *.dtb *.dtb.S diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config new file mode 100644 index 0000000..0bae1f8 --- /dev/null +++ b/arch/mips/configs/generic/board-ni169445.config @@ -0,0 +1,27 @@ +CONFIG_FIT_IMAGE_FDT_NI169445=y + +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_OF_PLATFORM=y + +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC_PLATFORM=y + +CONFIG_MTD=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CMDLINE_PARTS=y + +CONFIG_MTD_NAND_ECC=y +CONFIG_MTD_NAND_ECC_BCH=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_GPIO=y +CONFIG_MTD_NAND_IDS=y + +CONFIG_MTD_UBI=y +CONFIG_MTD_UBI_BLOCK=y + +CONFIG_NETDEVICES=y +CONFIG_STMMAC_ETH=y +CONFIG_STMMAC_PLATFORM=y +CONFIG_DWMAC_GENERIC=y diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig index a606b3f..fbf0813 100644 --- a/arch/mips/generic/Kconfig +++ b/arch/mips/generic/Kconfig @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 Enable this to include support for booting on MIPS SEAD-3 FPGA-based development boards, which boot using a legacy boot protocol. +config FIT_IMAGE_FDT_NI169445 + bool "Include FDT for NI 169445" + help + Enable this to include the FDT for the 169445 platform from + National Instruments in the FIT kernel image. + endif diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S index f67fbf1..de851f7 100644 --- a/arch/mips/generic/vmlinux.its.S +++ b/arch/mips/generic/vmlinux.its.S @@ -29,3 +29,28 @@ }; }; }; + +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 +/ { + images { + fdt@ni169445 { + description = "NI 169445 device tree"; + data = /incbin/("boot/dts/ni/169445.dtb"); + type = "flat_dt"; + arch = "mips"; + compression = "none"; + hash@0 { + algo = "sha1"; + }; + }; + }; + + configurations { + conf@ni169445 { + description = "NI 169445 Linux Kernel"; + kernel = "kernel@0"; + fdt = "fdt@ni169445"; + }; + }; +}; +#endif -- 2.1.4 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 2/2] MIPS: NI 169445 board support 2017-03-14 16:13 ` [PATCH 2/2] MIPS: NI 169445 board support Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan @ 2017-03-23 22:29 ` Rob Herring 2017-03-24 14:46 ` Nathan Sullivan 1 sibling, 1 reply; 19+ messages in thread From: Rob Herring @ 2017-03-23 22:29 UTC (permalink / raw) To: Nathan Sullivan Cc: linus.walleij, gnurou, mark.rutland, devicetree, ralf, linux-kernel, linux-gpio, linux-mips On Tue, Mar 14, 2017 at 11:13:23AM -0500, Nathan Sullivan wrote: > Support the National Instruments 169445 board. > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> > --- > Documentation/devicetree/bindings/mips/ni.txt | 7 ++ > MAINTAINERS | 8 ++ > arch/mips/boot/dts/Makefile | 1 + > arch/mips/boot/dts/ni/169445.dts | 100 ++++++++++++++++++++++++ > arch/mips/boot/dts/ni/Makefile | 7 ++ > arch/mips/configs/generic/board-ni169445.config | 27 +++++++ > arch/mips/generic/Kconfig | 6 ++ > arch/mips/generic/vmlinux.its.S | 25 ++++++ > 8 files changed, 181 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mips/ni.txt > create mode 100644 arch/mips/boot/dts/ni/169445.dts > create mode 100644 arch/mips/boot/dts/ni/Makefile > create mode 100644 arch/mips/configs/generic/board-ni169445.config > > diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt > new file mode 100644 > index 0000000..722bf2d > --- /dev/null > +++ b/Documentation/devicetree/bindings/mips/ni.txt > @@ -0,0 +1,7 @@ > +National Instruments MIPS platforms > + > +required root node properties: > + - compatible: must be "ni,169445" > + > +CPU Nodes > + - compatible: must be "mti,mips14KEc" > diff --git a/MAINTAINERS b/MAINTAINERS > index c265a5f..b72f059 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -8887,6 +8887,14 @@ F: include/linux/sunrpc/ > F: include/uapi/linux/nfs* > F: include/uapi/linux/sunrpc/ > > +NI169445 MIPS ARCHITECTURE > +M: Nathan Sullivan <nathan.sullivan@ni.com> > +L: linux-mips@linux-mips.org > +S: Maintained > +F: arch/mips/boot/dts/ni/ > +F: arch/mips/configs/generic/board-ni169445.config > +F: Documentation/devicetree/bindings/mips/ni.txt > + > NILFS2 FILESYSTEM > M: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> > L: linux-nilfs@vger.kernel.org > diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile > index b9db492..27b0f37 100644 > --- a/arch/mips/boot/dts/Makefile > +++ b/arch/mips/boot/dts/Makefile > @@ -4,6 +4,7 @@ dts-dirs += img > dts-dirs += ingenic > dts-dirs += lantiq > dts-dirs += mti > +dts-dirs += ni > dts-dirs += netlogic > dts-dirs += pic32 > dts-dirs += qca > diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts > new file mode 100644 > index 0000000..9746576 > --- /dev/null > +++ b/arch/mips/boot/dts/ni/169445.dts > @@ -0,0 +1,100 @@ > +/dts-v1/; > + > +/ { > + #address-cells = <1>; > + #size-cells = <1>; > + compatible = "ni,169445"; > + > + cpus { > + #address-cells = <1>; > + #size-cells = <0>; > + cpu@0 { > + device_type = "cpu"; > + compatible = "mti,mips14KEc"; > + clocks = <&baseclk>; > + reg = <0>; > + }; > + }; > + > + memory@0 { > + device_type = "memory"; > + reg = <0x0 0x10000000>; > + }; > + > + baseclk: baseclock { > + compatible = "fixed-clock"; > + #clock-cells = <0>; > + clock-frequency = <50000000>; > + }; > + > + cpu_intc: cpu_intc { interrupt-controller { > + #address-cells = <0>; > + compatible = "mti,cpu-interrupt-controller"; > + interrupt-controller; > + #interrupt-cells = <1>; > + }; > + > + ahb@0 { ahb@1f300000 > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <1>; > + ranges = <0x0 0x1f300000 0x80FFF>; > + > + gpio1:gpio-controller@1f300010 { ^ space 'gpio' is the standard node name, so gpio@... > + compatible = "ni,169445-nand-gpio"; > + reg = <0x10 0x4>; > + reg-names = "dat"; > + gpio-controller; > + #gpio-cells = <2>; > + }; > + > + gpio2:gpio-controller@1f300014 { ditto > + compatible = "ni,169445-nand-gpio"; > + reg = <0x14 0x4>; > + reg-names = "dat"; > + gpio-controller; > + #gpio-cells = <2>; > + no-output; > + }; > + > + nand@1f300000 { > + compatible = "gpio-control-nand"; > + nand-on-flash-bbt; > + nand-ecc-mode = "soft_bch"; > + nand-ecc-step-size = <512>; > + nand-ecc-strength = <4>; > + reg = <0x0 4>; > + gpios = <&gpio2 0 0>, /* rdy */ > + <&gpio1 1 0>, /* nce */ > + <&gpio1 2 0>, /* ale */ > + <&gpio1 3 0>, /* cle */ > + <&gpio1 4 0>; /* nwp */ > + }; > + > + serial@1f380000 { > + compatible = "ns16550a"; > + reg = <0x80000 0x1000>; > + interrupt-parent = <&cpu_intc>; > + interrupts = <6>; > + clocks = <&baseclk>; > + reg-shift = <0>; > + }; > + > + ethernet@1f340000 { > + compatible = "snps,dwmac-4.10a"; > + interrupt-parent = <&cpu_intc>; > + interrupts = <5>; > + interrupt-names = "macirq"; > + reg = <0x40000 0x2000>; > + clock-names = "stmmaceth", "pclk"; > + clocks = <&baseclk>, <&baseclk>; > + > + phy-mode = "rgmii"; > + > + fixed-link { > + speed = <1000>; > + full-duplex; > + }; > + }; > + }; > +}; > diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile > new file mode 100644 > index 0000000..66cfdff > --- /dev/null > +++ b/arch/mips/boot/dts/ni/Makefile > @@ -0,0 +1,7 @@ > +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb > + > +# Force kbuild to make empty built-in.o if necessary > +obj- += dummy.o > + > +always := $(dtb-y) > +clean-files := *.dtb *.dtb.S > diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config > new file mode 100644 > index 0000000..0bae1f8 > --- /dev/null > +++ b/arch/mips/configs/generic/board-ni169445.config > @@ -0,0 +1,27 @@ > +CONFIG_FIT_IMAGE_FDT_NI169445=y > + > +CONFIG_SERIAL_8250=y > +CONFIG_SERIAL_8250_CONSOLE=y > +CONFIG_SERIAL_OF_PLATFORM=y > + > +CONFIG_GPIOLIB=y > +CONFIG_GPIO_SYSFS=y > +CONFIG_GPIO_GENERIC_PLATFORM=y > + > +CONFIG_MTD=y > +CONFIG_MTD_BLOCK=y > +CONFIG_MTD_CMDLINE_PARTS=y > + > +CONFIG_MTD_NAND_ECC=y > +CONFIG_MTD_NAND_ECC_BCH=y > +CONFIG_MTD_NAND=y > +CONFIG_MTD_NAND_GPIO=y > +CONFIG_MTD_NAND_IDS=y > + > +CONFIG_MTD_UBI=y > +CONFIG_MTD_UBI_BLOCK=y > + > +CONFIG_NETDEVICES=y > +CONFIG_STMMAC_ETH=y > +CONFIG_STMMAC_PLATFORM=y > +CONFIG_DWMAC_GENERIC=y > diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig > index a606b3f..fbf0813 100644 > --- a/arch/mips/generic/Kconfig > +++ b/arch/mips/generic/Kconfig > @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 > Enable this to include support for booting on MIPS SEAD-3 FPGA-based > development boards, which boot using a legacy boot protocol. > > +config FIT_IMAGE_FDT_NI169445 > + bool "Include FDT for NI 169445" > + help > + Enable this to include the FDT for the 169445 platform from > + National Instruments in the FIT kernel image. > + > endif > diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S > index f67fbf1..de851f7 100644 > --- a/arch/mips/generic/vmlinux.its.S > +++ b/arch/mips/generic/vmlinux.its.S > @@ -29,3 +29,28 @@ > }; > }; > }; > + > +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 > +/ { IMO, this shouldn't be in the kernel. Is the kernel supposed to create board specific images for every bootloaders custom format? It doesn't scale. > + images { > + fdt@ni169445 { > + description = "NI 169445 device tree"; > + data = /incbin/("boot/dts/ni/169445.dtb"); > + type = "flat_dt"; > + arch = "mips"; > + compression = "none"; > + hash@0 { > + algo = "sha1"; > + }; > + }; > + }; > + > + configurations { > + conf@ni169445 { > + description = "NI 169445 Linux Kernel"; > + kernel = "kernel@0"; > + fdt = "fdt@ni169445"; > + }; > + }; > +}; > +#endif > -- > 2.1.4 > ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 2/2] MIPS: NI 169445 board support 2017-03-23 22:29 ` Rob Herring @ 2017-03-24 14:46 ` Nathan Sullivan 2017-03-24 14:46 ` Nathan Sullivan 0 siblings, 1 reply; 19+ messages in thread From: Nathan Sullivan @ 2017-03-24 14:46 UTC (permalink / raw) To: Rob Herring Cc: linus.walleij, gnurou, mark.rutland, devicetree, ralf, linux-kernel, linux-gpio, linux-mips On Thu, Mar 23, 2017 at 05:29:45PM -0500, Rob Herring wrote: > On Tue, Mar 14, 2017 at 11:13:23AM -0500, Nathan Sullivan wrote: > > Support the National Instruments 169445 board. > > > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> > > --- > > Documentation/devicetree/bindings/mips/ni.txt | 7 ++ > > MAINTAINERS | 8 ++ > > arch/mips/boot/dts/Makefile | 1 + > > arch/mips/boot/dts/ni/169445.dts | 100 ++++++++++++++++++++++++ > > arch/mips/boot/dts/ni/Makefile | 7 ++ > > arch/mips/configs/generic/board-ni169445.config | 27 +++++++ > > arch/mips/generic/Kconfig | 6 ++ > > arch/mips/generic/vmlinux.its.S | 25 ++++++ > > 8 files changed, 181 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/mips/ni.txt > > create mode 100644 arch/mips/boot/dts/ni/169445.dts > > create mode 100644 arch/mips/boot/dts/ni/Makefile > > create mode 100644 arch/mips/configs/generic/board-ni169445.config > > > > diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt > > new file mode 100644 > > index 0000000..722bf2d > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/mips/ni.txt > > @@ -0,0 +1,7 @@ > > +National Instruments MIPS platforms > > + > > +required root node properties: > > + - compatible: must be "ni,169445" > > + > > +CPU Nodes > > + - compatible: must be "mti,mips14KEc" > > diff --git a/MAINTAINERS b/MAINTAINERS > > index c265a5f..b72f059 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -8887,6 +8887,14 @@ F: include/linux/sunrpc/ > > F: include/uapi/linux/nfs* > > F: include/uapi/linux/sunrpc/ > > > > +NI169445 MIPS ARCHITECTURE > > +M: Nathan Sullivan <nathan.sullivan@ni.com> > > +L: linux-mips@linux-mips.org > > +S: Maintained > > +F: arch/mips/boot/dts/ni/ > > +F: arch/mips/configs/generic/board-ni169445.config > > +F: Documentation/devicetree/bindings/mips/ni.txt > > + > > NILFS2 FILESYSTEM > > M: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> > > L: linux-nilfs@vger.kernel.org > > diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile > > index b9db492..27b0f37 100644 > > --- a/arch/mips/boot/dts/Makefile > > +++ b/arch/mips/boot/dts/Makefile > > @@ -4,6 +4,7 @@ dts-dirs += img > > dts-dirs += ingenic > > dts-dirs += lantiq > > dts-dirs += mti > > +dts-dirs += ni > > dts-dirs += netlogic > > dts-dirs += pic32 > > dts-dirs += qca > > diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts > > new file mode 100644 > > index 0000000..9746576 > > --- /dev/null > > +++ b/arch/mips/boot/dts/ni/169445.dts > > @@ -0,0 +1,100 @@ > > +/dts-v1/; > > + > > +/ { > > + #address-cells = <1>; > > + #size-cells = <1>; > > + compatible = "ni,169445"; > > + > > + cpus { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + cpu@0 { > > + device_type = "cpu"; > > + compatible = "mti,mips14KEc"; > > + clocks = <&baseclk>; > > + reg = <0>; > > + }; > > + }; > > + > > + memory@0 { > > + device_type = "memory"; > > + reg = <0x0 0x10000000>; > > + }; > > + > > + baseclk: baseclock { > > + compatible = "fixed-clock"; > > + #clock-cells = <0>; > > + clock-frequency = <50000000>; > > + }; > > + > > + cpu_intc: cpu_intc { > > interrupt-controller { > > > + #address-cells = <0>; > > + compatible = "mti,cpu-interrupt-controller"; > > + interrupt-controller; > > + #interrupt-cells = <1>; > > + }; > > + > > + ahb@0 { > > ahb@1f300000 > > > + compatible = "simple-bus"; > > + #address-cells = <1>; > > + #size-cells = <1>; > > + ranges = <0x0 0x1f300000 0x80FFF>; > > + > > + gpio1:gpio-controller@1f300010 { > ^ space > > 'gpio' is the standard node name, so > > gpio@... > > > + compatible = "ni,169445-nand-gpio"; > > + reg = <0x10 0x4>; > > + reg-names = "dat"; > > + gpio-controller; > > + #gpio-cells = <2>; > > + }; > > + > > + gpio2:gpio-controller@1f300014 { > > ditto > > > + compatible = "ni,169445-nand-gpio"; > > + reg = <0x14 0x4>; > > + reg-names = "dat"; > > + gpio-controller; > > + #gpio-cells = <2>; > > + no-output; > > + }; > > + > > + nand@1f300000 { > > + compatible = "gpio-control-nand"; > > + nand-on-flash-bbt; > > + nand-ecc-mode = "soft_bch"; > > + nand-ecc-step-size = <512>; > > + nand-ecc-strength = <4>; > > + reg = <0x0 4>; > > + gpios = <&gpio2 0 0>, /* rdy */ > > + <&gpio1 1 0>, /* nce */ > > + <&gpio1 2 0>, /* ale */ > > + <&gpio1 3 0>, /* cle */ > > + <&gpio1 4 0>; /* nwp */ > > + }; > > + > > + serial@1f380000 { > > + compatible = "ns16550a"; > > + reg = <0x80000 0x1000>; > > + interrupt-parent = <&cpu_intc>; > > + interrupts = <6>; > > + clocks = <&baseclk>; > > + reg-shift = <0>; > > + }; > > + > > + ethernet@1f340000 { > > + compatible = "snps,dwmac-4.10a"; > > + interrupt-parent = <&cpu_intc>; > > + interrupts = <5>; > > + interrupt-names = "macirq"; > > + reg = <0x40000 0x2000>; > > + clock-names = "stmmaceth", "pclk"; > > + clocks = <&baseclk>, <&baseclk>; > > + > > + phy-mode = "rgmii"; > > + > > + fixed-link { > > + speed = <1000>; > > + full-duplex; > > + }; > > + }; > > + }; > > +}; > > diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile > > new file mode 100644 > > index 0000000..66cfdff > > --- /dev/null > > +++ b/arch/mips/boot/dts/ni/Makefile > > @@ -0,0 +1,7 @@ > > +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb > > + > > +# Force kbuild to make empty built-in.o if necessary > > +obj- += dummy.o > > + > > +always := $(dtb-y) > > +clean-files := *.dtb *.dtb.S > > diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config > > new file mode 100644 > > index 0000000..0bae1f8 > > --- /dev/null > > +++ b/arch/mips/configs/generic/board-ni169445.config > > @@ -0,0 +1,27 @@ > > +CONFIG_FIT_IMAGE_FDT_NI169445=y > > + > > +CONFIG_SERIAL_8250=y > > +CONFIG_SERIAL_8250_CONSOLE=y > > +CONFIG_SERIAL_OF_PLATFORM=y > > + > > +CONFIG_GPIOLIB=y > > +CONFIG_GPIO_SYSFS=y > > +CONFIG_GPIO_GENERIC_PLATFORM=y > > + > > +CONFIG_MTD=y > > +CONFIG_MTD_BLOCK=y > > +CONFIG_MTD_CMDLINE_PARTS=y > > + > > +CONFIG_MTD_NAND_ECC=y > > +CONFIG_MTD_NAND_ECC_BCH=y > > +CONFIG_MTD_NAND=y > > +CONFIG_MTD_NAND_GPIO=y > > +CONFIG_MTD_NAND_IDS=y > > + > > +CONFIG_MTD_UBI=y > > +CONFIG_MTD_UBI_BLOCK=y > > + > > +CONFIG_NETDEVICES=y > > +CONFIG_STMMAC_ETH=y > > +CONFIG_STMMAC_PLATFORM=y > > +CONFIG_DWMAC_GENERIC=y > > diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig > > index a606b3f..fbf0813 100644 > > --- a/arch/mips/generic/Kconfig > > +++ b/arch/mips/generic/Kconfig > > @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 > > Enable this to include support for booting on MIPS SEAD-3 FPGA-based > > development boards, which boot using a legacy boot protocol. > > > > +config FIT_IMAGE_FDT_NI169445 > > + bool "Include FDT for NI 169445" > > + help > > + Enable this to include the FDT for the 169445 platform from > > + National Instruments in the FIT kernel image. > > + > > endif > > diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S > > index f67fbf1..de851f7 100644 > > --- a/arch/mips/generic/vmlinux.its.S > > +++ b/arch/mips/generic/vmlinux.its.S > > @@ -29,3 +29,28 @@ > > }; > > }; > > }; > > + > > +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 > > +/ { > > IMO, this shouldn't be in the kernel. Is the kernel supposed to > create board specific images for every bootloaders custom format? It > doesn't scale. > This is how the linux MIPS tree is doing generic kernels. Ralf, care to elaborate? The format is the same for each board, just with different trees and configurations. It's a little odd with just one board right now, the linux-mti tree has a bigger set. > > + images { > > + fdt@ni169445 { > > + description = "NI 169445 device tree"; > > + data = /incbin/("boot/dts/ni/169445.dtb"); > > + type = "flat_dt"; > > + arch = "mips"; > > + compression = "none"; > > + hash@0 { > > + algo = "sha1"; > > + }; > > + }; > > + }; > > + > > + configurations { > > + conf@ni169445 { > > + description = "NI 169445 Linux Kernel"; > > + kernel = "kernel@0"; > > + fdt = "fdt@ni169445"; > > + }; > > + }; > > +}; > > +#endif > > -- > > 2.1.4 > > ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 2/2] MIPS: NI 169445 board support 2017-03-24 14:46 ` Nathan Sullivan @ 2017-03-24 14:46 ` Nathan Sullivan 0 siblings, 0 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-24 14:46 UTC (permalink / raw) To: Rob Herring Cc: linus.walleij, gnurou, mark.rutland, devicetree, ralf, linux-kernel, linux-gpio, linux-mips On Thu, Mar 23, 2017 at 05:29:45PM -0500, Rob Herring wrote: > On Tue, Mar 14, 2017 at 11:13:23AM -0500, Nathan Sullivan wrote: > > Support the National Instruments 169445 board. > > > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> > > --- > > Documentation/devicetree/bindings/mips/ni.txt | 7 ++ > > MAINTAINERS | 8 ++ > > arch/mips/boot/dts/Makefile | 1 + > > arch/mips/boot/dts/ni/169445.dts | 100 ++++++++++++++++++++++++ > > arch/mips/boot/dts/ni/Makefile | 7 ++ > > arch/mips/configs/generic/board-ni169445.config | 27 +++++++ > > arch/mips/generic/Kconfig | 6 ++ > > arch/mips/generic/vmlinux.its.S | 25 ++++++ > > 8 files changed, 181 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/mips/ni.txt > > create mode 100644 arch/mips/boot/dts/ni/169445.dts > > create mode 100644 arch/mips/boot/dts/ni/Makefile > > create mode 100644 arch/mips/configs/generic/board-ni169445.config > > > > diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt > > new file mode 100644 > > index 0000000..722bf2d > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/mips/ni.txt > > @@ -0,0 +1,7 @@ > > +National Instruments MIPS platforms > > + > > +required root node properties: > > + - compatible: must be "ni,169445" > > + > > +CPU Nodes > > + - compatible: must be "mti,mips14KEc" > > diff --git a/MAINTAINERS b/MAINTAINERS > > index c265a5f..b72f059 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -8887,6 +8887,14 @@ F: include/linux/sunrpc/ > > F: include/uapi/linux/nfs* > > F: include/uapi/linux/sunrpc/ > > > > +NI169445 MIPS ARCHITECTURE > > +M: Nathan Sullivan <nathan.sullivan@ni.com> > > +L: linux-mips@linux-mips.org > > +S: Maintained > > +F: arch/mips/boot/dts/ni/ > > +F: arch/mips/configs/generic/board-ni169445.config > > +F: Documentation/devicetree/bindings/mips/ni.txt > > + > > NILFS2 FILESYSTEM > > M: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> > > L: linux-nilfs@vger.kernel.org > > diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile > > index b9db492..27b0f37 100644 > > --- a/arch/mips/boot/dts/Makefile > > +++ b/arch/mips/boot/dts/Makefile > > @@ -4,6 +4,7 @@ dts-dirs += img > > dts-dirs += ingenic > > dts-dirs += lantiq > > dts-dirs += mti > > +dts-dirs += ni > > dts-dirs += netlogic > > dts-dirs += pic32 > > dts-dirs += qca > > diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts > > new file mode 100644 > > index 0000000..9746576 > > --- /dev/null > > +++ b/arch/mips/boot/dts/ni/169445.dts > > @@ -0,0 +1,100 @@ > > +/dts-v1/; > > + > > +/ { > > + #address-cells = <1>; > > + #size-cells = <1>; > > + compatible = "ni,169445"; > > + > > + cpus { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + cpu@0 { > > + device_type = "cpu"; > > + compatible = "mti,mips14KEc"; > > + clocks = <&baseclk>; > > + reg = <0>; > > + }; > > + }; > > + > > + memory@0 { > > + device_type = "memory"; > > + reg = <0x0 0x10000000>; > > + }; > > + > > + baseclk: baseclock { > > + compatible = "fixed-clock"; > > + #clock-cells = <0>; > > + clock-frequency = <50000000>; > > + }; > > + > > + cpu_intc: cpu_intc { > > interrupt-controller { > > > + #address-cells = <0>; > > + compatible = "mti,cpu-interrupt-controller"; > > + interrupt-controller; > > + #interrupt-cells = <1>; > > + }; > > + > > + ahb@0 { > > ahb@1f300000 > > > + compatible = "simple-bus"; > > + #address-cells = <1>; > > + #size-cells = <1>; > > + ranges = <0x0 0x1f300000 0x80FFF>; > > + > > + gpio1:gpio-controller@1f300010 { > ^ space > > 'gpio' is the standard node name, so > > gpio@... > > > + compatible = "ni,169445-nand-gpio"; > > + reg = <0x10 0x4>; > > + reg-names = "dat"; > > + gpio-controller; > > + #gpio-cells = <2>; > > + }; > > + > > + gpio2:gpio-controller@1f300014 { > > ditto > > > + compatible = "ni,169445-nand-gpio"; > > + reg = <0x14 0x4>; > > + reg-names = "dat"; > > + gpio-controller; > > + #gpio-cells = <2>; > > + no-output; > > + }; > > + > > + nand@1f300000 { > > + compatible = "gpio-control-nand"; > > + nand-on-flash-bbt; > > + nand-ecc-mode = "soft_bch"; > > + nand-ecc-step-size = <512>; > > + nand-ecc-strength = <4>; > > + reg = <0x0 4>; > > + gpios = <&gpio2 0 0>, /* rdy */ > > + <&gpio1 1 0>, /* nce */ > > + <&gpio1 2 0>, /* ale */ > > + <&gpio1 3 0>, /* cle */ > > + <&gpio1 4 0>; /* nwp */ > > + }; > > + > > + serial@1f380000 { > > + compatible = "ns16550a"; > > + reg = <0x80000 0x1000>; > > + interrupt-parent = <&cpu_intc>; > > + interrupts = <6>; > > + clocks = <&baseclk>; > > + reg-shift = <0>; > > + }; > > + > > + ethernet@1f340000 { > > + compatible = "snps,dwmac-4.10a"; > > + interrupt-parent = <&cpu_intc>; > > + interrupts = <5>; > > + interrupt-names = "macirq"; > > + reg = <0x40000 0x2000>; > > + clock-names = "stmmaceth", "pclk"; > > + clocks = <&baseclk>, <&baseclk>; > > + > > + phy-mode = "rgmii"; > > + > > + fixed-link { > > + speed = <1000>; > > + full-duplex; > > + }; > > + }; > > + }; > > +}; > > diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile > > new file mode 100644 > > index 0000000..66cfdff > > --- /dev/null > > +++ b/arch/mips/boot/dts/ni/Makefile > > @@ -0,0 +1,7 @@ > > +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb > > + > > +# Force kbuild to make empty built-in.o if necessary > > +obj- += dummy.o > > + > > +always := $(dtb-y) > > +clean-files := *.dtb *.dtb.S > > diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config > > new file mode 100644 > > index 0000000..0bae1f8 > > --- /dev/null > > +++ b/arch/mips/configs/generic/board-ni169445.config > > @@ -0,0 +1,27 @@ > > +CONFIG_FIT_IMAGE_FDT_NI169445=y > > + > > +CONFIG_SERIAL_8250=y > > +CONFIG_SERIAL_8250_CONSOLE=y > > +CONFIG_SERIAL_OF_PLATFORM=y > > + > > +CONFIG_GPIOLIB=y > > +CONFIG_GPIO_SYSFS=y > > +CONFIG_GPIO_GENERIC_PLATFORM=y > > + > > +CONFIG_MTD=y > > +CONFIG_MTD_BLOCK=y > > +CONFIG_MTD_CMDLINE_PARTS=y > > + > > +CONFIG_MTD_NAND_ECC=y > > +CONFIG_MTD_NAND_ECC_BCH=y > > +CONFIG_MTD_NAND=y > > +CONFIG_MTD_NAND_GPIO=y > > +CONFIG_MTD_NAND_IDS=y > > + > > +CONFIG_MTD_UBI=y > > +CONFIG_MTD_UBI_BLOCK=y > > + > > +CONFIG_NETDEVICES=y > > +CONFIG_STMMAC_ETH=y > > +CONFIG_STMMAC_PLATFORM=y > > +CONFIG_DWMAC_GENERIC=y > > diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig > > index a606b3f..fbf0813 100644 > > --- a/arch/mips/generic/Kconfig > > +++ b/arch/mips/generic/Kconfig > > @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 > > Enable this to include support for booting on MIPS SEAD-3 FPGA-based > > development boards, which boot using a legacy boot protocol. > > > > +config FIT_IMAGE_FDT_NI169445 > > + bool "Include FDT for NI 169445" > > + help > > + Enable this to include the FDT for the 169445 platform from > > + National Instruments in the FIT kernel image. > > + > > endif > > diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S > > index f67fbf1..de851f7 100644 > > --- a/arch/mips/generic/vmlinux.its.S > > +++ b/arch/mips/generic/vmlinux.its.S > > @@ -29,3 +29,28 @@ > > }; > > }; > > }; > > + > > +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 > > +/ { > > IMO, this shouldn't be in the kernel. Is the kernel supposed to > create board specific images for every bootloaders custom format? It > doesn't scale. > This is how the linux MIPS tree is doing generic kernels. Ralf, care to elaborate? The format is the same for each board, just with different trees and configurations. It's a little odd with just one board right now, the linux-mti tree has a bigger set. > > + images { > > + fdt@ni169445 { > > + description = "NI 169445 device tree"; > > + data = /incbin/("boot/dts/ni/169445.dtb"); > > + type = "flat_dt"; > > + arch = "mips"; > > + compression = "none"; > > + hash@0 { > > + algo = "sha1"; > > + }; > > + }; > > + }; > > + > > + configurations { > > + conf@ni169445 { > > + description = "NI 169445 Linux Kernel"; > > + kernel = "kernel@0"; > > + fdt = "fdt@ni169445"; > > + }; > > + }; > > +}; > > +#endif > > -- > > 2.1.4 > > ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH v3] NI 169445 board support @ 2017-03-08 19:35 Nathan Sullivan 2017-03-08 19:35 ` [PATCH 2/2] MIPS: " Nathan Sullivan 0 siblings, 1 reply; 19+ messages in thread From: Nathan Sullivan @ 2017-03-08 19:35 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips Add support for the National Instruments 169445 board ---- Changes from v2: - Hand write the board config fragment, and make it more minimal. - Add myself as the maintainer of new dirs and files. ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 2/2] MIPS: NI 169445 board support 2017-03-08 19:35 [PATCH v3] " Nathan Sullivan @ 2017-03-08 19:35 ` Nathan Sullivan 2017-03-08 19:35 ` Nathan Sullivan 0 siblings, 1 reply; 19+ messages in thread From: Nathan Sullivan @ 2017-03-08 19:35 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips, Nathan Sullivan Support the National Instruments 169445 board. Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- Documentation/devicetree/bindings/mips/ni.txt | 7 ++ MAINTAINERS | 8 ++ arch/mips/boot/dts/Makefile | 1 + arch/mips/boot/dts/ni/169445.dts | 101 ++++++++++++++++++++++++ arch/mips/boot/dts/ni/Makefile | 7 ++ arch/mips/configs/generic/board-ni169445.config | 27 +++++++ arch/mips/generic/Kconfig | 6 ++ arch/mips/generic/vmlinux.its.S | 25 ++++++ 8 files changed, 182 insertions(+) create mode 100644 Documentation/devicetree/bindings/mips/ni.txt create mode 100644 arch/mips/boot/dts/ni/169445.dts create mode 100644 arch/mips/boot/dts/ni/Makefile create mode 100644 arch/mips/configs/generic/board-ni169445.config diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt new file mode 100644 index 0000000..722bf2d --- /dev/null +++ b/Documentation/devicetree/bindings/mips/ni.txt @@ -0,0 +1,7 @@ +National Instruments MIPS platforms + +required root node properties: + - compatible: must be "ni,169445" + +CPU Nodes + - compatible: must be "mti,mips14KEc" diff --git a/MAINTAINERS b/MAINTAINERS index c265a5f..b72f059 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -8887,6 +8887,14 @@ F: include/linux/sunrpc/ F: include/uapi/linux/nfs* F: include/uapi/linux/sunrpc/ +NI169445 MIPS ARCHITECTURE +M: Nathan Sullivan <nathan.sullivan@ni.com> +L: linux-mips@linux-mips.org +S: Maintained +F: arch/mips/boot/dts/ni/ +F: arch/mips/configs/generic/board-ni169445.config +F: Documentation/devicetree/bindings/mips/ni.txt + NILFS2 FILESYSTEM M: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> L: linux-nilfs@vger.kernel.org diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile index b9db492..27b0f37 100644 --- a/arch/mips/boot/dts/Makefile +++ b/arch/mips/boot/dts/Makefile @@ -4,6 +4,7 @@ dts-dirs += img dts-dirs += ingenic dts-dirs += lantiq dts-dirs += mti +dts-dirs += ni dts-dirs += netlogic dts-dirs += pic32 dts-dirs += qca diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts new file mode 100644 index 0000000..58e74b5 --- /dev/null +++ b/arch/mips/boot/dts/ni/169445.dts @@ -0,0 +1,101 @@ +/dts-v1/; + +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "ni,169445"; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + cpu@0 { + device_type = "cpu"; + compatible = "mti,mips14KEc"; + clocks = <&baseclk>; + reg = <0>; + }; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x10000000>; + }; + + baseclk: baseclock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <50000000>; + }; + + cpu_intc: cpu_intc { + #address-cells = <0>; + compatible = "mti,cpu-interrupt-controller"; + interrupt-controller; + #interrupt-cells = <1>; + }; + + ahb@0 { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x1f300000 0x80FFF>; + + gpio1:gpio-controller@1f300010 { + compatible = "ni,169445-nand-gpio"; + reg = <0x10 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + ngpios = <5>; + }; + + gpio2:gpio-controller@1f300014 { + compatible = "ni,169445-nand-gpio"; + reg = <0x14 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + ngpios = <1>; + }; + + nand@1f300000 { + compatible = "gpio-control-nand"; + nand-on-flash-bbt; + nand-ecc-mode = "soft_bch"; + nand-ecc-step-size = <512>; + nand-ecc-strength = <4>; + reg = <0x0 4>; + gpios = <&gpio2 0 0>, /* rdy */ + <&gpio1 1 0>, /* nce */ + <&gpio1 2 0>, /* ale */ + <&gpio1 3 0>, /* cle */ + <&gpio1 4 0>; /* nwp */ + }; + + serial@1f380000 { + compatible = "ns16550a"; + reg = <0x80000 0x1000>; + interrupt-parent = <&cpu_intc>; + interrupts = <6>; + clocks = <&baseclk>; + reg-shift = <0>; + }; + + ethernet@1f340000 { + compatible = "snps,dwmac-4.10a"; + interrupt-parent = <&cpu_intc>; + interrupts = <5>; + interrupt-names = "macirq"; + reg = <0x40000 0x2000>; + clock-names = "stmmaceth", "pclk"; + clocks = <&baseclk>, <&baseclk>; + + phy-mode = "rgmii"; + + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + }; +}; diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile new file mode 100644 index 0000000..66cfdff --- /dev/null +++ b/arch/mips/boot/dts/ni/Makefile @@ -0,0 +1,7 @@ +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb + +# Force kbuild to make empty built-in.o if necessary +obj- += dummy.o + +always := $(dtb-y) +clean-files := *.dtb *.dtb.S diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config new file mode 100644 index 0000000..0bae1f8 --- /dev/null +++ b/arch/mips/configs/generic/board-ni169445.config @@ -0,0 +1,27 @@ +CONFIG_FIT_IMAGE_FDT_NI169445=y + +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_OF_PLATFORM=y + +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC_PLATFORM=y + +CONFIG_MTD=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CMDLINE_PARTS=y + +CONFIG_MTD_NAND_ECC=y +CONFIG_MTD_NAND_ECC_BCH=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_GPIO=y +CONFIG_MTD_NAND_IDS=y + +CONFIG_MTD_UBI=y +CONFIG_MTD_UBI_BLOCK=y + +CONFIG_NETDEVICES=y +CONFIG_STMMAC_ETH=y +CONFIG_STMMAC_PLATFORM=y +CONFIG_DWMAC_GENERIC=y diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig index a606b3f..fbf0813 100644 --- a/arch/mips/generic/Kconfig +++ b/arch/mips/generic/Kconfig @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 Enable this to include support for booting on MIPS SEAD-3 FPGA-based development boards, which boot using a legacy boot protocol. +config FIT_IMAGE_FDT_NI169445 + bool "Include FDT for NI 169445" + help + Enable this to include the FDT for the 169445 platform from + National Instruments in the FIT kernel image. + endif diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S index f67fbf1..de851f7 100644 --- a/arch/mips/generic/vmlinux.its.S +++ b/arch/mips/generic/vmlinux.its.S @@ -29,3 +29,28 @@ }; }; }; + +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 +/ { + images { + fdt@ni169445 { + description = "NI 169445 device tree"; + data = /incbin/("boot/dts/ni/169445.dtb"); + type = "flat_dt"; + arch = "mips"; + compression = "none"; + hash@0 { + algo = "sha1"; + }; + }; + }; + + configurations { + conf@ni169445 { + description = "NI 169445 Linux Kernel"; + kernel = "kernel@0"; + fdt = "fdt@ni169445"; + }; + }; +}; +#endif -- 2.1.4 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 2/2] MIPS: NI 169445 board support 2017-03-08 19:35 ` [PATCH 2/2] MIPS: " Nathan Sullivan @ 2017-03-08 19:35 ` Nathan Sullivan 0 siblings, 0 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-08 19:35 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips, Nathan Sullivan Support the National Instruments 169445 board. Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- Documentation/devicetree/bindings/mips/ni.txt | 7 ++ MAINTAINERS | 8 ++ arch/mips/boot/dts/Makefile | 1 + arch/mips/boot/dts/ni/169445.dts | 101 ++++++++++++++++++++++++ arch/mips/boot/dts/ni/Makefile | 7 ++ arch/mips/configs/generic/board-ni169445.config | 27 +++++++ arch/mips/generic/Kconfig | 6 ++ arch/mips/generic/vmlinux.its.S | 25 ++++++ 8 files changed, 182 insertions(+) create mode 100644 Documentation/devicetree/bindings/mips/ni.txt create mode 100644 arch/mips/boot/dts/ni/169445.dts create mode 100644 arch/mips/boot/dts/ni/Makefile create mode 100644 arch/mips/configs/generic/board-ni169445.config diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt new file mode 100644 index 0000000..722bf2d --- /dev/null +++ b/Documentation/devicetree/bindings/mips/ni.txt @@ -0,0 +1,7 @@ +National Instruments MIPS platforms + +required root node properties: + - compatible: must be "ni,169445" + +CPU Nodes + - compatible: must be "mti,mips14KEc" diff --git a/MAINTAINERS b/MAINTAINERS index c265a5f..b72f059 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -8887,6 +8887,14 @@ F: include/linux/sunrpc/ F: include/uapi/linux/nfs* F: include/uapi/linux/sunrpc/ +NI169445 MIPS ARCHITECTURE +M: Nathan Sullivan <nathan.sullivan@ni.com> +L: linux-mips@linux-mips.org +S: Maintained +F: arch/mips/boot/dts/ni/ +F: arch/mips/configs/generic/board-ni169445.config +F: Documentation/devicetree/bindings/mips/ni.txt + NILFS2 FILESYSTEM M: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> L: linux-nilfs@vger.kernel.org diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile index b9db492..27b0f37 100644 --- a/arch/mips/boot/dts/Makefile +++ b/arch/mips/boot/dts/Makefile @@ -4,6 +4,7 @@ dts-dirs += img dts-dirs += ingenic dts-dirs += lantiq dts-dirs += mti +dts-dirs += ni dts-dirs += netlogic dts-dirs += pic32 dts-dirs += qca diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts new file mode 100644 index 0000000..58e74b5 --- /dev/null +++ b/arch/mips/boot/dts/ni/169445.dts @@ -0,0 +1,101 @@ +/dts-v1/; + +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "ni,169445"; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + cpu@0 { + device_type = "cpu"; + compatible = "mti,mips14KEc"; + clocks = <&baseclk>; + reg = <0>; + }; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x10000000>; + }; + + baseclk: baseclock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <50000000>; + }; + + cpu_intc: cpu_intc { + #address-cells = <0>; + compatible = "mti,cpu-interrupt-controller"; + interrupt-controller; + #interrupt-cells = <1>; + }; + + ahb@0 { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x1f300000 0x80FFF>; + + gpio1:gpio-controller@1f300010 { + compatible = "ni,169445-nand-gpio"; + reg = <0x10 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + ngpios = <5>; + }; + + gpio2:gpio-controller@1f300014 { + compatible = "ni,169445-nand-gpio"; + reg = <0x14 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + ngpios = <1>; + }; + + nand@1f300000 { + compatible = "gpio-control-nand"; + nand-on-flash-bbt; + nand-ecc-mode = "soft_bch"; + nand-ecc-step-size = <512>; + nand-ecc-strength = <4>; + reg = <0x0 4>; + gpios = <&gpio2 0 0>, /* rdy */ + <&gpio1 1 0>, /* nce */ + <&gpio1 2 0>, /* ale */ + <&gpio1 3 0>, /* cle */ + <&gpio1 4 0>; /* nwp */ + }; + + serial@1f380000 { + compatible = "ns16550a"; + reg = <0x80000 0x1000>; + interrupt-parent = <&cpu_intc>; + interrupts = <6>; + clocks = <&baseclk>; + reg-shift = <0>; + }; + + ethernet@1f340000 { + compatible = "snps,dwmac-4.10a"; + interrupt-parent = <&cpu_intc>; + interrupts = <5>; + interrupt-names = "macirq"; + reg = <0x40000 0x2000>; + clock-names = "stmmaceth", "pclk"; + clocks = <&baseclk>, <&baseclk>; + + phy-mode = "rgmii"; + + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + }; +}; diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile new file mode 100644 index 0000000..66cfdff --- /dev/null +++ b/arch/mips/boot/dts/ni/Makefile @@ -0,0 +1,7 @@ +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb + +# Force kbuild to make empty built-in.o if necessary +obj- += dummy.o + +always := $(dtb-y) +clean-files := *.dtb *.dtb.S diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config new file mode 100644 index 0000000..0bae1f8 --- /dev/null +++ b/arch/mips/configs/generic/board-ni169445.config @@ -0,0 +1,27 @@ +CONFIG_FIT_IMAGE_FDT_NI169445=y + +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_OF_PLATFORM=y + +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC_PLATFORM=y + +CONFIG_MTD=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CMDLINE_PARTS=y + +CONFIG_MTD_NAND_ECC=y +CONFIG_MTD_NAND_ECC_BCH=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_GPIO=y +CONFIG_MTD_NAND_IDS=y + +CONFIG_MTD_UBI=y +CONFIG_MTD_UBI_BLOCK=y + +CONFIG_NETDEVICES=y +CONFIG_STMMAC_ETH=y +CONFIG_STMMAC_PLATFORM=y +CONFIG_DWMAC_GENERIC=y diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig index a606b3f..fbf0813 100644 --- a/arch/mips/generic/Kconfig +++ b/arch/mips/generic/Kconfig @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 Enable this to include support for booting on MIPS SEAD-3 FPGA-based development boards, which boot using a legacy boot protocol. +config FIT_IMAGE_FDT_NI169445 + bool "Include FDT for NI 169445" + help + Enable this to include the FDT for the 169445 platform from + National Instruments in the FIT kernel image. + endif diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S index f67fbf1..de851f7 100644 --- a/arch/mips/generic/vmlinux.its.S +++ b/arch/mips/generic/vmlinux.its.S @@ -29,3 +29,28 @@ }; }; }; + +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 +/ { + images { + fdt@ni169445 { + description = "NI 169445 device tree"; + data = /incbin/("boot/dts/ni/169445.dtb"); + type = "flat_dt"; + arch = "mips"; + compression = "none"; + hash@0 { + algo = "sha1"; + }; + }; + }; + + configurations { + conf@ni169445 { + description = "NI 169445 Linux Kernel"; + kernel = "kernel@0"; + fdt = "fdt@ni169445"; + }; + }; +}; +#endif -- 2.1.4 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH v2] MIPS: NI 169445 board support @ 2017-03-06 20:05 Nathan Sullivan 2017-03-06 20:06 ` [PATCH 2/2] " Nathan Sullivan 0 siblings, 1 reply; 19+ messages in thread From: Nathan Sullivan @ 2017-03-06 20:05 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips This adds support for the National Instruments 169445 MIPS system. ---- Changes from v1: - Add GPIO patch and board support patch to one set - Address Rob Herring's device tree feedback - Convert the 169445 to a generic MIPS board - Switch to the newer stmmac driver for the board's ethernet core ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 2/2] MIPS: NI 169445 board support 2017-03-06 20:05 [PATCH v2] " Nathan Sullivan @ 2017-03-06 20:06 ` Nathan Sullivan 2017-03-06 20:06 ` Nathan Sullivan ` (2 more replies) 0 siblings, 3 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-06 20:06 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips, Nathan Sullivan Support the National Instruments 169445 board. Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- Documentation/devicetree/bindings/mips/ni.txt | 7 ++ arch/mips/boot/dts/Makefile | 1 + arch/mips/boot/dts/ni/169445.dts | 101 ++++++++++++++++++++ arch/mips/boot/dts/ni/Makefile | 7 ++ arch/mips/configs/generic/board-ni169445.config | 117 ++++++++++++++++++++++++ arch/mips/generic/Kconfig | 6 ++ arch/mips/generic/vmlinux.its.S | 25 +++++ 7 files changed, 264 insertions(+) create mode 100644 Documentation/devicetree/bindings/mips/ni.txt create mode 100644 arch/mips/boot/dts/ni/169445.dts create mode 100644 arch/mips/boot/dts/ni/Makefile create mode 100644 arch/mips/configs/generic/board-ni169445.config diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt new file mode 100644 index 0000000..722bf2d --- /dev/null +++ b/Documentation/devicetree/bindings/mips/ni.txt @@ -0,0 +1,7 @@ +National Instruments MIPS platforms + +required root node properties: + - compatible: must be "ni,169445" + +CPU Nodes + - compatible: must be "mti,mips14KEc" diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile index b9db492..27b0f37 100644 --- a/arch/mips/boot/dts/Makefile +++ b/arch/mips/boot/dts/Makefile @@ -4,6 +4,7 @@ dts-dirs += img dts-dirs += ingenic dts-dirs += lantiq dts-dirs += mti +dts-dirs += ni dts-dirs += netlogic dts-dirs += pic32 dts-dirs += qca diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts new file mode 100644 index 0000000..58e74b5 --- /dev/null +++ b/arch/mips/boot/dts/ni/169445.dts @@ -0,0 +1,101 @@ +/dts-v1/; + +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "ni,169445"; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + cpu@0 { + device_type = "cpu"; + compatible = "mti,mips14KEc"; + clocks = <&baseclk>; + reg = <0>; + }; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x10000000>; + }; + + baseclk: baseclock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <50000000>; + }; + + cpu_intc: cpu_intc { + #address-cells = <0>; + compatible = "mti,cpu-interrupt-controller"; + interrupt-controller; + #interrupt-cells = <1>; + }; + + ahb@0 { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x1f300000 0x80FFF>; + + gpio1:gpio-controller@1f300010 { + compatible = "ni,169445-nand-gpio"; + reg = <0x10 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + ngpios = <5>; + }; + + gpio2:gpio-controller@1f300014 { + compatible = "ni,169445-nand-gpio"; + reg = <0x14 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + ngpios = <1>; + }; + + nand@1f300000 { + compatible = "gpio-control-nand"; + nand-on-flash-bbt; + nand-ecc-mode = "soft_bch"; + nand-ecc-step-size = <512>; + nand-ecc-strength = <4>; + reg = <0x0 4>; + gpios = <&gpio2 0 0>, /* rdy */ + <&gpio1 1 0>, /* nce */ + <&gpio1 2 0>, /* ale */ + <&gpio1 3 0>, /* cle */ + <&gpio1 4 0>; /* nwp */ + }; + + serial@1f380000 { + compatible = "ns16550a"; + reg = <0x80000 0x1000>; + interrupt-parent = <&cpu_intc>; + interrupts = <6>; + clocks = <&baseclk>; + reg-shift = <0>; + }; + + ethernet@1f340000 { + compatible = "snps,dwmac-4.10a"; + interrupt-parent = <&cpu_intc>; + interrupts = <5>; + interrupt-names = "macirq"; + reg = <0x40000 0x2000>; + clock-names = "stmmaceth", "pclk"; + clocks = <&baseclk>, <&baseclk>; + + phy-mode = "rgmii"; + + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + }; +}; diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile new file mode 100644 index 0000000..66cfdff --- /dev/null +++ b/arch/mips/boot/dts/ni/Makefile @@ -0,0 +1,7 @@ +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb + +# Force kbuild to make empty built-in.o if necessary +obj- += dummy.o + +always := $(dtb-y) +clean-files := *.dtb *.dtb.S diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config new file mode 100644 index 0000000..2c950a8 --- /dev/null +++ b/arch/mips/configs/generic/board-ni169445.config @@ -0,0 +1,117 @@ +CONFIG_MIPS_GENERIC=y +CONFIG_FIT_IMAGE_FDT_NI169445=y +CONFIG_CPU_LITTLE_ENDIAN=y +CONFIG_CPU_MIPS32_R2=y +CONFIG_HZ_100=y +CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y +# CONFIG_SWAP is not set +CONFIG_SYSVIPC=y +CONFIG_HZ_PERIODIC=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=15 +CONFIG_BPF_SYSCALL=y +# CONFIG_SHMEM is not set +CONFIG_USERFAULTFD=y +CONFIG_EMBEDDED=y +# CONFIG_COMPAT_BRK is not set +CONFIG_SLAB=y +CONFIG_PROFILING=y +CONFIG_CC_STACKPROTECTOR_REGULAR=y +# CONFIG_LBDAF is not set +# CONFIG_BLK_DEV_BSG is not set +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set +# CONFIG_SUSPEND is not set +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_INET=y +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET_XFRM_MODE_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_BEET is not set +# CONFIG_INET_DIAG is not set +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set +CONFIG_NETFILTER=y +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP6_NF_IPTABLES=y +CONFIG_IP6_NF_FILTER=y +# CONFIG_WIRELESS is not set +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_MTD=y +CONFIG_MTD_CMDLINE_PARTS=y +CONFIG_MTD_BLOCK_RO=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_ECC_BCH=y +CONFIG_MTD_NAND_GPIO=y +CONFIG_MTD_UBI=y +CONFIG_MTD_UBI_BLOCK=y +# CONFIG_BLK_DEV is not set +CONFIG_NETDEVICES=y +# CONFIG_NET_VENDOR_ALACRITECH is not set +# CONFIG_NET_VENDOR_AMAZON is not set +# CONFIG_NET_VENDOR_AQUANTIA is not set +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_CADENCE is not set +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_EZCHIP is not set +# CONFIG_NET_VENDOR_INTEL is not set +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NETRONOME is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SOLARFLARE is not set +# CONFIG_NET_VENDOR_SMSC is not set +CONFIG_STMMAC_ETH=y +CONFIG_DWMAC_DWC_QOS_ETH=y +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_NET_VENDOR_XILINX is not set +# CONFIG_WLAN is not set +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_SERIO is not set +# CONFIG_VT is not set +CONFIG_LEGACY_PTY_COUNT=32 +CONFIG_SERIAL_8250=y +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_NR_UARTS=2 +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 +CONFIG_SERIAL_OF_PLATFORM=y +# CONFIG_PTP_1588_CLOCK is not set +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC_PLATFORM=y +# CONFIG_HWMON is not set +# CONFIG_HID is not set +# CONFIG_USB_SUPPORT is not set +# CONFIG_MIPS_PLATFORM_DEVICES is not set +# CONFIG_IOMMU_SUPPORT is not set +CONFIG_FANOTIFY=y +CONFIG_UBIFS_FS=y +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_XATTR=y +# CONFIG_SQUASHFS_ZLIB is not set +CONFIG_SQUASHFS_LZO=y +# CONFIG_NETWORK_FILESYSTEMS is not set +CONFIG_PRINTK_TIME=y +CONFIG_DEBUG_INFO=y +CONFIG_DEBUG_INFO_REDUCED=y +CONFIG_DEBUG_FS=y +# CONFIG_SCHED_DEBUG is not set +CONFIG_RCU_TRACE=y +# CONFIG_FTRACE is not set +# CONFIG_CRYPTO_ECHAINIV is not set +# CONFIG_CRYPTO_HW is not set diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig index a606b3f..fbf0813 100644 --- a/arch/mips/generic/Kconfig +++ b/arch/mips/generic/Kconfig @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 Enable this to include support for booting on MIPS SEAD-3 FPGA-based development boards, which boot using a legacy boot protocol. +config FIT_IMAGE_FDT_NI169445 + bool "Include FDT for NI 169445" + help + Enable this to include the FDT for the 169445 platform from + National Instruments in the FIT kernel image. + endif diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S index f67fbf1..de851f7 100644 --- a/arch/mips/generic/vmlinux.its.S +++ b/arch/mips/generic/vmlinux.its.S @@ -29,3 +29,28 @@ }; }; }; + +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 +/ { + images { + fdt@ni169445 { + description = "NI 169445 device tree"; + data = /incbin/("boot/dts/ni/169445.dtb"); + type = "flat_dt"; + arch = "mips"; + compression = "none"; + hash@0 { + algo = "sha1"; + }; + }; + }; + + configurations { + conf@ni169445 { + description = "NI 169445 Linux Kernel"; + kernel = "kernel@0"; + fdt = "fdt@ni169445"; + }; + }; +}; +#endif -- 2.1.4 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 2/2] MIPS: NI 169445 board support 2017-03-06 20:06 ` [PATCH 2/2] " Nathan Sullivan @ 2017-03-06 20:06 ` Nathan Sullivan 2017-03-06 23:04 ` James Hogan 2017-03-15 9:37 ` Linus Walleij 2 siblings, 0 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-06 20:06 UTC (permalink / raw) To: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf Cc: linux-kernel, linux-gpio, linux-mips, Nathan Sullivan Support the National Instruments 169445 board. Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> --- Documentation/devicetree/bindings/mips/ni.txt | 7 ++ arch/mips/boot/dts/Makefile | 1 + arch/mips/boot/dts/ni/169445.dts | 101 ++++++++++++++++++++ arch/mips/boot/dts/ni/Makefile | 7 ++ arch/mips/configs/generic/board-ni169445.config | 117 ++++++++++++++++++++++++ arch/mips/generic/Kconfig | 6 ++ arch/mips/generic/vmlinux.its.S | 25 +++++ 7 files changed, 264 insertions(+) create mode 100644 Documentation/devicetree/bindings/mips/ni.txt create mode 100644 arch/mips/boot/dts/ni/169445.dts create mode 100644 arch/mips/boot/dts/ni/Makefile create mode 100644 arch/mips/configs/generic/board-ni169445.config diff --git a/Documentation/devicetree/bindings/mips/ni.txt b/Documentation/devicetree/bindings/mips/ni.txt new file mode 100644 index 0000000..722bf2d --- /dev/null +++ b/Documentation/devicetree/bindings/mips/ni.txt @@ -0,0 +1,7 @@ +National Instruments MIPS platforms + +required root node properties: + - compatible: must be "ni,169445" + +CPU Nodes + - compatible: must be "mti,mips14KEc" diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile index b9db492..27b0f37 100644 --- a/arch/mips/boot/dts/Makefile +++ b/arch/mips/boot/dts/Makefile @@ -4,6 +4,7 @@ dts-dirs += img dts-dirs += ingenic dts-dirs += lantiq dts-dirs += mti +dts-dirs += ni dts-dirs += netlogic dts-dirs += pic32 dts-dirs += qca diff --git a/arch/mips/boot/dts/ni/169445.dts b/arch/mips/boot/dts/ni/169445.dts new file mode 100644 index 0000000..58e74b5 --- /dev/null +++ b/arch/mips/boot/dts/ni/169445.dts @@ -0,0 +1,101 @@ +/dts-v1/; + +/ { + #address-cells = <1>; + #size-cells = <1>; + compatible = "ni,169445"; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + cpu@0 { + device_type = "cpu"; + compatible = "mti,mips14KEc"; + clocks = <&baseclk>; + reg = <0>; + }; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x10000000>; + }; + + baseclk: baseclock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <50000000>; + }; + + cpu_intc: cpu_intc { + #address-cells = <0>; + compatible = "mti,cpu-interrupt-controller"; + interrupt-controller; + #interrupt-cells = <1>; + }; + + ahb@0 { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x1f300000 0x80FFF>; + + gpio1:gpio-controller@1f300010 { + compatible = "ni,169445-nand-gpio"; + reg = <0x10 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + ngpios = <5>; + }; + + gpio2:gpio-controller@1f300014 { + compatible = "ni,169445-nand-gpio"; + reg = <0x14 0x4>; + reg-names = "dat"; + gpio-controller; + #gpio-cells = <2>; + ngpios = <1>; + }; + + nand@1f300000 { + compatible = "gpio-control-nand"; + nand-on-flash-bbt; + nand-ecc-mode = "soft_bch"; + nand-ecc-step-size = <512>; + nand-ecc-strength = <4>; + reg = <0x0 4>; + gpios = <&gpio2 0 0>, /* rdy */ + <&gpio1 1 0>, /* nce */ + <&gpio1 2 0>, /* ale */ + <&gpio1 3 0>, /* cle */ + <&gpio1 4 0>; /* nwp */ + }; + + serial@1f380000 { + compatible = "ns16550a"; + reg = <0x80000 0x1000>; + interrupt-parent = <&cpu_intc>; + interrupts = <6>; + clocks = <&baseclk>; + reg-shift = <0>; + }; + + ethernet@1f340000 { + compatible = "snps,dwmac-4.10a"; + interrupt-parent = <&cpu_intc>; + interrupts = <5>; + interrupt-names = "macirq"; + reg = <0x40000 0x2000>; + clock-names = "stmmaceth", "pclk"; + clocks = <&baseclk>, <&baseclk>; + + phy-mode = "rgmii"; + + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + }; +}; diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile new file mode 100644 index 0000000..66cfdff --- /dev/null +++ b/arch/mips/boot/dts/ni/Makefile @@ -0,0 +1,7 @@ +dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445) += 169445.dtb + +# Force kbuild to make empty built-in.o if necessary +obj- += dummy.o + +always := $(dtb-y) +clean-files := *.dtb *.dtb.S diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config new file mode 100644 index 0000000..2c950a8 --- /dev/null +++ b/arch/mips/configs/generic/board-ni169445.config @@ -0,0 +1,117 @@ +CONFIG_MIPS_GENERIC=y +CONFIG_FIT_IMAGE_FDT_NI169445=y +CONFIG_CPU_LITTLE_ENDIAN=y +CONFIG_CPU_MIPS32_R2=y +CONFIG_HZ_100=y +CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y +# CONFIG_SWAP is not set +CONFIG_SYSVIPC=y +CONFIG_HZ_PERIODIC=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=15 +CONFIG_BPF_SYSCALL=y +# CONFIG_SHMEM is not set +CONFIG_USERFAULTFD=y +CONFIG_EMBEDDED=y +# CONFIG_COMPAT_BRK is not set +CONFIG_SLAB=y +CONFIG_PROFILING=y +CONFIG_CC_STACKPROTECTOR_REGULAR=y +# CONFIG_LBDAF is not set +# CONFIG_BLK_DEV_BSG is not set +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set +# CONFIG_SUSPEND is not set +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_INET=y +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET_XFRM_MODE_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_BEET is not set +# CONFIG_INET_DIAG is not set +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set +CONFIG_NETFILTER=y +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP6_NF_IPTABLES=y +CONFIG_IP6_NF_FILTER=y +# CONFIG_WIRELESS is not set +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_MTD=y +CONFIG_MTD_CMDLINE_PARTS=y +CONFIG_MTD_BLOCK_RO=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_ECC_BCH=y +CONFIG_MTD_NAND_GPIO=y +CONFIG_MTD_UBI=y +CONFIG_MTD_UBI_BLOCK=y +# CONFIG_BLK_DEV is not set +CONFIG_NETDEVICES=y +# CONFIG_NET_VENDOR_ALACRITECH is not set +# CONFIG_NET_VENDOR_AMAZON is not set +# CONFIG_NET_VENDOR_AQUANTIA is not set +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_CADENCE is not set +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_EZCHIP is not set +# CONFIG_NET_VENDOR_INTEL is not set +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NETRONOME is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SOLARFLARE is not set +# CONFIG_NET_VENDOR_SMSC is not set +CONFIG_STMMAC_ETH=y +CONFIG_DWMAC_DWC_QOS_ETH=y +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_NET_VENDOR_XILINX is not set +# CONFIG_WLAN is not set +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_SERIO is not set +# CONFIG_VT is not set +CONFIG_LEGACY_PTY_COUNT=32 +CONFIG_SERIAL_8250=y +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_NR_UARTS=2 +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 +CONFIG_SERIAL_OF_PLATFORM=y +# CONFIG_PTP_1588_CLOCK is not set +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC_PLATFORM=y +# CONFIG_HWMON is not set +# CONFIG_HID is not set +# CONFIG_USB_SUPPORT is not set +# CONFIG_MIPS_PLATFORM_DEVICES is not set +# CONFIG_IOMMU_SUPPORT is not set +CONFIG_FANOTIFY=y +CONFIG_UBIFS_FS=y +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_XATTR=y +# CONFIG_SQUASHFS_ZLIB is not set +CONFIG_SQUASHFS_LZO=y +# CONFIG_NETWORK_FILESYSTEMS is not set +CONFIG_PRINTK_TIME=y +CONFIG_DEBUG_INFO=y +CONFIG_DEBUG_INFO_REDUCED=y +CONFIG_DEBUG_FS=y +# CONFIG_SCHED_DEBUG is not set +CONFIG_RCU_TRACE=y +# CONFIG_FTRACE is not set +# CONFIG_CRYPTO_ECHAINIV is not set +# CONFIG_CRYPTO_HW is not set diff --git a/arch/mips/generic/Kconfig b/arch/mips/generic/Kconfig index a606b3f..fbf0813 100644 --- a/arch/mips/generic/Kconfig +++ b/arch/mips/generic/Kconfig @@ -16,4 +16,10 @@ config LEGACY_BOARD_SEAD3 Enable this to include support for booting on MIPS SEAD-3 FPGA-based development boards, which boot using a legacy boot protocol. +config FIT_IMAGE_FDT_NI169445 + bool "Include FDT for NI 169445" + help + Enable this to include the FDT for the 169445 platform from + National Instruments in the FIT kernel image. + endif diff --git a/arch/mips/generic/vmlinux.its.S b/arch/mips/generic/vmlinux.its.S index f67fbf1..de851f7 100644 --- a/arch/mips/generic/vmlinux.its.S +++ b/arch/mips/generic/vmlinux.its.S @@ -29,3 +29,28 @@ }; }; }; + +#ifdef CONFIG_FIT_IMAGE_FDT_NI169445 +/ { + images { + fdt@ni169445 { + description = "NI 169445 device tree"; + data = /incbin/("boot/dts/ni/169445.dtb"); + type = "flat_dt"; + arch = "mips"; + compression = "none"; + hash@0 { + algo = "sha1"; + }; + }; + }; + + configurations { + conf@ni169445 { + description = "NI 169445 Linux Kernel"; + kernel = "kernel@0"; + fdt = "fdt@ni169445"; + }; + }; +}; +#endif -- 2.1.4 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 2/2] MIPS: NI 169445 board support 2017-03-06 20:06 ` [PATCH 2/2] " Nathan Sullivan 2017-03-06 20:06 ` Nathan Sullivan @ 2017-03-06 23:04 ` James Hogan 2017-03-06 23:04 ` James Hogan 2017-03-06 23:14 ` Nathan Sullivan 2017-03-15 9:37 ` Linus Walleij 2 siblings, 2 replies; 19+ messages in thread From: James Hogan @ 2017-03-06 23:04 UTC (permalink / raw) To: Nathan Sullivan Cc: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf, linux-kernel, linux-gpio, linux-mips [-- Attachment #1: Type: text/plain, Size: 5726 bytes --] Hi Nathan, On Mon, Mar 06, 2017 at 02:06:01PM -0600, Nathan Sullivan wrote: > Support the National Instruments 169445 board. > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> > --- > Documentation/devicetree/bindings/mips/ni.txt | 7 ++ > arch/mips/boot/dts/Makefile | 1 + > arch/mips/boot/dts/ni/169445.dts | 101 ++++++++++++++++++++ > arch/mips/boot/dts/ni/Makefile | 7 ++ > arch/mips/configs/generic/board-ni169445.config | 117 ++++++++++++++++++++++++ > arch/mips/generic/Kconfig | 6 ++ > arch/mips/generic/vmlinux.its.S | 25 +++++ > 7 files changed, 264 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mips/ni.txt > create mode 100644 arch/mips/boot/dts/ni/169445.dts > create mode 100644 arch/mips/boot/dts/ni/Makefile > create mode 100644 arch/mips/configs/generic/board-ni169445.config > nice :) I reckon an entry in MAINTAINERS listing the board specific files/directories would probably be worthwhile too. > diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config > new file mode 100644 > index 0000000..2c950a8 > --- /dev/null > +++ b/arch/mips/configs/generic/board-ni169445.config > @@ -0,0 +1,117 @@ > +CONFIG_MIPS_GENERIC=y > +CONFIG_FIT_IMAGE_FDT_NI169445=y > +CONFIG_CPU_LITTLE_ENDIAN=y > +CONFIG_CPU_MIPS32_R2=y > +CONFIG_HZ_100=y > +CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y > +# CONFIG_SWAP is not set > +CONFIG_SYSVIPC=y > +CONFIG_HZ_PERIODIC=y > +CONFIG_NO_HZ=y > +CONFIG_HIGH_RES_TIMERS=y > +CONFIG_IKCONFIG=y > +CONFIG_IKCONFIG_PROC=y > +CONFIG_LOG_BUF_SHIFT=15 > +CONFIG_BPF_SYSCALL=y > +# CONFIG_SHMEM is not set > +CONFIG_USERFAULTFD=y > +CONFIG_EMBEDDED=y > +# CONFIG_COMPAT_BRK is not set > +CONFIG_SLAB=y > +CONFIG_PROFILING=y > +CONFIG_CC_STACKPROTECTOR_REGULAR=y > +# CONFIG_LBDAF is not set > +# CONFIG_BLK_DEV_BSG is not set > +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set > +# CONFIG_SUSPEND is not set > +CONFIG_NET=y > +CONFIG_PACKET=y > +CONFIG_UNIX=y > +CONFIG_INET=y > +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set > +# CONFIG_INET_XFRM_MODE_TUNNEL is not set > +# CONFIG_INET_XFRM_MODE_BEET is not set > +# CONFIG_INET_DIAG is not set > +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set > +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set > +CONFIG_NETFILTER=y > +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y > +CONFIG_IP_NF_IPTABLES=y > +CONFIG_IP_NF_FILTER=y > +CONFIG_IP6_NF_IPTABLES=y > +CONFIG_IP6_NF_FILTER=y > +# CONFIG_WIRELESS is not set > +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" > +CONFIG_DEVTMPFS=y > +CONFIG_DEVTMPFS_MOUNT=y > +CONFIG_MTD=y > +CONFIG_MTD_CMDLINE_PARTS=y > +CONFIG_MTD_BLOCK_RO=y > +CONFIG_MTD_NAND=y > +CONFIG_MTD_NAND_ECC_BCH=y > +CONFIG_MTD_NAND_GPIO=y > +CONFIG_MTD_UBI=y > +CONFIG_MTD_UBI_BLOCK=y > +# CONFIG_BLK_DEV is not set > +CONFIG_NETDEVICES=y > +# CONFIG_NET_VENDOR_ALACRITECH is not set > +# CONFIG_NET_VENDOR_AMAZON is not set > +# CONFIG_NET_VENDOR_AQUANTIA is not set > +# CONFIG_NET_VENDOR_ARC is not set > +# CONFIG_NET_CADENCE is not set > +# CONFIG_NET_VENDOR_BROADCOM is not set > +# CONFIG_NET_VENDOR_EZCHIP is not set > +# CONFIG_NET_VENDOR_INTEL is not set > +# CONFIG_NET_VENDOR_MARVELL is not set > +# CONFIG_NET_VENDOR_MICREL is not set > +# CONFIG_NET_VENDOR_NATSEMI is not set > +# CONFIG_NET_VENDOR_NETRONOME is not set > +# CONFIG_NET_VENDOR_QUALCOMM is not set > +# CONFIG_NET_VENDOR_RENESAS is not set > +# CONFIG_NET_VENDOR_ROCKER is not set > +# CONFIG_NET_VENDOR_SAMSUNG is not set > +# CONFIG_NET_VENDOR_SEEQ is not set > +# CONFIG_NET_VENDOR_SOLARFLARE is not set > +# CONFIG_NET_VENDOR_SMSC is not set > +CONFIG_STMMAC_ETH=y > +CONFIG_DWMAC_DWC_QOS_ETH=y > +# CONFIG_NET_VENDOR_VIA is not set > +# CONFIG_NET_VENDOR_WIZNET is not set > +# CONFIG_NET_VENDOR_XILINX is not set > +# CONFIG_WLAN is not set > +# CONFIG_INPUT_KEYBOARD is not set > +# CONFIG_INPUT_MOUSE is not set > +# CONFIG_SERIO is not set > +# CONFIG_VT is not set > +CONFIG_LEGACY_PTY_COUNT=32 > +CONFIG_SERIAL_8250=y > +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set > +CONFIG_SERIAL_8250_CONSOLE=y > +CONFIG_SERIAL_8250_NR_UARTS=2 > +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 > +CONFIG_SERIAL_OF_PLATFORM=y > +# CONFIG_PTP_1588_CLOCK is not set > +CONFIG_GPIOLIB=y > +CONFIG_GPIO_SYSFS=y > +CONFIG_GPIO_GENERIC_PLATFORM=y > +# CONFIG_HWMON is not set > +# CONFIG_HID is not set > +# CONFIG_USB_SUPPORT is not set > +# CONFIG_MIPS_PLATFORM_DEVICES is not set > +# CONFIG_IOMMU_SUPPORT is not set > +CONFIG_FANOTIFY=y > +CONFIG_UBIFS_FS=y > +CONFIG_SQUASHFS=y > +CONFIG_SQUASHFS_XATTR=y > +# CONFIG_SQUASHFS_ZLIB is not set > +CONFIG_SQUASHFS_LZO=y > +# CONFIG_NETWORK_FILESYSTEMS is not set > +CONFIG_PRINTK_TIME=y > +CONFIG_DEBUG_INFO=y > +CONFIG_DEBUG_INFO_REDUCED=y > +CONFIG_DEBUG_FS=y > +# CONFIG_SCHED_DEBUG is not set > +CONFIG_RCU_TRACE=y > +# CONFIG_FTRACE is not set > +# CONFIG_CRYPTO_ECHAINIV is not set > +# CONFIG_CRYPTO_HW is not set I think this file is intended to be more minimal than a normal defconfig, only enabling hardware device drivers (and related options) and FIT IMAGE on top of the generic_defconfig and other snippets in this directory, e.g. have you seen the other board config examples here? https://git.linux-mips.org/cgit/linux-mti.git/tree/arch/mips/configs/generic?h=eng If specific generic kernel features are desired we should probably consider whether it makes sense to add them to the generic_defconfig so other generic boards can benefit. Cheers James [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 2/2] MIPS: NI 169445 board support 2017-03-06 23:04 ` James Hogan @ 2017-03-06 23:04 ` James Hogan 2017-03-06 23:14 ` Nathan Sullivan 1 sibling, 0 replies; 19+ messages in thread From: James Hogan @ 2017-03-06 23:04 UTC (permalink / raw) To: Nathan Sullivan Cc: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf, linux-kernel, linux-gpio, linux-mips [-- Attachment #1: Type: text/plain, Size: 5726 bytes --] Hi Nathan, On Mon, Mar 06, 2017 at 02:06:01PM -0600, Nathan Sullivan wrote: > Support the National Instruments 169445 board. > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> > --- > Documentation/devicetree/bindings/mips/ni.txt | 7 ++ > arch/mips/boot/dts/Makefile | 1 + > arch/mips/boot/dts/ni/169445.dts | 101 ++++++++++++++++++++ > arch/mips/boot/dts/ni/Makefile | 7 ++ > arch/mips/configs/generic/board-ni169445.config | 117 ++++++++++++++++++++++++ > arch/mips/generic/Kconfig | 6 ++ > arch/mips/generic/vmlinux.its.S | 25 +++++ > 7 files changed, 264 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mips/ni.txt > create mode 100644 arch/mips/boot/dts/ni/169445.dts > create mode 100644 arch/mips/boot/dts/ni/Makefile > create mode 100644 arch/mips/configs/generic/board-ni169445.config > nice :) I reckon an entry in MAINTAINERS listing the board specific files/directories would probably be worthwhile too. > diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config > new file mode 100644 > index 0000000..2c950a8 > --- /dev/null > +++ b/arch/mips/configs/generic/board-ni169445.config > @@ -0,0 +1,117 @@ > +CONFIG_MIPS_GENERIC=y > +CONFIG_FIT_IMAGE_FDT_NI169445=y > +CONFIG_CPU_LITTLE_ENDIAN=y > +CONFIG_CPU_MIPS32_R2=y > +CONFIG_HZ_100=y > +CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y > +# CONFIG_SWAP is not set > +CONFIG_SYSVIPC=y > +CONFIG_HZ_PERIODIC=y > +CONFIG_NO_HZ=y > +CONFIG_HIGH_RES_TIMERS=y > +CONFIG_IKCONFIG=y > +CONFIG_IKCONFIG_PROC=y > +CONFIG_LOG_BUF_SHIFT=15 > +CONFIG_BPF_SYSCALL=y > +# CONFIG_SHMEM is not set > +CONFIG_USERFAULTFD=y > +CONFIG_EMBEDDED=y > +# CONFIG_COMPAT_BRK is not set > +CONFIG_SLAB=y > +CONFIG_PROFILING=y > +CONFIG_CC_STACKPROTECTOR_REGULAR=y > +# CONFIG_LBDAF is not set > +# CONFIG_BLK_DEV_BSG is not set > +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set > +# CONFIG_SUSPEND is not set > +CONFIG_NET=y > +CONFIG_PACKET=y > +CONFIG_UNIX=y > +CONFIG_INET=y > +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set > +# CONFIG_INET_XFRM_MODE_TUNNEL is not set > +# CONFIG_INET_XFRM_MODE_BEET is not set > +# CONFIG_INET_DIAG is not set > +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set > +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set > +CONFIG_NETFILTER=y > +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y > +CONFIG_IP_NF_IPTABLES=y > +CONFIG_IP_NF_FILTER=y > +CONFIG_IP6_NF_IPTABLES=y > +CONFIG_IP6_NF_FILTER=y > +# CONFIG_WIRELESS is not set > +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" > +CONFIG_DEVTMPFS=y > +CONFIG_DEVTMPFS_MOUNT=y > +CONFIG_MTD=y > +CONFIG_MTD_CMDLINE_PARTS=y > +CONFIG_MTD_BLOCK_RO=y > +CONFIG_MTD_NAND=y > +CONFIG_MTD_NAND_ECC_BCH=y > +CONFIG_MTD_NAND_GPIO=y > +CONFIG_MTD_UBI=y > +CONFIG_MTD_UBI_BLOCK=y > +# CONFIG_BLK_DEV is not set > +CONFIG_NETDEVICES=y > +# CONFIG_NET_VENDOR_ALACRITECH is not set > +# CONFIG_NET_VENDOR_AMAZON is not set > +# CONFIG_NET_VENDOR_AQUANTIA is not set > +# CONFIG_NET_VENDOR_ARC is not set > +# CONFIG_NET_CADENCE is not set > +# CONFIG_NET_VENDOR_BROADCOM is not set > +# CONFIG_NET_VENDOR_EZCHIP is not set > +# CONFIG_NET_VENDOR_INTEL is not set > +# CONFIG_NET_VENDOR_MARVELL is not set > +# CONFIG_NET_VENDOR_MICREL is not set > +# CONFIG_NET_VENDOR_NATSEMI is not set > +# CONFIG_NET_VENDOR_NETRONOME is not set > +# CONFIG_NET_VENDOR_QUALCOMM is not set > +# CONFIG_NET_VENDOR_RENESAS is not set > +# CONFIG_NET_VENDOR_ROCKER is not set > +# CONFIG_NET_VENDOR_SAMSUNG is not set > +# CONFIG_NET_VENDOR_SEEQ is not set > +# CONFIG_NET_VENDOR_SOLARFLARE is not set > +# CONFIG_NET_VENDOR_SMSC is not set > +CONFIG_STMMAC_ETH=y > +CONFIG_DWMAC_DWC_QOS_ETH=y > +# CONFIG_NET_VENDOR_VIA is not set > +# CONFIG_NET_VENDOR_WIZNET is not set > +# CONFIG_NET_VENDOR_XILINX is not set > +# CONFIG_WLAN is not set > +# CONFIG_INPUT_KEYBOARD is not set > +# CONFIG_INPUT_MOUSE is not set > +# CONFIG_SERIO is not set > +# CONFIG_VT is not set > +CONFIG_LEGACY_PTY_COUNT=32 > +CONFIG_SERIAL_8250=y > +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set > +CONFIG_SERIAL_8250_CONSOLE=y > +CONFIG_SERIAL_8250_NR_UARTS=2 > +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 > +CONFIG_SERIAL_OF_PLATFORM=y > +# CONFIG_PTP_1588_CLOCK is not set > +CONFIG_GPIOLIB=y > +CONFIG_GPIO_SYSFS=y > +CONFIG_GPIO_GENERIC_PLATFORM=y > +# CONFIG_HWMON is not set > +# CONFIG_HID is not set > +# CONFIG_USB_SUPPORT is not set > +# CONFIG_MIPS_PLATFORM_DEVICES is not set > +# CONFIG_IOMMU_SUPPORT is not set > +CONFIG_FANOTIFY=y > +CONFIG_UBIFS_FS=y > +CONFIG_SQUASHFS=y > +CONFIG_SQUASHFS_XATTR=y > +# CONFIG_SQUASHFS_ZLIB is not set > +CONFIG_SQUASHFS_LZO=y > +# CONFIG_NETWORK_FILESYSTEMS is not set > +CONFIG_PRINTK_TIME=y > +CONFIG_DEBUG_INFO=y > +CONFIG_DEBUG_INFO_REDUCED=y > +CONFIG_DEBUG_FS=y > +# CONFIG_SCHED_DEBUG is not set > +CONFIG_RCU_TRACE=y > +# CONFIG_FTRACE is not set > +# CONFIG_CRYPTO_ECHAINIV is not set > +# CONFIG_CRYPTO_HW is not set I think this file is intended to be more minimal than a normal defconfig, only enabling hardware device drivers (and related options) and FIT IMAGE on top of the generic_defconfig and other snippets in this directory, e.g. have you seen the other board config examples here? https://git.linux-mips.org/cgit/linux-mti.git/tree/arch/mips/configs/generic?h=eng If specific generic kernel features are desired we should probably consider whether it makes sense to add them to the generic_defconfig so other generic boards can benefit. Cheers James [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 2/2] MIPS: NI 169445 board support 2017-03-06 23:04 ` James Hogan 2017-03-06 23:04 ` James Hogan @ 2017-03-06 23:14 ` Nathan Sullivan 2017-03-06 23:14 ` Nathan Sullivan 1 sibling, 1 reply; 19+ messages in thread From: Nathan Sullivan @ 2017-03-06 23:14 UTC (permalink / raw) To: James Hogan Cc: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf, linux-kernel, linux-gpio, linux-mips On Mon, Mar 06, 2017 at 11:04:13PM +0000, James Hogan wrote: > Hi Nathan, > > On Mon, Mar 06, 2017 at 02:06:01PM -0600, Nathan Sullivan wrote: > > Support the National Instruments 169445 board. > > > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> > > --- > > Documentation/devicetree/bindings/mips/ni.txt | 7 ++ > > arch/mips/boot/dts/Makefile | 1 + > > arch/mips/boot/dts/ni/169445.dts | 101 ++++++++++++++++++++ > > arch/mips/boot/dts/ni/Makefile | 7 ++ > > arch/mips/configs/generic/board-ni169445.config | 117 ++++++++++++++++++++++++ > > arch/mips/generic/Kconfig | 6 ++ > > arch/mips/generic/vmlinux.its.S | 25 +++++ > > 7 files changed, 264 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/mips/ni.txt > > create mode 100644 arch/mips/boot/dts/ni/169445.dts > > create mode 100644 arch/mips/boot/dts/ni/Makefile > > create mode 100644 arch/mips/configs/generic/board-ni169445.config > > > > nice :) > > I reckon an entry in MAINTAINERS listing the board specific > files/directories would probably be worthwhile too. > OK, will do. > > diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config > > new file mode 100644 > > index 0000000..2c950a8 > > --- /dev/null > > +++ b/arch/mips/configs/generic/board-ni169445.config > > @@ -0,0 +1,117 @@ > > +CONFIG_MIPS_GENERIC=y > > +CONFIG_FIT_IMAGE_FDT_NI169445=y > > +CONFIG_CPU_LITTLE_ENDIAN=y > > +CONFIG_CPU_MIPS32_R2=y > > +CONFIG_HZ_100=y > > +CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y > > +# CONFIG_SWAP is not set > > +CONFIG_SYSVIPC=y > > +CONFIG_HZ_PERIODIC=y > > +CONFIG_NO_HZ=y > > +CONFIG_HIGH_RES_TIMERS=y > > +CONFIG_IKCONFIG=y > > +CONFIG_IKCONFIG_PROC=y > > +CONFIG_LOG_BUF_SHIFT=15 > > +CONFIG_BPF_SYSCALL=y > > +# CONFIG_SHMEM is not set > > +CONFIG_USERFAULTFD=y > > +CONFIG_EMBEDDED=y > > +# CONFIG_COMPAT_BRK is not set > > +CONFIG_SLAB=y > > +CONFIG_PROFILING=y > > +CONFIG_CC_STACKPROTECTOR_REGULAR=y > > +# CONFIG_LBDAF is not set > > +# CONFIG_BLK_DEV_BSG is not set > > +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set > > +# CONFIG_SUSPEND is not set > > +CONFIG_NET=y > > +CONFIG_PACKET=y > > +CONFIG_UNIX=y > > +CONFIG_INET=y > > +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set > > +# CONFIG_INET_XFRM_MODE_TUNNEL is not set > > +# CONFIG_INET_XFRM_MODE_BEET is not set > > +# CONFIG_INET_DIAG is not set > > +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set > > +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set > > +CONFIG_NETFILTER=y > > +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y > > +CONFIG_IP_NF_IPTABLES=y > > +CONFIG_IP_NF_FILTER=y > > +CONFIG_IP6_NF_IPTABLES=y > > +CONFIG_IP6_NF_FILTER=y > > +# CONFIG_WIRELESS is not set > > +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" > > +CONFIG_DEVTMPFS=y > > +CONFIG_DEVTMPFS_MOUNT=y > > +CONFIG_MTD=y > > +CONFIG_MTD_CMDLINE_PARTS=y > > +CONFIG_MTD_BLOCK_RO=y > > +CONFIG_MTD_NAND=y > > +CONFIG_MTD_NAND_ECC_BCH=y > > +CONFIG_MTD_NAND_GPIO=y > > +CONFIG_MTD_UBI=y > > +CONFIG_MTD_UBI_BLOCK=y > > +# CONFIG_BLK_DEV is not set > > +CONFIG_NETDEVICES=y > > +# CONFIG_NET_VENDOR_ALACRITECH is not set > > +# CONFIG_NET_VENDOR_AMAZON is not set > > +# CONFIG_NET_VENDOR_AQUANTIA is not set > > +# CONFIG_NET_VENDOR_ARC is not set > > +# CONFIG_NET_CADENCE is not set > > +# CONFIG_NET_VENDOR_BROADCOM is not set > > +# CONFIG_NET_VENDOR_EZCHIP is not set > > +# CONFIG_NET_VENDOR_INTEL is not set > > +# CONFIG_NET_VENDOR_MARVELL is not set > > +# CONFIG_NET_VENDOR_MICREL is not set > > +# CONFIG_NET_VENDOR_NATSEMI is not set > > +# CONFIG_NET_VENDOR_NETRONOME is not set > > +# CONFIG_NET_VENDOR_QUALCOMM is not set > > +# CONFIG_NET_VENDOR_RENESAS is not set > > +# CONFIG_NET_VENDOR_ROCKER is not set > > +# CONFIG_NET_VENDOR_SAMSUNG is not set > > +# CONFIG_NET_VENDOR_SEEQ is not set > > +# CONFIG_NET_VENDOR_SOLARFLARE is not set > > +# CONFIG_NET_VENDOR_SMSC is not set > > +CONFIG_STMMAC_ETH=y > > +CONFIG_DWMAC_DWC_QOS_ETH=y > > +# CONFIG_NET_VENDOR_VIA is not set > > +# CONFIG_NET_VENDOR_WIZNET is not set > > +# CONFIG_NET_VENDOR_XILINX is not set > > +# CONFIG_WLAN is not set > > +# CONFIG_INPUT_KEYBOARD is not set > > +# CONFIG_INPUT_MOUSE is not set > > +# CONFIG_SERIO is not set > > +# CONFIG_VT is not set > > +CONFIG_LEGACY_PTY_COUNT=32 > > +CONFIG_SERIAL_8250=y > > +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set > > +CONFIG_SERIAL_8250_CONSOLE=y > > +CONFIG_SERIAL_8250_NR_UARTS=2 > > +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 > > +CONFIG_SERIAL_OF_PLATFORM=y > > +# CONFIG_PTP_1588_CLOCK is not set > > +CONFIG_GPIOLIB=y > > +CONFIG_GPIO_SYSFS=y > > +CONFIG_GPIO_GENERIC_PLATFORM=y > > +# CONFIG_HWMON is not set > > +# CONFIG_HID is not set > > +# CONFIG_USB_SUPPORT is not set > > +# CONFIG_MIPS_PLATFORM_DEVICES is not set > > +# CONFIG_IOMMU_SUPPORT is not set > > +CONFIG_FANOTIFY=y > > +CONFIG_UBIFS_FS=y > > +CONFIG_SQUASHFS=y > > +CONFIG_SQUASHFS_XATTR=y > > +# CONFIG_SQUASHFS_ZLIB is not set > > +CONFIG_SQUASHFS_LZO=y > > +# CONFIG_NETWORK_FILESYSTEMS is not set > > +CONFIG_PRINTK_TIME=y > > +CONFIG_DEBUG_INFO=y > > +CONFIG_DEBUG_INFO_REDUCED=y > > +CONFIG_DEBUG_FS=y > > +# CONFIG_SCHED_DEBUG is not set > > +CONFIG_RCU_TRACE=y > > +# CONFIG_FTRACE is not set > > +# CONFIG_CRYPTO_ECHAINIV is not set > > +# CONFIG_CRYPTO_HW is not set > > I think this file is intended to be more minimal than a normal > defconfig, only enabling hardware device drivers (and related options) > and FIT IMAGE on top of the generic_defconfig and other snippets in this > directory, e.g. have you seen the other board config examples here? > > https://git.linux-mips.org/cgit/linux-mti.git/tree/arch/mips/configs/generic?h=eng > > If specific generic kernel features are desired we should probably > consider whether it makes sense to add them to the generic_defconfig so > other generic boards can benefit. > > Cheers > James I was a little confused here, I'll rewrite this by hand for v3 and follow the examples. I see the intent now. Thanks, Nathan ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 2/2] MIPS: NI 169445 board support 2017-03-06 23:14 ` Nathan Sullivan @ 2017-03-06 23:14 ` Nathan Sullivan 0 siblings, 0 replies; 19+ messages in thread From: Nathan Sullivan @ 2017-03-06 23:14 UTC (permalink / raw) To: James Hogan Cc: linus.walleij, gnurou, mark.rutland, devicetree, robh+dt, ralf, linux-kernel, linux-gpio, linux-mips On Mon, Mar 06, 2017 at 11:04:13PM +0000, James Hogan wrote: > Hi Nathan, > > On Mon, Mar 06, 2017 at 02:06:01PM -0600, Nathan Sullivan wrote: > > Support the National Instruments 169445 board. > > > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> > > --- > > Documentation/devicetree/bindings/mips/ni.txt | 7 ++ > > arch/mips/boot/dts/Makefile | 1 + > > arch/mips/boot/dts/ni/169445.dts | 101 ++++++++++++++++++++ > > arch/mips/boot/dts/ni/Makefile | 7 ++ > > arch/mips/configs/generic/board-ni169445.config | 117 ++++++++++++++++++++++++ > > arch/mips/generic/Kconfig | 6 ++ > > arch/mips/generic/vmlinux.its.S | 25 +++++ > > 7 files changed, 264 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/mips/ni.txt > > create mode 100644 arch/mips/boot/dts/ni/169445.dts > > create mode 100644 arch/mips/boot/dts/ni/Makefile > > create mode 100644 arch/mips/configs/generic/board-ni169445.config > > > > nice :) > > I reckon an entry in MAINTAINERS listing the board specific > files/directories would probably be worthwhile too. > OK, will do. > > diff --git a/arch/mips/configs/generic/board-ni169445.config b/arch/mips/configs/generic/board-ni169445.config > > new file mode 100644 > > index 0000000..2c950a8 > > --- /dev/null > > +++ b/arch/mips/configs/generic/board-ni169445.config > > @@ -0,0 +1,117 @@ > > +CONFIG_MIPS_GENERIC=y > > +CONFIG_FIT_IMAGE_FDT_NI169445=y > > +CONFIG_CPU_LITTLE_ENDIAN=y > > +CONFIG_CPU_MIPS32_R2=y > > +CONFIG_HZ_100=y > > +CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y > > +# CONFIG_SWAP is not set > > +CONFIG_SYSVIPC=y > > +CONFIG_HZ_PERIODIC=y > > +CONFIG_NO_HZ=y > > +CONFIG_HIGH_RES_TIMERS=y > > +CONFIG_IKCONFIG=y > > +CONFIG_IKCONFIG_PROC=y > > +CONFIG_LOG_BUF_SHIFT=15 > > +CONFIG_BPF_SYSCALL=y > > +# CONFIG_SHMEM is not set > > +CONFIG_USERFAULTFD=y > > +CONFIG_EMBEDDED=y > > +# CONFIG_COMPAT_BRK is not set > > +CONFIG_SLAB=y > > +CONFIG_PROFILING=y > > +CONFIG_CC_STACKPROTECTOR_REGULAR=y > > +# CONFIG_LBDAF is not set > > +# CONFIG_BLK_DEV_BSG is not set > > +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set > > +# CONFIG_SUSPEND is not set > > +CONFIG_NET=y > > +CONFIG_PACKET=y > > +CONFIG_UNIX=y > > +CONFIG_INET=y > > +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set > > +# CONFIG_INET_XFRM_MODE_TUNNEL is not set > > +# CONFIG_INET_XFRM_MODE_BEET is not set > > +# CONFIG_INET_DIAG is not set > > +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set > > +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set > > +CONFIG_NETFILTER=y > > +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y > > +CONFIG_IP_NF_IPTABLES=y > > +CONFIG_IP_NF_FILTER=y > > +CONFIG_IP6_NF_IPTABLES=y > > +CONFIG_IP6_NF_FILTER=y > > +# CONFIG_WIRELESS is not set > > +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" > > +CONFIG_DEVTMPFS=y > > +CONFIG_DEVTMPFS_MOUNT=y > > +CONFIG_MTD=y > > +CONFIG_MTD_CMDLINE_PARTS=y > > +CONFIG_MTD_BLOCK_RO=y > > +CONFIG_MTD_NAND=y > > +CONFIG_MTD_NAND_ECC_BCH=y > > +CONFIG_MTD_NAND_GPIO=y > > +CONFIG_MTD_UBI=y > > +CONFIG_MTD_UBI_BLOCK=y > > +# CONFIG_BLK_DEV is not set > > +CONFIG_NETDEVICES=y > > +# CONFIG_NET_VENDOR_ALACRITECH is not set > > +# CONFIG_NET_VENDOR_AMAZON is not set > > +# CONFIG_NET_VENDOR_AQUANTIA is not set > > +# CONFIG_NET_VENDOR_ARC is not set > > +# CONFIG_NET_CADENCE is not set > > +# CONFIG_NET_VENDOR_BROADCOM is not set > > +# CONFIG_NET_VENDOR_EZCHIP is not set > > +# CONFIG_NET_VENDOR_INTEL is not set > > +# CONFIG_NET_VENDOR_MARVELL is not set > > +# CONFIG_NET_VENDOR_MICREL is not set > > +# CONFIG_NET_VENDOR_NATSEMI is not set > > +# CONFIG_NET_VENDOR_NETRONOME is not set > > +# CONFIG_NET_VENDOR_QUALCOMM is not set > > +# CONFIG_NET_VENDOR_RENESAS is not set > > +# CONFIG_NET_VENDOR_ROCKER is not set > > +# CONFIG_NET_VENDOR_SAMSUNG is not set > > +# CONFIG_NET_VENDOR_SEEQ is not set > > +# CONFIG_NET_VENDOR_SOLARFLARE is not set > > +# CONFIG_NET_VENDOR_SMSC is not set > > +CONFIG_STMMAC_ETH=y > > +CONFIG_DWMAC_DWC_QOS_ETH=y > > +# CONFIG_NET_VENDOR_VIA is not set > > +# CONFIG_NET_VENDOR_WIZNET is not set > > +# CONFIG_NET_VENDOR_XILINX is not set > > +# CONFIG_WLAN is not set > > +# CONFIG_INPUT_KEYBOARD is not set > > +# CONFIG_INPUT_MOUSE is not set > > +# CONFIG_SERIO is not set > > +# CONFIG_VT is not set > > +CONFIG_LEGACY_PTY_COUNT=32 > > +CONFIG_SERIAL_8250=y > > +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set > > +CONFIG_SERIAL_8250_CONSOLE=y > > +CONFIG_SERIAL_8250_NR_UARTS=2 > > +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 > > +CONFIG_SERIAL_OF_PLATFORM=y > > +# CONFIG_PTP_1588_CLOCK is not set > > +CONFIG_GPIOLIB=y > > +CONFIG_GPIO_SYSFS=y > > +CONFIG_GPIO_GENERIC_PLATFORM=y > > +# CONFIG_HWMON is not set > > +# CONFIG_HID is not set > > +# CONFIG_USB_SUPPORT is not set > > +# CONFIG_MIPS_PLATFORM_DEVICES is not set > > +# CONFIG_IOMMU_SUPPORT is not set > > +CONFIG_FANOTIFY=y > > +CONFIG_UBIFS_FS=y > > +CONFIG_SQUASHFS=y > > +CONFIG_SQUASHFS_XATTR=y > > +# CONFIG_SQUASHFS_ZLIB is not set > > +CONFIG_SQUASHFS_LZO=y > > +# CONFIG_NETWORK_FILESYSTEMS is not set > > +CONFIG_PRINTK_TIME=y > > +CONFIG_DEBUG_INFO=y > > +CONFIG_DEBUG_INFO_REDUCED=y > > +CONFIG_DEBUG_FS=y > > +# CONFIG_SCHED_DEBUG is not set > > +CONFIG_RCU_TRACE=y > > +# CONFIG_FTRACE is not set > > +# CONFIG_CRYPTO_ECHAINIV is not set > > +# CONFIG_CRYPTO_HW is not set > > I think this file is intended to be more minimal than a normal > defconfig, only enabling hardware device drivers (and related options) > and FIT IMAGE on top of the generic_defconfig and other snippets in this > directory, e.g. have you seen the other board config examples here? > > https://git.linux-mips.org/cgit/linux-mti.git/tree/arch/mips/configs/generic?h=eng > > If specific generic kernel features are desired we should probably > consider whether it makes sense to add them to the generic_defconfig so > other generic boards can benefit. > > Cheers > James I was a little confused here, I'll rewrite this by hand for v3 and follow the examples. I see the intent now. Thanks, Nathan ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 2/2] MIPS: NI 169445 board support 2017-03-06 20:06 ` [PATCH 2/2] " Nathan Sullivan 2017-03-06 20:06 ` Nathan Sullivan 2017-03-06 23:04 ` James Hogan @ 2017-03-15 9:37 ` Linus Walleij 2 siblings, 0 replies; 19+ messages in thread From: Linus Walleij @ 2017-03-15 9:37 UTC (permalink / raw) To: Nathan Sullivan Cc: Alexandre Courbot, Mark Rutland, devicetree, Rob Herring, Ralf Baechle, linux-kernel, linux-gpio, Linux MIPS On Mon, Mar 6, 2017 at 9:06 PM, Nathan Sullivan <nathan.sullivan@ni.com> wrote: > Support the National Instruments 169445 board. > > Signed-off-by: Nathan Sullivan <nathan.sullivan@ni.com> (...) > + gpio1:gpio-controller@1f300010 { > + compatible = "ni,169445-nand-gpio"; > + reg = <0x10 0x4>; > + reg-names = "dat"; > + gpio-controller; > + #gpio-cells = <2>; > + ngpios = <5>; Here I would add: gpio-line-names = "NC", "NCE", "ALE", "CLE", "NWP"; (Dunno about the first one, maybe you have a schematic?) > + }; > + > + gpio2:gpio-controller@1f300014 { > + compatible = "ni,169445-nand-gpio"; > + reg = <0x14 0x4>; > + reg-names = "dat"; > + gpio-controller; > + #gpio-cells = <2>; > + ngpios = <1>; gpio-line-names = "RDY"; > + }; > + > + nand@1f300000 { > + compatible = "gpio-control-nand"; > + nand-on-flash-bbt; > + nand-ecc-mode = "soft_bch"; > + nand-ecc-step-size = <512>; > + nand-ecc-strength = <4>; > + reg = <0x0 4>; > + gpios = <&gpio2 0 0>, /* rdy */ > + <&gpio1 1 0>, /* nce */ > + <&gpio1 2 0>, /* ale */ > + <&gpio1 3 0>, /* cle */ > + <&gpio1 4 0>; /* nwp */ > + }; To reflect this. "lsgpio" gives better info after that. Other than that: Acked-by: Linus Walleij <linus.walleij@linaro.org> Yours, Linus Walleij ^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2017-03-24 14:46 UTC | newest] Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2017-03-14 16:13 [PATCH v4] NI 169445 board support Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan 2017-03-14 16:13 ` [PATCH 1/2] gpio: mmio: add support for NI 169445 NAND GPIO Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan 2017-03-23 8:49 ` Linus Walleij 2017-03-14 16:13 ` [PATCH 2/2] MIPS: NI 169445 board support Nathan Sullivan 2017-03-14 16:13 ` Nathan Sullivan 2017-03-23 22:29 ` Rob Herring 2017-03-24 14:46 ` Nathan Sullivan 2017-03-24 14:46 ` Nathan Sullivan -- strict thread matches above, loose matches on Subject: below -- 2017-03-08 19:35 [PATCH v3] " Nathan Sullivan 2017-03-08 19:35 ` [PATCH 2/2] MIPS: " Nathan Sullivan 2017-03-08 19:35 ` Nathan Sullivan 2017-03-06 20:05 [PATCH v2] " Nathan Sullivan 2017-03-06 20:06 ` [PATCH 2/2] " Nathan Sullivan 2017-03-06 20:06 ` Nathan Sullivan 2017-03-06 23:04 ` James Hogan 2017-03-06 23:04 ` James Hogan 2017-03-06 23:14 ` Nathan Sullivan 2017-03-06 23:14 ` Nathan Sullivan 2017-03-15 9:37 ` Linus Walleij
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).