This patch series adds AXD Alsa Compress Offload SoC driver. AXD is an audio hardware based on MIPS architecture that supports decoding, encoding, GEQ, resampling, mixing and synchronisation. At the moment only decoding support is added in hope to add the rest of the functionality on top of that once this is accepted. I divided the files into separate patches by functionality in hope it'll make the reviewing process easier. Worth noting that a lot of the cmd interface helper funtions in patch 7 are not used yet but will be as support for more functionality is added later. At the moment this code has been tested on Pistachio SoC using gstreamer patched with the code in this link https://bugzilla.gnome.org/show_bug.cgi?id=743192 Qais Yousef (10): irqchip: irq-mips-gic: export gic_send_ipi dt: add img,axd.txt device tree binding document ALSA: add AXD Audio Processing IP alsa driver ALSA: axd: add fw binary header manipulation files ALSA: axd: add buffers manipulation files ALSA: axd: add basic files for sending/receiving axd cmds ALSA: axd: add cmd interface helper functions ALSA: axd: add low level AXD platform setup files ALSA: axd: add alsa compress offload operations ALSA: axd: add Makefile .../devicetree/bindings/sound/img,axd.txt | 34 + drivers/irqchip/irq-mips-gic.c | 1 + sound/soc/Kconfig | 1 + sound/soc/Makefile | 1 + sound/soc/img/Kconfig | 11 + sound/soc/img/Makefile | 1 + sound/soc/img/axd/Makefile | 13 + sound/soc/img/axd/axd_alsa_ops.c | 211 ++ sound/soc/img/axd/axd_api.h | 649 ++++ sound/soc/img/axd/axd_buffers.c | 243 ++ sound/soc/img/axd/axd_buffers.h | 74 + sound/soc/img/axd/axd_cmds.c | 102 + sound/soc/img/axd/axd_cmds.h | 532 ++++ sound/soc/img/axd/axd_cmds_config.c | 1235 ++++++++ sound/soc/img/axd/axd_cmds_decoder_config.c | 422 +++ sound/soc/img/axd/axd_cmds_info.c | 1249 ++++++++ sound/soc/img/axd/axd_cmds_internal.c | 3264 ++++++++++++++++++++ sound/soc/img/axd/axd_cmds_internal.h | 317 ++ sound/soc/img/axd/axd_cmds_pipes.c | 1387 +++++++++ sound/soc/img/axd/axd_hdr.c | 64 + sound/soc/img/axd/axd_hdr.h | 24 + sound/soc/img/axd/axd_module.c | 742 +++++ sound/soc/img/axd/axd_module.h | 83 + sound/soc/img/axd/axd_platform.h | 35 + sound/soc/img/axd/axd_platform_mips.c | 416 +++ 25 files changed, 11111 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/img,axd.txt create mode 100644 sound/soc/img/Kconfig create mode 100644 sound/soc/img/Makefile create mode 100644 sound/soc/img/axd/Makefile create mode 100644 sound/soc/img/axd/axd_alsa_ops.c create mode 100644 sound/soc/img/axd/axd_api.h create mode 100644 sound/soc/img/axd/axd_buffers.c create mode 100644 sound/soc/img/axd/axd_buffers.h create mode 100644 sound/soc/img/axd/axd_cmds.c create mode 100644 sound/soc/img/axd/axd_cmds.h create mode 100644 sound/soc/img/axd/axd_cmds_config.c create mode 100644 sound/soc/img/axd/axd_cmds_decoder_config.c create mode 100644 sound/soc/img/axd/axd_cmds_info.c create mode 100644 sound/soc/img/axd/axd_cmds_internal.c create mode 100644 sound/soc/img/axd/axd_cmds_internal.h create mode 100644 sound/soc/img/axd/axd_cmds_pipes.c create mode 100644 sound/soc/img/axd/axd_hdr.c create mode 100644 sound/soc/img/axd/axd_hdr.h create mode 100644 sound/soc/img/axd/axd_module.c create mode 100644 sound/soc/img/axd/axd_module.h create mode 100644 sound/soc/img/axd/axd_platform.h create mode 100644 sound/soc/img/axd/axd_platform_mips.c Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Cc: Jason Cooper <jason@xxxxxxxxxxxxxx> Cc: Marc Zyngier <marc.zyngier@xxxxxxx> Cc: linux-kernel@xxxxxxxxxxxxxxx Cc: linux-mips@xxxxxxxxxxxxxx Cc: Rob Herring <robh+dt@xxxxxxxxxx> Cc: Pawel Moll <pawel.moll@xxxxxxx> Cc: Mark Rutland <mark.rutland@xxxxxxx> Cc: Ian Campbell <ijc+devicetree@xxxxxxxxxxxxxx> Cc: Kumar Gala <galak@xxxxxxxxxxxxxx> Cc: devicetree@xxxxxxxxxxxxxxx Cc: Liam Girdwood <lgirdwood@xxxxxxxxx> Cc: Mark Brown <broonie@xxxxxxxxxx> Cc: Jaroslav Kysela <perex@xxxxxxxx> Cc: Takashi Iwai <tiwai@xxxxxxxx> -- 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html