Add iop yaml file for Sunplus SP7021 Signed-off-by: Tony Huang <tonyhuang.sunplus@xxxxxxxxx> --- Changes in v6: -Modify incorrect name of gpio. Added wakeup-gpios pin for 8051. .../devicetree/bindings/misc/sunplus-iop.yaml | 76 ++++++++++++++++++++++ MAINTAINERS | 5 ++ 2 files changed, 81 insertions(+) create mode 100644 Documentation/devicetree/bindings/misc/sunplus-iop.yaml diff --git a/Documentation/devicetree/bindings/misc/sunplus-iop.yaml b/Documentation/devicetree/bindings/misc/sunplus-iop.yaml new file mode 100644 index 0000000..b37e697 --- /dev/null +++ b/Documentation/devicetree/bindings/misc/sunplus-iop.yaml @@ -0,0 +1,76 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +# Copyright (C) Sunplus Ltd. Co. 2021 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/misc/sunplus-iop.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Sunplus IOP(8051) controller + +maintainers: + - Tony Huang <tonyhuang.sunplus@xxxxxxxxx> + +description: | + Processor for I/O control, RTC wake-up procedure management, + and cooperation with CPU&PMC in power management. + +properties: + compatible: + enum: + - sunplus,sp7021-iop + + reg: + items: + - description: IOP registers regions + - description: PMC registers regions + - description: MOON0 registers regions + + reg-names: + items: + - const: iop + - const: iop_pmc + - const: moon0 + + interrupts: + items: + - description: IOP_INT0. IOP to system Interrupt 0. + Sent by IOP to system RISC. + - description: IOP_INT1. IOP to System Interrupt 1. + Sent by IOP to system RISC. + + memory-region: + maxItems: 1 + + wakeup-gpios: + description: When the linux kernel system is powered off. + 8051 is always powered. 8051 cand receive external signals + according to this gpio pin. 8051 receives external signal + through gpio pin. 8051 can power on linux kernel system. + +required: + - compatible + - reg + - reg-names + - interrupts + - memory-region + - wakeup-gpios + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + #include <dt-bindings/gpio/gpio.h> + iop: iop@9c000400 { + compatible = "sunplus,sp7021-iop"; + reg = <0x9c000400 0x80>, <0x9c003100 0x80>, <0x9c000000 0x80>; + reg-names = "iop", "iop_pmc", "moon0"; + interrupt-parent = <&intc>; + interrupts = <41 IRQ_TYPE_LEVEL_HIGH>, <42 IRQ_TYPE_LEVEL_HIGH>; + memory-region = <&iop_reserve>; + pinctrl-names = "default"; + pinctrl-0 = <&iop_pins>; + wakeup-gpios = <&pctl 1 GPIO_ACTIVE_HIGH>; + }; +... diff --git a/MAINTAINERS b/MAINTAINERS index fb18ce7..6f336c9 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -18242,6 +18242,11 @@ L: netdev@xxxxxxxxxxxxxxx S: Maintained F: drivers/net/ethernet/dlink/sundance.c +SUNPLUS IOP DRIVER +M: Tony Huang <tonyhuang.sunplus@xxxxxxxxx> +S: Maintained +F: Documentation/devicetree/bindings/misc/sunplu-iop.yaml + SUPERH M: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx> M: Rich Felker <dalias@xxxxxxxx> -- 2.7.4