mbox series

[00/14] Initial support for Nuvoton WPCM450 BMC SoC

Message ID 20210320181610.680870-1-j.neuschaefer@gmx.net
Headers show
Series Initial support for Nuvoton WPCM450 BMC SoC | expand

Message

J. Neuschäfer March 20, 2021, 6:15 p.m. UTC
This series adds basic support for the Nuvoton WPCM450 BMC SoC. It's an older
SoC but still commonly found on eBay, mostly in Supermicro X9 server boards.

Patches 1-6 add devicetree bindings for the WPCM450 SoC and its various parts.
Patches 7-11 add arch and driver support. Patches 12 and 13 add a devicetree
for the SoC and a board based on it. Patch 14 finally updates the MAINTAINERS
file.

Patch 2 requires "dt-bindings: arm: Convert nuvoton,npcm750 binding to YAML"
(https://lore.kernel.org/lkml/20210320164023.614059-1-j.neuschaefer@gmx.net/)

This series is based on 5.12-rc2, and doesn't cleanly apply to OpenBMC's dev-5.10
branch (there are some trivial merge conflicts).

Jonathan Neuschäfer (14):
  dt-bindings: vendor-prefixes: Add Supermicro
  dt-bindings: arm: npcm: Add nuvoton,wpcm450 compatible string
  dt-bindings: interrupt-controller: Add nuvoton,wpcm450-aic
  dt-bindings: serial: 8250: Add nuvoton,wpcm450-uart
  dt-bindings: timer: nuvoton,npcm7xx: Add wpcm450-timer
  dt-bindings: watchdog: npcm: Add nuvoton,wpcm450-wdt
  ARM: npcm: Introduce Nuvoton WPCM450 SoC
  irqchip: Add driver for WPCM450 interrupt controller
  serial: 8250_of: Add nuvoton,wpcm450-uart
  clocksource/drivers/npcm: Add support for WPCM450
  watchdog: npcm: Add support for WPCM450
  ARM: dts: Add devicetree for Nuvoton WPCM450 BMC chip
  ARM: dts: Add devicetree for Supermicro X9SCi-LN4F based on WPCM450
  MAINTAINERS: Nuvoton NPCM: Add wpcm patterns

 .../devicetree/bindings/arm/npcm/npcm.yaml    |   6 +
 .../nuvoton,wpcm450-aic.yaml                  |  39 +++++
 .../devicetree/bindings/serial/8250.yaml      |   1 +
 .../bindings/timer/nuvoton,npcm7xx-timer.txt  |   3 +-
 .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
 .../bindings/watchdog/nuvoton,npcm-wdt.txt    |   3 +-
 MAINTAINERS                                   |  11 +-
 arch/arm/boot/dts/Makefile                    |   2 +
 .../nuvoton-wpcm450-supermicro-x9sci-ln4f.dts |  40 +++++
 arch/arm/boot/dts/nuvoton-wpcm450.dtsi        |  76 ++++++++
 arch/arm/mach-npcm/Kconfig                    |  13 +-
 arch/arm/mach-npcm/Makefile                   |   1 +
 arch/arm/mach-npcm/wpcm450.c                  |  13 ++
 drivers/clocksource/timer-npcm7xx.c           |   1 +
 drivers/irqchip/Kconfig                       |   6 +
 drivers/irqchip/Makefile                      |   1 +
 drivers/irqchip/irq-wpcm450-aic.c             | 162 ++++++++++++++++++
 drivers/tty/serial/8250/8250_of.c             |   1 +
 drivers/watchdog/npcm_wdt.c                   |   1 +
 19 files changed, 374 insertions(+), 8 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/interrupt-controller/nuvoton,wpcm450-aic.yaml
 create mode 100644 arch/arm/boot/dts/nuvoton-wpcm450-supermicro-x9sci-ln4f.dts
 create mode 100644 arch/arm/boot/dts/nuvoton-wpcm450.dtsi
 create mode 100644 arch/arm/mach-npcm/wpcm450.c
 create mode 100644 drivers/irqchip/irq-wpcm450-aic.c

--
2.30.2

Comments

J. Neuschäfer March 20, 2021, 6:47 p.m. UTC | #1
On Sat, Mar 20, 2021 at 07:15:56PM +0100, Jonathan Neuschäfer wrote:
> This series adds basic support for the Nuvoton WPCM450 BMC SoC. It's an older
> SoC but still commonly found on eBay, mostly in Supermicro X9 server boards.

Something I forgot to mention: I wrote a bit of third-party
documentation based on the various vendor kernel trees and it's
available at:

  https://github.com/neuschaefer/wpcm450/wiki



Best regards,
Jonathan Neuschäfer
Tomer Maimon March 21, 2021, 11:07 a.m. UTC | #2
Hi Jonathan,

Thanks a lot for trying to add WPCM450.

Hoever WPCM450 is in EOL for several years and we are not supporting this
product anymore.
As you said it is only available in the secondary market.

Due to it is better not to add the WPCM450 under Nuvoton maintenance.

Again we highly appreciate your support and time on NPCM750 patches.

have a great weekend

Tomer

On Sat, 20 Mar 2021 at 20:17, Jonathan Neuschäfer <j.neuschaefer@gmx.net>
wrote:

> This series adds basic support for the Nuvoton WPCM450 BMC SoC. It's an
> older
> SoC but still commonly found on eBay, mostly in Supermicro X9 server
> boards.
>
> Patches 1-6 add devicetree bindings for the WPCM450 SoC and its various
> parts.
> Patches 7-11 add arch and driver support. Patches 12 and 13 add a
> devicetree
> for the SoC and a board based on it. Patch 14 finally updates the
> MAINTAINERS
> file.
>
> Patch 2 requires "dt-bindings: arm: Convert nuvoton,npcm750 binding to
> YAML"
> (
> https://lore.kernel.org/lkml/20210320164023.614059-1-j.neuschaefer@gmx.net/
> )
>
> This series is based on 5.12-rc2, and doesn't cleanly apply to OpenBMC's
> dev-5.10
> branch (there are some trivial merge conflicts).
>
> Jonathan Neuschäfer (14):
>   dt-bindings: vendor-prefixes: Add Supermicro
>   dt-bindings: arm: npcm: Add nuvoton,wpcm450 compatible string
>   dt-bindings: interrupt-controller: Add nuvoton,wpcm450-aic
>   dt-bindings: serial: 8250: Add nuvoton,wpcm450-uart
>   dt-bindings: timer: nuvoton,npcm7xx: Add wpcm450-timer
>   dt-bindings: watchdog: npcm: Add nuvoton,wpcm450-wdt
>   ARM: npcm: Introduce Nuvoton WPCM450 SoC
>   irqchip: Add driver for WPCM450 interrupt controller
>   serial: 8250_of: Add nuvoton,wpcm450-uart
>   clocksource/drivers/npcm: Add support for WPCM450
>   watchdog: npcm: Add support for WPCM450
>   ARM: dts: Add devicetree for Nuvoton WPCM450 BMC chip
>   ARM: dts: Add devicetree for Supermicro X9SCi-LN4F based on WPCM450
>   MAINTAINERS: Nuvoton NPCM: Add wpcm patterns
>
>  .../devicetree/bindings/arm/npcm/npcm.yaml    |   6 +
>  .../nuvoton,wpcm450-aic.yaml                  |  39 +++++
>  .../devicetree/bindings/serial/8250.yaml      |   1 +
>  .../bindings/timer/nuvoton,npcm7xx-timer.txt  |   3 +-
>  .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
>  .../bindings/watchdog/nuvoton,npcm-wdt.txt    |   3 +-
>  MAINTAINERS                                   |  11 +-
>  arch/arm/boot/dts/Makefile                    |   2 +
>  .../nuvoton-wpcm450-supermicro-x9sci-ln4f.dts |  40 +++++
>  arch/arm/boot/dts/nuvoton-wpcm450.dtsi        |  76 ++++++++
>  arch/arm/mach-npcm/Kconfig                    |  13 +-
>  arch/arm/mach-npcm/Makefile                   |   1 +
>  arch/arm/mach-npcm/wpcm450.c                  |  13 ++
>  drivers/clocksource/timer-npcm7xx.c           |   1 +
>  drivers/irqchip/Kconfig                       |   6 +
>  drivers/irqchip/Makefile                      |   1 +
>  drivers/irqchip/irq-wpcm450-aic.c             | 162 ++++++++++++++++++
>  drivers/tty/serial/8250/8250_of.c             |   1 +
>  drivers/watchdog/npcm_wdt.c                   |   1 +
>  19 files changed, 374 insertions(+), 8 deletions(-)
>  create mode 100644
> Documentation/devicetree/bindings/interrupt-controller/nuvoton,wpcm450-aic.yaml
>  create mode 100644
> arch/arm/boot/dts/nuvoton-wpcm450-supermicro-x9sci-ln4f.dts
>  create mode 100644 arch/arm/boot/dts/nuvoton-wpcm450.dtsi
>  create mode 100644 arch/arm/mach-npcm/wpcm450.c
>  create mode 100644 drivers/irqchip/irq-wpcm450-aic.c
>
> --
> 2.30.2
>
>
J. Neuschäfer March 21, 2021, 12:31 p.m. UTC | #3
On Sun, Mar 21, 2021 at 01:07:53PM +0200, Tomer Maimon wrote:
> Hi Jonathan,
> 
> Thanks a lot for trying to add WPCM450.
> 
> Hoever WPCM450 is in EOL for several years and we are not supporting this
> product anymore.
> As you said it is only available in the secondary market.
> 
> Due to it is better not to add the WPCM450 under Nuvoton maintenance.

I understand. I will instead add a new, separate section for WPCM450 to
the MAINTAINERS file.

> Again we highly appreciate your support and time on NPCM750 patches.

I expect there will be some more cooperation, because the SoCs share
some architectural similarity, for example the 100Mbit Ethernet
controller.


Best regards,
Jonathan