Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1434825 > unrolled thread
| Started by | Rob Rice <rob.rice@broadcom.com> |
|---|---|
| First post | 2016-06-30 22:10 +0200 |
| Last post | 2016-06-30 22:10 +0200 |
| Articles | 3 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH v2 0/3] Add Broadcom PDC mailbox driver Rob Rice <rob.rice@broadcom.com> - 2016-06-30 22:10 +0200
[PATCH v2 3/3] arm64: dts: Add Broadcom Northstar2 device tree entries for PDC driver. Rob Rice <rob.rice@broadcom.com> - 2016-06-30 22:10 +0200
[PATCH v2 1/3] dt-bindings: add bindings documentation for PDC driver. Rob Rice <rob.rice@broadcom.com> - 2016-06-30 22:10 +0200
| From | Rob Rice <rob.rice@broadcom.com> |
|---|---|
| Date | 2016-06-30 22:10 +0200 |
| Subject | [PATCH v2 0/3] Add Broadcom PDC mailbox driver |
| Message-ID | <rPQrD-5xU-5@gated-at.bofh.it> |
From: Rob Rice <rrice@broadcom.com>
Changes in v2:
- Added COMPILE_TEST depend to PDC Kconfig
- Renamed pdc.c to bcm-pdc-mailbox.c and moved it from subdirectory
to drivers/mailbox
- Moved code from pdc.h, pdc_debug.h, and pdc_debug.c into
bcm-pdc-mailbox.c
- Removed a few function parameters
The Broadcom PDC mailbox driver is a ring manager for the Broadcom
Secure Processing Unit (SPU) kernel driver and other mailbox clients.
The PDC driver registers with the Linux mailbox framework a mailbox
controller, once for each PDC instance. Ring 0 for each PDC is registered as
a mailbox channel. The PDC driver uses interrupts to determine when ring
transfers to and from an offload engine are complete. The PDC driver uses
threaded IRQs so that response messages are handled outside of interrupt
context.
Rob Rice (3):
dt-bindings: add bindings documentation for PDC driver.
mailbox: Add Broadcom PDC mailbox driver
arm64: dts: Add Broadcom Northstar2 device tree entries for PDC
driver.
.../bindings/mailbox/brcm,iproc-pdc-mbox.txt | 23 +
arch/arm64/boot/dts/broadcom/ns2.dtsi | 36 +
drivers/mailbox/Kconfig | 9 +
drivers/mailbox/Makefile | 2 +
drivers/mailbox/bcm-pdc-mailbox.c | 1531 ++++++++++++++++++++
include/linux/mailbox/brcm-message.h | 56 +
6 files changed, 1657 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mailbox/brcm,iproc-pdc-mbox.txt
create mode 100644 drivers/mailbox/bcm-pdc-mailbox.c
create mode 100644 include/linux/mailbox/brcm-message.h
--
2.1.0
[toc] | [next] | [standalone]
| From | Rob Rice <rob.rice@broadcom.com> |
|---|---|
| Date | 2016-06-30 22:10 +0200 |
| Subject | [PATCH v2 3/3] arm64: dts: Add Broadcom Northstar2 device tree entries for PDC driver. |
| Message-ID | <rPQrD-5xU-25@gated-at.bofh.it> |
| In reply to | #1434825 |
From: Rob Rice <rrice@broadcom.com>
Add Broadcom Northstar2 SoC device tree entries for PDC driver.
Signed-off-by: Rob Rice <rob.rice@broadcom.com>
Reviewed-by: Ray Jui <ray.jui@broadcom.com>
Reviewed-by: Scott Branden <scott.branden@broadcom.com>
---
arch/arm64/boot/dts/broadcom/ns2.dtsi | 36 +++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/arch/arm64/boot/dts/broadcom/ns2.dtsi b/arch/arm64/boot/dts/broadcom/ns2.dtsi
index ec68ec1..ba12702 100644
--- a/arch/arm64/boot/dts/broadcom/ns2.dtsi
+++ b/arch/arm64/boot/dts/broadcom/ns2.dtsi
@@ -191,6 +191,42 @@
#include "ns2-clock.dtsi"
+ pdc0: iproc-pdc0@612c0000 {
+ compatible = "brcm,iproc-pdc-mbox";
+ reg = <0x612c0000 0x445>; /* PDC FS0 regs */
+ interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
+ #mbox-cells = <1>;
+ brcm,rx-status-len = <32>;
+ brcm,use-bcm-hdr;
+ };
+
+ pdc1: iproc-pdc1@612e0000 {
+ compatible = "brcm,iproc-pdc-mbox";
+ reg = <0x612e0000 0x445>; /* PDC FS1 regs */
+ interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
+ #mbox-cells = <1>;
+ brcm,rx-status-len = <32>;
+ brcm,use-bcm-hdr;
+ };
+
+ pdc2: iproc-pdc2@61300000 {
+ compatible = "brcm,iproc-pdc-mbox";
+ reg = <0x61300000 0x445>; /* PDC FS2 regs */
+ interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
+ #mbox-cells = <1>;
+ brcm,rx-status-len = <32>;
+ brcm,use-bcm-hdr;
+ };
+
+ pdc3: iproc-pdc3@61320000 {
+ compatible = "brcm,iproc-pdc-mbox";
+ reg = <0x61320000 0x445>; /* PDC FS3 regs */
+ interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
+ #mbox-cells = <1>;
+ brcm,rx-status-len = <32>;
+ brcm,use-bcm-hdr;
+ };
+
dma0: dma@61360000 {
compatible = "arm,pl330", "arm,primecell";
reg = <0x61360000 0x1000>;
--
2.1.0
[toc] | [prev] | [next] | [standalone]
| From | Rob Rice <rob.rice@broadcom.com> |
|---|---|
| Date | 2016-06-30 22:10 +0200 |
| Subject | [PATCH v2 1/3] dt-bindings: add bindings documentation for PDC driver. |
| Message-ID | <rPQrD-5xU-21@gated-at.bofh.it> |
| In reply to | #1434825 |
From: Rob Rice <rrice@broadcom.com>
Add the device tree binding documentation for the PDC hardware
in Broadcom iProc SoCs.
Signed-off-by: Rob Rice <rob.rice@broadcom.com>
Acked-by: Rob Herring <robh@kernel.org>
Reviewed-by: Ray Jui <ray.jui@broadcom.com>
Reviewed-by: Anup Patel <anup.patel@broadcom.com>
Reviewed-by: Scott Branden <scott.branden@broadcom.com>
---
.../bindings/mailbox/brcm,iproc-pdc-mbox.txt | 23 ++++++++++++++++++++++
1 file changed, 23 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mailbox/brcm,iproc-pdc-mbox.txt
diff --git a/Documentation/devicetree/bindings/mailbox/brcm,iproc-pdc-mbox.txt b/Documentation/devicetree/bindings/mailbox/brcm,iproc-pdc-mbox.txt
new file mode 100644
index 0000000..411ccf4
--- /dev/null
+++ b/Documentation/devicetree/bindings/mailbox/brcm,iproc-pdc-mbox.txt
@@ -0,0 +1,23 @@
+The PDC driver manages data transfer to and from various offload engines
+on some Broadcom SoCs. An SoC may have multiple PDC hardware blocks. There is
+one device tree entry per block.
+
+Required properties:
+- compatible : Should be "brcm,iproc-pdc-mbox".
+- reg: Should contain PDC registers location and length.
+- interrupts: Should contain the IRQ line for the PDC.
+- #mbox-cells: 1
+- brcm,rx-status-len: Length of metadata preceding received frames, in bytes.
+
+Optional properties:
+- brcm,use-bcm-hdr: present if a BCM header precedes each frame.
+
+Example:
+ pdc0: iproc-pdc0@0x612c0000 {
+ compatible = "brcm,iproc-pdc-mbox";
+ reg = <0 0x612c0000 0 0x445>; /* PDC FS0 regs */
+ interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
+ #mbox-cells = <1>; /* one cell per mailbox channel */
+ brcm,rx-status-len = <32>;
+ brcm,use-bcm-hdr;
+ };
--
2.1.0
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web