0240-Add-support-for-the-Digital-Dreamtime-Akkordion-musi.patch 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. From 84e674b139553b74fa118a3e41ba6ca31e2c0750 Mon Sep 17 00:00:00 2001
  2. From: DigitalDreamtime <clive.messer@digitaldreamtime.co.uk>
  3. Date: Thu, 14 Apr 2016 01:00:58 +0100
  4. Subject: [PATCH 240/381] Add support for the Digital Dreamtime Akkordion music
  5. player.
  6. Support the Digital Dreamtime Akkordion using the OEM IQAudIO DAC+ or
  7. DACZero modules. Set ALSA card name, ("Akkordion"), from dt config.
  8. Signed-off-by: DigitalDreamtime <clive.messer@digitaldreamtime.co.uk>
  9. ---
  10. arch/arm/boot/dts/overlays/Makefile | 1 +
  11. arch/arm/boot/dts/overlays/README | 20 ++++++++++
  12. .../dts/overlays/akkordion-iqdacplus-overlay.dts | 46 ++++++++++++++++++++++
  13. 3 files changed, 67 insertions(+)
  14. create mode 100644 arch/arm/boot/dts/overlays/akkordion-iqdacplus-overlay.dts
  15. --- a/arch/arm/boot/dts/overlays/Makefile
  16. +++ b/arch/arm/boot/dts/overlays/Makefile
  17. @@ -13,6 +13,7 @@ ifeq ($(CONFIG_ARCH_BCM2835),y)
  18. endif
  19. dtbo-$(RPI_DT_OVERLAYS) += ads7846.dtbo
  20. +dtbo-$(RPI_DT_OVERLAYS) += akkordion-iqdacplus.dtbo
  21. dtbo-$(RPI_DT_OVERLAYS) += at86rf233.dtbo
  22. dtbo-$(RPI_DT_OVERLAYS) += bmp085_i2c-sensor.dtbo
  23. dtbo-$(RPI_DT_OVERLAYS) += dpi24.dtbo
  24. --- a/arch/arm/boot/dts/overlays/README
  25. +++ b/arch/arm/boot/dts/overlays/README
  26. @@ -186,6 +186,26 @@ Params: cs SPI bus
  27. www.kernel.org/doc/Documentation/devicetree/bindings/input/ads7846.txt
  28. +Name: akkordion-iqdacplus
  29. +Info: Configures the Digital Dreamtime Akkordion Music Player (based on the
  30. + OEM IQAudIO DAC+ or DAC Zero module).
  31. +Load: dtoverlay=akkordion-iqdacplus,<param>=<val>
  32. +Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
  33. + Digital volume control. Enable with
  34. + dtoverlay=akkordion-iqdacplus,24db_digital_gain
  35. + (The default behaviour is that the Digital
  36. + volume control is limited to a maximum of
  37. + 0dB. ie. it can attenuate but not provide
  38. + gain. For most users, this will be desired
  39. + as it will prevent clipping. By appending
  40. + the 24db_digital_gain parameter, the Digital
  41. + volume control will allow up to 24dB of
  42. + gain. If this parameter is enabled, it is the
  43. + responsibility of the user to ensure that
  44. + the Digital volume control is set to a value
  45. + that does not result in clipping/distortion!)
  46. +
  47. +
  48. Name: at86rf233
  49. Info: Configures the Atmel AT86RF233 802.15.4 low-power WPAN transceiver,
  50. connected to spi0.0
  51. --- /dev/null
  52. +++ b/arch/arm/boot/dts/overlays/akkordion-iqdacplus-overlay.dts
  53. @@ -0,0 +1,46 @@
  54. +// Definitions for Digital Dreamtime Akkordion using IQaudIO DAC+ or DACZero
  55. +/dts-v1/;
  56. +/plugin/;
  57. +
  58. +/ {
  59. + compatible = "brcm,bcm2708";
  60. +
  61. + fragment@0 {
  62. + target = <&sound>;
  63. + frag0: __overlay__ {
  64. + compatible = "iqaudio,iqaudio-dac";
  65. + card_name = "Akkordion";
  66. + dai_name = "IQaudIO DAC";
  67. + dai_stream_name = "IQaudIO DAC HiFi";
  68. + i2s-controller = <&i2s>;
  69. + status = "okay";
  70. + };
  71. + };
  72. +
  73. + fragment@1 {
  74. + target = <&i2s>;
  75. + __overlay__ {
  76. + status = "okay";
  77. + };
  78. + };
  79. +
  80. + fragment@2 {
  81. + target = <&i2c1>;
  82. + __overlay__ {
  83. + #address-cells = <1>;
  84. + #size-cells = <0>;
  85. + status = "okay";
  86. +
  87. + pcm5122@4c {
  88. + #sound-dai-cells = <0>;
  89. + compatible = "ti,pcm5122";
  90. + reg = <0x4c>;
  91. + status = "okay";
  92. + };
  93. + };
  94. + };
  95. +
  96. + __overrides__ {
  97. + 24db_digital_gain = <&frag0>,"iqaudio,24db_digital_gain?";
  98. + };
  99. +};