Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) =====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) Audio Pops and Clicks
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) =====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) Pops and clicks are unwanted audio artifacts caused by the powering up and down
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) of components within the audio subsystem. This is noticeable on PCs when an
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) audio module is either loaded or unloaded (at module load time the sound card is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) powered up and causes a popping noise on the speakers).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) Pops and clicks can be more frequent on portable systems with DAPM. This is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) because the components within the subsystem are being dynamically powered
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) depending on the audio usage and this can subsequently cause a small pop or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) click every time a component power state is changed.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) Minimising Playback Pops and Clicks
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) ===================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) Playback pops in portable audio subsystems cannot be completely eliminated
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) currently, however future audio codec hardware will have better pop and click
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) suppression.  Pops can be reduced within playback by powering the audio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) components in a specific order. This order is different for startup and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) shutdown and follows some basic rules:-
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) ::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)    Startup Order :- DAC --> Mixers --> Output PGA --> Digital Unmute
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)   
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28)    Shutdown Order :- Digital Mute --> Output PGA --> Mixers --> DAC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) This assumes that the codec PCM output path from the DAC is via a mixer and then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) a PGA (programmable gain amplifier) before being output to the speakers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) Minimising Capture Pops and Clicks
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) ==================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) Capture artifacts are somewhat easier to get rid as we can delay activating the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) ADC until all the pops have occurred. This follows similar power rules to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) playback in that components are powered in a sequence depending upon stream
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) startup or shutdown.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) ::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)    Startup Order - Input PGA --> Mixers --> ADC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)   
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)    Shutdown Order - ADC --> Mixers --> Input PGA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) Zipper Noise
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) ============
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) An unwanted zipper noise can occur within the audio playback or capture stream
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) when a volume control is changed near its maximum gain value. The zipper noise
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) is heard when the gain increase or decrease changes the mean audio signal
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) amplitude too quickly. It can be minimised by enabling the zero cross setting
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) for each volume control. The ZC forces the gain change to occur when the signal
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) crosses the zero amplitude line.