CS35L41 Speaker Amplifier Required properties: - compatible : "cirrus,cs35l41" - reg : the SPI chip select line for the device - VA-supply, VP-supply : power supplies for the device, as covered in Documentation/devicetree/bindings/regulator/regulator.txt. Optional properties: - cirrus,sclk-force-output : Audio serial port SCLK force output control. Forces the SCLK to continue to drive even if no ASP_TXn channels are enabled. - cirrus,lrclk-force-output : Audio serial port LRCLK force output control. Forces the LRCLK to continue to drive even if no ASP_TXn channels are enabled. - cirrus,right-channel-amp : Boolean to determine which channel the amplifier is to receive the audio data on. If present the amplifier receives data on the right channel of I2S data. If not present the amplifier receives data on the left channel of I2S data - cirrus,boost-ctl-millivolt : Boost Voltage Value. Configures the boost converter's output voltage in mV. The range is from 2550 mV to 11000 mV with increments of 50 mV. (Default) VP - cirrus,boost-peak-milliamp : Boost-converter peak current limit in mA. Configures the peak current by monitoring the current through the boost FET. Range starts at 1600 mA and goes to a maximum of 4500 mA with increments of 50 mA. (Default) 4.50 Amps - cirrus,amp-gain-zc : Boolean to determine whether to use the amplifier gain-change zero-crossing feature. If the feature is enabled, any user-controlled amplifier gain change will occur on a zero-crossing point. (Default) Disabled - cirrus,asp-sdout-hiz : Audio serial port SDOUT Hi-Z control. Sets the Hi-Z configuration for SDOUT pin of amplifier. 0 = Logic 0 during unused slots, and while all transmit channels disabled 1 = Hi-Z during unused slots but logic 0 while all transmit channels disabled 2 = (Default) Logic 0 during unused slots, but Hi-Z while all transmit channels disabled 3 = Hi-Z during unused slots and while all transmit channels disabled - cirrus,temp-warn-threshold : Amplifier overtemperature warning threshold. Configures the threshold at which the overtemperature warning condition occurs. When the threshold is met, the ovetemperature warning attenuation is applied and the TEMP_WARN_EINT interrupt status bit is set. If TEMP_WARN_MASK = 0, INTb is asserted. 0 = 105C 1 = 115C 2 = 125C (Default) 3 = 135C - cirrus,hw-noise-gate-select : Hardware Noise Gate feature. Each bit selects a different block for detection. 000000 - All noise gating functionality disbled xxxxx1 - Amplifier noise gating detection enabled xxxx1x - Boost converter DCM detection enabled xxx1xx - VMON low power mode detection enabled xx1xxx - IMON low power mode detection enabled x1xxxx - VP brownout prevention detection enabled 1xxxxx - VBST brownout prevention detection enabled - cirrus,hw-noise-gate-delay : Time that the incoming audio signal must be below the noise gate threshold prior to entering a noise gated state 0 = 5 ms 1 = 10 ms 2 = 25 ms 3 = 50 ms (default) 4 = 100 ms 5 = 250 ms 6 = 500 ms 7 = 1 s - cirrus,hw-noise-gate-threshold : Threshold of audio signal input which the noise gate considers the input audio to be at a low enough level to be valid to enter a noise gating state of operation. 0 = 0.654 mVpk 1 = 0.328 mVpk 2 = 0.164 mVpk 3 = 0.082 mVpk (default) 4 = 0.041 mVpk 5 = 0.021 mVpk 6 = 0.010 mVpk 7 = True zero data (no LSB dither) - cirrus,dsp-noise-gate-enable : DSP Noise Gate feature. If present, noise gate feature will be enabled. - cirrus,dsp-noise-gate-threshold : Threshold of audio signal input which the noise gate considers the input audio to be at a low enough level to be valid to enter a noise gating state of operation. 0 = -66 dBFS 1 = -72 dBFS 2 = -78 dBFS 3 = -84 dBFS (default) 4 = -90 dBFS 5 = -96 dBFS 6 = -102 dBFS 7 = -108 dBFS - cirrus,dsp-noise-gate-delay : Time that the incoming audio signal must be below the noise gate threshold prior to entering a noise gated state 0 = 5 ms 1 = 10 ms 2 = 25 ms 3 = 50 ms (default) 4 = 100 ms 5 = 250 ms 6 = 500 ms 7 = 1 s 8 = 5 s 9 = 10 s 10 = 20 s 11 = 30 s 12 = 40 s 13 = 50 s 14 = 60 s 15 = 120 s - cirrus,invert-pcm : Invert PCM data before output Optional H/G Algorithm sub-node: The cs35l41 node can have a single "cirrus,classh-internal-algo" sub-node that will disable automatic control of the internal H/G Algorithm. It is strongly recommended that the Datasheet be referenced when adjusting or using these Class H Algorithm controls over the internal Algorithm. Serious damage can occur to the Device and surrounding components. - cirrus,classh-internal-algo : Sub-node for the Internal Class H Algorithm See Section 4.4 Internal Class H Algorithm in the Datasheet. If not used, the device manages the ClassH Algorithm internally. Optional properties for the "cirrus,classh-internal-algo" Sub-node Section 7.9 Boost Control - cirrus,classh-bst-override : Boolean - cirrus,classh-bst-max-limit Section 7.17 Class H, Weak-FET Control - cirrus,classh-headroom - cirrus,classh-release-rate - cirrus,classh-mem-depth - cirrus,classh-wk-fet-delay - cirrus,classh-wk-fet-thld Optional GPIO1 sub-node: The cs35l41 node can have an single "cirrus,gpio-config1" sub-node for configuring the GPIO1 pin. - cirrus,gpio-polarity-invert : Boolean which specifies whether the GPIO1 level is inverted. If this property is not present the level is not inverted. - cirrus,gpio-output-enable : Boolean which specifies whether the GPIO1 pin is configured as an output. If this property is not present the pin will be configured as an input. - cirrus,gpio-src-select : Configures the function of the GPIO1 pin. Note that the options are different from the GPIO2 pin. 0 = High Impedance (Default) 1 = GPIO 2 = Sync 3 = MCLK input Optional GPIO2 sub-node: The cs35l41 node can have an single "cirrus,gpio-config2" sub-node for configuring the GPIO1 pin. - cirrus,gpio-polarity-invert : Boolean which specifies whether the GPIO2 level is inverted. If this property is not present the level is not inverted. - cirrus,gpio-output-enable : Boolean which specifies whether the GPIO2 pin is configured as an output. If this property is not present the pin will be configured as an input. - cirrus,gpio-src-select : Configures the function of the GPIO2 pin. Note that the options are different from the GPIO1 pin. 0 = High Impedance (Default) 1 = GPIO 2 = Open Drain INTB 3 = MCLK input 4 = Push-pull INTB (active low) 5 = Push-pull INT (active high) Example: cs35l41: cs35l41@2 { compatible = "cirrus,cs35l41"; reg = <2>; VA-supply = <&dummy_vreg>; VP-supply = <&dummy_vreg>; }; Optional Fixed HW Params sub-node: The cs35l41 node can have a single "cirrus,fixed-hw-params" sub-node for setting the HW params to a fixed rate, width, and word-length. Example: cirrus,fixed-hw-params { cirrus,fixed-rate = <48000>; cirrus,fixed-width = <16>; cirrus,fixed-wl = <16>; };