Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 77d9ada2 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull mailbox updates from Jussi Brar:
 "Broadcom:
   - New PDC controller driver and bindings

  Misc:
   - PL320 - Convert from 'raw' IO to 'relaxed' version
   - Test - fix dangling pointer"

* 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration:
  mailbox: Fix format and type mismatches in Broadcom PDC driver
  mailbox: Add Broadcom PDC mailbox driver
  dt-bindings: add bindings documentation for PDC driver.
  mailbox: pl320: remove __raw IO
  mailbox: mailbox-test: set tdev->signal to NULL after freeing
parents 07f00f06 a68b2166
Loading
Loading
Loading
Loading
+23 −0
Original line number Diff line number Diff line
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;
	};
+9 −0
Original line number Diff line number Diff line
@@ -123,4 +123,13 @@ config XGENE_SLIMPRO_MBOX
	  It is used to send short messages between ARM64-bit cores and
	  the SLIMpro Management Engine, primarily for PM. Say Y here if you
	  want to use the APM X-Gene SLIMpro IPCM support.

config BCM_PDC_MBOX
	tristate "Broadcom PDC Mailbox"
	depends on ARM64 || COMPILE_TEST
	default ARCH_BCM_IPROC
	help
	  Mailbox implementation for the Broadcom PDC ring manager,
	  which provides access to various offload engines on Broadcom
	  SoCs. Say Y here if you want to use the Broadcom PDC.
endif
+2 −0
Original line number Diff line number Diff line
@@ -25,3 +25,5 @@ obj-$(CONFIG_TI_MESSAGE_MANAGER) += ti-msgmgr.o
obj-$(CONFIG_XGENE_SLIMPRO_MBOX) += mailbox-xgene-slimpro.o

obj-$(CONFIG_HI6220_MBOX)	+= hi6220-mailbox.o

obj-$(CONFIG_BCM_PDC_MBOX)	+= bcm-pdc-mailbox.o
+1531 −0

File added.

Preview size limit exceeded, changes collapsed.

+1 −0
Original line number Diff line number Diff line
@@ -133,6 +133,7 @@ static ssize_t mbox_test_message_write(struct file *filp,
out:
	kfree(tdev->signal);
	kfree(tdev->message);
	tdev->signal = NULL;

	return ret < 0 ? ret : count;
}
Loading