Changeset 32880


Ignore:
Timestamp:
2012-07-26T17:42:18+02:00 (6 years ago)
Author:
hauke
Message:

[kernel] bcma: update to version from wireless-testing tag master-2012-07-16

I did not add the last patch, because it add some stubs for the flash drivers and our patches have to be changed for that, if the flash support in bcma is able to do something I will integrate it.

This also contains 3 additional patches fixing some bugs in bcma.

Location:
trunk
Files:
3 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/kernel/modules/other.mk

    r32859 r32880  
    432432        CONFIG_BCMA_DRIVER_MIPS=n \ 
    433433        CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \ 
     434        CONFIG_BCMA_DRIVER_GMAC_CMN=n \ 
    434435        CONFIG_BCMA_DEBUG=n 
    435436  FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko 
  • trunk/target/linux/brcm47xx/config-3.3

    r31737 r32880  
    1515CONFIG_BCMA_BLOCKIO=y 
    1616CONFIG_BCMA_DEBUG=y 
     17CONFIG_BCMA_DRIVER_GMAC_CMN=y 
    1718CONFIG_BCMA_DRIVER_MIPS=y 
    1819CONFIG_BCMA_DRIVER_PCI_HOSTMODE=y 
  • trunk/target/linux/generic/patches-3.3/025-bcma_backport.patch

    r32670 r32880  
    1010          PCI core hostmode operation (external PCI bus). 
    1111  
     12@@ -46,6 +46,15 @@ config BCMA_DRIVER_MIPS 
     13  
     14          If unsure, say N 
     15  
     16+config BCMA_DRIVER_GMAC_CMN 
     17+       bool "BCMA Broadcom GBIT MAC COMMON core driver" 
     18+       depends on BCMA 
     19+       help 
     20+         Driver for the Broadcom GBIT MAC COMMON core attached to Broadcom 
     21+         specific Advanced Microcontroller Bus. 
     22+ 
     23+         If unsure, say N 
     24+ 
     25 config BCMA_DEBUG 
     26        bool "BCMA debugging" 
     27        depends on BCMA 
     28--- a/drivers/bcma/Makefile 
     29+++ b/drivers/bcma/Makefile 
     30@@ -3,6 +3,7 @@ bcma-y                                  += driver_chipcommon.o driver 
     31 bcma-y                                 += driver_pci.o 
     32 bcma-$(CONFIG_BCMA_DRIVER_PCI_HOSTMODE)        += driver_pci_host.o 
     33 bcma-$(CONFIG_BCMA_DRIVER_MIPS)                += driver_mips.o 
     34+bcma-$(CONFIG_BCMA_DRIVER_GMAC_CMN)    += driver_gmac_cmn.o 
     35 bcma-$(CONFIG_BCMA_HOST_PCI)           += host_pci.o 
     36 bcma-$(CONFIG_BCMA_HOST_SOC)           += host_soc.o 
     37 obj-$(CONFIG_BCMA)                     += bcma.o 
    1238--- a/drivers/bcma/bcma_private.h 
    1339+++ b/drivers/bcma/bcma_private.h 
     
    619645+} 
    620646+EXPORT_SYMBOL_GPL(bcma_pmu_spuravoid_pllupdate); 
     647--- /dev/null 
     648+++ b/drivers/bcma/driver_gmac_cmn.c 
     649@@ -0,0 +1,14 @@ 
     650+/* 
     651+ * Broadcom specific AMBA 
     652+ * GBIT MAC COMMON Core 
     653+ * 
     654+ * Licensed under the GNU/GPL. See COPYING for details. 
     655+ */ 
     656+ 
     657+#include "bcma_private.h" 
     658+#include <linux/bcma/bcma.h> 
     659+ 
     660+void __devinit bcma_core_gmac_cmn_init(struct bcma_drv_gmac_cmn *gc) 
     661+{ 
     662+       mutex_init(&gc->phy_mutex); 
     663+} 
    621664--- a/drivers/bcma/driver_mips.c 
    622665+++ b/drivers/bcma/driver_mips.c 
     
    17381781 static int bcma_device_probe(struct device *dev); 
    17391782 static int bcma_device_remove(struct device *dev); 
    1740 @@ -55,7 +61,7 @@ static struct bus_type bcma_bus_type = { 
     1783@@ -55,7 +61,14 @@ static struct bus_type bcma_bus_type = { 
    17411784        .dev_attrs      = bcma_device_attrs, 
    17421785 }; 
    17431786  
    17441787-static struct bcma_device *bcma_find_core(struct bcma_bus *bus, u16 coreid) 
     1788+static u16 bcma_cc_core_id(struct bcma_bus *bus) 
     1789+{ 
     1790+       if (bus->chipinfo.id == BCMA_CHIP_ID_BCM4706) 
     1791+               return BCMA_CORE_4706_CHIPCOMMON; 
     1792+       return BCMA_CORE_CHIPCOMMON; 
     1793+} 
     1794+ 
    17451795+struct bcma_device *bcma_find_core(struct bcma_bus *bus, u16 coreid) 
    17461796 { 
    17471797        struct bcma_device *core; 
    17481798  
    1749 @@ -65,6 +71,7 @@ static struct bcma_device *bcma_find_cor 
     1799@@ -65,6 +78,7 @@ static struct bcma_device *bcma_find_cor 
    17501800        } 
    17511801        return NULL; 
     
    17551805 static void bcma_release_core_dev(struct device *dev) 
    17561806 { 
    1757 @@ -93,7 +100,7 @@ static int bcma_register_cores(struct bc 
     1807@@ -84,16 +98,18 @@ static int bcma_register_cores(struct bc 
     1808        list_for_each_entry(core, &bus->cores, list) { 
     1809                /* We support that cores ourself */ 
     1810                switch (core->id.id) { 
     1811+               case BCMA_CORE_4706_CHIPCOMMON: 
     1812                case BCMA_CORE_CHIPCOMMON: 
     1813                case BCMA_CORE_PCI: 
     1814                case BCMA_CORE_PCIE: 
     1815                case BCMA_CORE_MIPS_74K: 
     1816+               case BCMA_CORE_4706_MAC_GBIT_COMMON: 
     1817                        continue; 
     1818                } 
    17581819  
    17591820                core->dev.release = bcma_release_core_dev; 
     
    17641825                switch (bus->hosttype) { 
    17651826                case BCMA_HOSTTYPE_PCI: 
    1766 @@ -111,8 +118,9 @@ static int bcma_register_cores(struct bc 
     1827@@ -111,8 +127,9 @@ static int bcma_register_cores(struct bc 
    17671828  
    17681829                err = device_register(&core->dev); 
     
    17761837                } 
    17771838                core->dev_registered = true; 
    1778 @@ -132,15 +140,19 @@ static void bcma_unregister_cores(struct 
     1839@@ -132,20 +149,24 @@ static void bcma_unregister_cores(struct 
    17791840        } 
    17801841 } 
     
    17981859        } 
    17991860  
    1800 @@ -168,14 +180,14 @@ int bcma_bus_register(struct bcma_bus *b 
     1861        /* Init CC core */ 
     1862-       core = bcma_find_core(bus, BCMA_CORE_CHIPCOMMON); 
     1863+       core = bcma_find_core(bus, bcma_cc_core_id(bus)); 
     1864        if (core) { 
     1865                bus->drv_cc.core = core; 
     1866                bcma_core_chipcommon_init(&bus->drv_cc); 
     1867@@ -165,17 +186,24 @@ int bcma_bus_register(struct bcma_bus *b 
     1868                bcma_core_pci_init(&bus->drv_pci); 
     1869        } 
     1870  
     1871+       /* Init GBIT MAC COMMON core */ 
     1872+       core = bcma_find_core(bus, BCMA_CORE_4706_MAC_GBIT_COMMON); 
     1873+       if (core) { 
     1874+               bus->drv_gmac_cmn.core = core; 
     1875+               bcma_core_gmac_cmn_init(&bus->drv_gmac_cmn); 
     1876+       } 
     1877+ 
    18011878        /* Try to get SPROM */ 
    18021879        err = bcma_sprom_get(bus); 
     
    18161893        return 0; 
    18171894 } 
    1818 @@ -203,7 +215,7 @@ int __init bcma_bus_early_register(struc 
     1895@@ -196,14 +224,14 @@ int __init bcma_bus_early_register(struc 
     1896        bcma_init_bus(bus); 
     1897  
     1898        match.manuf = BCMA_MANUF_BCM; 
     1899-       match.id = BCMA_CORE_CHIPCOMMON; 
     1900+       match.id = bcma_cc_core_id(bus); 
     1901        match.class = BCMA_CL_SIM; 
     1902        match.rev = BCMA_ANY_REV; 
     1903  
    18191904        /* Scan for chip common core */ 
    18201905        err = bcma_bus_scan_early(bus, &match, core_cc); 
     
    18251910        } 
    18261911  
    1827 @@ -215,7 +227,7 @@ int __init bcma_bus_early_register(struc 
     1912@@ -215,12 +243,12 @@ int __init bcma_bus_early_register(struc 
    18281913        /* Scan for mips core */ 
    18291914        err = bcma_bus_scan_early(bus, &match, core_mips); 
     
    18341919        } 
    18351920  
    1836 @@ -233,7 +245,7 @@ int __init bcma_bus_early_register(struc 
     1921        /* Init CC core */ 
     1922-       core = bcma_find_core(bus, BCMA_CORE_CHIPCOMMON); 
     1923+       core = bcma_find_core(bus, bcma_cc_core_id(bus)); 
     1924        if (core) { 
     1925                bus->drv_cc.core = core; 
     1926                bcma_core_chipcommon_init(&bus->drv_cc); 
     1927@@ -233,7 +261,7 @@ int __init bcma_bus_early_register(struc 
    18371928                bcma_core_mips_init(&bus->drv_mips); 
    18381929        } 
     
    18431934        return 0; 
    18441935 } 
     1936@@ -259,8 +287,7 @@ int bcma_bus_resume(struct bcma_bus *bus 
     1937        struct bcma_device *core; 
     1938  
     1939        /* Init CC core */ 
     1940-       core = bcma_find_core(bus, BCMA_CORE_CHIPCOMMON); 
     1941-       if (core) { 
     1942+       if (bus->drv_cc.core) { 
     1943                bus->drv_cc.setup_done = false; 
     1944                bcma_core_chipcommon_init(&bus->drv_cc); 
     1945        } 
    18451946--- a/drivers/bcma/scan.c 
    18461947+++ b/drivers/bcma/scan.c 
     
    18521953+ 
    18531954+static const struct bcma_device_id_name bcma_arm_device_names[] = { 
     1955+       { BCMA_CORE_4706_MAC_GBIT_COMMON, "BCM4706 GBit MAC Common" }, 
    18541956+       { BCMA_CORE_ARM_1176, "ARM 1176" }, 
    18551957+       { BCMA_CORE_ARM_7TDMI, "ARM 7TDMI" }, 
     
    18641966+       { BCMA_CORE_AMEMC, "AMEMC (DDR)" }, 
    18651967+       { BCMA_CORE_ALTA, "ALTA (I2S)" }, 
    1866 +       { BCMA_CORE_4706_MAC_GBIT_COMMON, "BCM4706 GBit MAC Common" }, 
    18671968        { BCMA_CORE_INVALID, "Invalid" }, 
    18681969        { BCMA_CORE_CHIPCOMMON, "ChipCommon" }, 
     
    19662067                              struct bcma_device_id *match, int core_num, 
    19672068                              struct bcma_device *core) 
    1968 @@ -286,6 +329,23 @@ static int bcma_get_next_core(struct bcm 
     2069@@ -252,11 +295,15 @@ static int bcma_get_next_core(struct bcm 
     2070  
     2071        /* check if component is a core at all */ 
     2072        if (wrappers[0] + wrappers[1] == 0) { 
     2073-               /* we could save addrl of the router 
     2074-               if (cid == BCMA_CORE_OOB_ROUTER) 
     2075-                */ 
     2076-               bcma_erom_skip_component(bus, eromptr); 
     2077-               return -ENXIO; 
     2078+               /* Some specific cores don't need wrappers */ 
     2079+               switch (core->id.id) { 
     2080+               case BCMA_CORE_4706_MAC_GBIT_COMMON: 
     2081+               /* Not used yet: case BCMA_CORE_OOB_ROUTER: */ 
     2082+                       break; 
     2083+               default: 
     2084+                       bcma_erom_skip_component(bus, eromptr); 
     2085+                       return -ENXIO; 
     2086+               } 
     2087        } 
     2088  
     2089        if (bcma_erom_is_bridge(bus, eromptr)) { 
     2090@@ -286,6 +333,23 @@ static int bcma_get_next_core(struct bcm 
    19692091                        return -EILSEQ; 
    19702092        } 
     
    19902112        for (i = 0; i < ports[1]; i++) { 
    19912113                for (j = 0; ; j++) { 
    1992 @@ -298,7 +358,7 @@ static int bcma_get_next_core(struct bcm 
     2114@@ -298,7 +362,7 @@ static int bcma_get_next_core(struct bcm 
    19932115                                break; 
    19942116                        } else { 
     
    19992121                } 
    20002122        } 
    2001 @@ -353,6 +413,7 @@ static int bcma_get_next_core(struct bcm 
     2123@@ -353,6 +417,7 @@ static int bcma_get_next_core(struct bcm 
    20022124 void bcma_init_bus(struct bcma_bus *bus) 
    20032125 { 
     
    20072129        if (bus->init_done) 
    20082130                return; 
    2009 @@ -363,9 +424,12 @@ void bcma_init_bus(struct bcma_bus *bus) 
     2131@@ -363,9 +428,12 @@ void bcma_init_bus(struct bcma_bus *bus) 
    20102132        bcma_scan_switch_core(bus, BCMA_ADDR_BASE); 
    20112133  
     
    20232145 } 
    20242146  
    2025 @@ -392,6 +456,7 @@ int bcma_bus_scan(struct bcma_bus *bus) 
     2147@@ -392,6 +460,7 @@ int bcma_bus_scan(struct bcma_bus *bus) 
    20262148        bcma_scan_switch_core(bus, erombase); 
    20272149  
     
    20312153                if (!core) 
    20322154                        return -ENOMEM; 
    2033 @@ -414,12 +479,13 @@ int bcma_bus_scan(struct bcma_bus *bus) 
     2155@@ -414,14 +483,15 @@ int bcma_bus_scan(struct bcma_bus *bus) 
    20342156  
    20352157                core->core_index = core_num++; 
     
    20482170+                         core->id.class); 
    20492171  
    2050                 list_add(&core->list, &bus->cores); 
     2172-               list_add(&core->list, &bus->cores); 
     2173+               list_add_tail(&core->list, &bus->cores); 
    20512174        } 
    2052 @@ -471,11 +537,10 @@ int __init bcma_bus_scan_early(struct bc 
     2175  
     2176        if (bus->hosttype == BCMA_HOSTTYPE_SOC) 
     2177@@ -471,13 +541,12 @@ int __init bcma_bus_scan_early(struct bc 
    20532178  
    20542179                core->core_index = core_num++; 
     
    20642189+                         core->id.class); 
    20652190  
    2066                 list_add(&core->list, &bus->cores); 
     2191-               list_add(&core->list, &bus->cores); 
     2192+               list_add_tail(&core->list, &bus->cores); 
    20672193                err = 0; 
     2194                break; 
     2195        } 
     2196--- a/drivers/bcma/scan.h 
     2197+++ b/drivers/bcma/scan.h 
     2198@@ -27,7 +27,7 @@ 
     2199 #define SCAN_CIB_NMW           0x0007C000 
     2200 #define SCAN_CIB_NMW_SHIFT     14 
     2201 #define SCAN_CIB_NSW           0x00F80000 
     2202-#define SCAN_CIB_NSW_SHIFT     17 
     2203+#define SCAN_CIB_NSW_SHIFT     19 
     2204 #define SCAN_CIB_REV           0xFF000000 
     2205 #define SCAN_CIB_REV_SHIFT     24 
     2206  
    20682207--- a/drivers/bcma/sprom.c 
    20692208+++ b/drivers/bcma/sprom.c 
     
    26312770--- a/include/linux/bcma/bcma.h 
    26322771+++ b/include/linux/bcma/bcma.h 
    2633 @@ -26,6 +26,11 @@ struct bcma_chipinfo { 
     2772@@ -7,6 +7,7 @@ 
     2773 #include <linux/bcma/bcma_driver_chipcommon.h> 
     2774 #include <linux/bcma/bcma_driver_pci.h> 
     2775 #include <linux/bcma/bcma_driver_mips.h> 
     2776+#include <linux/bcma/bcma_driver_gmac_cmn.h> 
     2777 #include <linux/ssb/ssb.h> /* SPROM sharing */ 
     2778  
     2779 #include "bcma_regs.h" 
     2780@@ -26,6 +27,11 @@ struct bcma_chipinfo { 
    26342781        u8 pkg; 
    26352782 }; 
     
    26432790        BCMA_CLKMODE_FAST, 
    26442791        BCMA_CLKMODE_DYNAMIC, 
    2645 @@ -65,6 +70,13 @@ struct bcma_host_ops { 
     2792@@ -65,6 +71,13 @@ struct bcma_host_ops { 
    26462793  
    26472794 /* Core-ID values. */ 
     
    26572804 #define BCMA_CORE_CHIPCOMMON           0x800 
    26582805 #define BCMA_CORE_ILINE20              0x801 
    2659 @@ -125,6 +137,36 @@ struct bcma_host_ops { 
     2806@@ -125,6 +138,36 @@ struct bcma_host_ops { 
    26602807  
    26612808 #define BCMA_MAX_NR_CORES              16 
     
    26942841        struct bcma_bus *bus; 
    26952842        struct bcma_device_id id; 
    2696 @@ -136,8 +178,10 @@ struct bcma_device { 
     2843@@ -136,8 +179,10 @@ struct bcma_device { 
    26972844        bool dev_registered; 
    26982845  
     
    27052852  
    27062853        void __iomem *io_addr; 
    2707 @@ -175,6 +219,12 @@ int __bcma_driver_register(struct bcma_d 
     2854@@ -175,6 +220,12 @@ int __bcma_driver_register(struct bcma_d 
    27082855  
    27092856 extern void bcma_driver_unregister(struct bcma_driver *drv); 
     
    27182865        /* The MMIO area. */ 
    27192866        void __iomem *mmio; 
    2720 @@ -191,10 +241,13 @@ struct bcma_bus { 
     2867@@ -191,14 +242,18 @@ struct bcma_bus { 
    27212868  
    27222869        struct bcma_chipinfo chipinfo; 
     
    27322879        struct bcma_drv_cc drv_cc; 
    27332880        struct bcma_drv_pci drv_pci; 
    2734 @@ -282,6 +335,7 @@ static inline void bcma_maskset16(struct 
     2881        struct bcma_drv_mips drv_mips; 
     2882+       struct bcma_drv_gmac_cmn drv_gmac_cmn; 
     2883  
     2884        /* We decided to share SPROM struct with SSB as long as we do not need 
     2885         * any hacks for BCMA. This simplifies drivers code. */ 
     2886@@ -282,6 +337,7 @@ static inline void bcma_maskset16(struct 
    27352887        bcma_write16(cc, offset, (bcma_read16(cc, offset) & mask) | set); 
    27362888 } 
     
    28703022  
    28713023 #endif /* LINUX_BCMA_DRIVER_CC_H_ */ 
     3024--- /dev/null 
     3025+++ b/include/linux/bcma/bcma_driver_gmac_cmn.h 
     3026@@ -0,0 +1,100 @@ 
     3027+#ifndef LINUX_BCMA_DRIVER_GMAC_CMN_H_ 
     3028+#define LINUX_BCMA_DRIVER_GMAC_CMN_H_ 
     3029+ 
     3030+#include <linux/types.h> 
     3031+ 
     3032+#define BCMA_GMAC_CMN_STAG0            0x000 
     3033+#define BCMA_GMAC_CMN_STAG1            0x004 
     3034+#define BCMA_GMAC_CMN_STAG2            0x008 
     3035+#define BCMA_GMAC_CMN_STAG3            0x00C 
     3036+#define BCMA_GMAC_CMN_PARSER_CTL       0x020 
     3037+#define BCMA_GMAC_CMN_MIB_MAX_LEN      0x024 
     3038+#define BCMA_GMAC_CMN_PHY_ACCESS       0x100 
     3039+#define  BCMA_GMAC_CMN_PA_DATA_MASK    0x0000ffff 
     3040+#define  BCMA_GMAC_CMN_PA_ADDR_MASK    0x001f0000 
     3041+#define  BCMA_GMAC_CMN_PA_ADDR_SHIFT   16 
     3042+#define  BCMA_GMAC_CMN_PA_REG_MASK     0x1f000000 
     3043+#define  BCMA_GMAC_CMN_PA_REG_SHIFT    24 
     3044+#define  BCMA_GMAC_CMN_PA_WRITE                0x20000000 
     3045+#define  BCMA_GMAC_CMN_PA_START                0x40000000 
     3046+#define BCMA_GMAC_CMN_PHY_CTL          0x104 
     3047+#define  BCMA_GMAC_CMN_PC_EPA_MASK     0x0000001f 
     3048+#define  BCMA_GMAC_CMN_PC_MCT_MASK     0x007f0000 
     3049+#define  BCMA_GMAC_CMN_PC_MCT_SHIFT    16 
     3050+#define  BCMA_GMAC_CMN_PC_MTE          0x00800000 
     3051+#define BCMA_GMAC_CMN_GMAC0_RGMII_CTL  0x110 
     3052+#define BCMA_GMAC_CMN_CFP_ACCESS       0x200 
     3053+#define BCMA_GMAC_CMN_CFP_TCAM_DATA0   0x210 
     3054+#define BCMA_GMAC_CMN_CFP_TCAM_DATA1   0x214 
     3055+#define BCMA_GMAC_CMN_CFP_TCAM_DATA2   0x218 
     3056+#define BCMA_GMAC_CMN_CFP_TCAM_DATA3   0x21C 
     3057+#define BCMA_GMAC_CMN_CFP_TCAM_DATA4   0x220 
     3058+#define BCMA_GMAC_CMN_CFP_TCAM_DATA5   0x224 
     3059+#define BCMA_GMAC_CMN_CFP_TCAM_DATA6   0x228 
     3060+#define BCMA_GMAC_CMN_CFP_TCAM_DATA7   0x22C 
     3061+#define BCMA_GMAC_CMN_CFP_TCAM_MASK0   0x230 
     3062+#define BCMA_GMAC_CMN_CFP_TCAM_MASK1   0x234 
     3063+#define BCMA_GMAC_CMN_CFP_TCAM_MASK2   0x238 
     3064+#define BCMA_GMAC_CMN_CFP_TCAM_MASK3   0x23C 
     3065+#define BCMA_GMAC_CMN_CFP_TCAM_MASK4   0x240 
     3066+#define BCMA_GMAC_CMN_CFP_TCAM_MASK5   0x244 
     3067+#define BCMA_GMAC_CMN_CFP_TCAM_MASK6   0x248 
     3068+#define BCMA_GMAC_CMN_CFP_TCAM_MASK7   0x24C 
     3069+#define BCMA_GMAC_CMN_CFP_ACTION_DATA  0x250 
     3070+#define BCMA_GMAC_CMN_TCAM_BIST_CTL    0x2A0 
     3071+#define BCMA_GMAC_CMN_TCAM_BIST_STATUS 0x2A4 
     3072+#define BCMA_GMAC_CMN_TCAM_CMP_STATUS  0x2A8 
     3073+#define BCMA_GMAC_CMN_TCAM_DISABLE     0x2AC 
     3074+#define BCMA_GMAC_CMN_TCAM_TEST_CTL    0x2F0 
     3075+#define BCMA_GMAC_CMN_UDF_0_A3_A0      0x300 
     3076+#define BCMA_GMAC_CMN_UDF_0_A7_A4      0x304 
     3077+#define BCMA_GMAC_CMN_UDF_0_A8         0x308 
     3078+#define BCMA_GMAC_CMN_UDF_1_A3_A0      0x310 
     3079+#define BCMA_GMAC_CMN_UDF_1_A7_A4      0x314 
     3080+#define BCMA_GMAC_CMN_UDF_1_A8         0x318 
     3081+#define BCMA_GMAC_CMN_UDF_2_A3_A0      0x320 
     3082+#define BCMA_GMAC_CMN_UDF_2_A7_A4      0x324 
     3083+#define BCMA_GMAC_CMN_UDF_2_A8         0x328 
     3084+#define BCMA_GMAC_CMN_UDF_0_B3_B0      0x330 
     3085+#define BCMA_GMAC_CMN_UDF_0_B7_B4      0x334 
     3086+#define BCMA_GMAC_CMN_UDF_0_B8         0x338 
     3087+#define BCMA_GMAC_CMN_UDF_1_B3_B0      0x340 
     3088+#define BCMA_GMAC_CMN_UDF_1_B7_B4      0x344 
     3089+#define BCMA_GMAC_CMN_UDF_1_B8         0x348 
     3090+#define BCMA_GMAC_CMN_UDF_2_B3_B0      0x350 
     3091+#define BCMA_GMAC_CMN_UDF_2_B7_B4      0x354 
     3092+#define BCMA_GMAC_CMN_UDF_2_B8         0x358 
     3093+#define BCMA_GMAC_CMN_UDF_0_C3_C0      0x360 
     3094+#define BCMA_GMAC_CMN_UDF_0_C7_C4      0x364 
     3095+#define BCMA_GMAC_CMN_UDF_0_C8         0x368 
     3096+#define BCMA_GMAC_CMN_UDF_1_C3_C0      0x370 
     3097+#define BCMA_GMAC_CMN_UDF_1_C7_C4      0x374 
     3098+#define BCMA_GMAC_CMN_UDF_1_C8         0x378 
     3099+#define BCMA_GMAC_CMN_UDF_2_C3_C0      0x380 
     3100+#define BCMA_GMAC_CMN_UDF_2_C7_C4      0x384 
     3101+#define BCMA_GMAC_CMN_UDF_2_C8         0x388 
     3102+#define BCMA_GMAC_CMN_UDF_0_D3_D0      0x390 
     3103+#define BCMA_GMAC_CMN_UDF_0_D7_D4      0x394 
     3104+#define BCMA_GMAC_CMN_UDF_0_D11_D8     0x394 
     3105+ 
     3106+struct bcma_drv_gmac_cmn { 
     3107+       struct bcma_device *core; 
     3108+ 
     3109+       /* Drivers accessing BCMA_GMAC_CMN_PHY_ACCESS and 
     3110+        * BCMA_GMAC_CMN_PHY_CTL need to take that mutex first. */ 
     3111+       struct mutex phy_mutex; 
     3112+}; 
     3113+ 
     3114+/* Register access */ 
     3115+#define gmac_cmn_read16(gc, offset)            bcma_read16((gc)->core, offset) 
     3116+#define gmac_cmn_read32(gc, offset)            bcma_read32((gc)->core, offset) 
     3117+#define gmac_cmn_write16(gc, offset, val)      bcma_write16((gc)->core, offset, val) 
     3118+#define gmac_cmn_write32(gc, offset, val)      bcma_write32((gc)->core, offset, val) 
     3119+ 
     3120+#ifdef CONFIG_BCMA_DRIVER_GMAC_CMN 
     3121+extern void __devinit bcma_core_gmac_cmn_init(struct bcma_drv_gmac_cmn *gc); 
     3122+#else 
     3123+static inline void bcma_core_gmac_cmn_init(struct bcma_drv_gmac_cmn *gc) { } 
     3124+#endif 
     3125+ 
     3126+#endif /* LINUX_BCMA_DRIVER_GMAC_CMN_H_ */ 
    28723127--- a/include/linux/bcma/bcma_driver_pci.h 
    28733128+++ b/include/linux/bcma/bcma_driver_pci.h 
Note: See TracChangeset for help on using the changeset viewer.