summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/rt5677-spi.h
diff options
context:
space:
mode:
authorBen Zhang <benzh@chromium.org>2015-08-22 06:17:00 +0200
committerMark Brown <broonie@kernel.org>2015-08-25 18:34:30 +0200
commit7d4d443eb4386d6dbd420fa96303dd8fbc1eefc8 (patch)
tree9eb7d85d1dea45e38e3b4f0a5382ea49fce5003a /sound/soc/codecs/rt5677-spi.h
parentASoC: rt5677: Return error if devm_gpiod_get_optional return ERR_PTR (diff)
downloadlinux-7d4d443eb4386d6dbd420fa96303dd8fbc1eefc8.tar.xz
linux-7d4d443eb4386d6dbd420fa96303dd8fbc1eefc8.zip
ASoC: rt5677: Allow arbitrary block read/write via SPI
Added rt5677_spi_read() and refactored rt5677_spi_write() so that an arbitrary block in the DSP address space can be read/written via SPI. For example, this allows us to load an ELF DSP firmware with sparse sections, and stream audio samples from DSP ring buffer. Signed-off-by: Ben Zhang <benzh@chromium.org> Acked-by: Oder Chiou <oder_chiou@realtek.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/codecs/rt5677-spi.h')
-rw-r--r--sound/soc/codecs/rt5677-spi.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/sound/soc/codecs/rt5677-spi.h b/sound/soc/codecs/rt5677-spi.h
index ec41b2b3b2ca..662db16cfb6a 100644
--- a/sound/soc/codecs/rt5677-spi.h
+++ b/sound/soc/codecs/rt5677-spi.h
@@ -12,10 +12,8 @@
#ifndef __RT5677_SPI_H__
#define __RT5677_SPI_H__
-#define RT5677_SPI_BUF_LEN 240
-#define RT5677_SPI_CMD_BURST_WRITE 0x05
-
-int rt5677_spi_write(u8 *txbuf, size_t len);
-int rt5677_spi_burst_write(u32 addr, const struct firmware *fw);
+int rt5677_spi_read(u32 addr, void *rxbuf, size_t len);
+int rt5677_spi_write(u32 addr, const void *txbuf, size_t len);
+int rt5677_spi_write_firmware(u32 addr, const struct firmware *fw);
#endif /* __RT5677_SPI_H__ */