/* * This file is only included exactly once! * * The tables here are derived from the tas3004 datasheet, * modulo typo corrections and some smoothing... */ #define TAS3004_TREBLE_MIN 0 #define TAS3004_TREBLE_MAX 72 #define TAS3004_BASS_MIN 0 #define TAS3004_BASS_MAX 72 #define TAS3004_TREBLE_ZERO 36 #define TAS3004_BASS_ZERO 36 static u8 tas3004_treble_table[] = { 150, /* -18 dB */ 149, 148, 147, 146, 145, 144, 143, 142, 141, 140, 139, 138, 137, 136, 135, 134, 133, 132, 131, 130, 129, 128, 127, 126, 125, 124, 123, 122, 121, 120, 119, 118, 117, 116, 115, 114, /* 0 dB */ 113, 112, 111, 109, 108, 107, 105, 104, 103, 101, 99, 98, 96, 93, 91, 89, 86, 83, 81, 77, 74, 71, 67, 63, 59, 54, 49, 44, 38, 32, 26, 19, 10, 4, 2, 1, /* +18 dB */ }; static inline u8 tas3004_treble(int idx) { return tas3004_treble_table[idx]; } /* I only save the difference here to the treble table * so that the binary is smaller... * I have also ignored completely differences of * +/- 1 */ static s8 tas3004_bass_diff_to_treble[] = { 2, /* 7 dB, offset 50 */ 2, 2, 2, 2, 1, 2, 2, 2, 3, 4, 4, 5, 6, 7, 8, 9, 10, 11, 14, 13, 8, 1, /* 18 dB */ }; static inline u8 tas3004_bass(int idx) { u8 result = tas3004_treble_table[idx]; if (idx >= 50) result += tas3004_bass_diff_to_treble[idx-50]; return result; } ss='sub'>net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-05-18 17:12:23 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2016-05-18 17:12:23 -0700
commit888dae5361e605efc553b645a7c95bbcc5e904db (patch)
tree20d3c4892775fc19ee44f331941f8742481cf2c0
parent19c5abcb74b712a7824ae7c55862932534e7dfec (diff)
parent23ea5967d6bd30ed59480edbc5fe21eec81682a3 (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Pull input updates from Dmitry Torokhov: "First round of updates for the input subsystem. No new drivers here, just some driver fixes" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: rotary-encoder - fix bare use of 'unsigned' Input: cm109 - spin_lock in complete() cleanup Input: cm109 - fix handling of volume and mute buttons Input: byd - don't wipe dynamically allocated memory twice Input: twl4030 - fix unsafe macro definition Input: twl6040-vibra - remove mutex Input: bcm_iproc_tsc - DT spelling s/clock-name/clock-names/ Input: bcm_iproc_tsc - use syscon to access shared registers Input: ti_am335x_tsc - use SIMPLE_DEV_PM_OPS Input: omap-keypad - remove set_col_gpio_val() and get_row_gpio_val() Input: omap-keypad - drop empty PM stubs Input: omap-keypad - remove adjusting of scan delay Input: gpio-keys - clean up device tree binding example Input: kbtab - stop saving struct usb_device Input: gtco - stop saving struct usb_device Input: aiptek - stop saving struct usb_device Input: acecad - stop saving struct usb_device
Diffstat