Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[media] dvb-pll: Convert struct dvb_pll_desc uses to const

Convert the struct dvb_pll_desc uses to const and
change the "entries" fixed array size from 12 to []

It saves a couple KB overall and remove ~5KB of data.

$ size drivers/media/dvb-frontends/dvb-pll.o*
text data bss dec hex filename
8520 1552 2120 12192 2fa0 drivers/media/dvb-frontends/dvb-pll.o.new
5624 6363 2120 14107 371b drivers/media/dvb-frontends/dvb-pll.o.old

[PG] Patch taken from https://lkml.org/lkml/2015/6/24/721 with
commit message updated.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
Reviewed-by: Michael Ira Krufky <m.krufky@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>

authored by

Joe Perches and committed by
Mauro Carvalho Chehab
548146fb 6930f669

+25 -25
+25 -25
drivers/media/dvb-frontends/dvb-pll.c
··· 34 34 struct i2c_adapter *i2c; 35 35 36 36 /* the PLL descriptor */ 37 - struct dvb_pll_desc *pll_desc; 37 + const struct dvb_pll_desc *pll_desc; 38 38 39 39 /* cached frequency/bandwidth */ 40 40 u32 frequency; ··· 57 57 /* ----------------------------------------------------------- */ 58 58 59 59 struct dvb_pll_desc { 60 - char *name; 60 + const char *name; 61 61 u32 min; 62 62 u32 max; 63 63 u32 iffreq; ··· 71 71 u32 stepsize; 72 72 u8 config; 73 73 u8 cb; 74 - } entries[12]; 74 + } entries[]; 75 75 }; 76 76 77 77 /* ----------------------------------------------------------- */ 78 78 /* descriptions */ 79 79 80 - static struct dvb_pll_desc dvb_pll_thomson_dtt7579 = { 80 + static const struct dvb_pll_desc dvb_pll_thomson_dtt7579 = { 81 81 .name = "Thomson dtt7579", 82 82 .min = 177000000, 83 83 .max = 858000000, ··· 99 99 buf[3] |= 0x10; 100 100 } 101 101 102 - static struct dvb_pll_desc dvb_pll_thomson_dtt759x = { 102 + static const struct dvb_pll_desc dvb_pll_thomson_dtt759x = { 103 103 .name = "Thomson dtt759x", 104 104 .min = 177000000, 105 105 .max = 896000000, ··· 123 123 buf[3] ^= 0x10; 124 124 } 125 125 126 - static struct dvb_pll_desc dvb_pll_thomson_dtt7520x = { 126 + static const struct dvb_pll_desc dvb_pll_thomson_dtt7520x = { 127 127 .name = "Thomson dtt7520x", 128 128 .min = 185000000, 129 129 .max = 900000000, ··· 141 141 }, 142 142 }; 143 143 144 - static struct dvb_pll_desc dvb_pll_lg_z201 = { 144 + static const struct dvb_pll_desc dvb_pll_lg_z201 = { 145 145 .name = "LG z201", 146 146 .min = 174000000, 147 147 .max = 862000000, ··· 157 157 }, 158 158 }; 159 159 160 - static struct dvb_pll_desc dvb_pll_unknown_1 = { 160 + static const struct dvb_pll_desc dvb_pll_unknown_1 = { 161 161 .name = "unknown 1", /* used by dntv live dvb-t */ 162 162 .min = 174000000, 163 163 .max = 862000000, ··· 179 179 /* Infineon TUA6010XS 180 180 * used in Thomson Cable Tuner 181 181 */ 182 - static struct dvb_pll_desc dvb_pll_tua6010xs = { 182 + static const struct dvb_pll_desc dvb_pll_tua6010xs = { 183 183 .name = "Infineon TUA6010XS", 184 184 .min = 44250000, 185 185 .max = 858000000, ··· 193 193 }; 194 194 195 195 /* Panasonic env57h1xd5 (some Philips PLL ?) */ 196 - static struct dvb_pll_desc dvb_pll_env57h1xd5 = { 196 + static const struct dvb_pll_desc dvb_pll_env57h1xd5 = { 197 197 .name = "Panasonic ENV57H1XD5", 198 198 .min = 44250000, 199 199 .max = 858000000, ··· 217 217 buf[3] |= 0x08; 218 218 } 219 219 220 - static struct dvb_pll_desc dvb_pll_tda665x = { 220 + static const struct dvb_pll_desc dvb_pll_tda665x = { 221 221 .name = "Philips TDA6650/TDA6651", 222 222 .min = 44250000, 223 223 .max = 858000000, ··· 251 251 buf[3] |= 0x08; 252 252 } 253 253 254 - static struct dvb_pll_desc dvb_pll_tua6034 = { 254 + static const struct dvb_pll_desc dvb_pll_tua6034 = { 255 255 .name = "Infineon TUA6034", 256 256 .min = 44250000, 257 257 .max = 858000000, ··· 275 275 buf[3] |= 0x04; 276 276 } 277 277 278 - static struct dvb_pll_desc dvb_pll_tded4 = { 278 + static const struct dvb_pll_desc dvb_pll_tded4 = { 279 279 .name = "ALPS TDED4", 280 280 .min = 47000000, 281 281 .max = 863000000, ··· 293 293 /* ALPS TDHU2 294 294 * used in AverTVHD MCE A180 295 295 */ 296 - static struct dvb_pll_desc dvb_pll_tdhu2 = { 296 + static const struct dvb_pll_desc dvb_pll_tdhu2 = { 297 297 .name = "ALPS TDHU2", 298 298 .min = 54000000, 299 299 .max = 864000000, ··· 310 310 /* Samsung TBMV30111IN / TBMV30712IN1 311 311 * used in Air2PC ATSC - 2nd generation (nxt2002) 312 312 */ 313 - static struct dvb_pll_desc dvb_pll_samsung_tbmv = { 313 + static const struct dvb_pll_desc dvb_pll_samsung_tbmv = { 314 314 .name = "Samsung TBMV30111IN / TBMV30712IN1", 315 315 .min = 54000000, 316 316 .max = 860000000, ··· 329 329 /* 330 330 * Philips SD1878 Tuner. 331 331 */ 332 - static struct dvb_pll_desc dvb_pll_philips_sd1878_tda8261 = { 332 + static const struct dvb_pll_desc dvb_pll_philips_sd1878_tda8261 = { 333 333 .name = "Philips SD1878", 334 334 .min = 950000, 335 335 .max = 2150000, ··· 395 395 return; 396 396 } 397 397 398 - static struct dvb_pll_desc dvb_pll_opera1 = { 398 + static const struct dvb_pll_desc dvb_pll_opera1 = { 399 399 .name = "Opera Tuner", 400 400 .min = 900000, 401 401 .max = 2250000, ··· 442 442 } 443 443 444 444 /* unknown pll used in Samsung DTOS403IH102A DVB-C tuner */ 445 - static struct dvb_pll_desc dvb_pll_samsung_dtos403ih102a = { 445 + static const struct dvb_pll_desc dvb_pll_samsung_dtos403ih102a = { 446 446 .name = "Samsung DTOS403IH102A", 447 447 .min = 44250000, 448 448 .max = 858000000, ··· 462 462 }; 463 463 464 464 /* Samsung TDTC9251DH0 DVB-T NIM, as used on AirStar 2 */ 465 - static struct dvb_pll_desc dvb_pll_samsung_tdtc9251dh0 = { 465 + static const struct dvb_pll_desc dvb_pll_samsung_tdtc9251dh0 = { 466 466 .name = "Samsung TDTC9251DH0", 467 467 .min = 48000000, 468 468 .max = 863000000, ··· 476 476 }; 477 477 478 478 /* Samsung TBDU18132 DVB-S NIM with TSA5059 PLL, used in SkyStar2 DVB-S 2.3 */ 479 - static struct dvb_pll_desc dvb_pll_samsung_tbdu18132 = { 479 + static const struct dvb_pll_desc dvb_pll_samsung_tbdu18132 = { 480 480 .name = "Samsung TBDU18132", 481 481 .min = 950000, 482 482 .max = 2150000, /* guesses */ ··· 497 497 }; 498 498 499 499 /* Samsung TBMU24112 DVB-S NIM with SL1935 zero-IF tuner */ 500 - static struct dvb_pll_desc dvb_pll_samsung_tbmu24112 = { 500 + static const struct dvb_pll_desc dvb_pll_samsung_tbmu24112 = { 501 501 .name = "Samsung TBMU24112", 502 502 .min = 950000, 503 503 .max = 2150000, /* guesses */ ··· 518 518 * 153 - 430 0 * 0 0 0 0 1 0 0x02 519 519 * 430 - 822 0 * 0 0 1 0 0 0 0x08 520 520 * 822 - 862 1 * 0 0 1 0 0 0 0x88 */ 521 - static struct dvb_pll_desc dvb_pll_alps_tdee4 = { 521 + static const struct dvb_pll_desc dvb_pll_alps_tdee4 = { 522 522 .name = "ALPS TDEE4", 523 523 .min = 47000000, 524 524 .max = 862000000, ··· 534 534 535 535 /* ----------------------------------------------------------- */ 536 536 537 - static struct dvb_pll_desc *pll_list[] = { 537 + static const struct dvb_pll_desc *pll_list[] = { 538 538 [DVB_PLL_UNDEFINED] = NULL, 539 539 [DVB_PLL_THOMSON_DTT7579] = &dvb_pll_thomson_dtt7579, 540 540 [DVB_PLL_THOMSON_DTT759X] = &dvb_pll_thomson_dtt759x, ··· 564 564 const u32 frequency) 565 565 { 566 566 struct dvb_pll_priv *priv = fe->tuner_priv; 567 - struct dvb_pll_desc *desc = priv->pll_desc; 567 + const struct dvb_pll_desc *desc = priv->pll_desc; 568 568 u32 div; 569 569 int i; 570 570 ··· 758 758 .buf = b1, .len = 1 }; 759 759 struct dvb_pll_priv *priv = NULL; 760 760 int ret; 761 - struct dvb_pll_desc *desc; 761 + const struct dvb_pll_desc *desc; 762 762 763 763 if ((id[dvb_pll_devcount] > DVB_PLL_UNDEFINED) && 764 764 (id[dvb_pll_devcount] < ARRAY_SIZE(pll_list)))