source: trunk/target/linux/ar71xx/patches-3.3/130-MIPS-ath79-add-PCI-registration-code-for-AR934X.patch @ 31602

Last change on this file since 31602 was 31602, checked in by juhosg, 4 years ago

ar71xx: update 3.3 patches

File size: 1.9 KB
  • arch/mips/ath79/Kconfig

    From 902b348cdddd4c858993e02aced615aa6caf04d0 Mon Sep 17 00:00:00 2001
    From: Gabor Juhos <juhosg@openwrt.org>
    Date: Wed, 14 Mar 2012 10:45:30 +0100
    Subject: [PATCH 35/47] MIPS: ath79: add PCI registration code for AR934X
    
    Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
    Acked-by: Luis R. Rodriguez <mcgrof@qca.qualcomm.com>
    Cc: linux-mips@linux-mips.org
    Cc: mcgrof@infradead.org
    Patchwork: https://patchwork.linux-mips.org/patch/3516/
    Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
    ---
     arch/mips/ath79/Kconfig |    2 ++
     arch/mips/ath79/pci.c   |   13 ++++++++++++-
     2 files changed, 14 insertions(+), 1 deletions(-)
    
    a b config SOC_AR933X 
    7272 
    7373config SOC_AR934X 
    7474        select USB_ARCH_HAS_EHCI 
     75        select HW_HAS_PCI 
     76        select PCI_AR724X if PCI 
    7577        def_bool n 
    7678 
    7779config PCI_AR724X 
  • arch/mips/ath79/pci.c

    a b  
    1414 
    1515#include <linux/init.h> 
    1616#include <linux/pci.h> 
     17#include <asm/mach-ath79/ar71xx_regs.h> 
    1718#include <asm/mach-ath79/ath79.h> 
    1819#include <asm/mach-ath79/irq.h> 
    1920#include <asm/mach-ath79/pci.h> 
    int __init pcibios_map_irq(const struct 
    5758                if (soc_is_ar71xx()) { 
    5859                        ath79_pci_irq_map = ar71xx_pci_irq_map; 
    5960                        ath79_pci_nr_irqs = ARRAY_SIZE(ar71xx_pci_irq_map); 
    60                 } else if (soc_is_ar724x()) { 
     61                } else if (soc_is_ar724x() || 
     62                           soc_is_ar9342() || 
     63                           soc_is_ar9344()) { 
    6164                        ath79_pci_irq_map = ar724x_pci_irq_map; 
    6265                        ath79_pci_nr_irqs = ARRAY_SIZE(ar724x_pci_irq_map); 
    6366                } else { 
    int __init ath79_register_pci(void) 
    115118        if (soc_is_ar724x()) 
    116119                return ar724x_pcibios_init(ATH79_CPU_IRQ_IP2); 
    117120 
     121        if (soc_is_ar9342() || soc_is_ar9344()) { 
     122                u32 bootstrap; 
     123 
     124                bootstrap = ath79_reset_rr(AR934X_RESET_REG_BOOTSTRAP); 
     125                if (bootstrap & AR934X_BOOTSTRAP_PCIE_RC) 
     126                        return ar724x_pcibios_init(ATH79_IP2_IRQ(0)); 
     127        } 
     128 
    118129        return -ENODEV; 
    119130} 
Note: See TracBrowser for help on using the repository browser.