aboutsummaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2018-12-10 10:37:34 -0700
committerSimon Glass <sjg@chromium.org>2018-12-13 16:32:49 -0700
commite96fa6c91177d0aa81119d1d24cc0aa2dd663581 (patch)
tree333d54a1f9349c5e238f836675d49dbe5b59bc4b /arch
parentce6d99a056ebc9ad329521ca3660f6cb298a7666 (diff)
downloadu-boot-e96fa6c91177d0aa81119d1d24cc0aa2dd663581.zip
u-boot-e96fa6c91177d0aa81119d1d24cc0aa2dd663581.tar.gz
u-boot-e96fa6c91177d0aa81119d1d24cc0aa2dd663581.tar.bz2
dm: sound: Create a uclass for i2s
The i2s bus is commonly used with audio codecs. It provides a way to stream digital data sychronously in both directions. U-Boot only supports audio output, so this uclass is very simple, with a single tx_data() method. Add a uclass and a test for i2s. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/sandbox/dts/test.dts7
-rw-r--r--arch/sandbox/include/asm/test.h10
2 files changed, 16 insertions, 1 deletions
diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts
index 9ced5be..5c2910c 100644
--- a/arch/sandbox/dts/test.dts
+++ b/arch/sandbox/dts/test.dts
@@ -47,7 +47,7 @@
#sound-dai-cells = <1>;
};
- cros_ec: cros-ec {
+ cros_ec: cros-ec {
reg = <0 0>;
compatible = "google,cros-ec-sandbox";
@@ -378,6 +378,11 @@
u-boot,dm-pre-reloc;
};
+ i2s: i2s {
+ compatible = "sandbox,i2s";
+ #sound-dai-cells = <1>;
+ };
+
misc-test {
compatible = "sandbox,misc_sandbox";
};
diff --git a/arch/sandbox/include/asm/test.h b/arch/sandbox/include/asm/test.h
index f70e0d8..71bd50b 100644
--- a/arch/sandbox/include/asm/test.h
+++ b/arch/sandbox/include/asm/test.h
@@ -131,4 +131,14 @@ void sandbox_get_codec_params(struct udevice *dev, int *interfacep, int *ratep,
int *mclk_freqp, int *bits_per_samplep,
uint *channelsp);
+/**
+ * sandbox_get_i2s_sum() - Read back the sum of the audio data so far
+ *
+ * This data is provided to the sandbox driver by the I2S tx_data() method.
+ *
+ * @dev: Device to check
+ * @return sum of audio data
+ */
+int sandbox_get_i2s_sum(struct udevice *dev);
+
#endif