lkml.org 
[lkml]   [2019]   [Jun]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH] csky: dts: Add NationalChip GX6605S
Date
Add Device Trees for NationalChip GX6605S SoC (based on CK610 CPU) and its
dev board. GxLoader expects as filename gx6605s.dtb, so keep that.
The bootargs are prepared to boot from USB and to output to serial.

Compatibles for the SoC and board are left out for now.

Signed-off-by: Andreas Färber <afaerber@suse.de>
---
arch/csky/boot/dts/gx6605s.dts | 104 ++++++++++++++++++++++++++++++++++++++++
arch/csky/boot/dts/gx6605s.dtsi | 82 +++++++++++++++++++++++++++++++
2 files changed, 186 insertions(+)
create mode 100644 arch/csky/boot/dts/gx6605s.dts
create mode 100644 arch/csky/boot/dts/gx6605s.dtsi

diff --git a/arch/csky/boot/dts/gx6605s.dts b/arch/csky/boot/dts/gx6605s.dts
new file mode 100644
index 000000000000..f7511024ec6f
--- /dev/null
+++ b/arch/csky/boot/dts/gx6605s.dts
@@ -0,0 +1,104 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause */
+/*
+ * GX6605S dev board
+ *
+ * Copyright (c) 2019 Andreas Färber
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+
+#include "gx6605s.dtsi"
+
+/ {
+ model = "Nationalchip GX6605S";
+
+ aliases {
+ serial0 = &uart;
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,115200n8 root=/dev/sda2 rw rootwait";
+ stdout-path = "serial0:115200n8";
+ };
+
+ memory@10000000 {
+ device_type = "memory";
+ reg = <0x10000000 0x04000000>;
+ };
+
+ dummy_apb_clk: dummy-apb-clk {
+ compatible = "fixed-clock";
+ clock-frequency = <24000000>; /* guesstimate */
+ #clock-cells = <0>;
+ };
+
+ buttons {
+ compatible = "gpio-keys-polled";
+ poll-interval = <100>;
+ autorepeat;
+
+ button5 {
+ label = "button5";
+ linux,code = <103>;
+ gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
+ };
+
+ button6 {
+ label = "button6";
+ linux,code = <106>;
+ gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
+ };
+
+ button7 {
+ label = "button7";
+ linux,code = <28>;
+ gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
+ };
+
+ button8 {
+ label = "button8";
+ linux,code = <105>;
+ gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
+ };
+
+ button9 {
+ label = "button9";
+ linux,code = <108>;
+ gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
+ };
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led0 {
+ label = "led10";
+ gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "heartbeat";
+ };
+
+ led1 {
+ label = "led11";
+ gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "timer";
+ };
+
+ led2 {
+ label = "led12";
+ gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "default-on";
+ };
+
+ led3 {
+ label = "led13";
+ gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "default-on";
+ };
+ };
+};
+
+&timer0 {
+ clocks = <&dummy_apb_clk>;
+};
diff --git a/arch/csky/boot/dts/gx6605s.dtsi b/arch/csky/boot/dts/gx6605s.dtsi
new file mode 100644
index 000000000000..956af5674add
--- /dev/null
+++ b/arch/csky/boot/dts/gx6605s.dtsi
@@ -0,0 +1,82 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause */
+/*
+ * NationalChip GX6605S SoC
+ *
+ * Copyright (c) 2019 Andreas Färber
+ */
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ cpus {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ cpu0: cpu@0 {
+ device_type = "cpu";
+ compatible = "csky,ck610";
+ reg = <0>;
+ };
+ };
+
+ soc {
+ compatible = "simple-bus";
+ interrupt-parent = <&intc>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+
+ timer0: timer@20a000 {
+ compatible = "csky,gx6605s-timer";
+ reg = <0x0020a000 0x400>;
+ clocks = <&dummy_apb_clk>;
+ interrupts = <10>;
+ };
+
+ gpio: gpio@305000 {
+ compatible = "wd,mbl-gpio";
+ reg-names = "dirout", "dat", "set", "clr";
+ reg = <0x00305000 0x4>,
+ <0x00305004 0x4>,
+ <0x00305008 0x4>,
+ <0x0030500c 0x4>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ };
+
+ uart: serial@403000 {
+ compatible = "ns16550a";
+ reg = <0x00403000 0x400>;
+ interrupts = <15>;
+ clock-frequency = <29491200>;
+ reg-shift = <2>;
+ reg-io-width = <1>;
+ };
+
+ intc: interrupt-controller@500000 {
+ compatible = "csky,gx6605s-intc";
+ reg = <0x00500000 0x400>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ };
+
+ ehci_hcd: usb@900000 {
+ compatible = "generic-ehci";
+ reg = <0x00900000 0x400>;
+ interrupts = <59>;
+ };
+
+ ohci_hcd0: usb@a00000 {
+ compatible = "generic-ohci";
+ reg = <0x00a00000 0x400>;
+ interrupts = <58>;
+ };
+
+ ohci_hcd1: usb@b00000 {
+ compatible = "generic-ohci";
+ reg = <0x00b00000 0x400>;
+ interrupts = <57>;
+ };
+ };
+};
--
2.16.4
\
 
 \ /
  Last update: 2019-06-25 02:29    [W:0.057 / U:4.420 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site