Commit 50de417b authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge tag 'asoc-v5.14' of...

Merge tag 'asoc-v5.14' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Updates for v5.14

This release sees a nice new feature in the core from Morimoto-san,
support for automatic negotiation of DAI formats between the components
on the link.  Otherwise the big highlight was the merging of the Tegra
machine drivers into a single driver avoiding a bunch of duplication.

 - Support for automatic negotiation of DAI formats.
 - Accessory detection support for several Qualcomm parts.
 - Support for IEC958 control with hdmi-codec.
 - Merging of Tegra machine drivers into a single driver.
 - Support for AmLogic SM1 TOACODEC, Intel AlderLake-M, several NXP
   i.MX8 variants, NXP TFA1 and TDF9897, Rockchip RK817, Qualcomm
   Quinary MI2S, Texas Instruments TAS2505
parents 459d2320 19266452
Loading
Loading
Loading
Loading
+188 −0
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ Optional properties:
  default output clock name
- rockchip,system-power-controller: Telling whether or not this pmic is controlling
  the system power.
- wakeup-source: Device can be used as a wakeup source.

Optional RK805 properties:
- vcc1-supply:  The input supply for DCDC_REG1
@@ -63,8 +64,18 @@ Optional RK809 properties:
- vcc9-supply:  The input supply for DCDC_REG5, SWITCH_REG2

Optional RK817 properties:
- clocks:	The input clock for the audio codec
- clock-names:	The clock name for the codec clock. Should be "mclk".
- #sound-dai-cells: Needed for the interpretation of sound dais. Should be 0.

- vcc8-supply:  The input supply for BOOST
- vcc9-supply:  The input supply for OTG_SWITCH
- codec:	The child node for the codec to hold additional properties.
		If no additional properties are required for the codec, this
		node can be omitted.

- rockchip,mic-in-differential: Telling if the microphone uses differential
				mode. Should be under the codec child node.

Optional RK818 properties:
- vcc1-supply:  The input supply for DCDC_REG1
@@ -275,3 +286,180 @@ Example:
			};
		};
	};

	rk817: pmic@20 {
		compatible = "rockchip,rk817";
		reg = <0x20>;
		interrupt-parent = <&gpio0>;
		interrupts = <RK_PB2 IRQ_TYPE_LEVEL_LOW>;
		clock-output-names = "rk808-clkout1", "xin32k";
		clock-names = "mclk";
		clocks = <&cru SCLK_I2S1_OUT>;
		pinctrl-names = "default";
		pinctrl-0 = <&pmic_int>, <&i2s1_2ch_mclk>;
		wakeup-source;
		#clock-cells = <1>;
		#sound-dai-cells = <0>;

		vcc1-supply = <&vccsys>;
		vcc2-supply = <&vccsys>;
		vcc3-supply = <&vccsys>;
		vcc4-supply = <&vccsys>;
		vcc5-supply = <&vccsys>;
		vcc6-supply = <&vccsys>;
		vcc7-supply = <&vccsys>;

		regulators {
			vdd_logic: DCDC_REG1 {
				regulator-name = "vdd_logic";
				regulator-min-microvolt = <950000>;
				regulator-max-microvolt = <1150000>;
				regulator-ramp-delay = <6001>;
				regulator-always-on;
				regulator-boot-on;

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <950000>;
				};
			};

			vdd_arm: DCDC_REG2 {
				regulator-name = "vdd_arm";
				regulator-min-microvolt = <950000>;
				regulator-max-microvolt = <1350000>;
				regulator-ramp-delay = <6001>;
				regulator-always-on;
				regulator-boot-on;

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <950000>;
				};
			};

			vcc_ddr: DCDC_REG3 {
				regulator-name = "vcc_ddr";
				regulator-always-on;
				regulator-boot-on;

				regulator-state-mem {
					regulator-on-in-suspend;
				};
			};

			vcc_3v3: DCDC_REG4 {
				regulator-name = "vcc_3v3";
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
				regulator-boot-on;

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <3300000>;
				};
			};

			vcc_1v8: LDO_REG2 {
				regulator-name = "vcc_1v8";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <1800000>;
				regulator-always-on;
				regulator-boot-on;

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <1800000>;
				};
			};

			vdd_1v0: LDO_REG3 {
				regulator-name = "vdd_1v0";
				regulator-min-microvolt = <1000000>;
				regulator-max-microvolt = <1000000>;
				regulator-always-on;
				regulator-boot-on;

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <1000000>;
				};
			};

			vcc3v3_pmu: LDO_REG4 {
				regulator-name = "vcc3v3_pmu";
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
				regulator-boot-on;

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <3300000>;
				};
			};

			vccio_sd: LDO_REG5 {
				regulator-name = "vccio_sd";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
				regulator-boot-on;

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <3300000>;
				};
			};

			vcc_sd: LDO_REG6 {
				regulator-name = "vcc_sd";
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;
				regulator-boot-on;

				regulator-state-mem {
					regulator-on-in-suspend;
					regulator-suspend-microvolt = <3300000>;
				};
			};

			vcc_bl: LDO_REG7 {
				regulator-name = "vcc_bl";
				regulator-min-microvolt = <3300000>;
				regulator-max-microvolt = <3300000>;

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <3300000>;
				};
			};

			vcc_lcd: LDO_REG8 {
				regulator-name = "vcc_lcd";
				regulator-min-microvolt = <2800000>;
				regulator-max-microvolt = <2800000>;

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <2800000>;
				};
			};

			vcc_cam: LDO_REG9 {
				regulator-name = "vcc_cam";
				regulator-min-microvolt = <3000000>;
				regulator-max-microvolt = <3000000>;

				regulator-state-mem {
					regulator-off-in-suspend;
					regulator-suspend-microvolt = <3000000>;
				};
			};
		};

		rk817_codec: codec {
			rockchip,mic-in-differential;
		};
	};
