[SCSI] drivers/scsi: Use ARRAY_SIZE macro
Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove duplicates of the macro. Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
committed by
James Bottomley
parent
9dc399de08
commit
6391a11375
@@ -107,7 +107,7 @@ struct aic7770_identity aic7770_ident_table[] =
|
||||
ahc_aic7770_EISA_setup
|
||||
}
|
||||
};
|
||||
const int ahc_num_aic7770_devs = NUM_ELEMENTS(aic7770_ident_table);
|
||||
const int ahc_num_aic7770_devs = ARRAY_SIZE(aic7770_ident_table);
|
||||
|
||||
struct aic7770_identity *
|
||||
aic7770_find_device(uint32_t id)
|
||||
|
||||
@@ -68,8 +68,6 @@ struct scb_platform_data;
|
||||
#define FALSE 0
|
||||
#endif
|
||||
|
||||
#define NUM_ELEMENTS(array) (sizeof(array) / sizeof(*array))
|
||||
|
||||
#define ALL_CHANNELS '\0'
|
||||
#define ALL_TARGETS_MASK 0xFFFF
|
||||
#define INITIATOR_WILDCARD (~0)
|
||||
|
||||
@@ -59,7 +59,7 @@ char *ahd_chip_names[] =
|
||||
"aic7902",
|
||||
"aic7901A"
|
||||
};
|
||||
static const u_int num_chip_names = NUM_ELEMENTS(ahd_chip_names);
|
||||
static const u_int num_chip_names = ARRAY_SIZE(ahd_chip_names);
|
||||
|
||||
/*
|
||||
* Hardware error codes.
|
||||
@@ -77,7 +77,7 @@ static struct ahd_hard_error_entry ahd_hard_errors[] = {
|
||||
{ MPARERR, "Scratch or SCB Memory Parity Error" },
|
||||
{ CIOPARERR, "CIOBUS Parity Error" },
|
||||
};
|
||||
static const u_int num_errors = NUM_ELEMENTS(ahd_hard_errors);
|
||||
static const u_int num_errors = ARRAY_SIZE(ahd_hard_errors);
|
||||
|
||||
static struct ahd_phase_table_entry ahd_phase_table[] =
|
||||
{
|
||||
@@ -97,7 +97,7 @@ static struct ahd_phase_table_entry ahd_phase_table[] =
|
||||
* In most cases we only wish to itterate over real phases, so
|
||||
* exclude the last element from the count.
|
||||
*/
|
||||
static const u_int num_phases = NUM_ELEMENTS(ahd_phase_table) - 1;
|
||||
static const u_int num_phases = ARRAY_SIZE(ahd_phase_table) - 1;
|
||||
|
||||
/* Our Sequencer Program */
|
||||
#include "aic79xx_seq.h"
|
||||
@@ -7259,7 +7259,7 @@ ahd_qinfifo_count(struct ahd_softc *ahd)
|
||||
return (wrap_qinfifonext - wrap_qinpos);
|
||||
else
|
||||
return (wrap_qinfifonext
|
||||
+ NUM_ELEMENTS(ahd->qinfifo) - wrap_qinpos);
|
||||
+ ARRAY_SIZE(ahd->qinfifo) - wrap_qinpos);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -8619,7 +8619,7 @@ ahd_check_patch(struct ahd_softc *ahd, struct patch **start_patch,
|
||||
struct patch *last_patch;
|
||||
u_int num_patches;
|
||||
|
||||
num_patches = sizeof(patches)/sizeof(struct patch);
|
||||
num_patches = ARRAY_SIZE(patches);
|
||||
last_patch = &patches[num_patches];
|
||||
cur_patch = *start_patch;
|
||||
|
||||
|
||||
@@ -916,7 +916,7 @@ ahd_linux_setup_iocell_info(u_long index, int instance, int targ, int32_t value)
|
||||
{
|
||||
|
||||
if ((instance >= 0)
|
||||
&& (instance < NUM_ELEMENTS(aic79xx_iocell_info))) {
|
||||
&& (instance < ARRAY_SIZE(aic79xx_iocell_info))) {
|
||||
uint8_t *iocell_info;
|
||||
|
||||
iocell_info = (uint8_t*)&aic79xx_iocell_info[instance];
|
||||
@@ -934,7 +934,7 @@ ahd_linux_setup_tag_info_global(char *p)
|
||||
tags = simple_strtoul(p + 1, NULL, 0) & 0xff;
|
||||
printf("Setting Global Tags= %d\n", tags);
|
||||
|
||||
for (i = 0; i < NUM_ELEMENTS(aic79xx_tag_info); i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(aic79xx_tag_info); i++) {
|
||||
for (j = 0; j < AHD_NUM_TARGETS; j++) {
|
||||
aic79xx_tag_info[i].tag_commands[j] = tags;
|
||||
}
|
||||
@@ -946,7 +946,7 @@ ahd_linux_setup_tag_info(u_long arg, int instance, int targ, int32_t value)
|
||||
{
|
||||
|
||||
if ((instance >= 0) && (targ >= 0)
|
||||
&& (instance < NUM_ELEMENTS(aic79xx_tag_info))
|
||||
&& (instance < ARRAY_SIZE(aic79xx_tag_info))
|
||||
&& (targ < AHD_NUM_TARGETS)) {
|
||||
aic79xx_tag_info[instance].tag_commands[targ] = value & 0x1FF;
|
||||
if (bootverbose)
|
||||
@@ -1072,21 +1072,21 @@ aic79xx_setup(char *s)
|
||||
end = strchr(s, '\0');
|
||||
|
||||
/*
|
||||
* XXX ia64 gcc isn't smart enough to know that NUM_ELEMENTS
|
||||
* XXX ia64 gcc isn't smart enough to know that ARRAY_SIZE
|
||||
* will never be 0 in this case.
|
||||
*/
|
||||
n = 0;
|
||||
*/
|
||||
n = 0;
|
||||
|
||||
while ((p = strsep(&s, ",.")) != NULL) {
|
||||
if (*p == '\0')
|
||||
continue;
|
||||
for (i = 0; i < NUM_ELEMENTS(options); i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(options); i++) {
|
||||
|
||||
n = strlen(options[i].name);
|
||||
if (strncmp(options[i].name, p, n) == 0)
|
||||
break;
|
||||
}
|
||||
if (i == NUM_ELEMENTS(options))
|
||||
if (i == ARRAY_SIZE(options))
|
||||
continue;
|
||||
|
||||
if (strncmp(p, "global_tag_depth", n) == 0) {
|
||||
@@ -1294,7 +1294,7 @@ ahd_platform_init(struct ahd_softc *ahd)
|
||||
/*
|
||||
* Lookup and commit any modified IO Cell options.
|
||||
*/
|
||||
if (ahd->unit < NUM_ELEMENTS(aic79xx_iocell_info)) {
|
||||
if (ahd->unit < ARRAY_SIZE(aic79xx_iocell_info)) {
|
||||
struct ahd_linux_iocell_opts *iocell_opts;
|
||||
|
||||
iocell_opts = &aic79xx_iocell_info[ahd->unit];
|
||||
@@ -1426,7 +1426,7 @@ ahd_linux_user_tagdepth(struct ahd_softc *ahd, struct ahd_devinfo *devinfo)
|
||||
|
||||
tags = 0;
|
||||
if ((ahd->user_discenable & devinfo->target_mask) != 0) {
|
||||
if (ahd->unit >= NUM_ELEMENTS(aic79xx_tag_info)) {
|
||||
if (ahd->unit >= ARRAY_SIZE(aic79xx_tag_info)) {
|
||||
|
||||
if (warned_user == 0) {
|
||||
printf(KERN_WARNING
|
||||
|
||||
@@ -201,7 +201,7 @@ struct ahd_pci_identity ahd_pci_ident_table [] =
|
||||
}
|
||||
};
|
||||
|
||||
const u_int ahd_num_pci_devs = NUM_ELEMENTS(ahd_pci_ident_table);
|
||||
const u_int ahd_num_pci_devs = ARRAY_SIZE(ahd_pci_ident_table);
|
||||
|
||||
#define DEVCONFIG 0x40
|
||||
#define PCIXINITPAT 0x0000E000ul
|
||||
|
||||
@@ -76,11 +76,9 @@ static u_int
|
||||
ahd_calc_syncsrate(u_int period_factor)
|
||||
{
|
||||
int i;
|
||||
int num_syncrates;
|
||||
|
||||
num_syncrates = sizeof(scsi_syncrates) / sizeof(scsi_syncrates[0]);
|
||||
/* See if the period is in the "exception" table */
|
||||
for (i = 0; i < num_syncrates; i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(scsi_syncrates); i++) {
|
||||
|
||||
if (period_factor == scsi_syncrates[i].period_factor) {
|
||||
/* Period in kHz */
|
||||
|
||||
@@ -69,8 +69,6 @@ struct seeprom_descriptor;
|
||||
#define FALSE 0
|
||||
#endif
|
||||
|
||||
#define NUM_ELEMENTS(array) (sizeof(array) / sizeof(*array))
|
||||
|
||||
#define ALL_CHANNELS '\0'
|
||||
#define ALL_TARGETS_MASK 0xFFFF
|
||||
#define INITIATOR_WILDCARD (~0)
|
||||
|
||||
@@ -68,7 +68,7 @@ char *ahc_chip_names[] =
|
||||
"aic7892",
|
||||
"aic7899"
|
||||
};
|
||||
static const u_int num_chip_names = NUM_ELEMENTS(ahc_chip_names);
|
||||
static const u_int num_chip_names = ARRAY_SIZE(ahc_chip_names);
|
||||
|
||||
/*
|
||||
* Hardware error codes.
|
||||
@@ -88,7 +88,7 @@ static struct ahc_hard_error_entry ahc_hard_errors[] = {
|
||||
{ PCIERRSTAT, "PCI Error detected" },
|
||||
{ CIOPARERR, "CIOBUS Parity Error" },
|
||||
};
|
||||
static const u_int num_errors = NUM_ELEMENTS(ahc_hard_errors);
|
||||
static const u_int num_errors = ARRAY_SIZE(ahc_hard_errors);
|
||||
|
||||
static struct ahc_phase_table_entry ahc_phase_table[] =
|
||||
{
|
||||
@@ -108,7 +108,7 @@ static struct ahc_phase_table_entry ahc_phase_table[] =
|
||||
* In most cases we only wish to itterate over real phases, so
|
||||
* exclude the last element from the count.
|
||||
*/
|
||||
static const u_int num_phases = NUM_ELEMENTS(ahc_phase_table) - 1;
|
||||
static const u_int num_phases = ARRAY_SIZE(ahc_phase_table) - 1;
|
||||
|
||||
/*
|
||||
* Valid SCSIRATE values. (p. 3-17)
|
||||
@@ -6367,7 +6367,7 @@ ahc_check_patch(struct ahc_softc *ahc, struct patch **start_patch,
|
||||
struct patch *last_patch;
|
||||
u_int num_patches;
|
||||
|
||||
num_patches = sizeof(patches)/sizeof(struct patch);
|
||||
num_patches = ARRAY_SIZE(patches);
|
||||
last_patch = &patches[num_patches];
|
||||
cur_patch = *start_patch;
|
||||
|
||||
|
||||
@@ -886,7 +886,7 @@ ahc_linux_setup_tag_info_global(char *p)
|
||||
tags = simple_strtoul(p + 1, NULL, 0) & 0xff;
|
||||
printf("Setting Global Tags= %d\n", tags);
|
||||
|
||||
for (i = 0; i < NUM_ELEMENTS(aic7xxx_tag_info); i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(aic7xxx_tag_info); i++) {
|
||||
for (j = 0; j < AHC_NUM_TARGETS; j++) {
|
||||
aic7xxx_tag_info[i].tag_commands[j] = tags;
|
||||
}
|
||||
@@ -898,7 +898,7 @@ ahc_linux_setup_tag_info(u_long arg, int instance, int targ, int32_t value)
|
||||
{
|
||||
|
||||
if ((instance >= 0) && (targ >= 0)
|
||||
&& (instance < NUM_ELEMENTS(aic7xxx_tag_info))
|
||||
&& (instance < ARRAY_SIZE(aic7xxx_tag_info))
|
||||
&& (targ < AHC_NUM_TARGETS)) {
|
||||
aic7xxx_tag_info[instance].tag_commands[targ] = value & 0xff;
|
||||
if (bootverbose)
|
||||
@@ -1020,7 +1020,7 @@ aic7xxx_setup(char *s)
|
||||
end = strchr(s, '\0');
|
||||
|
||||
/*
|
||||
* XXX ia64 gcc isn't smart enough to know that NUM_ELEMENTS
|
||||
* XXX ia64 gcc isn't smart enough to know that ARRAY_SIZE
|
||||
* will never be 0 in this case.
|
||||
*/
|
||||
n = 0;
|
||||
@@ -1028,13 +1028,13 @@ aic7xxx_setup(char *s)
|
||||
while ((p = strsep(&s, ",.")) != NULL) {
|
||||
if (*p == '\0')
|
||||
continue;
|
||||
for (i = 0; i < NUM_ELEMENTS(options); i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(options); i++) {
|
||||
|
||||
n = strlen(options[i].name);
|
||||
if (strncmp(options[i].name, p, n) == 0)
|
||||
break;
|
||||
}
|
||||
if (i == NUM_ELEMENTS(options))
|
||||
if (i == ARRAY_SIZE(options))
|
||||
continue;
|
||||
|
||||
if (strncmp(p, "global_tag_depth", n) == 0) {
|
||||
@@ -1360,7 +1360,7 @@ ahc_linux_user_tagdepth(struct ahc_softc *ahc, struct ahc_devinfo *devinfo)
|
||||
|
||||
tags = 0;
|
||||
if ((ahc->user_discenable & devinfo->target_mask) != 0) {
|
||||
if (ahc->unit >= NUM_ELEMENTS(aic7xxx_tag_info)) {
|
||||
if (ahc->unit >= ARRAY_SIZE(aic7xxx_tag_info)) {
|
||||
if (warned_user == 0) {
|
||||
|
||||
printf(KERN_WARNING
|
||||
|
||||
@@ -553,7 +553,7 @@ struct ahc_pci_identity ahc_pci_ident_table [] =
|
||||
}
|
||||
};
|
||||
|
||||
const u_int ahc_num_pci_devs = NUM_ELEMENTS(ahc_pci_ident_table);
|
||||
const u_int ahc_num_pci_devs = ARRAY_SIZE(ahc_pci_ident_table);
|
||||
|
||||
#define AHC_394X_SLOT_CHANNEL_A 4
|
||||
#define AHC_394X_SLOT_CHANNEL_B 5
|
||||
|
||||
@@ -77,11 +77,9 @@ static u_int
|
||||
ahc_calc_syncsrate(u_int period_factor)
|
||||
{
|
||||
int i;
|
||||
int num_syncrates;
|
||||
|
||||
num_syncrates = sizeof(scsi_syncrates) / sizeof(scsi_syncrates[0]);
|
||||
/* See if the period is in the "exception" table */
|
||||
for (i = 0; i < num_syncrates; i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(scsi_syncrates); i++) {
|
||||
|
||||
if (period_factor == scsi_syncrates[i].period_factor) {
|
||||
/* Period in kHz */
|
||||
|
||||
Reference in New Issue
Block a user