Sylwester Nawrocki | 92c9f05 | 2017-04-21 19:19:49 +0200 | [diff] [blame] | 1 | Samsung Exynos Odroid XU3/XU4 audio complex with MAX98090 codec |
| 2 | |
| 3 | Required properties: |
| 4 | |
| 5 | - compatible - "samsung,odroidxu3-audio" - for Odroid XU3 board, |
| 6 | "samsung,odroidxu4-audio" - for Odroid XU4 board |
| 7 | - model - the user-visible name of this sound complex |
| 8 | - 'cpu' subnode with a 'sound-dai' property containing the phandle of the I2S |
| 9 | controller |
| 10 | - 'codec' subnode with a 'sound-dai' property containing list of phandles |
| 11 | to the CODEC nodes, first entry must be corresponding to the MAX98090 |
| 12 | CODEC and the second entry must be the phandle of the HDMI IP block node |
| 13 | - clocks - should contain entries matching clock names in the clock-names |
| 14 | property |
| 15 | - clock-names - should contain following entries: |
| 16 | - "epll" - indicating the EPLL output clock |
| 17 | - "i2s_rclk" - indicating the RCLK (root) clock of the I2S0 controller |
| 18 | - samsung,audio-widgets - this property specifies off-codec audio elements |
| 19 | like headphones or speakers, for details see widgets.txt |
| 20 | - samsung,audio-routing - a list of the connections between audio |
| 21 | components; each entry is a pair of strings, the first being the |
| 22 | connection's sink, the second being the connection's source; |
| 23 | valid names for sources and sinks are the MAX98090's pins (as |
| 24 | documented in its binding), and the jacks on the board |
| 25 | |
| 26 | For Odroid X2: |
| 27 | "Headphone Jack", "Mic Jack", "DMIC" |
| 28 | |
| 29 | For Odroid U3, XU3: |
| 30 | "Headphone Jack", "Speakers" |
| 31 | |
| 32 | For Odroid XU4: |
| 33 | no entries |
| 34 | |
| 35 | Example: |
| 36 | |
| 37 | sound { |
| 38 | compatible = "samsung,odroidxu3-audio"; |
| 39 | samsung,cpu-dai = <&i2s0>; |
| 40 | samsung,codec-dai = <&max98090>; |
| 41 | model = "Odroid-XU3"; |
| 42 | samsung,audio-routing = |
| 43 | "Headphone Jack", "HPL", |
| 44 | "Headphone Jack", "HPR", |
| 45 | "IN1", "Mic Jack", |
| 46 | "Mic Jack", "MICBIAS"; |
| 47 | |
| 48 | clocks = <&clock CLK_FOUT_EPLL>, <&i2s0 CLK_I2S_RCLK_SRC>; |
| 49 | clock-names = "epll", "sclk_i2s"; |
| 50 | |
| 51 | cpu { |
| 52 | sound-dai = <&i2s0 0>; |
| 53 | }; |
| 54 | codec { |
| 55 | sound-dai = <&hdmi>, <&max98090>; |
| 56 | }; |
| 57 | }; |