ide: remove obsoleted "idebus=" kernel parameter
* Remove obsoleted "idebus=" kernel parameter. * Remove no longer needed ide_system_bus_speed() and system_bus_clock() (together with idebus_parameter and system_bus_speed variables). Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
Родитель
681a561b7e
Коммит
30e5ee4d1a
|
@ -86,9 +86,6 @@ static const u8 ide_hwif_to_major[] = { IDE0_MAJOR, IDE1_MAJOR,
|
||||||
IDE6_MAJOR, IDE7_MAJOR,
|
IDE6_MAJOR, IDE7_MAJOR,
|
||||||
IDE8_MAJOR, IDE9_MAJOR };
|
IDE8_MAJOR, IDE9_MAJOR };
|
||||||
|
|
||||||
static int idebus_parameter; /* holds the "idebus=" parameter */
|
|
||||||
static int system_bus_speed; /* holds what we think is VESA/PCI bus speed */
|
|
||||||
|
|
||||||
DEFINE_MUTEX(ide_cfg_mtx);
|
DEFINE_MUTEX(ide_cfg_mtx);
|
||||||
__cacheline_aligned_in_smp DEFINE_SPINLOCK(ide_lock);
|
__cacheline_aligned_in_smp DEFINE_SPINLOCK(ide_lock);
|
||||||
|
|
||||||
|
@ -189,38 +186,6 @@ static void __init init_ide_data (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* ide_system_bus_speed - guess bus speed
|
|
||||||
*
|
|
||||||
* ide_system_bus_speed() returns what we think is the system VESA/PCI
|
|
||||||
* bus speed (in MHz). This is used for calculating interface PIO timings.
|
|
||||||
* The default is 40 for known PCI systems, 50 otherwise.
|
|
||||||
* The "idebus=xx" parameter can be used to override this value.
|
|
||||||
* The actual value to be used is computed/displayed the first time
|
|
||||||
* through. Drivers should only use this as a last resort.
|
|
||||||
*
|
|
||||||
* Returns a guessed speed in MHz.
|
|
||||||
*/
|
|
||||||
|
|
||||||
static int ide_system_bus_speed(void)
|
|
||||||
{
|
|
||||||
#ifdef CONFIG_PCI
|
|
||||||
static struct pci_device_id pci_default[] = {
|
|
||||||
{ PCI_DEVICE(PCI_ANY_ID, PCI_ANY_ID) },
|
|
||||||
{ }
|
|
||||||
};
|
|
||||||
#else
|
|
||||||
#define pci_default 0
|
|
||||||
#endif /* CONFIG_PCI */
|
|
||||||
|
|
||||||
/* user supplied value */
|
|
||||||
if (idebus_parameter)
|
|
||||||
return idebus_parameter;
|
|
||||||
|
|
||||||
/* safe default value for PCI or VESA and PCI*/
|
|
||||||
return pci_dev_present(pci_default) ? 33 : 50;
|
|
||||||
}
|
|
||||||
|
|
||||||
void ide_remove_port_from_hwgroup(ide_hwif_t *hwif)
|
void ide_remove_port_from_hwgroup(ide_hwif_t *hwif)
|
||||||
{
|
{
|
||||||
ide_hwgroup_t *hwgroup = hwif->hwgroup;
|
ide_hwgroup_t *hwgroup = hwif->hwgroup;
|
||||||
|
@ -540,20 +505,6 @@ static int set_unmaskirq(ide_drive_t *drive, int arg)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* system_bus_clock - clock guess
|
|
||||||
*
|
|
||||||
* External version of the bus clock guess used by very old IDE drivers
|
|
||||||
* for things like VLB timings. Should not be used.
|
|
||||||
*/
|
|
||||||
|
|
||||||
int system_bus_clock (void)
|
|
||||||
{
|
|
||||||
return system_bus_speed;
|
|
||||||
}
|
|
||||||
|
|
||||||
EXPORT_SYMBOL(system_bus_clock);
|
|
||||||
|
|
||||||
static int generic_ide_suspend(struct device *dev, pm_message_t mesg)
|
static int generic_ide_suspend(struct device *dev, pm_message_t mesg)
|
||||||
{
|
{
|
||||||
ide_drive_t *drive = dev->driver_data;
|
ide_drive_t *drive = dev->driver_data;
|
||||||
|
@ -851,7 +802,7 @@ static int __init ide_setup(char *s)
|
||||||
if (strncmp(s,"hd",2) == 0 && s[2] == '=') /* hd= is for hd.c */
|
if (strncmp(s,"hd",2) == 0 && s[2] == '=') /* hd= is for hd.c */
|
||||||
return 0; /* driver and not us */
|
return 0; /* driver and not us */
|
||||||
|
|
||||||
if (strncmp(s,"ide",3) && strncmp(s,"idebus",6) && strncmp(s,"hd",2))
|
if (strncmp(s, "ide", 3) && strncmp(s, "hd", 2))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
printk(KERN_INFO "ide_setup: %s", s);
|
printk(KERN_INFO "ide_setup: %s", s);
|
||||||
|
@ -951,21 +902,6 @@ static int __init ide_setup(char *s)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s[0] != 'i' || s[1] != 'd' || s[2] != 'e')
|
|
||||||
goto bad_option;
|
|
||||||
/*
|
|
||||||
* Look for bus speed option: "idebus="
|
|
||||||
*/
|
|
||||||
if (s[3] == 'b' && s[4] == 'u' && s[5] == 's') {
|
|
||||||
if (match_parm(&s[6], NULL, vals, 1) != 1)
|
|
||||||
goto bad_option;
|
|
||||||
if (vals[0] >= 20 && vals[0] <= 66) {
|
|
||||||
idebus_parameter = vals[0];
|
|
||||||
} else
|
|
||||||
printk(" -- BAD BUS SPEED! Expected value from 20 to 66");
|
|
||||||
goto obsolete_option;
|
|
||||||
}
|
|
||||||
|
|
||||||
bad_option:
|
bad_option:
|
||||||
printk(" -- BAD OPTION\n");
|
printk(" -- BAD OPTION\n");
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -1287,11 +1223,6 @@ static int __init ide_init(void)
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
printk(KERN_INFO "Uniform Multi-Platform E-IDE driver\n");
|
printk(KERN_INFO "Uniform Multi-Platform E-IDE driver\n");
|
||||||
system_bus_speed = ide_system_bus_speed();
|
|
||||||
|
|
||||||
printk(KERN_INFO "ide: Assuming %dMHz system bus speed "
|
|
||||||
"for PIO modes%s\n", system_bus_speed,
|
|
||||||
idebus_parameter ? "" : "; override with idebus=xx");
|
|
||||||
|
|
||||||
ret = bus_register(&ide_bus_type);
|
ret = bus_register(&ide_bus_type);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
|
|
|
@ -116,7 +116,7 @@ static void ali14xx_set_pio_mode(ide_drive_t *drive, const u8 pio)
|
||||||
int time1, time2;
|
int time1, time2;
|
||||||
u8 param1, param2, param3, param4;
|
u8 param1, param2, param3, param4;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
int bus_speed = ide_vlb_clk ? ide_vlb_clk : system_bus_clock();
|
int bus_speed = ide_vlb_clk ? ide_vlb_clk : 50;
|
||||||
|
|
||||||
/* calculate timing, according to PIO mode */
|
/* calculate timing, according to PIO mode */
|
||||||
time1 = ide_pio_cycle_time(drive, pio);
|
time1 = ide_pio_cycle_time(drive, pio);
|
||||||
|
|
|
@ -212,7 +212,7 @@ static u8 ht_pio2timings(ide_drive_t *drive, const u8 pio)
|
||||||
{
|
{
|
||||||
int active_time, recovery_time;
|
int active_time, recovery_time;
|
||||||
int active_cycles, recovery_cycles;
|
int active_cycles, recovery_cycles;
|
||||||
int bus_speed = ide_vlb_clk ? ide_vlb_clk : system_bus_clock();
|
int bus_speed = ide_vlb_clk ? ide_vlb_clk : 50;
|
||||||
|
|
||||||
if (pio) {
|
if (pio) {
|
||||||
unsigned int cycle_time;
|
unsigned int cycle_time;
|
||||||
|
|
|
@ -110,7 +110,7 @@ static void qd65xx_select(ide_drive_t *drive)
|
||||||
|
|
||||||
static u8 qd6500_compute_timing (ide_hwif_t *hwif, int active_time, int recovery_time)
|
static u8 qd6500_compute_timing (ide_hwif_t *hwif, int active_time, int recovery_time)
|
||||||
{
|
{
|
||||||
int clk = ide_vlb_clk ? ide_vlb_clk : system_bus_clock();
|
int clk = ide_vlb_clk ? ide_vlb_clk : 50;
|
||||||
u8 act_cyc, rec_cyc;
|
u8 act_cyc, rec_cyc;
|
||||||
|
|
||||||
if (clk <= 33) {
|
if (clk <= 33) {
|
||||||
|
@ -132,7 +132,7 @@ static u8 qd6500_compute_timing (ide_hwif_t *hwif, int active_time, int recovery
|
||||||
|
|
||||||
static u8 qd6580_compute_timing (int active_time, int recovery_time)
|
static u8 qd6580_compute_timing (int active_time, int recovery_time)
|
||||||
{
|
{
|
||||||
int clk = ide_vlb_clk ? ide_vlb_clk : system_bus_clock();
|
int clk = ide_vlb_clk ? ide_vlb_clk : 50;
|
||||||
u8 act_cyc, rec_cyc;
|
u8 act_cyc, rec_cyc;
|
||||||
|
|
||||||
act_cyc = 17 - IDE_IN(active_time * clk / 1000 + 1, 2, 17);
|
act_cyc = 17 - IDE_IN(active_time * clk / 1000 + 1, 2, 17);
|
||||||
|
|
|
@ -140,7 +140,7 @@ static void aec_set_pio_mode(ide_drive_t *drive, const u8 pio)
|
||||||
|
|
||||||
static unsigned int __devinit init_chipset_aec62xx(struct pci_dev *dev, const char *name)
|
static unsigned int __devinit init_chipset_aec62xx(struct pci_dev *dev, const char *name)
|
||||||
{
|
{
|
||||||
int bus_speed = ide_pci_clk ? ide_pci_clk : system_bus_clock();
|
int bus_speed = ide_pci_clk ? ide_pci_clk : 33;
|
||||||
|
|
||||||
if (bus_speed <= 33)
|
if (bus_speed <= 33)
|
||||||
pci_set_drvdata(dev, (void *) aec6xxx_33_base);
|
pci_set_drvdata(dev, (void *) aec6xxx_33_base);
|
||||||
|
|
|
@ -72,7 +72,7 @@ static void ali_set_pio_mode(ide_drive_t *drive, const u8 pio)
|
||||||
int s_time, a_time, c_time;
|
int s_time, a_time, c_time;
|
||||||
u8 s_clc, a_clc, r_clc;
|
u8 s_clc, a_clc, r_clc;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
int bus_speed = ide_pci_clk ? ide_pci_clk : system_bus_clock();
|
int bus_speed = ide_pci_clk ? ide_pci_clk : 33;
|
||||||
int port = hwif->channel ? 0x5c : 0x58;
|
int port = hwif->channel ? 0x5c : 0x58;
|
||||||
int portFIFO = hwif->channel ? 0x55 : 0x54;
|
int portFIFO = hwif->channel ? 0x55 : 0x54;
|
||||||
u8 cd_dma_fifo = 0;
|
u8 cd_dma_fifo = 0;
|
||||||
|
|
|
@ -179,7 +179,7 @@ static unsigned int __devinit init_chipset_amd74xx(struct pci_dev *dev,
|
||||||
* Determine the system bus clock.
|
* Determine the system bus clock.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
amd_clock = (ide_pci_clk ? ide_pci_clk : system_bus_clock()) * 1000;
|
amd_clock = (ide_pci_clk ? ide_pci_clk : 33) * 1000;
|
||||||
|
|
||||||
switch (amd_clock) {
|
switch (amd_clock) {
|
||||||
case 33000: amd_clock = 33333; break;
|
case 33000: amd_clock = 33333; break;
|
||||||
|
|
|
@ -525,12 +525,10 @@ static void cmd640_set_mode(ide_drive_t *drive, unsigned int index,
|
||||||
u8 setup_count, active_count, recovery_count, recovery_count2, cycle_count;
|
u8 setup_count, active_count, recovery_count, recovery_count2, cycle_count;
|
||||||
int bus_speed;
|
int bus_speed;
|
||||||
|
|
||||||
if (cmd640_vlb && ide_vlb_clk)
|
if (cmd640_vlb)
|
||||||
bus_speed = ide_vlb_clk;
|
bus_speed = ide_vlb_clk ? ide_vlb_clk : 50;
|
||||||
else if (!cmd640_vlb && ide_pci_clk)
|
|
||||||
bus_speed = ide_pci_clk;
|
|
||||||
else
|
else
|
||||||
bus_speed = system_bus_clock();
|
bus_speed = ide_pci_clk ? ide_pci_clk : 33;
|
||||||
|
|
||||||
if (pio_mode > 5)
|
if (pio_mode > 5)
|
||||||
pio_mode = 5;
|
pio_mode = 5;
|
||||||
|
|
|
@ -69,7 +69,7 @@ static u8 quantize_timing(int timing, int quant)
|
||||||
static void program_cycle_times (ide_drive_t *drive, int cycle_time, int active_time)
|
static void program_cycle_times (ide_drive_t *drive, int cycle_time, int active_time)
|
||||||
{
|
{
|
||||||
struct pci_dev *dev = to_pci_dev(drive->hwif->dev);
|
struct pci_dev *dev = to_pci_dev(drive->hwif->dev);
|
||||||
int clock_time = 1000 / (ide_pci_clk ? ide_pci_clk : system_bus_clock());
|
int clock_time = 1000 / (ide_pci_clk ? ide_pci_clk : 33);
|
||||||
u8 cycle_count, active_count, recovery_count, drwtim;
|
u8 cycle_count, active_count, recovery_count, drwtim;
|
||||||
static const u8 recovery_values[] =
|
static const u8 recovery_values[] =
|
||||||
{15, 15, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0};
|
{15, 15, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0};
|
||||||
|
@ -128,7 +128,7 @@ static void cmd64x_tune_pio(ide_drive_t *drive, const u8 pio)
|
||||||
ide_pio_timings[pio].active_time);
|
ide_pio_timings[pio].active_time);
|
||||||
|
|
||||||
setup_count = quantize_timing(ide_pio_timings[pio].setup_time,
|
setup_count = quantize_timing(ide_pio_timings[pio].setup_time,
|
||||||
1000 / (ide_pci_clk ? ide_pci_clk : system_bus_clock()));
|
1000 / (ide_pci_clk ? ide_pci_clk : 33));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The primary channel has individual address setup timing registers
|
* The primary channel has individual address setup timing registers
|
||||||
|
|
|
@ -134,7 +134,7 @@ static int calc_clk(int time, int bus_speed)
|
||||||
static void compute_clocks(u8 pio, pio_clocks_t *p_pclk)
|
static void compute_clocks(u8 pio, pio_clocks_t *p_pclk)
|
||||||
{
|
{
|
||||||
int clk1, clk2;
|
int clk1, clk2;
|
||||||
int bus_speed = ide_pci_clk ? ide_pci_clk : system_bus_clock();
|
int bus_speed = ide_pci_clk ? ide_pci_clk : 33;
|
||||||
|
|
||||||
/* we don't check against CY82C693's min and max speed,
|
/* we don't check against CY82C693's min and max speed,
|
||||||
* so you can play with the idebus=xx parameter
|
* so you can play with the idebus=xx parameter
|
||||||
|
|
|
@ -340,7 +340,7 @@ static unsigned int __devinit init_chipset_via82cxxx(struct pci_dev *dev, const
|
||||||
* Determine system bus clock.
|
* Determine system bus clock.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
via_clock = (ide_pci_clk ? ide_pci_clk : system_bus_clock()) * 1000;
|
via_clock = (ide_pci_clk ? ide_pci_clk : 33) * 1000;
|
||||||
|
|
||||||
switch (via_clock) {
|
switch (via_clock) {
|
||||||
case 33000: via_clock = 33333; break;
|
case 33000: via_clock = 33333; break;
|
||||||
|
|
|
@ -994,8 +994,6 @@ int ide_taskfile_ioctl(ide_drive_t *, unsigned int, unsigned long);
|
||||||
int ide_cmd_ioctl(ide_drive_t *, unsigned int, unsigned long);
|
int ide_cmd_ioctl(ide_drive_t *, unsigned int, unsigned long);
|
||||||
int ide_task_ioctl(ide_drive_t *, unsigned int, unsigned long);
|
int ide_task_ioctl(ide_drive_t *, unsigned int, unsigned long);
|
||||||
|
|
||||||
extern int system_bus_clock(void);
|
|
||||||
|
|
||||||
extern int ide_driveid_update(ide_drive_t *);
|
extern int ide_driveid_update(ide_drive_t *);
|
||||||
extern int ide_config_drive_speed(ide_drive_t *, u8);
|
extern int ide_config_drive_speed(ide_drive_t *, u8);
|
||||||
extern u8 eighty_ninty_three (ide_drive_t *);
|
extern u8 eighty_ninty_three (ide_drive_t *);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче