Skip to content

Commit

Permalink
remoteproc: Add AVM WASP driver
Browse files Browse the repository at this point in the history
Some AVM Fritzbox router boards (3390, 3490, 5490, 5491, 7490),
that are Lantiq XRX200 based, have a memory only ATH79 based
WASP (Wireless Assistant Support Processor) SoC that has wifi
cards connected to it. It does not share anything with the
Lantiq host and has no persistent storage. It has an mdio based
connection for bringing up a small network boot firmware and is
connected to the Lantiq GSWIP switch via gigabit ethernet. This
is used to load an initramfs linux image to it, after the
network boot firmware was started.

In order to initialize this remote processor we need to:
- power on the SoC using startup gpio
- reset the SoC using the reset gpio
- send the network boot firmware using mdio
- send the linux image using raw ethernet frames

This driver allows to start and stop the WASP SoC.

Signed-off-by: Daniel Kestrel <kestrelseventyfour@gmail.com>
  • Loading branch information
Daniel Kestrel authored and intel-lab-lkp committed Feb 21, 2022
1 parent 60bc127 commit 76e19a3
Show file tree
Hide file tree
Showing 4 changed files with 1,357 additions and 0 deletions.
10 changes: 10 additions & 0 deletions drivers/remoteproc/Kconfig
Expand Up @@ -23,6 +23,16 @@ config REMOTEPROC_CDEV

It's safe to say N if you don't want to use this interface.

config AVM_WASP_REMOTEPROC
tristate "AVM WASP remoteproc support"
depends on NET_DSA_LANTIQ_GSWIP
help
Say y here to support booting the secondary SoC ATH79 target
called Wireless Assistant Support Processor (WASP) that some
AVM Fritzbox devices (3390, 3490, 5490, 5491, 7490) have built in.

It's safe to say N here.

config IMX_REMOTEPROC
tristate "i.MX remoteproc support"
depends on ARCH_MXC
Expand Down
1 change: 1 addition & 0 deletions drivers/remoteproc/Makefile
Expand Up @@ -11,6 +11,7 @@ remoteproc-y += remoteproc_sysfs.o
remoteproc-y += remoteproc_virtio.o
remoteproc-y += remoteproc_elf_loader.o
obj-$(CONFIG_REMOTEPROC_CDEV) += remoteproc_cdev.o
obj-$(CONFIG_AVM_WASP_REMOTEPROC) += avm_wasp.o
obj-$(CONFIG_IMX_REMOTEPROC) += imx_rproc.o
obj-$(CONFIG_IMX_DSP_REMOTEPROC) += imx_dsp_rproc.o
obj-$(CONFIG_INGENIC_VPU_RPROC) += ingenic_rproc.o
Expand Down

0 comments on commit 76e19a3

Please sign in to comment.