[PATCH v5 0/5] Add support for the PolarFire SoC system controller
conor.dooley at microchip.com
conor.dooley at microchip.com
Mon Apr 12 17:03:51 BST 2021
From: Conor Dooley <conor.dooley at microchip.com>
This patch series adds support for the system controller on
the PolarFire SoC, using the mailbox framework. A Microchip directory
in the SoC subsystem has been created to hold the mailbox client
driver and will be used for future service drivers.
These drivers are gated by the kconfig option:
CONFIG_SOC_MICROCHIP_POLARFIRE, so this patch series depends on Atish
Patra's PolarFire SoC support patches which introduce it.
It further depends on the MAINTAINERS entry created in the same series.
The following link, which is a direct download of a pdf, contains documentation
for the system controller:
https://www.microsemi.com/document-portal/doc_download/1244853-ug0905-polarfire-soc-fpga-system-services-user-guide
Changes from v4:
* Changed dt binding from Rob Herring's feedback
* Shortened some verbose variable names
* Reordered binding patches
* Write directly into response array, rather than allocate in controller isr and memcpy in client
Changes from v3:
* Fixed mboxes reference in dt binding for mailbox client
* Bug fixes and cleanup from Jonathan Neuschäfer's feedback on
mailbox-mpfs.c & mpfs-sys-controller.c
* Renamed dt binding files to match compatible strings
* Removed PFSoC gating condition on drivers/soc/microchip subdirectory
* Converted all size based operations to bytes for consistency
* Converted response array to a structure, enabling support for more
complex services that return a status instead of/alongside a payload.
Changes from v2:
* Further reworked dt bindings to satisfy errors and feedback
(hopefully phandle array is the correct type for the mboxes)
* Full maintainers entry moved to Atish's PFSoC support series, this series now only adds mailbox driver
* Converted config options from MPFS to POLARFIRE_SOC so they are more recognisable
* Further simplified driver code from feedback
Changes from v1:
* Squashed header into first patch
* Fixed DT binding warnings & small fixes
* Cleaned up drivers from feedback
Conor Dooley (5):
dt-bindings: add bindings for polarfire soc mailbox
mbox: add polarfire soc system controller mailbox
dt-bindings: add bindings for polarfire soc system controller
soc: add polarfire soc system controller
MAINTAINERS: add entry for polarfire soc mailbox driver
.../microchip,polarfire-soc-mailbox.yaml | 47 +++
...icrochip,polarfire-soc-sys-controller.yaml | 35 +++
MAINTAINERS | 1 +
drivers/mailbox/Kconfig | 12 +
drivers/mailbox/Makefile | 2 +
drivers/mailbox/mailbox-mpfs.c | 272 ++++++++++++++++++
drivers/soc/Kconfig | 1 +
drivers/soc/Makefile | 1 +
drivers/soc/microchip/Kconfig | 10 +
drivers/soc/microchip/Makefile | 1 +
drivers/soc/microchip/mpfs-sys-controller.c | 119 ++++++++
include/soc/microchip/mpfs.h | 56 ++++
12 files changed, 557 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mailbox/microchip,polarfire-soc-mailbox.yaml
create mode 100644 Documentation/devicetree/bindings/soc/microchip/microchip,polarfire-soc-sys-controller.yaml
create mode 100644 drivers/mailbox/mailbox-mpfs.c
create mode 100644 drivers/soc/microchip/Kconfig
create mode 100644 drivers/soc/microchip/Makefile
create mode 100644 drivers/soc/microchip/mpfs-sys-controller.c
create mode 100644 include/soc/microchip/mpfs.h
--
2.31.1
More information about the linux-riscv
mailing list