diff --git a/drivers/ide/ide-scan-pci.c b/drivers/ide/ide-scan-pci.c index c3da53e7bb2b481735569832bfe7928b66f26756..86aa88aeb3a6b529315277f636fc07b196030d0a 100644 --- a/drivers/ide/ide-scan-pci.c +++ b/drivers/ide/ide-scan-pci.c @@ -107,5 +107,4 @@ static int __init ide_scan_pcibus(void) return 0; } - -module_init(ide_scan_pcibus); +device_initcall(ide_scan_pcibus); diff --git a/drivers/ide/ide.c b/drivers/ide/ide.c index f086ef387475989867df3ab2b34f6b8232ba7fa5..d127ace6aa5757a2e91a67d74b7c18353e1dd689 100644 --- a/drivers/ide/ide.c +++ b/drivers/ide/ide.c @@ -178,17 +178,17 @@ MODULE_PARM_DESC(pci_clock, "PCI bus clock frequency (in MHz)"); static int ide_set_dev_param_mask(const char *s, const struct kernel_param *kp) { - int a, b, i, j = 1; + unsigned int a, b, i, j = 1; unsigned int *dev_param_mask = (unsigned int *)kp->arg; /* controller . device (0 or 1) [ : 1 (set) | 0 (clear) ] */ - if (sscanf(s, "%d.%d:%d", &a, &b, &j) != 3 && - sscanf(s, "%d.%d", &a, &b) != 2) + if (sscanf(s, "%u.%u:%u", &a, &b, &j) != 3 && + sscanf(s, "%u.%u", &a, &b) != 2) return -EINVAL; i = a * MAX_DRIVES + b; - if (i >= MAX_HWIFS * MAX_DRIVES || j < 0 || j > 1) + if (i >= MAX_HWIFS * MAX_DRIVES || j > 1) return -EINVAL; if (j) @@ -246,17 +246,17 @@ static struct chs_geom ide_disks_chs[MAX_HWIFS * MAX_DRIVES]; static int ide_set_disk_chs(const char *str, struct kernel_param *kp) { - int a, b, c = 0, h = 0, s = 0, i, j = 1; + unsigned int a, b, c = 0, h = 0, s = 0, i, j = 1; /* controller . device (0 or 1) : Cylinders , Heads , Sectors */ /* controller . device (0 or 1) : 1 (use CHS) | 0 (ignore CHS) */ - if (sscanf(str, "%d.%d:%d,%d,%d", &a, &b, &c, &h, &s) != 5 && - sscanf(str, "%d.%d:%d", &a, &b, &j) != 3) + if (sscanf(str, "%u.%u:%u,%u,%u", &a, &b, &c, &h, &s) != 5 && + sscanf(str, "%u.%u:%u", &a, &b, &j) != 3) return -EINVAL; i = a * MAX_DRIVES + b; - if (i >= MAX_HWIFS * MAX_DRIVES || j < 0 || j > 1) + if (i >= MAX_HWIFS * MAX_DRIVES || j > 1) return -EINVAL; if (c > INT_MAX || h > 255 || s > 255) diff --git a/drivers/ide/it821x.c b/drivers/ide/it821x.c index f01ba4606be0eb412ea6347d9f6c14ca04801710..04029d18a6966b131e3621f3f82ce4fdde1d6309 100644 --- a/drivers/ide/it821x.c +++ b/drivers/ide/it821x.c @@ -508,7 +508,7 @@ static void it821x_quirkproc(ide_drive_t *drive) } -static struct ide_dma_ops it821x_pass_through_dma_ops = { +static const struct ide_dma_ops it821x_pass_through_dma_ops = { .dma_host_set = ide_dma_host_set, .dma_setup = ide_dma_setup, .dma_start = it821x_dma_start, diff --git a/drivers/ide/trm290.c b/drivers/ide/trm290.c index 0069f6ce74cf507071119105de916de5ead8a989..d550b379b0f11190e2d848e5d4b983201d6e71ff 100644 --- a/drivers/ide/trm290.c +++ b/drivers/ide/trm290.c @@ -314,7 +314,7 @@ static const struct ide_tp_ops trm290_tp_ops = { .output_data = ide_output_data, }; -static struct ide_dma_ops trm290_dma_ops = { +static const struct ide_dma_ops trm290_dma_ops = { .dma_host_set = trm290_dma_host_set, .dma_setup = trm290_dma_setup, .dma_start = trm290_dma_start,