mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (58 commits)
ide: remove ide_init_default_irq() macro
ide: move default IDE ports setup to ide_generic host driver
ide: remove obsoleted "idex=noprobe" kernel parameter (take 2)
ide: remove needless hwif->irq check from ide_hwif_configure()
ide: init hwif->{io_ports,irq} explicitly in legacy VLB host drivers
ide: limit legacy VLB host drivers to alpha, x86 and mips
cmd640: init hwif->{io_ports,irq} explicitly
cmd640: cleanup setup_device_ptrs()
ide: add ide-4drives host driver (take 3)
ide: remove ppc ifdef from init_ide_data()
ide: remove ide_default_io_ctl() macro
ide: remove CONFIG_IDE_ARCH_OBSOLETE_INIT
ide: add CONFIG_IDE_ARCH_OBSOLETE_DEFAULTS (take 2)
ppc/pmac: remove no longer needed IDE quirk
ppc: don't include <linux/ide.h>
ppc: remove ppc_ide_md
ppc/pplus: remove ppc_ide_md.ide_init_hwif hook
ppc/sandpoint: remove ppc_ide_md hooks
ppc/lopec: remove ppc_ide_md hooks
ppc/mpc8xx: remove ppc_ide_md hooks
...
This commit is contained in:
commit
188da98800
93 changed files with 1336 additions and 2106 deletions
|
|
@ -189,7 +189,7 @@ CONFIG_IDE_TASKFILE_IO=y
|
|||
#
|
||||
# IDE chipset support/bugfixes
|
||||
#
|
||||
CONFIG_IDE_GENERIC=y
|
||||
CONFIG_BLK_DEV_SL82C105=y
|
||||
# CONFIG_BLK_DEV_IDEPCI is not set
|
||||
# CONFIG_BLK_DEV_IDEDMA is not set
|
||||
# CONFIG_IDEDMA_AUTO is not set
|
||||
|
|
|
|||
|
|
@ -12,7 +12,6 @@
|
|||
#include <linux/irq.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/pm.h>
|
||||
#include <linux/bitops.h>
|
||||
|
||||
|
|
@ -124,10 +123,6 @@ EXPORT_SYMBOL(__ioremap);
|
|||
EXPORT_SYMBOL(iounmap);
|
||||
EXPORT_SYMBOL(ioremap_bot); /* aka VMALLOC_END */
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
EXPORT_SYMBOL(ppc_ide_md);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PCI
|
||||
EXPORT_SYMBOL(isa_io_base);
|
||||
EXPORT_SYMBOL(isa_mem_base);
|
||||
|
|
|
|||
|
|
@ -10,7 +10,6 @@
|
|||
#include <linux/reboot.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/screen_info.h>
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/seq_file.h>
|
||||
|
|
@ -57,7 +56,6 @@ extern void ppc6xx_idle(void);
|
|||
extern void power4_idle(void);
|
||||
|
||||
extern boot_infos_t *boot_infos;
|
||||
struct ide_machdep_calls ppc_ide_md;
|
||||
|
||||
/* Used with the BI_MEMSIZE bootinfo parameter to store the memory
|
||||
size value reported by the boot loader. */
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
#include <linux/blkdev.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
|
|
|||
|
|
@ -25,7 +25,6 @@
|
|||
#include <linux/blkdev.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
#include <linux/blkdev.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
#include <linux/blkdev.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
#include <linux/blkdev.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
|
|
|||
|
|
@ -24,7 +24,6 @@
|
|||
#include <linux/blkdev.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
#include <linux/initrd.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/serial.h>
|
||||
#include <linux/serial_core.h>
|
||||
#include <linux/serial_8250.h>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,6 @@
|
|||
*/
|
||||
#include <linux/delay.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/irq.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/seq_file.h>
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
#include <linux/delay.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/irq.h>
|
||||
#include <linux/fs.h>
|
||||
#include <linux/seq_file.h>
|
||||
|
|
|
|||
|
|
@ -16,7 +16,6 @@
|
|||
#include <linux/pci.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/irq.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/platform_device.h>
|
||||
|
||||
|
|
@ -604,41 +603,6 @@ static void parse_bootinfo(unsigned long r3,
|
|||
}
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
static void
|
||||
hdpu_ide_request_region(ide_ioreg_t from, unsigned int extent, const char *name)
|
||||
{
|
||||
request_region(from, extent, name);
|
||||
return;
|
||||
}
|
||||
|
||||
static void hdpu_ide_release_region(ide_ioreg_t from, unsigned int extent)
|
||||
{
|
||||
release_region(from, extent);
|
||||
return;
|
||||
}
|
||||
|
||||
static void __init
|
||||
hdpu_ide_pci_init_hwif_ports(hw_regs_t * hw, ide_ioreg_t data_port,
|
||||
ide_ioreg_t ctrl_port, int *irq)
|
||||
{
|
||||
struct pci_dev *dev;
|
||||
|
||||
pci_for_each_dev(dev) {
|
||||
if (((dev->class >> 8) == PCI_CLASS_STORAGE_IDE) ||
|
||||
((dev->class >> 8) == PCI_CLASS_STORAGE_RAID)) {
|
||||
hw->irq = dev->irq;
|
||||
|
||||
if (irq != NULL) {
|
||||
*irq = dev->irq;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
void hdpu_heartbeat(void)
|
||||
{
|
||||
if (mv64x60_read(&bh, MV64x60_GPP_VALUE) & (1 << 5))
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@
|
|||
#include <linux/pci_ids.h>
|
||||
#include <linux/ioport.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/console.h>
|
||||
|
|
@ -168,85 +167,6 @@ lopec_power_off(void)
|
|||
lopec_halt();
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
int lopec_ide_ports_known = 0;
|
||||
static unsigned long lopec_ide_regbase[MAX_HWIFS];
|
||||
static unsigned long lopec_ide_ctl_regbase[MAX_HWIFS];
|
||||
static unsigned long lopec_idedma_regbase;
|
||||
|
||||
static void
|
||||
lopec_ide_probe(void)
|
||||
{
|
||||
struct pci_dev *dev = pci_get_device(PCI_VENDOR_ID_WINBOND,
|
||||
PCI_DEVICE_ID_WINBOND_82C105,
|
||||
NULL);
|
||||
lopec_ide_ports_known = 1;
|
||||
|
||||
if (dev) {
|
||||
lopec_ide_regbase[0] = dev->resource[0].start;
|
||||
lopec_ide_regbase[1] = dev->resource[2].start;
|
||||
lopec_ide_ctl_regbase[0] = dev->resource[1].start;
|
||||
lopec_ide_ctl_regbase[1] = dev->resource[3].start;
|
||||
lopec_idedma_regbase = dev->resource[4].start;
|
||||
pci_dev_put(dev);
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
lopec_ide_default_irq(unsigned long base)
|
||||
{
|
||||
if (lopec_ide_ports_known == 0)
|
||||
lopec_ide_probe();
|
||||
|
||||
if (base == lopec_ide_regbase[0])
|
||||
return 14;
|
||||
else if (base == lopec_ide_regbase[1])
|
||||
return 15;
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
static unsigned long
|
||||
lopec_ide_default_io_base(int index)
|
||||
{
|
||||
if (lopec_ide_ports_known == 0)
|
||||
lopec_ide_probe();
|
||||
return lopec_ide_regbase[index];
|
||||
}
|
||||
|
||||
static void __init
|
||||
lopec_ide_init_hwif_ports(hw_regs_t *hw, unsigned long data,
|
||||
unsigned long ctl, int *irq)
|
||||
{
|
||||
unsigned long reg = data;
|
||||
uint alt_status_base;
|
||||
int i;
|
||||
|
||||
for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++)
|
||||
hw->io_ports[i] = reg++;
|
||||
|
||||
if (data == lopec_ide_regbase[0]) {
|
||||
alt_status_base = lopec_ide_ctl_regbase[0] + 2;
|
||||
hw->irq = 14;
|
||||
} else if (data == lopec_ide_regbase[1]) {
|
||||
alt_status_base = lopec_ide_ctl_regbase[1] + 2;
|
||||
hw->irq = 15;
|
||||
} else {
|
||||
alt_status_base = 0;
|
||||
hw->irq = 0;
|
||||
}
|
||||
|
||||
if (ctl)
|
||||
hw->io_ports[IDE_CONTROL_OFFSET] = ctl;
|
||||
else
|
||||
hw->io_ports[IDE_CONTROL_OFFSET] = alt_status_base;
|
||||
|
||||
if (irq != NULL)
|
||||
*irq = hw->irq;
|
||||
|
||||
}
|
||||
#endif /* BLK_DEV_IDE */
|
||||
|
||||
static void __init
|
||||
lopec_init_IRQ(void)
|
||||
{
|
||||
|
|
@ -384,11 +304,6 @@ platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
|
|||
ppc_md.nvram_read_val = todc_direct_read_val;
|
||||
ppc_md.nvram_write_val = todc_direct_write_val;
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
ppc_ide_md.default_irq = lopec_ide_default_irq;
|
||||
ppc_ide_md.default_io_base = lopec_ide_default_io_base;
|
||||
ppc_ide_md.ide_init_hwif = lopec_ide_init_hwif_ports;
|
||||
#endif
|
||||
#ifdef CONFIG_SERIAL_TEXT_DEBUG
|
||||
ppc_md.progress = gen550_progress;
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -17,7 +17,6 @@
|
|||
#include <linux/initrd.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/kdev_t.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
|
|
|||
|
|
@ -25,7 +25,6 @@
|
|||
#include <linux/delay.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
||||
#include <asm/byteorder.h>
|
||||
|
|
|
|||
|
|
@ -19,7 +19,6 @@
|
|||
#include <linux/ioport.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
||||
|
|
@ -668,57 +667,6 @@ static void __init pplus_init_IRQ(void)
|
|||
ppc_md.progress("init_irq: exit", 0);
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
/*
|
||||
* IDE stuff.
|
||||
*/
|
||||
static int pplus_ide_default_irq(unsigned long base)
|
||||
{
|
||||
switch (base) {
|
||||
case 0x1f0:
|
||||
return 14;
|
||||
case 0x170:
|
||||
return 15;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
static unsigned long pplus_ide_default_io_base(int index)
|
||||
{
|
||||
switch (index) {
|
||||
case 0:
|
||||
return 0x1f0;
|
||||
case 1:
|
||||
return 0x170;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
static void __init
|
||||
pplus_ide_init_hwif_ports(hw_regs_t * hw, unsigned long data_port,
|
||||
unsigned long ctrl_port, int *irq)
|
||||
{
|
||||
unsigned long reg = data_port;
|
||||
int i;
|
||||
|
||||
for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) {
|
||||
hw->io_ports[i] = reg;
|
||||
reg += 1;
|
||||
}
|
||||
|
||||
if (ctrl_port)
|
||||
hw->io_ports[IDE_CONTROL_OFFSET] = ctrl_port;
|
||||
else
|
||||
hw->io_ports[IDE_CONTROL_OFFSET] =
|
||||
hw->io_ports[IDE_DATA_OFFSET] + 0x206;
|
||||
|
||||
if (irq != NULL)
|
||||
*irq = pplus_ide_default_irq(data_port);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
/* PowerPlus (MTX) support */
|
||||
static int __init smp_pplus_probe(void)
|
||||
|
|
@ -884,12 +832,6 @@ platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
|
|||
ppc_md.find_end_of_memory = pplus_find_end_of_memory;
|
||||
ppc_md.setup_io_mappings = pplus_map_io;
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
ppc_ide_md.default_irq = pplus_ide_default_irq;
|
||||
ppc_ide_md.default_io_base = pplus_ide_default_io_base;
|
||||
ppc_ide_md.ide_init_hwif = pplus_ide_init_hwif_ports;
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SERIAL_TEXT_DEBUG
|
||||
ppc_md.progress = gen550_progress;
|
||||
#endif /* CONFIG_SERIAL_TEXT_DEBUG */
|
||||
|
|
|
|||
|
|
@ -33,7 +33,6 @@
|
|||
#include <linux/console.h>
|
||||
#include <linux/timex.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
|
||||
|
|
@ -894,38 +893,6 @@ prep_init_IRQ(void)
|
|||
i8259_init(MPC10X_MAPA_PCI_INTACK_ADDR, 0);
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
/*
|
||||
* IDE stuff.
|
||||
*/
|
||||
static int
|
||||
prep_ide_default_irq(unsigned long base)
|
||||
{
|
||||
switch (base) {
|
||||
case 0x1f0: return 13;
|
||||
case 0x170: return 13;
|
||||
case 0x1e8: return 11;
|
||||
case 0x168: return 10;
|
||||
case 0xfff0: return 14; /* MCP(N)750 ide0 */
|
||||
case 0xffe0: return 15; /* MCP(N)750 ide1 */
|
||||
default: return 0;
|
||||
}
|
||||
}
|
||||
|
||||
static unsigned long
|
||||
prep_ide_default_io_base(int index)
|
||||
{
|
||||
switch (index) {
|
||||
case 0: return 0x1f0;
|
||||
case 1: return 0x170;
|
||||
case 2: return 0x1e8;
|
||||
case 3: return 0x168;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
/* PReP (MTX) support */
|
||||
static int __init
|
||||
|
|
@ -1070,11 +1037,6 @@ prep_init(unsigned long r3, unsigned long r4, unsigned long r5,
|
|||
|
||||
ppc_md.setup_io_mappings = prep_map_io;
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
ppc_ide_md.default_irq = prep_ide_default_irq;
|
||||
ppc_ide_md.default_io_base = prep_ide_default_io_base;
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
smp_ops = &prep_smp_ops;
|
||||
#endif /* CONFIG_SMP */
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/root_dev.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/serial_reg.h>
|
||||
|
|
|
|||
|
|
@ -20,7 +20,6 @@
|
|||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/root_dev.h>
|
||||
#include <linux/harrier_defs.h>
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,6 @@
|
|||
#include <linux/initrd.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
#include <linux/serial.h>
|
||||
|
|
|
|||
|
|
@ -38,7 +38,6 @@
|
|||
#include <linux/init.h>
|
||||
#include <linux/ioport.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/ide.h>
|
||||
|
||||
#include <asm/sections.h>
|
||||
#include <asm/mmu.h>
|
||||
|
|
|
|||
|
|
@ -71,7 +71,6 @@
|
|||
#include <linux/initrd.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/root_dev.h>
|
||||
#include <linux/serial.h>
|
||||
|
|
@ -559,93 +558,6 @@ sandpoint_show_cpuinfo(struct seq_file *m)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
/*
|
||||
* IDE support.
|
||||
*/
|
||||
static int sandpoint_ide_ports_known = 0;
|
||||
static unsigned long sandpoint_ide_regbase[MAX_HWIFS];
|
||||
static unsigned long sandpoint_ide_ctl_regbase[MAX_HWIFS];
|
||||
static unsigned long sandpoint_idedma_regbase;
|
||||
|
||||
static void
|
||||
sandpoint_ide_probe(void)
|
||||
{
|
||||
struct pci_dev *pdev = pci_get_device(PCI_VENDOR_ID_WINBOND,
|
||||
PCI_DEVICE_ID_WINBOND_82C105, NULL);
|
||||
|
||||
if (pdev) {
|
||||
sandpoint_ide_regbase[0]=pdev->resource[0].start;
|
||||
sandpoint_ide_regbase[1]=pdev->resource[2].start;
|
||||
sandpoint_ide_ctl_regbase[0]=pdev->resource[1].start;
|
||||
sandpoint_ide_ctl_regbase[1]=pdev->resource[3].start;
|
||||
sandpoint_idedma_regbase=pdev->resource[4].start;
|
||||
pci_dev_put(pdev);
|
||||
}
|
||||
|
||||
sandpoint_ide_ports_known = 1;
|
||||
}
|
||||
|
||||
static int
|
||||
sandpoint_ide_default_irq(unsigned long base)
|
||||
{
|
||||
if (sandpoint_ide_ports_known == 0)
|
||||
sandpoint_ide_probe();
|
||||
|
||||
if (base == sandpoint_ide_regbase[0])
|
||||
return SANDPOINT_IDE_INT0;
|
||||
else if (base == sandpoint_ide_regbase[1])
|
||||
return SANDPOINT_IDE_INT1;
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
static unsigned long
|
||||
sandpoint_ide_default_io_base(int index)
|
||||
{
|
||||
if (sandpoint_ide_ports_known == 0)
|
||||
sandpoint_ide_probe();
|
||||
|
||||
return sandpoint_ide_regbase[index];
|
||||
}
|
||||
|
||||
static void __init
|
||||
sandpoint_ide_init_hwif_ports(hw_regs_t *hw, unsigned long data_port,
|
||||
unsigned long ctrl_port, int *irq)
|
||||
{
|
||||
unsigned long reg = data_port;
|
||||
uint alt_status_base;
|
||||
int i;
|
||||
|
||||
for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) {
|
||||
hw->io_ports[i] = reg++;
|
||||
}
|
||||
|
||||
if (data_port == sandpoint_ide_regbase[0]) {
|
||||
alt_status_base = sandpoint_ide_ctl_regbase[0] + 2;
|
||||
hw->irq = 14;
|
||||
}
|
||||
else if (data_port == sandpoint_ide_regbase[1]) {
|
||||
alt_status_base = sandpoint_ide_ctl_regbase[1] + 2;
|
||||
hw->irq = 15;
|
||||
}
|
||||
else {
|
||||
alt_status_base = 0;
|
||||
hw->irq = 0;
|
||||
}
|
||||
|
||||
if (ctrl_port) {
|
||||
hw->io_ports[IDE_CONTROL_OFFSET] = ctrl_port;
|
||||
} else {
|
||||
hw->io_ports[IDE_CONTROL_OFFSET] = alt_status_base;
|
||||
}
|
||||
|
||||
if (irq != NULL) {
|
||||
*irq = hw->irq;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Set BAT 3 to map 0xf8000000 to end of physical memory space 1-to-1.
|
||||
*/
|
||||
|
|
@ -736,10 +648,4 @@ platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
|
|||
#ifdef CONFIG_SERIAL_TEXT_DEBUG
|
||||
ppc_md.progress = gen550_progress;
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
|
||||
ppc_ide_md.default_irq = sandpoint_ide_default_irq;
|
||||
ppc_ide_md.default_io_base = sandpoint_ide_default_io_base;
|
||||
ppc_ide_md.ide_init_hwif = sandpoint_ide_init_hwif_ports;
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,9 +28,6 @@
|
|||
*/
|
||||
#define SANDPOINT_IDE_INT0 23 /* EPIC 7 */
|
||||
#define SANDPOINT_IDE_INT1 24 /* EPIC 8 */
|
||||
#else
|
||||
#define SANDPOINT_IDE_INT0 14 /* 8259 Test */
|
||||
#define SANDPOINT_IDE_INT1 15 /* 8259 Test */
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
#include <linux/console.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/root_dev.h>
|
||||
#include <linux/serial.h>
|
||||
#include <linux/tty.h>
|
||||
|
|
|
|||
|
|
@ -87,8 +87,6 @@ void m8xx_calibrate_decr(void);
|
|||
|
||||
unsigned char __res[sizeof(bd_t)];
|
||||
|
||||
extern void m8xx_ide_init(void);
|
||||
|
||||
extern unsigned long find_available_memory(void);
|
||||
extern void m8xx_cpm_reset(void);
|
||||
extern void m8xx_wdt_handler_install(bd_t *bp);
|
||||
|
|
@ -474,8 +472,4 @@ platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
|
|||
|
||||
ppc_md.find_end_of_memory = m8xx_find_end_of_memory;
|
||||
ppc_md.setup_io_mappings = m8xx_map_io;
|
||||
|
||||
#if defined(CONFIG_BLK_DEV_MPC8xx_IDE)
|
||||
m8xx_ide_init();
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -24,7 +24,6 @@
|
|||
#include <linux/pci.h>
|
||||
#include <linux/rtc.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/ide.h>
|
||||
#include <linux/serial_reg.h>
|
||||
#include <linux/seq_file.h>
|
||||
|
||||
|
|
@ -189,24 +188,6 @@ ppc4xx_calibrate_decr(void)
|
|||
mtspr(SPRN_PIT, tb_ticks_per_jiffy);
|
||||
}
|
||||
|
||||
/*
|
||||
* IDE stuff.
|
||||
* should be generic for every IDE PCI chipset
|
||||
*/
|
||||
#if defined(CONFIG_PCI) && defined(CONFIG_IDE)
|
||||
static void
|
||||
ppc4xx_ide_init_hwif_ports(hw_regs_t * hw, unsigned long data_port,
|
||||
unsigned long ctrl_port, int *irq)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; ++i)
|
||||
hw->io_ports[i] = data_port + i - IDE_DATA_OFFSET;
|
||||
|
||||
hw->io_ports[IDE_CONTROL_OFFSET] = ctrl_port;
|
||||
}
|
||||
#endif /* defined(CONFIG_PCI) && defined(CONFIG_IDE) */
|
||||
|
||||
TODC_ALLOC();
|
||||
|
||||
/*
|
||||
|
|
@ -271,10 +252,6 @@ ppc4xx_init(unsigned long r3, unsigned long r4, unsigned long r5,
|
|||
#ifdef CONFIG_SERIAL_TEXT_DEBUG
|
||||
ppc_md.progress = gen550_progress;
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_PCI) && defined(CONFIG_IDE)
|
||||
ppc_ide_md.ide_init_hwif = ppc4xx_ide_init_hwif_ports;
|
||||
#endif /* defined(CONFIG_PCI) && defined(CONFIG_IDE) */
|
||||
}
|
||||
|
||||
/* Called from machine_check_exception */
|
||||
|
|
|
|||
Loading…
Reference in a new issue