Nuvoton device tree updates for 5.18
* Additions to wpcm450 following the upstremaing of the pinctrl/gpio driver for this platform * Match more of the platform in MAINTAINERS -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE+nHMAt9PCBDH63wBa3ZZB4FHcJ4FAmITUqAACgkQa3ZZB4FH cJ4LxhAAuvm8O2YQbLDMt09L5JKu0P++Oz6MMbP0IHDrasRaZFuOPp/nAwQXb+wJ xdiXr/xfOV2PCIt4RPZ3NRagiFYNwpyq48oraKJnr8IuRyxTLo/bfa6sNKFGUU/r fiLzLbDvUzgZD0HvS+wBoXoQAGcrx8boKhMRbqBsua7S9WXzOAd91D5hH/7dVtX9 4cUODi8ZE7rkg3psB6mmgm3/4tlVps2n2DSKG1GSqCI1+DBz25W3rYuvkVljAS0l pIymZyw50f6BsCnCBJ0aRSB52+qCDcIikKlGQBbzHCe/6ozdyRvrHUBqtreSV2ug iDGKQicJkhraab+HaooIDcCGPsjaC6BcPKV0VGPApxt8Z4lkiE36/KNdGImnHz6k q8ScdKejRj5e8Gf9bsJD6Upmhq7lDFvJzdRYZLIxSlhnQ4dx4Y4djs8Tvbhy44qo vcSijRSS6rEEBCoGX3xb/sxzZhxfsWLM2f2QWrq1K+dEl9N0+71B9UgM3o89k+Nv Bww5v0N2sUR80uZ7Wr81/f0ByggOEuawjtJoeN+fKGGMFBTbJa9X6pw5DUHppalg SaqwEZ/E2qkjbCQQXUVPG3fa0j9Igp+L8q15cjoc2BbhKkzjhAmpsvKcQjgsus5N 7+5Nr614rTWBjmwt7Px5FE0BvUhk9XL8vLgatETkbQOogwgyvVk= =bfnw -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY7r4ACgkQmmx57+YA GNkK8RAAqFn4WYyDutldEYmdpW8MUFoxeFdFh5FG2MSiz5hHsouECOHcW707He05 JZ9ziBPLffUAKOtG4tf0Zv3Sf0IuWOdJiIOqbdnQCCcA0JhMELYalfyRmxgMSc5t 2CtgMlaJCCBHVR4I1ljxt9tKuxQfjSs+/o2iBcov7FiHwWak9waI5wuaVfgfrJJ/ 5ySochmdl1Y3g4QlPqSSVF2FTTvDv3GWRH2J5FkfpF43kz+M+QEvjedwMjEFuRsr du81rz6qYiCx+rAXBRpM1ucFzqT+DRycd1GN/ukpYC9830ce9HRpC0+YZgryNJ0G P2jEtW6Vkt6nhrg7TSl7FTmtES187ZoaG3QTQJ49e1SieoAroqXgUZW2PysrPs/Z vR4BC3rGf5Wnye0o8d429RVekj16Adxl1Rax27qPs1tuD++4xkzuOT9ob7r53GuG jesmFes8nqGBv1d4nfSj5h3jF0HYonsV1+VFpTQXrXzGSAzD2DNGqb5Rzqvnasq4 CpJjbhgMXxjTDF5HC3DHqJmFjfg6kuTGQIxtO0LLnfgiQdIQH0WFMbvpke2FcuG+ gHy+PFz8saSer+BQyN2FsZVWpf3/9mwnDMdIoH0hXJZDv9bBS+Ya8fwGUdAWmN4v gZ6E0uQe/tOCxL9TJrl8es7eBppPLQgjp6vqfrKEr1R07v1zX6w= =/MfM -----END PGP SIGNATURE----- Merge tag 'nuvoton-5.18-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc into arm/dt Nuvoton device tree updates for 5.18 * Additions to wpcm450 following the upstremaing of the pinctrl/gpio driver for this platform * Match more of the platform in MAINTAINERS * tag 'nuvoton-5.18-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc: MAINTAINERS: ARM/WPCM450: Add 'W:' line with wiki ARM: dts: wpcm450: Add pinmux information to UART0 ARM: dts: wpcm450-supermicro-x9sci-ln4f: Add GPIO LEDs and buttons ARM: dts: wpcm450: Add pin functions ARM: dts: wpcm450: Add pinctrl and GPIO nodes ARM: dts: wpcm450: Add global control registers (GCR) node MAINTAINERS: Match all of bindings/arm/npcm/ as part of NPCM architecture dt-bindings: arm/npcm: Add binding for global control registers (GCR) Link: https://lore.kernel.org/r/CACPK8XdjF6dG04hR+iMpUP8=LSJi5x-hRivgCGDaY7o_461eJw@mail.gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
fee1601dc2
48
Documentation/devicetree/bindings/arm/npcm/nuvoton,gcr.yaml
Normal file
48
Documentation/devicetree/bindings/arm/npcm/nuvoton,gcr.yaml
Normal file
@ -0,0 +1,48 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/arm/npcm/nuvoton,gcr.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Global Control Registers block in Nuvoton SoCs
|
||||
|
||||
maintainers:
|
||||
- Jonathan Neuschäfer <j.neuschaefer@gmx.net>
|
||||
|
||||
description:
|
||||
The Global Control Registers (GCR) are a block of registers in Nuvoton SoCs
|
||||
that expose misc functionality such as chip model and version information or
|
||||
pinmux settings.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
items:
|
||||
- enum:
|
||||
- nuvoton,wpcm450-gcr
|
||||
- nuvoton,npcm750-gcr
|
||||
- const: syscon
|
||||
- const: simple-mfd
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties:
|
||||
type: object
|
||||
|
||||
examples:
|
||||
- |
|
||||
gcr: syscon@800000 {
|
||||
compatible = "nuvoton,npcm750-gcr", "syscon", "simple-mfd";
|
||||
reg = <0x800000 0x1000>;
|
||||
|
||||
mux-controller {
|
||||
compatible = "mmio-mux";
|
||||
#mux-control-cells = <1>;
|
||||
mux-reg-masks = <0x38 0x07>;
|
||||
idle-states = <2>;
|
||||
};
|
||||
};
|
@ -2364,6 +2364,7 @@ L: openbmc@lists.ozlabs.org (moderated for non-subscribers)
|
||||
S: Supported
|
||||
F: Documentation/devicetree/bindings/*/*/*npcm*
|
||||
F: Documentation/devicetree/bindings/*/*npcm*
|
||||
F: Documentation/devicetree/bindings/arm/npcm/*
|
||||
F: arch/arm/boot/dts/nuvoton-npcm*
|
||||
F: arch/arm/mach-npcm/
|
||||
F: drivers/*/*npcm*
|
||||
@ -2374,6 +2375,7 @@ ARM/NUVOTON WPCM450 ARCHITECTURE
|
||||
M: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
|
||||
L: openbmc@lists.ozlabs.org (moderated for non-subscribers)
|
||||
S: Maintained
|
||||
W: https://github.com/neuschaefer/wpcm450/wiki
|
||||
F: Documentation/devicetree/bindings/*/*wpcm*
|
||||
F: arch/arm/boot/dts/nuvoton-wpcm450*
|
||||
F: arch/arm/mach-npcm/wpcm450.c
|
||||
|
@ -8,6 +8,9 @@
|
||||
|
||||
#include "nuvoton-wpcm450.dtsi"
|
||||
|
||||
#include <dt-bindings/input/linux-event-codes.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/ {
|
||||
model = "Supermicro X9SCi-LN4F BMC";
|
||||
compatible = "supermicro,x9sci-ln4f-bmc", "nuvoton,wpcm450";
|
||||
@ -20,6 +23,46 @@
|
||||
device_type = "memory";
|
||||
reg = <0 0x08000000>; /* 128 MiB */
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&key_pins>;
|
||||
|
||||
uid {
|
||||
label = "UID button";
|
||||
linux,code = <KEY_HOME>;
|
||||
gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
gpio-leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&led_pins>;
|
||||
|
||||
uid {
|
||||
label = "UID";
|
||||
gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
heartbeat {
|
||||
label = "heartbeat";
|
||||
gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
key_pins: mux-keys {
|
||||
groups = "gspi", "sspi";
|
||||
function = "gpio";
|
||||
};
|
||||
|
||||
led_pins: mux-leds {
|
||||
groups = "hg3", "hg0", "pwm4";
|
||||
function = "gpio";
|
||||
};
|
||||
};
|
||||
|
||||
&serial0 {
|
||||
|
@ -8,6 +8,17 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
aliases {
|
||||
gpio0 = &gpio0;
|
||||
gpio1 = &gpio1;
|
||||
gpio2 = &gpio2;
|
||||
gpio3 = &gpio3;
|
||||
gpio4 = &gpio4;
|
||||
gpio5 = &gpio5;
|
||||
gpio6 = &gpio6;
|
||||
gpio7 = &gpio7;
|
||||
};
|
||||
|
||||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
@ -33,12 +44,19 @@
|
||||
interrupt-parent = <&aic>;
|
||||
ranges;
|
||||
|
||||
gcr: syscon@b0000000 {
|
||||
compatible = "nuvoton,wpcm450-gcr", "syscon", "simple-mfd";
|
||||
reg = <0xb0000000 0x200>;
|
||||
};
|
||||
|
||||
serial0: serial@b8000000 {
|
||||
compatible = "nuvoton,wpcm450-uart";
|
||||
reg = <0xb8000000 0x20>;
|
||||
reg-shift = <2>;
|
||||
interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clk24m>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&bsp_pins>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@ -72,5 +90,371 @@
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
|
||||
pinctrl: pinctrl@b8003000 {
|
||||
compatible = "nuvoton,wpcm450-pinctrl";
|
||||
reg = <0xb8003000 0x1000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
gpio0: gpio@0 {
|
||||
reg = <0>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<3 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<4 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-controller;
|
||||
};
|
||||
|
||||
gpio1: gpio@1 {
|
||||
reg = <1>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-controller;
|
||||
};
|
||||
|
||||
gpio2: gpio@2 {
|
||||
reg = <2>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
||||
gpio3: gpio@3 {
|
||||
reg = <3>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
||||
gpio4: gpio@4 {
|
||||
reg = <4>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
||||
gpio5: gpio@5 {
|
||||
reg = <5>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
||||
gpio6: gpio@6 {
|
||||
reg = <6>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
||||
gpio7: gpio@7 {
|
||||
reg = <7>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
};
|
||||
|
||||
smb3_pins: mux-smb3 {
|
||||
groups = "smb3";
|
||||
function = "smb3";
|
||||
};
|
||||
|
||||
smb4_pins: mux-smb4 {
|
||||
groups = "smb4";
|
||||
function = "smb4";
|
||||
};
|
||||
|
||||
smb5_pins: mux-smb5 {
|
||||
groups = "smb5";
|
||||
function = "smb5";
|
||||
};
|
||||
|
||||
scs1_pins: mux-scs1 {
|
||||
groups = "scs1";
|
||||
function = "scs1";
|
||||
};
|
||||
|
||||
scs2_pins: mux-scs2 {
|
||||
groups = "scs2";
|
||||
function = "scs2";
|
||||
};
|
||||
|
||||
scs3_pins: mux-scs3 {
|
||||
groups = "scs3";
|
||||
function = "scs3";
|
||||
};
|
||||
|
||||
smb0_pins: mux-smb0 {
|
||||
groups = "smb0";
|
||||
function = "smb0";
|
||||
};
|
||||
|
||||
smb1_pins: mux-smb1 {
|
||||
groups = "smb1";
|
||||
function = "smb1";
|
||||
};
|
||||
|
||||
smb2_pins: mux-smb2 {
|
||||
groups = "smb2";
|
||||
function = "smb2";
|
||||
};
|
||||
|
||||
bsp_pins: mux-bsp {
|
||||
groups = "bsp";
|
||||
function = "bsp";
|
||||
};
|
||||
|
||||
hsp1_pins: mux-hsp1 {
|
||||
groups = "hsp1";
|
||||
function = "hsp1";
|
||||
};
|
||||
|
||||
hsp2_pins: mux-hsp2 {
|
||||
groups = "hsp2";
|
||||
function = "hsp2";
|
||||
};
|
||||
|
||||
r1err_pins: mux-r1err {
|
||||
groups = "r1err";
|
||||
function = "r1err";
|
||||
};
|
||||
|
||||
r1md_pins: mux-r1md {
|
||||
groups = "r1md";
|
||||
function = "r1md";
|
||||
};
|
||||
|
||||
rmii2_pins: mux-rmii2 {
|
||||
groups = "rmii2";
|
||||
function = "rmii2";
|
||||
};
|
||||
|
||||
r2err_pins: mux-r2err {
|
||||
groups = "r2err";
|
||||
function = "r2err";
|
||||
};
|
||||
|
||||
r2md_pins: mux-r2md {
|
||||
groups = "r2md";
|
||||
function = "r2md";
|
||||
};
|
||||
|
||||
kbcc_pins: mux-kbcc {
|
||||
groups = "kbcc";
|
||||
function = "kbcc";
|
||||
};
|
||||
|
||||
dvo0_pins: mux-dvo0 {
|
||||
groups = "dvo";
|
||||
function = "dvo0";
|
||||
};
|
||||
|
||||
dvo3_pins: mux-dvo3 {
|
||||
groups = "dvo";
|
||||
function = "dvo3";
|
||||
};
|
||||
|
||||
clko_pins: mux-clko {
|
||||
groups = "clko";
|
||||
function = "clko";
|
||||
};
|
||||
|
||||
smi_pins: mux-smi {
|
||||
groups = "smi";
|
||||
function = "smi";
|
||||
};
|
||||
|
||||
uinc_pins: mux-uinc {
|
||||
groups = "uinc";
|
||||
function = "uinc";
|
||||
};
|
||||
|
||||
gspi_pins: mux-gspi {
|
||||
groups = "gspi";
|
||||
function = "gspi";
|
||||
};
|
||||
|
||||
mben_pins: mux-mben {
|
||||
groups = "mben";
|
||||
function = "mben";
|
||||
};
|
||||
|
||||
xcs2_pins: mux-xcs2 {
|
||||
groups = "xcs2";
|
||||
function = "xcs2";
|
||||
};
|
||||
|
||||
xcs1_pins: mux-xcs1 {
|
||||
groups = "xcs1";
|
||||
function = "xcs1";
|
||||
};
|
||||
|
||||
sdio_pins: mux-sdio {
|
||||
groups = "sdio";
|
||||
function = "sdio";
|
||||
};
|
||||
|
||||
sspi_pins: mux-sspi {
|
||||
groups = "sspi";
|
||||
function = "sspi";
|
||||
};
|
||||
|
||||
fi0_pins: mux-fi0 {
|
||||
groups = "fi0";
|
||||
function = "fi0";
|
||||
};
|
||||
|
||||
fi1_pins: mux-fi1 {
|
||||
groups = "fi1";
|
||||
function = "fi1";
|
||||
};
|
||||
|
||||
fi2_pins: mux-fi2 {
|
||||
groups = "fi2";
|
||||
function = "fi2";
|
||||
};
|
||||
|
||||
fi3_pins: mux-fi3 {
|
||||
groups = "fi3";
|
||||
function = "fi3";
|
||||
};
|
||||
|
||||
fi4_pins: mux-fi4 {
|
||||
groups = "fi4";
|
||||
function = "fi4";
|
||||
};
|
||||
|
||||
fi5_pins: mux-fi5 {
|
||||
groups = "fi5";
|
||||
function = "fi5";
|
||||
};
|
||||
|
||||
fi6_pins: mux-fi6 {
|
||||
groups = "fi6";
|
||||
function = "fi6";
|
||||
};
|
||||
|
||||
fi7_pins: mux-fi7 {
|
||||
groups = "fi7";
|
||||
function = "fi7";
|
||||
};
|
||||
|
||||
fi8_pins: mux-fi8 {
|
||||
groups = "fi8";
|
||||
function = "fi8";
|
||||
};
|
||||
|
||||
fi9_pins: mux-fi9 {
|
||||
groups = "fi9";
|
||||
function = "fi9";
|
||||
};
|
||||
|
||||
fi10_pins: mux-fi10 {
|
||||
groups = "fi10";
|
||||
function = "fi10";
|
||||
};
|
||||
|
||||
fi11_pins: mux-fi11 {
|
||||
groups = "fi11";
|
||||
function = "fi11";
|
||||
};
|
||||
|
||||
fi12_pins: mux-fi12 {
|
||||
groups = "fi12";
|
||||
function = "fi12";
|
||||
};
|
||||
|
||||
fi13_pins: mux-fi13 {
|
||||
groups = "fi13";
|
||||
function = "fi13";
|
||||
};
|
||||
|
||||
fi14_pins: mux-fi14 {
|
||||
groups = "fi14";
|
||||
function = "fi14";
|
||||
};
|
||||
|
||||
fi15_pins: mux-fi15 {
|
||||
groups = "fi15";
|
||||
function = "fi15";
|
||||
};
|
||||
|
||||
pwm0_pins: mux-pwm0 {
|
||||
groups = "pwm0";
|
||||
function = "pwm0";
|
||||
};
|
||||
|
||||
pwm1_pins: mux-pwm1 {
|
||||
groups = "pwm1";
|
||||
function = "pwm1";
|
||||
};
|
||||
|
||||
pwm2_pins: mux-pwm2 {
|
||||
groups = "pwm2";
|
||||
function = "pwm2";
|
||||
};
|
||||
|
||||
pwm3_pins: mux-pwm3 {
|
||||
groups = "pwm3";
|
||||
function = "pwm3";
|
||||
};
|
||||
|
||||
pwm4_pins: mux-pwm4 {
|
||||
groups = "pwm4";
|
||||
function = "pwm4";
|
||||
};
|
||||
|
||||
pwm5_pins: mux-pwm5 {
|
||||
groups = "pwm5";
|
||||
function = "pwm5";
|
||||
};
|
||||
|
||||
pwm6_pins: mux-pwm6 {
|
||||
groups = "pwm6";
|
||||
function = "pwm6";
|
||||
};
|
||||
|
||||
pwm7_pins: mux-pwm7 {
|
||||
groups = "pwm7";
|
||||
function = "pwm7";
|
||||
};
|
||||
|
||||
hg0_pins: mux-hg0 {
|
||||
groups = "hg0";
|
||||
function = "hg0";
|
||||
};
|
||||
|
||||
hg1_pins: mux-hg1 {
|
||||
groups = "hg1";
|
||||
function = "hg1";
|
||||
};
|
||||
|
||||
hg2_pins: mux-hg2 {
|
||||
groups = "hg2";
|
||||
function = "hg2";
|
||||
};
|
||||
|
||||
hg3_pins: mux-hg3 {
|
||||
groups = "hg3";
|
||||
function = "hg3";
|
||||
};
|
||||
|
||||
hg4_pins: mux-hg4 {
|
||||
groups = "hg4";
|
||||
function = "hg4";
|
||||
};
|
||||
|
||||
hg5_pins: mux-hg5 {
|
||||
groups = "hg5";
|
||||
function = "hg5";
|
||||
};
|
||||
|
||||
hg6_pins: mux-hg6 {
|
||||
groups = "hg6";
|
||||
function = "hg6";
|
||||
};
|
||||
|
||||
hg7_pins: mux-hg7 {
|
||||
groups = "hg7";
|
||||
function = "hg7";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user