+6 −2
Original line number Diff line number Diff line
@@ -12,7 +12,11 @@ maintainers:

properties:
  "#sound-dai-cells":
    const: 0
    minimum: 0
    maximum: 1
    description:
      A value of 0 is deprecated. When used, it only allows access to
      the ADC/DAC and AIF1 (the CPU DAI), not the other two AIFs/DAIs.

  compatible:
    oneOf:
@@ -50,7 +54,7 @@ additionalProperties: false
examples:
  - |
    audio-codec@1c22e00 {
      #sound-dai-cells = <0>;
      #sound-dai-cells = <1>;
      compatible = "allwinner,sun8i-a33-codec";
      reg = <0x01c22e00 0x400>;
      interrupts = <0 29 4>;
+7 −0
Original line number Diff line number Diff line
@@ -81,6 +81,13 @@ Optional properties:
  < x1 x2 x3 x4 >
  Default = < 15 8 4 1>

  - cirrus,hs-bias-sense-disable: This is boolean property. If present the
  HSBIAS sense is disabled. Configures HSBIAS output current sense through
  the external 2.21-k resistor. HSBIAS_SENSE is hardware feature to reduce
  the potential pop noise during the headset plug out slowly. But on some
  platforms ESD voltage will affect it causing test to fail, especially
  with CTIA headset type. For different hardware setups, a designer might
  want to tweak default behavior.

Example:

+1 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ properties:
      - fsl,imx8mq-spdif
      - fsl,imx8mm-spdif
      - fsl,imx8mn-spdif
      - fsl,imx8ulp-spdif

  reg:
    maxItems: 1
+4 −2
Original line number Diff line number Diff line
@@ -9,8 +9,10 @@ Required properties:

  - compatible		: Compatible list, contains "fsl,vf610-sai",
			  "fsl,imx6sx-sai", "fsl,imx6ul-sai",
			  "fsl,imx7ulp-sai", "fsl,imx8mq-sai" or
			  "fsl,imx8qm-sai".
			  "fsl,imx7ulp-sai", "fsl,imx8mq-sai",
			  "fsl,imx8qm-sai", "fsl,imx8mm-sai",
			  "fsl,imx8mn-sai", "fsl,imx8mp-sai", or
			  "fsl,imx8ulp-sai".

  - reg			: Offset and length of the register set for the device.

Loading