提交 d1ae418e 编写于 作者: T Tobias Klauser 提交者: Linus Torvalds

[PATCH] drivers/video: Use ARRAY_SIZE macro

Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove
duplicates of ARRAY_SIZE.  Some coding style and trailing whitespaces are
also fixed.

Compile-tested where possible (some are other arch or BROKEN)
Signed-off-by: NTobias Klauser <tklauser@nuerscht.ch>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 b0c87978
...@@ -1308,7 +1308,7 @@ static int __init acornfb_probe(struct platform_device *dev) ...@@ -1308,7 +1308,7 @@ static int __init acornfb_probe(struct platform_device *dev)
/* /*
* Try to select a suitable default mode * Try to select a suitable default mode
*/ */
for (i = 0; i < sizeof(modedb) / sizeof(*modedb); i++) { for (i = 0; i < ARRAY_SIZE(modedb); i++) {
unsigned long hs; unsigned long hs;
hs = modedb[i].refresh * hs = modedb[i].refresh *
...@@ -1391,7 +1391,7 @@ static int __init acornfb_probe(struct platform_device *dev) ...@@ -1391,7 +1391,7 @@ static int __init acornfb_probe(struct platform_device *dev)
*/ */
do { do {
rc = fb_find_mode(&fb_info.var, &fb_info, NULL, modedb, rc = fb_find_mode(&fb_info.var, &fb_info, NULL, modedb,
sizeof(modedb) / sizeof(*modedb), ARRAY_SIZE(modedb),
&acornfb_default_mode, DEFAULT_BPP); &acornfb_default_mode, DEFAULT_BPP);
/* /*
* If we found an exact match, all ok. * If we found an exact match, all ok.
...@@ -1408,7 +1408,7 @@ static int __init acornfb_probe(struct platform_device *dev) ...@@ -1408,7 +1408,7 @@ static int __init acornfb_probe(struct platform_device *dev)
break; break;
rc = fb_find_mode(&fb_info.var, &fb_info, NULL, modedb, rc = fb_find_mode(&fb_info.var, &fb_info, NULL, modedb,
sizeof(modedb) / sizeof(*modedb), ARRAY_SIZE(modedb),
&acornfb_default_mode, DEFAULT_BPP); &acornfb_default_mode, DEFAULT_BPP);
if (rc) if (rc)
break; break;
......
...@@ -353,8 +353,6 @@ struct chips_init_reg { ...@@ -353,8 +353,6 @@ struct chips_init_reg {
unsigned char data; unsigned char data;
}; };
#define N_ELTS(x) (sizeof(x) / sizeof(x[0]))
static struct chips_init_reg chips_init_sr[] = static struct chips_init_reg chips_init_sr[] =
{ {
{0x00, 0x03}, /* Reset register */ {0x00, 0x03}, /* Reset register */
...@@ -460,22 +458,22 @@ static void __devinit chips_hw_init(struct fb_info *p) ...@@ -460,22 +458,22 @@ static void __devinit chips_hw_init(struct fb_info *p)
{ {
int i; int i;
for (i = 0; i < N_ELTS(chips_init_xr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_xr); ++i)
write_xr(chips_init_xr[i].addr, chips_init_xr[i].data); write_xr(chips_init_xr[i].addr, chips_init_xr[i].data);
write_xr(0x81, 0x12); write_xr(0x81, 0x12);
write_xr(0x82, 0x08); write_xr(0x82, 0x08);
write_xr(0x20, 0x00); write_xr(0x20, 0x00);
for (i = 0; i < N_ELTS(chips_init_sr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_sr); ++i)
write_sr(chips_init_sr[i].addr, chips_init_sr[i].data); write_sr(chips_init_sr[i].addr, chips_init_sr[i].data);
for (i = 0; i < N_ELTS(chips_init_gr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_gr); ++i)
write_gr(chips_init_gr[i].addr, chips_init_gr[i].data); write_gr(chips_init_gr[i].addr, chips_init_gr[i].data);
for (i = 0; i < N_ELTS(chips_init_ar); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_ar); ++i)
write_ar(chips_init_ar[i].addr, chips_init_ar[i].data); write_ar(chips_init_ar[i].addr, chips_init_ar[i].data);
/* Enable video output in attribute index register */ /* Enable video output in attribute index register */
writeb(0x20, mmio_base + 0x780); writeb(0x20, mmio_base + 0x780);
for (i = 0; i < N_ELTS(chips_init_cr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_cr); ++i)
write_cr(chips_init_cr[i].addr, chips_init_cr[i].data); write_cr(chips_init_cr[i].addr, chips_init_cr[i].data);
for (i = 0; i < N_ELTS(chips_init_fr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_fr); ++i)
write_fr(chips_init_fr[i].addr, chips_init_fr[i].data); write_fr(chips_init_fr[i].addr, chips_init_fr[i].data);
} }
......
...@@ -1727,7 +1727,7 @@ static int __init aty128_init(struct pci_dev *pdev, const struct pci_device_id * ...@@ -1727,7 +1727,7 @@ static int __init aty128_init(struct pci_dev *pdev, const struct pci_device_id *
video_card[9] = ent->device & 0xFF; video_card[9] = ent->device & 0xFF;
/* range check to make sure */ /* range check to make sure */
if (ent->driver_data < (sizeof(r128_family)/sizeof(char *))) if (ent->driver_data < ARRAY_SIZE(r128_family))
strncat(video_card, r128_family[ent->driver_data], sizeof(video_card)); strncat(video_card, r128_family[ent->driver_data], sizeof(video_card));
printk(KERN_INFO "aty128fb: %s [chip rev 0x%x] ", video_card, chip_rev); printk(KERN_INFO "aty128fb: %s [chip rev 0x%x] ", video_card, chip_rev);
......
...@@ -434,7 +434,7 @@ static int __devinit correct_chipset(struct atyfb_par *par) ...@@ -434,7 +434,7 @@ static int __devinit correct_chipset(struct atyfb_par *par)
const char *name; const char *name;
int i; int i;
for (i = sizeof(aty_chips) / sizeof(*aty_chips) - 1; i >= 0; i--) for (i = ARRAY_SIZE(aty_chips) - 1; i >= 0; i--)
if (par->pci_id == aty_chips[i].pci_id) if (par->pci_id == aty_chips[i].pci_id)
break; break;
...@@ -2168,10 +2168,10 @@ static void __init aty_calc_mem_refresh(struct atyfb_par *par, int xclk) ...@@ -2168,10 +2168,10 @@ static void __init aty_calc_mem_refresh(struct atyfb_par *par, int xclk)
if (IS_XL(par->pci_id) || IS_MOBILITY(par->pci_id)) { if (IS_XL(par->pci_id) || IS_MOBILITY(par->pci_id)) {
refresh_tbl = ragexl_tbl; refresh_tbl = ragexl_tbl;
size = sizeof(ragexl_tbl)/sizeof(int); size = ARRAY_SIZE(ragexl_tbl);
} else { } else {
refresh_tbl = ragepro_tbl; refresh_tbl = ragepro_tbl;
size = sizeof(ragepro_tbl)/sizeof(int); size = ARRAY_SIZE(ragepro_tbl);
} }
for (i=0; i < size; i++) { for (i=0; i < size; i++) {
...@@ -3399,7 +3399,7 @@ static int __devinit atyfb_pci_probe(struct pci_dev *pdev, const struct pci_devi ...@@ -3399,7 +3399,7 @@ static int __devinit atyfb_pci_probe(struct pci_dev *pdev, const struct pci_devi
struct atyfb_par *par; struct atyfb_par *par;
int i, rc = -ENOMEM; int i, rc = -ENOMEM;
for (i = sizeof(aty_chips) / sizeof(*aty_chips) - 1; i >= 0; i--) for (i = ARRAY_SIZE(aty_chips); i >= 0; i--)
if (pdev->device == aty_chips[i].pci_id) if (pdev->device == aty_chips[i].pci_id)
break; break;
......
...@@ -149,8 +149,7 @@ static int aty_var_to_pll_514(const struct fb_info *info, u32 vclk_per, ...@@ -149,8 +149,7 @@ static int aty_var_to_pll_514(const struct fb_info *info, u32 vclk_per,
}; };
int i; int i;
for (i = 0; i < sizeof(RGB514_clocks) / sizeof(*RGB514_clocks); for (i = 0; i < ARRAY_SIZE(RGB514_clocks); i++)
i++)
if (vclk_per <= RGB514_clocks[i].limit) { if (vclk_per <= RGB514_clocks[i].limit) {
pll->ibm514.m = RGB514_clocks[i].m; pll->ibm514.m = RGB514_clocks[i].m;
pll->ibm514.n = RGB514_clocks[i].n; pll->ibm514.n = RGB514_clocks[i].n;
......
...@@ -178,8 +178,6 @@ struct chips_init_reg { ...@@ -178,8 +178,6 @@ struct chips_init_reg {
unsigned char data; unsigned char data;
}; };
#define N_ELTS(x) (sizeof(x) / sizeof(x[0]))
static struct chips_init_reg chips_init_sr[] = { static struct chips_init_reg chips_init_sr[] = {
{ 0x00, 0x03 }, { 0x00, 0x03 },
{ 0x01, 0x01 }, { 0x01, 0x01 },
...@@ -287,18 +285,18 @@ static void __init chips_hw_init(void) ...@@ -287,18 +285,18 @@ static void __init chips_hw_init(void)
{ {
int i; int i;
for (i = 0; i < N_ELTS(chips_init_xr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_xr); ++i)
write_xr(chips_init_xr[i].addr, chips_init_xr[i].data); write_xr(chips_init_xr[i].addr, chips_init_xr[i].data);
outb(0x29, 0x3c2); /* set misc output reg */ outb(0x29, 0x3c2); /* set misc output reg */
for (i = 0; i < N_ELTS(chips_init_sr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_sr); ++i)
write_sr(chips_init_sr[i].addr, chips_init_sr[i].data); write_sr(chips_init_sr[i].addr, chips_init_sr[i].data);
for (i = 0; i < N_ELTS(chips_init_gr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_gr); ++i)
write_gr(chips_init_gr[i].addr, chips_init_gr[i].data); write_gr(chips_init_gr[i].addr, chips_init_gr[i].data);
for (i = 0; i < N_ELTS(chips_init_ar); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_ar); ++i)
write_ar(chips_init_ar[i].addr, chips_init_ar[i].data); write_ar(chips_init_ar[i].addr, chips_init_ar[i].data);
for (i = 0; i < N_ELTS(chips_init_cr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_cr); ++i)
write_cr(chips_init_cr[i].addr, chips_init_cr[i].data); write_cr(chips_init_cr[i].addr, chips_init_cr[i].data);
for (i = 0; i < N_ELTS(chips_init_fr); ++i) for (i = 0; i < ARRAY_SIZE(chips_init_fr); ++i)
write_fr(chips_init_fr[i].addr, chips_init_fr[i].data); write_fr(chips_init_fr[i].addr, chips_init_fr[i].data);
} }
......
...@@ -66,7 +66,7 @@ static const struct font_desc *fonts[] = { ...@@ -66,7 +66,7 @@ static const struct font_desc *fonts[] = {
#endif #endif
}; };
#define num_fonts (sizeof(fonts)/sizeof(*fonts)) #define num_fonts ARRAY_SIZE(fonts)
#ifdef NO_FONTS #ifdef NO_FONTS
#error No fonts configured. #error No fonts configured.
......
...@@ -1374,16 +1374,22 @@ init_imstt(struct fb_info *info) ...@@ -1374,16 +1374,22 @@ init_imstt(struct fb_info *info)
/* set default values for DAC registers */ /* set default values for DAC registers */
if (par->ramdac == IBM) { if (par->ramdac == IBM) {
par->cmap_regs[PPMASK] = 0xff; eieio(); par->cmap_regs[PPMASK] = 0xff;
par->cmap_regs[PIDXHI] = 0; eieio(); eieio();
for (i = 0; i < sizeof(ibm_initregs) / sizeof(*ibm_initregs); i++) { par->cmap_regs[PIDXHI] = 0;
par->cmap_regs[PIDXLO] = ibm_initregs[i].addr; eieio(); eieio();
par->cmap_regs[PIDXDATA] = ibm_initregs[i].value; eieio(); for (i = 0; i < ARRAY_SIZE(ibm_initregs); i++) {
par->cmap_regs[PIDXLO] = ibm_initregs[i].addr;
eieio();
par->cmap_regs[PIDXDATA] = ibm_initregs[i].value;
eieio();
} }
} else { } else {
for (i = 0; i < sizeof(tvp_initregs) / sizeof(*tvp_initregs); i++) { for (i = 0; i < ARRAY_SIZE(tvp_initregs); i++) {
par->cmap_regs[TVPADDRW] = tvp_initregs[i].addr; eieio(); par->cmap_regs[TVPADDRW] = tvp_initregs[i].addr;
par->cmap_regs[TVPIDATA] = tvp_initregs[i].value; eieio(); eieio();
par->cmap_regs[TVPIDATA] = tvp_initregs[i].value;
eieio();
} }
} }
......
...@@ -380,7 +380,7 @@ int __init mac_find_mode(struct fb_var_screeninfo *var, struct fb_info *info, ...@@ -380,7 +380,7 @@ int __init mac_find_mode(struct fb_var_screeninfo *var, struct fb_info *info,
if (mode_option && !strncmp(mode_option, "mac", 3)) { if (mode_option && !strncmp(mode_option, "mac", 3)) {
mode_option += 3; mode_option += 3;
db = mac_modedb; db = mac_modedb;
dbsize = sizeof(mac_modedb)/sizeof(*mac_modedb); dbsize = ARRAY_SIZE(mac_modedb);
} }
return fb_find_mode(var, info, mode_option, db, dbsize, return fb_find_mode(var, info, mode_option, db, dbsize,
&mac_modedb[DEFAULT_MODEDB_INDEX], default_bpp); &mac_modedb[DEFAULT_MODEDB_INDEX], default_bpp);
......
...@@ -59,7 +59,7 @@ static const struct mctl g450_controls[] = ...@@ -59,7 +59,7 @@ static const struct mctl g450_controls[] =
}, offsetof(struct matrox_fb_info, altout.tvo_params.testout) }, }, offsetof(struct matrox_fb_info, altout.tvo_params.testout) },
}; };
#define G450CTRLS (sizeof(g450_controls)/sizeof(g450_controls[0])) #define G450CTRLS ARRAY_SIZE(g450_controls)
/* Return: positive number: id found /* Return: positive number: id found
-EINVAL: id not found, return failure -EINVAL: id not found, return failure
......
...@@ -89,7 +89,7 @@ static const struct mctl maven_controls[] = ...@@ -89,7 +89,7 @@ static const struct mctl maven_controls[] =
}, offsetof(struct matrox_fb_info, altout.tvo_params.hue) }, }, offsetof(struct matrox_fb_info, altout.tvo_params.hue) },
{ { V4L2_CID_GAMMA, V4L2_CTRL_TYPE_INTEGER, { { V4L2_CID_GAMMA, V4L2_CTRL_TYPE_INTEGER,
"gamma", "gamma",
0, sizeof(maven_gamma)/sizeof(maven_gamma[0])-1, 1, 3, 0, ARRAY_SIZE(maven_gamma) - 1, 1, 3,
0, 0,
}, offsetof(struct matrox_fb_info, altout.tvo_params.gamma) }, }, offsetof(struct matrox_fb_info, altout.tvo_params.gamma) },
{ { MATROXFB_CID_TESTOUT, V4L2_CTRL_TYPE_BOOLEAN, { { MATROXFB_CID_TESTOUT, V4L2_CTRL_TYPE_BOOLEAN,
...@@ -105,7 +105,7 @@ static const struct mctl maven_controls[] = ...@@ -105,7 +105,7 @@ static const struct mctl maven_controls[] =
}; };
#define MAVCTRLS (sizeof(maven_controls)/sizeof(maven_controls[0])) #define MAVCTRLS ARRAY_SIZE(maven_controls)
/* Return: positive number: id found /* Return: positive number: id found
-EINVAL: id not found, return failure -EINVAL: id not found, return failure
......
...@@ -500,7 +500,7 @@ int fb_find_mode(struct fb_var_screeninfo *var, ...@@ -500,7 +500,7 @@ int fb_find_mode(struct fb_var_screeninfo *var,
/* Set up defaults */ /* Set up defaults */
if (!db) { if (!db) {
db = modedb; db = modedb;
dbsize = sizeof(modedb)/sizeof(*modedb); dbsize = ARRAY_SIZE(modedb);
} }
if (!default_mode) if (!default_mode)
default_mode = &modedb[DEFAULT_MODEDB_INDEX]; default_mode = &modedb[DEFAULT_MODEDB_INDEX];
......
...@@ -165,20 +165,20 @@ static int neoFindMode(int xres, int yres, int depth) ...@@ -165,20 +165,20 @@ static int neoFindMode(int xres, int yres, int depth)
switch (depth) { switch (depth) {
case 8: case 8:
size = sizeof(bios8) / sizeof(biosMode); size = ARRAY_SIZE(bios8);
mode = bios8; mode = bios8;
break; break;
case 16: case 16:
size = sizeof(bios16) / sizeof(biosMode); size = ARRAY_SIZE(bios16);
mode = bios16; mode = bios16;
break; break;
case 24: case 24:
size = sizeof(bios24) / sizeof(biosMode); size = ARRAY_SIZE(bios24);
mode = bios24; mode = bios24;
break; break;
#ifdef NO_32BIT_SUPPORT_YET #ifdef NO_32BIT_SUPPORT_YET
case 32: case 32:
size = sizeof(bios32) / sizeof(biosMode); size = ARRAY_SIZE(bios32);
mode = bios32; mode = bios32;
break; break;
#endif #endif
......
...@@ -228,7 +228,7 @@ static void __init pmagbbfb_osc_setup(struct fb_info *info) ...@@ -228,7 +228,7 @@ static void __init pmagbbfb_osc_setup(struct fb_info *info)
freq1 = (par->osc0 * count1 + count0 / 2) / count0; freq1 = (par->osc0 * count1 + count0 / 2) / count0;
par->osc1 = freq1; par->osc1 = freq1;
for (i = 0; i < sizeof(pmagbbfb_freqs) / sizeof(*pmagbbfb_freqs); i++) for (i = 0; i < ARRAY_SIZE(pmagbbfb_freqs); i++)
if (freq1 >= pmagbbfb_freqs[i] - if (freq1 >= pmagbbfb_freqs[i] -
(pmagbbfb_freqs[i] + 128) / 256 && (pmagbbfb_freqs[i] + 128) / 256 &&
freq1 <= pmagbbfb_freqs[i] + freq1 <= pmagbbfb_freqs[i] +
......
...@@ -759,7 +759,7 @@ static void __iomem *radeon_find_rom(struct radeonfb_info *rinfo) ...@@ -759,7 +759,7 @@ static void __iomem *radeon_find_rom(struct radeonfb_info *rinfo)
rom = rom_base; rom = rom_base;
for (i = 0; (i < 512) && (stage != 4); i++) { for (i = 0; (i < 512) && (stage != 4); i++) {
for(j = 0;j < sizeof(radeon_sig)/sizeof(char *);j++) { for (j = 0; j < ARRAY_SIZE(radeon_sig); j++) {
if (radeon_sig[j][0] == *rom) if (radeon_sig[j][0] == *rom)
if (strncmp(radeon_sig[j], rom, if (strncmp(radeon_sig[j], rom,
strlen(radeon_sig[j])) == 0) { strlen(radeon_sig[j])) == 0) {
......
...@@ -1195,9 +1195,10 @@ static int __devinit sst_detect_dactype(struct fb_info *info, struct sstfb_par * ...@@ -1195,9 +1195,10 @@ static int __devinit sst_detect_dactype(struct fb_info *info, struct sstfb_par *
{ {
int i, ret = 0; int i, ret = 0;
for (i=0; i<sizeof(dacs)/sizeof(dacs[0]); i++) { for (i = 0; i < ARRAY_SIZE(dacs); i++) {
ret = dacs[i].detect(info); ret = dacs[i].detect(info);
if (ret) break; if (ret)
break;
} }
if (!ret) if (!ret)
return 0; return 0;
...@@ -1604,8 +1605,8 @@ static int sstfb_dump_regs(struct fb_info *info) ...@@ -1604,8 +1605,8 @@ static int sstfb_dump_regs(struct fb_info *info)
{FBZMODE,"fbzmode"}, {FBZMODE,"fbzmode"},
}; };
const int pci_s = sizeof(pci_regs)/sizeof(pci_regs[0]); const int pci_s = ARRAY_SIZE(pci_regs);
const int sst_s = sizeof(sst_regs)/sizeof(sst_regs[0]); const int sst_s = ARRAY_SIZE(sst_regs);
struct sstfb_par *par = info->par; struct sstfb_par *par = info->par;
struct pci_dev *dev = par->dev; struct pci_dev *dev = par->dev;
u32 pci_res[pci_s]; u32 pci_res[pci_s];
......
...@@ -616,8 +616,7 @@ static struct { ...@@ -616,8 +616,7 @@ static struct {
#endif #endif
}; };
#define arraysize(x) (sizeof(x)/sizeof(*(x))) #define NUM_TOTAL_MODES ARRAY_SIZE(virgefb_predefined)
#define NUM_TOTAL_MODES arraysize(virgefb_predefined)
/* /*
* Default to 800x600 for video=virge8:, virge16: or virge32: * Default to 800x600 for video=virge8:, virge16: or virge32:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册