1 ================== 2 ALSA Jack Controls 3 ================== 4 5 Why we need Jack kcontrols 6 ========================== 7 8 ALSA uses kcontrols to export audio controls(s 9 to user space. This means userspace applicatio 10 switch off headphones and switch on speakers w 11 plugged in. 12 13 The old ALSA jack code only created input devi 14 jack. These jack input devices are not readabl 15 that run as non root. 16 17 The new jack code creates embedded jack kcontr 18 can be read by any process. 19 20 This can be combined with UCM to allow userspa 21 intelligently based on jack insertion or remov 22 23 Jack Kcontrol Internals 24 ======================= 25 26 Each jack will have a kcontrol list, so that w 27 and attach it to the jack, at jack creation st 28 kcontrol to an existing jack, at anytime when 29 30 Those kcontrols will be freed automatically wh 31 32 How to use jack kcontrols 33 ========================= 34 35 In order to keep compatibility, snd_jack_new() 36 adding two params: 37 38 initial_kctl 39 if true, create a kcontrol and add it to the 40 phantom_jack 41 Don't create a input device for phantom jack 42 43 HDA jacks can set phantom_jack to true in orde 44 jack and set initial_kctl to true to create an 45 the correct id. 46 47 ASoC jacks should set initial_kctl as false. T 48 assigned as the jack kcontrol name.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.