Apply const prefix at every place where appropriate: the static register tables, the volume tables and the callback tables. Just for minor optimization and no functional changes. Link: https://lore.kernel.org/r/20200105144823.29547-3-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
		
			
				
	
	
		
			136 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			136 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| /*
 | |
|  * 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 const 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 const 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;
 | |
| }
 |