18c2ecf20Sopenharmony_ciBROADCOM Cygnus Audio I2S/TDM/SPDIF controller 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciRequired properties: 48c2ecf20Sopenharmony_ci - compatible : "brcm,cygnus-audio" 58c2ecf20Sopenharmony_ci - #address-cells: 32bit valued, 1 cell. 68c2ecf20Sopenharmony_ci - #size-cells: 32bit valued, 0 cell. 78c2ecf20Sopenharmony_ci - reg : Should contain audio registers location and length 88c2ecf20Sopenharmony_ci - reg-names: names of the registers listed in "reg" property 98c2ecf20Sopenharmony_ci Valid names are "aud" and "i2s_in". "aud" contains a 108c2ecf20Sopenharmony_ci set of DMA, I2S_OUT and SPDIF registers. "i2s_in" contains 118c2ecf20Sopenharmony_ci a set of I2S_IN registers. 128c2ecf20Sopenharmony_ci - clocks: PLL and leaf clocks used by audio ports 138c2ecf20Sopenharmony_ci - assigned-clocks: PLL and leaf clocks 148c2ecf20Sopenharmony_ci - assigned-clock-parents: parent clocks of the assigned clocks 158c2ecf20Sopenharmony_ci (usually the PLL) 168c2ecf20Sopenharmony_ci - assigned-clock-rates: List of clock frequencies of the 178c2ecf20Sopenharmony_ci assigned clocks 188c2ecf20Sopenharmony_ci - clock-names: names of 3 leaf clocks used by audio ports 198c2ecf20Sopenharmony_ci Valid names are "ch0_audio", "ch1_audio", "ch2_audio" 208c2ecf20Sopenharmony_ci - interrupts: audio DMA interrupt number 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciSSP Subnode properties: 238c2ecf20Sopenharmony_ci- reg: The index of ssp port interface to use 248c2ecf20Sopenharmony_ci Valid value are 0, 1, 2, or 3 (for spdif) 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ciExample: 278c2ecf20Sopenharmony_ci cygnus_audio: audio@180ae000 { 288c2ecf20Sopenharmony_ci compatible = "brcm,cygnus-audio"; 298c2ecf20Sopenharmony_ci #address-cells = <1>; 308c2ecf20Sopenharmony_ci #size-cells = <0>; 318c2ecf20Sopenharmony_ci reg = <0x180ae000 0xafd>, <0x180aec00 0x1f8>; 328c2ecf20Sopenharmony_ci reg-names = "aud", "i2s_in"; 338c2ecf20Sopenharmony_ci clocks = <&audiopll BCM_CYGNUS_AUDIOPLL_CH0>, 348c2ecf20Sopenharmony_ci <&audiopll BCM_CYGNUS_AUDIOPLL_CH1>, 358c2ecf20Sopenharmony_ci <&audiopll BCM_CYGNUS_AUDIOPLL_CH2>; 368c2ecf20Sopenharmony_ci assigned-clocks = <&audiopll BCM_CYGNUS_AUDIOPLL>, 378c2ecf20Sopenharmony_ci <&audiopll BCM_CYGNUS_AUDIOPLL_CH0>, 388c2ecf20Sopenharmony_ci <&audiopll BCM_CYGNUS_AUDIOPLL_CH1>, 398c2ecf20Sopenharmony_ci <&audiopll BCM_CYGNUS_AUDIOPLL_CH2>; 408c2ecf20Sopenharmony_ci assigned-clock-parents = <&audiopll BCM_CYGNUS_AUDIOPLL>; 418c2ecf20Sopenharmony_ci assigned-clock-rates = <1769470191>, 428c2ecf20Sopenharmony_ci <0>, 438c2ecf20Sopenharmony_ci <0>, 448c2ecf20Sopenharmony_ci <0>; 458c2ecf20Sopenharmony_ci clock-names = "ch0_audio", "ch1_audio", "ch2_audio"; 468c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ci ssp0: ssp_port@0 { 498c2ecf20Sopenharmony_ci reg = <0>; 508c2ecf20Sopenharmony_ci }; 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci ssp1: ssp_port@1 { 538c2ecf20Sopenharmony_ci reg = <1>; 548c2ecf20Sopenharmony_ci }; 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ci ssp2: ssp_port@2 { 578c2ecf20Sopenharmony_ci reg = <2>; 588c2ecf20Sopenharmony_ci }; 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci spdif: spdif_port@3 { 618c2ecf20Sopenharmony_ci reg = <3>; 628c2ecf20Sopenharmony_ci }; 638c2ecf20Sopenharmony_ci }; 64