Changeset 18141


Ignore:
Timestamp:
2009-10-25T08:10:14+01:00 (7 years ago)
Author:
juhosg
Message:

ramips: modify {read,write}_config helpers

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ramips/files/arch/mips/pci/pci-rt288x.c

    r18140 r18141  
    147147}; 
    148148 
    149 static inline void read_config(unsigned long bus, unsigned long dev, 
    150                                unsigned long func, unsigned long reg, 
    151                                unsigned long *val) 
    152 { 
    153         unsigned long address; 
    154         unsigned long flags; 
    155  
    156         address = rt2880_pci_get_cfgaddr(bus, dev, func, reg); 
    157  
    158         spin_lock_irqsave(&rt2880_pci_lock, flags); 
    159         rt2880_pci_reg_write(address, RT2880_PCI_REG_CONFIG_ADDR); 
    160         *val = rt2880_pci_reg_read(RT2880_PCI_REG_CONFIG_DATA); 
    161         spin_unlock_irqrestore(&rt2880_pci_lock, flags); 
    162 } 
    163  
    164 static inline void write_config(unsigned long bus, unsigned long dev, 
    165                                 unsigned long func, unsigned long reg, 
    166                                 unsigned long val) 
    167 { 
    168         unsigned long address; 
    169         unsigned long flags; 
    170  
    171         address = rt2880_pci_get_cfgaddr(bus, dev, func, reg); 
     149static inline u32 rt2880_pci_read_u32(unsigned long reg) 
     150{ 
     151        unsigned long flags; 
     152        u32 address; 
     153        u32 ret; 
     154 
     155        address = rt2880_pci_get_cfgaddr(0, 0, 0, reg); 
     156 
     157        spin_lock_irqsave(&rt2880_pci_lock, flags); 
     158        rt2880_pci_reg_write(address, RT2880_PCI_REG_CONFIG_ADDR); 
     159        ret = rt2880_pci_reg_read(RT2880_PCI_REG_CONFIG_DATA); 
     160        spin_unlock_irqrestore(&rt2880_pci_lock, flags); 
     161 
     162        return ret; 
     163} 
     164 
     165static inline void rt2880_pci_write_u32(unsigned long reg, u32 val) 
     166{ 
     167        unsigned long flags; 
     168        u32 address; 
     169 
     170        address = rt2880_pci_get_cfgaddr(0, 0, 0, reg); 
    172171 
    173172        spin_lock_irqsave(&rt2880_pci_lock, flags); 
     
    180179{ 
    181180        u16 cmd; 
    182         unsigned long val; 
    183181        int irq = -1; 
    184182 
     
    188186        switch (PCI_SLOT(dev->devfn)) { 
    189187        case 0x00: 
    190                 write_config(0, 0, 0, PCI_BASE_ADDRESS_0, 0x08000000); 
    191                 read_config(0, 0, 0, PCI_BASE_ADDRESS_0, &val); 
     188                rt2880_pci_write_u32(PCI_BASE_ADDRESS_0, 0x08000000); 
     189                (void) rt2880_pci_read_u32(PCI_BASE_ADDRESS_0); 
    192190                break; 
    193191        case 0x11: 
     
    215213static int __init rt2880_pci_init(void) 
    216214{ 
    217         unsigned long val = 0; 
    218215        int i; 
    219216 
     
    232229        rt2880_pci_reg_write(0x28801814, RT2880_PCI_REG_SUBID); 
    233230        rt2880_pci_reg_write(0x000c0000, RT2880_PCI_REG_PCIMSK_ADDR); 
    234         write_config(0, 0, 0, PCI_BASE_ADDRESS_0, 0x08000000); 
    235         read_config(0, 0, 0, PCI_BASE_ADDRESS_0, &val); 
     231 
     232        rt2880_pci_write_u32(PCI_BASE_ADDRESS_0, 0x08000000); 
     233        (void) rt2880_pci_read_u32(PCI_BASE_ADDRESS_0); 
    236234 
    237235        register_pci_controller(&rt2880_pci_controller); 
Note: See TracChangeset for help on using the changeset viewer.