^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) CS35L32 audio CODEC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) - compatible : "cirrus,cs35l32"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) - reg : the I2C address of the device for I2C. Address is determined by the level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) of the AD0 pin. Level 0 is 0x40 while Level 1 is 0x41.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - VA-supply, VP-supply : power supplies for the device,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) as covered in Documentation/devicetree/bindings/regulator/regulator.txt.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) Optional properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) - reset-gpios : a GPIO spec for the reset pin. If specified, it will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) deasserted before communication to the codec starts.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - cirrus,boost-manager : Boost voltage control.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 0 = Automatically managed. Boost-converter output voltage is the higher
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) of the two: Class G or adaptive LED voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 1 = Automatically managed irrespective of audio, adapting for low-power
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) dissipation when LEDs are ON, and operating in Fixed-Boost Bypass Mode
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) if LEDs are OFF (VBST = VP).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 2 = (Default) Boost voltage fixed in Bypass Mode (VBST = VP).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 3 = Boost voltage fixed at 5 V.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) - cirrus,sdout-datacfg : Data configuration for dual CS35L32 applications only.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) Determines the data packed in a two-CS35L32 configuration.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 0 = Left/right channels VMON[11:0], IMON[11:0], VPMON[7:0].
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 1 = Left/right channels VMON[11:0], IMON[11:0], STATUS.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 2 = (Default) left/right channels VMON[15:0], IMON [15:0].
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 3 = Left/right channels VPMON[7:0], STATUS.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) - cirrus,sdout-share : SDOUT sharing. Determines whether one or two CS35L32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) devices are on board sharing SDOUT.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 0 = (Default) One IC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 1 = Two IC's.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) - cirrus,battery-recovery : Low battery nominal recovery threshold, rising VP.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 0 = 3.1V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 1 = 3.2V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 2 = 3.3V (Default)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 3 = 3.4V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) - cirrus,battery-threshold : Low battery nominal threshold, falling VP.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 0 = 3.1V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 1 = 3.2V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 2 = 3.3V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 3 = 3.4V (Default)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 4 = 3.5V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 5 = 3.6V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) codec: codec@40 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) compatible = "cirrus,cs35l32";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) reg = <0x40>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) reset-gpios = <&gpio 10 0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) cirrus,boost-manager = <0x03>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) cirrus,sdout-datacfg = <0x02>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) VA-supply = <®_audio>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) };