Commit a0113a99 authored by Mike Rapoport's avatar Mike Rapoport Committed by Russell King

[ARM] 4667/1: CM-X270 fixes

Change printk to dev_dbg in ITE 8152 driver and remove printk in ITE 8152 ISR.
Move PCI intialization from ->scan to ->preinit method
Signed-off-by: default avatarMike Rapoport <mike@compulab.co.il>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 008f6d2a
...@@ -537,7 +537,7 @@ config ISA_DMA_API ...@@ -537,7 +537,7 @@ config ISA_DMA_API
bool bool
config PCI config PCI
bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE
help help
Find out whether you have a PCI motherboard. PCI is the name of a Find out whether you have a PCI motherboard. PCI is the name of a
bus system, i.e. the way the CPU talks to the other stuff inside bus system, i.e. the way the CPU talks to the other stuff inside
...@@ -558,6 +558,12 @@ config PCI_HOST_VIA82C505 ...@@ -558,6 +558,12 @@ config PCI_HOST_VIA82C505
depends on PCI && ARCH_SHARK depends on PCI && ARCH_SHARK
default y default y
config PCI_HOST_ITE8152
bool
depends on PCI && MACH_ARMCORE
default y
select DMABOUNCE
source "drivers/pci/Kconfig" source "drivers/pci/Kconfig"
source "drivers/pcmcia/Kconfig" source "drivers/pcmcia/Kconfig"
......
...@@ -70,8 +70,6 @@ static inline void it8152_irq(int irq) ...@@ -70,8 +70,6 @@ static inline void it8152_irq(int irq)
{ {
struct irq_desc *desc; struct irq_desc *desc;
printk(KERN_DEBUG "===> %s: irq=%d\n", __FUNCTION__, irq);
desc = irq_desc + irq; desc = irq_desc + irq;
desc_handle_irq(irq, desc); desc_handle_irq(irq, desc);
} }
...@@ -106,8 +104,6 @@ void it8152_irq_demux(unsigned int irq, struct irq_desc *desc) ...@@ -106,8 +104,6 @@ void it8152_irq_demux(unsigned int irq, struct irq_desc *desc)
int bits_pd, bits_lp, bits_ld; int bits_pd, bits_lp, bits_ld;
int i; int i;
printk(KERN_DEBUG "=> %s: irq = %d\n", __FUNCTION__, irq);
while (1) { while (1) {
/* Read all */ /* Read all */
bits_pd = __raw_readl(IT8152_INTC_PDCNIRR); bits_pd = __raw_readl(IT8152_INTC_PDCNIRR);
...@@ -293,8 +289,7 @@ int dma_needs_bounce(struct device *dev, dma_addr_t dma_addr, size_t size) ...@@ -293,8 +289,7 @@ int dma_needs_bounce(struct device *dev, dma_addr_t dma_addr, size_t size)
*/ */
int pci_set_dma_mask(struct pci_dev *dev, u64 mask) int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
{ {
printk(KERN_DEBUG "%s: %s %llx\n", dev_dbg(&dev->dev, "%s: %llx\n", __FUNCTION__, mask);
__FUNCTION__, dev->dev.bus_id, mask);
if (mask >= PHYS_OFFSET + SZ_64M - 1) if (mask >= PHYS_OFFSET + SZ_64M - 1)
return 0; return 0;
...@@ -304,8 +299,7 @@ int pci_set_dma_mask(struct pci_dev *dev, u64 mask) ...@@ -304,8 +299,7 @@ int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
int int
pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask) pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
{ {
printk(KERN_DEBUG "%s: %s %llx\n", dev_dbg(&dev->dev, "%s: %llx\n", __FUNCTION__, mask);
__FUNCTION__, dev->dev.bus_id, mask);
if (mask >= PHYS_OFFSET + SZ_64M - 1) if (mask >= PHYS_OFFSET + SZ_64M - 1)
return 0; return 0;
......
...@@ -40,7 +40,7 @@ void __init cmx270_pci_adjust_zones(int node, unsigned long *zone_size, ...@@ -40,7 +40,7 @@ void __init cmx270_pci_adjust_zones(int node, unsigned long *zone_size,
{ {
unsigned int sz = SZ_64M >> PAGE_SHIFT; unsigned int sz = SZ_64M >> PAGE_SHIFT;
printk(KERN_INFO "Adjusting zones for CM-x270\n"); pr_info("Adjusting zones for CM-x270\n");
/* /*
* Only adjust if > 64M on current system * Only adjust if > 64M on current system
...@@ -104,8 +104,7 @@ static int __init cmx270_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin) ...@@ -104,8 +104,7 @@ static int __init cmx270_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
{ {
int irq; int irq;
printk(KERN_DEBUG "===> %s: %s slot=%x, pin=%x\n", __FUNCTION__, dev_dbg(&dev->dev, "%s: slot=%x, pin=%x\n", __FUNCTION__, slot, pin);
pci_name(dev), slot, pin);
irq = it8152_pci_map_irq(dev, slot, pin); irq = it8152_pci_map_irq(dev, slot, pin);
if (irq) if (irq)
...@@ -141,14 +140,13 @@ static int __init cmx270_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin) ...@@ -141,14 +140,13 @@ static int __init cmx270_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
return(0); return(0);
} }
static struct pci_bus * __init static void cmx270_pci_preinit(void)
cmx270_pci_scan_bus(int nr, struct pci_sys_data *sys)
{ {
printk(KERN_INFO "Initializing CM-X270 PCI subsystem\n"); pr_info("Initializing CM-X270 PCI subsystem\n");
__raw_writel(0x800, IT8152_PCI_CFG_ADDR); __raw_writel(0x800, IT8152_PCI_CFG_ADDR);
if (__raw_readl(IT8152_PCI_CFG_DATA) == 0x81521283) { if (__raw_readl(IT8152_PCI_CFG_DATA) == 0x81521283) {
printk(KERN_INFO "PCI Bridge found.\n"); pr_info("PCI Bridge found.\n");
/* set PCI I/O base at 0 */ /* set PCI I/O base at 0 */
writel(0x848, IT8152_PCI_CFG_ADDR); writel(0x848, IT8152_PCI_CFG_ADDR);
...@@ -163,7 +161,7 @@ cmx270_pci_scan_bus(int nr, struct pci_sys_data *sys) ...@@ -163,7 +161,7 @@ cmx270_pci_scan_bus(int nr, struct pci_sys_data *sys)
/* CardBus Controller on ATXbase baseboard */ /* CardBus Controller on ATXbase baseboard */
writel(0x4000, IT8152_PCI_CFG_ADDR); writel(0x4000, IT8152_PCI_CFG_ADDR);
if (readl(IT8152_PCI_CFG_DATA) == 0xAC51104C) { if (readl(IT8152_PCI_CFG_DATA) == 0xAC51104C) {
printk(KERN_INFO "CardBus Bridge found.\n"); pr_info("CardBus Bridge found.\n");
/* Configure socket 0 */ /* Configure socket 0 */
writel(0x408C, IT8152_PCI_CFG_ADDR); writel(0x408C, IT8152_PCI_CFG_ADDR);
...@@ -196,7 +194,6 @@ cmx270_pci_scan_bus(int nr, struct pci_sys_data *sys) ...@@ -196,7 +194,6 @@ cmx270_pci_scan_bus(int nr, struct pci_sys_data *sys)
writel(0xb0000000, IT8152_PCI_CFG_DATA); writel(0xb0000000, IT8152_PCI_CFG_DATA);
} }
} }
return it8152_pci_scan_bus(nr, sys);
} }
static struct hw_pci cmx270_pci __initdata = { static struct hw_pci cmx270_pci __initdata = {
...@@ -204,7 +201,8 @@ static struct hw_pci cmx270_pci __initdata = { ...@@ -204,7 +201,8 @@ static struct hw_pci cmx270_pci __initdata = {
.map_irq = cmx270_pci_map_irq, .map_irq = cmx270_pci_map_irq,
.nr_controllers = 1, .nr_controllers = 1,
.setup = it8152_pci_setup, .setup = it8152_pci_setup,
.scan = cmx270_pci_scan_bus, .scan = it8152_pci_scan_bus,
.preinit = cmx270_pci_preinit,
}; };
static int __init cmx270_init_pci(void) static int __init cmx270_init_pci(void)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment