1
0
Fork 0
forked from len0rd/rockbox
foxbox/firmware
Amaury Pouly 1245c5fe61 Implement speaker enable/disable on jack (un)plug
The implementation is not very complicated but there are a few things worth
noting. There was a previous "speaker enable" setting but it was a boolean.
I decided to replace it with a choice setting that has 2 options (on, off)
if headphones cannot be detect on this target, or 3 options (on, off, auto)
if we can detect headphones. This will break the old setting on target that
cannot detect jack but it makes the code more uniform and avoid maintaining
two settings with more #ifdef. The third option (auto) uses the LANG_AUTO
text, which I think is clear enough (disable speaker on jack plug).
In order to avoid code duplication (both in apps and firmware), I decided to
keep the audiohw_enable_speaker function as-is: it takes a boolean and doesn't
care about the speaker policy. I introduced a new audio_enable_speaker that
takes directly the mode (which follows the setting encoding): 0=off, 1=on
and 2=auto. This way one calls audio_enable_speaker and it changes the speaker
once to reflect the request mode. The apps code then uses this function in the
places where it makes sense: on setting load, setting change and jack (un)plug
event.

Change-Id: I027873f698eb4bc365d7c02b515297806355d9e2
2017-02-04 17:22:08 +01:00
..
asm Renamed defines UNALIGNED to ROCKBOX_UNALIGNED - UNALIGNED is already 2017-01-15 21:32:49 +01:00
common Move intrinsic RTC implmentation differences to driver files 2017-01-26 23:07:49 -05:00
decompressor Add KEEP() around vectors in linker scripts. 2011-12-18 06:43:08 +00:00
drivers Move intrinsic RTC implmentation differences to driver files 2017-01-26 23:07:49 -05:00
export Implement speaker enable/disable on jack (un)plug 2017-02-04 17:22:08 +01:00
include Do some debug and preparatory work for ramcache and playlist 2017-01-17 14:35:36 -05:00
kernel In queue_wait_w_tmo, guarantee wait duration 2017-02-02 23:51:55 -05:00
libc Improve code for gmtime_r() 2017-02-03 14:40:55 -05:00
target zen/zenxfi: adjust maximum emi voltage 2017-02-04 17:17:44 +01:00
test Limit more variables to file scope 2015-01-11 21:40:51 +01:00
usbstack usb_serial: fix send buffer alignment 2016-08-04 17:57:04 +02:00
arabjoin.c
arabjoin.h
ata_idle_notify.c Fix reds. 2014-03-14 23:43:45 +01:00
backlight-sw-fading.c Get rid of stupid _backlight_* function names 2015-01-12 11:09:27 +01:00
backlight.c Selective Backlight/Advanced Softlock - Selective actions based on context 2017-01-17 23:06:17 +01:00
bidi.c bidi.c: Check buffer sizes. 2014-01-09 23:30:32 +01:00
buflib.c buflib: Switch from term "cookie" to "metadata" 2015-01-02 19:26:03 +01:00
COPYING
core_alloc.c Make a few local variables static 2015-01-11 18:02:43 +01:00
debug.c
eeprom_settings.c
enc_base.c FS#12378 : Remove various unused code, and comment out some unused code and data for reference or future use. 2011-12-14 21:45:25 +00:00
events.c Make thirty functions static to reduce binary size 2015-01-05 18:44:36 +01:00
firmware.make Fix makefile not rebuilding rbversion.h in some cases 2016-09-23 23:03:23 +02:00
font.c fonts: Fix regression(s) caused by c23ce62. 2014-01-26 14:01:48 +01:00
font_cache.c fonts: Do not unload completely on USB. 2014-01-15 23:37:39 +01:00
general.c kernel: Break out kernel primitives into separate files and move to separate dir. 2014-03-03 18:11:57 +01:00
hangul.c
ifp_usb_serial.c Make thirty functions static to reduce binary size 2015-01-05 18:44:36 +01:00
load_code.c Fix various reds. Some includes needed fixup. 2014-03-03 19:10:48 +01:00
logf.c Don't add new message to logf when we dump it to file 2016-04-04 11:07:44 +02:00
lru.c Revert r30818 2011-10-22 08:02:38 +00:00
panic.c AMS: Return ascodec to interrupt-based I2C2 driver 2017-01-25 00:05:13 +01:00
pcm.c Greatly reduce volume-change zipper artifacts with SW volume. 2014-03-08 08:04:41 +01:00
pcm_mixer.c Enable setting of global output samplerate on certain targets. 2013-07-06 04:22:04 +02:00
pcm_sampr.c
pcm_sw_volume.c Greatly reduce volume-change zipper artifacts with SW volume. 2014-03-08 08:04:41 +01:00
powermgmt.c iBasso DX50/DX90: Major code cleanup and reorganization. 2015-02-02 21:57:55 +01:00
profile.c
README
rolo.c Fix AMSv2 variant 1 detection if rockbox loaded from SD card 2016-04-22 20:43:45 +00:00
rom.lds rombox: Do not copy .init section to ram on startup. 2014-01-20 10:42:02 +01:00
screendump.c Fix warnings in firmware/screendump.c 2015-02-24 16:55:26 -05:00
scroll_engine.c scroll_engine: Fix FS#12894: Text scrolling stops working after a few seconds/minutes 2014-01-12 21:29:55 +01:00
sdmmc.c
sound.c Add DAC's oversampling filter roll-off selection to sound settings. 2013-05-24 11:18:16 +04:00
SOURCES Improve imx31 interrupt code for PMIC and GPIO 2017-01-29 19:07:55 -05:00
storage.c Remove I/O priority. It is harmful when used with the new file code. 2014-08-30 14:01:21 -04:00
system.c AMS: Return ascodec to interrupt-based I2C2 driver 2017-01-25 00:05:13 +01:00
timer.c
tuner.c Add stub STFM1000 tuner driver 2012-05-19 16:10:52 +02:00
usb.c usb: finally get rid of USE_ROCKBOX_USB in Sansa bootloader, use bootloader usb 2015-01-08 22:30:22 +01:00

See docs/README