[RFC 0/3] SoCFPGA: Add HPS bridges
atull
atull at opensource.altera.com
Thu Dec 11 15:35:40 PST 2014
On Thu, 11 Dec 2014, Steffen Trumtrar wrote:
CC Matthew Gerlach
> Hi!
>
> This series adds support for the SoCFPGA bridges.
>
> From the datasheet:
>
> The HPS-FPGA bridges allow masters in the FPGA fabric to
> communicate with slaves in the HPS logic and vice versa.
> For example, you can instantiate additional memories or
> peripherals in the FPGA fabric, and master interfaces
> belonging to components in the HPS logic can access them.
> You can also instantiate components such as a NiosII
> processor in the FPGA fabric and their master interfaces
> can access memories or peripherals in the HPS logic
>
> This does only work with the driver from my other series
>
> SoCFPGA: L3 NIC driver
>
> As the binding, although simple, is still in debate and the
> outcome may have impact on this series, this is a just an RFC
> for now.
>
> Also, the drivers beg for the DT overlay series which is floating
> around, but this shouldn't have any effect on the current binding.
> The driver part can be changed later.
>
> Lastly, the bridges have an optional dependency on the fpgamgr
> series from Alan Tull. I have added this to the binding, the drivers
> don't do anything with this yet.
> My idea here would be:
> 1. probe bridge
> 2. check if fpgamgr phandle is given
> 2a. if yes: defer till fpgamgr is done
> 2b. if no: continue
> 3. probe subnodes with the help of DT overlays
>
> I have only tested the HPS and LWHPS drivers, as I don't have any
> bitstreams that use the FPGA2HPS bridge; here be dragons.
>
> Regards,
> Steffen
>
> Steffen Trumtrar (3):
> devicetree: bindings: Add SoCFpga HPS bridges
> ARM: socfpga: Add drivers for the SoC-to-FPGA bridges
> ARM: dts: socfpga: Add AXI bridges
>
> .../soc/socfpga/altr,fpga2hps-axi-bridge.txt | 32 +++
> .../soc/socfpga/altr,hps2fpga-axi-bridge.txt | 54 +++++
> .../soc/socfpga/altr,lwhps2fpga-axi-bridge.txt | 31 +++
> arch/arm/boot/dts/socfpga.dtsi | 48 ++++
> drivers/soc/socfpga/Kconfig | 43 ++++
> drivers/soc/socfpga/Makefile | 4 +
> drivers/soc/socfpga/bridges-common.c | 84 +++++++
> drivers/soc/socfpga/bridges-common.h | 28 +++
> drivers/soc/socfpga/fpga2hps-bridge.c | 97 ++++++++
> drivers/soc/socfpga/hps2fpga-bridge.c | 258 +++++++++++++++++++++
> drivers/soc/socfpga/lwhps2fpga-bridge.c | 141 +++++++++++
> drivers/soc/socfpga/lwhps2fpga.h | 31 +++
> include/soc/socfpga/bridge.h | 65 ++++++
> 13 files changed, 916 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/soc/socfpga/altr,fpga2hps-axi-bridge.txt
> create mode 100644 Documentation/devicetree/bindings/soc/socfpga/altr,hps2fpga-axi-bridge.txt
> create mode 100644 Documentation/devicetree/bindings/soc/socfpga/altr,lwhps2fpga-axi-bridge.txt
> create mode 100644 drivers/soc/socfpga/Kconfig
> create mode 100644 drivers/soc/socfpga/Makefile
> create mode 100644 drivers/soc/socfpga/bridges-common.c
> create mode 100644 drivers/soc/socfpga/bridges-common.h
> create mode 100644 drivers/soc/socfpga/fpga2hps-bridge.c
> create mode 100644 drivers/soc/socfpga/hps2fpga-bridge.c
> create mode 100644 drivers/soc/socfpga/lwhps2fpga-bridge.c
> create mode 100644 drivers/soc/socfpga/lwhps2fpga.h
> create mode 100644 include/soc/socfpga/bridge.h
>
> --
> 2.1.3
>
>
More information about the linux-arm-kernel
mailing list