28 Jun, 2012

1 commit


09 Jun, 2012

1 commit

  • pc could be null if hosttype != BCMA_HOSTTYPE_PCI.
    If we are on a device without a pci core this function is called with
    pc = null by b43 and brcmsmac. If the host type is PCI we have a pci
    core as well and pc can not be null.

    Signed-off-by: Hauke Mehrtens
    Signed-off-by: John W. Linville

    Hauke Mehrtens
     

05 Jun, 2012

1 commit

  • MacBook Pro models with BCM4331 wireless have been found to have the ext
    PA lines disabled after resuming from S3 without external power attach.
    This causes them to be unable to transmit. Add a workaround to ensure
    that the ext PA lines are enabled on BCM4331. Also extend all handling
    of ext PA line muxing to BCM43431 as is done in the Broadcom SDK.

    BugLink: http://bugs.launchpad.net/bugs/925577
    Cc: Arend van Spriel
    Cc: Hauke Mehrtens
    Cc: stable@vger.kernel.org
    Signed-off-by: Seth Forshee
    Signed-off-by: John W. Linville

    Seth Forshee
     

25 May, 2012

1 commit

  • Pull more networking updates from David Miller:
    "Ok, everything from here on out will be bug fixes."

    1) One final sync of wireless and bluetooth stuff from John Linville.
    These changes have all been in his tree for more than a week, and
    therefore have had the necessary -next exposure. John was just away
    on a trip and didn't have a change to send the pull request until a
    day or two ago.

    2) Put back some defines in user exposed header file areas that were
    removed during the tokenring purge. From Stephen Hemminger and Paul
    Gortmaker.

    3) A bug fix for UDP hash table allocation got lost in the pile due to
    one of those "you got it.. no I've got it.." situations. :-)

    From Tim Bird.

    4) SKB coalescing in TCP needs to have stricter checks, otherwise we'll
    try to coalesce overlapping frags and crash. Fix from Eric Dumazet.

    5) RCU routing table lookups can race with free_fib_info(), causing
    crashes when we deref the device pointers in the route. Fix by
    releasing the net device in the RCU callback. From Yanmin Zhang.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (293 commits)
    tcp: take care of overlaps in tcp_try_coalesce()
    ipv4: fix the rcu race between free_fib_info and ip_route_output_slow
    mm: add a low limit to alloc_large_system_hash
    ipx: restore token ring define to include/linux/ipx.h
    if: restore token ring ARP type to header
    xen: do not disable netfront in dom0
    phy/micrel: Fix ID of KSZ9021
    mISDN: Add X-Tensions USB ISDN TA XC-525
    gianfar:don't add FCB length to hard_header_len
    Bluetooth: Report proper error number in disconnection
    Bluetooth: Create flags for bt_sk()
    Bluetooth: report the right security level in getsockopt
    Bluetooth: Lock the L2CAP channel when sending
    Bluetooth: Restore locking semantics when looking up L2CAP channels
    Bluetooth: Fix a redundant and problematic incoming MTU check
    Bluetooth: Add support for Foxconn/Hon Hai AR5BBU22 0489:E03C
    Bluetooth: Fix EIR data generation for mgmt_device_found
    Bluetooth: Fix Inquiry with RSSI event mask
    Bluetooth: improve readability of l2cap_seq_list code
    Bluetooth: Fix skb length calculation
    ...

    Linus Torvalds
     

17 May, 2012

13 commits


08 May, 2012

1 commit


23 Apr, 2012

1 commit


19 Apr, 2012

1 commit

  • Some cores like the USB core have two address spaces. In the USB host
    controller one address space is used for the OHCI and the other for the
    EHCI controller interface. The USB controller is the only core I found
    with two address spaces. This code is based on the AI scan function
    ai_scan() in shared/aiutils.c in the Broadcom SDK.

    CC: Rafał Miłecki
    CC: linux-wireless@vger.kernel.org
    Signed-off-by: Hauke Mehrtens
    Signed-off-by: Greg Kroah-Hartman

    Hauke Mehrtens
     

17 Apr, 2012

1 commit

  • bcma should check for a fallback sprom every time it can not find a
    sprom on the card itself or a normal external sprom mapped into the
    memory of the chip. When otp sprom support was introduced it tried to
    read out the sprom from the wireless chip also if no otp sprom was
    available. This caused a Data bus error in bcma_sprom_get() when
    reading out the sprom for the SoC.

    This fixes a regression introduced in commit:

    commit 10d8493cd9efd38b1947b7a74276dbdc8311aa1a
    Author: Arend van Spriel
    Date: Tue Mar 6 15:50:48 2012 +0100

    bcma: add support for on-chip OTP memory used for SPROM storage

    This patch was tested on a Netgear WNDR3400 (Broadcom BCM4718 SoC).

    Reported-by: Nick Bowler
    Signed-off-by: Hauke Mehrtens
    Acked-by: Arend van Spriel
    Signed-off-by: John W. Linville

    Hauke Mehrtens
     

11 Apr, 2012

1 commit

  • The following is seen during allmodconfig builds for MIPS:

    drivers/bcma/driver_pci_host.c:518:2: error: implicit declaration
    of function 'pcibios_enable_device' [-Werror=implicit-function-declaration]
    cc1: some warnings being treated as errors
    make[3]: *** [drivers/bcma/driver_pci_host.o] Error 1

    Most likey introduced by commit 49dc9577155576b10ff79f0c1486c816b01f58bf

    "bcma: add PCIe host controller"

    Add the header instead of implicitly assuming it will be present.
    Sounds like a good idea, but that alone doesn't fix anything.

    The real problem is that the Kconfig has settings related to whether
    PCI is possible, i.e.

    config BCMA_HOST_PCI_POSSIBLE
    bool
    depends on BCMA && PCI = y
    default y

    config BCMA_HOST_PCI
    bool "Support for BCMA on PCI-host bus"
    depends on BCMA_HOST_PCI_POSSIBLE

    ...but what is missing is that BCMA_DRIVER_PCI_HOSTMODE doesn't
    have any dependencies on the above. Add one.

    CC: Hauke Mehrtens
    CC: John W. Linville
    Signed-off-by: Paul Gortmaker
    Acked-by: Hauke Mehrtens
    Signed-off-by: John W. Linville

    Paul Gortmaker
     

08 Mar, 2012

1 commit


07 Mar, 2012

2 commits

  • Wireless Broadcom chips can have either their SPROM data stored
    on either external SPROM or on-chip OTP memory. Both are accessed
    through the same register space. This patch adds support for the
    on-chip OTP memory.

    Tested with:
    BCM43224 OTP and SPROM
    BCM4331 SPROM
    BCM4313 OTP

    This patch is in response to linux-wireless thread [1].

    [1] http://article.gmane.org/gmane.linux.kernel.wireless.general/85426

    Tested-by: Saul St. John
    Tested-by: Rafal Milecki
    Tested-by: Hauke Mehrtens
    Cc: Larry Finger
    Signed-off-by: Arend van Spriel
    Signed-off-by: John W. Linville

    Arend van Spriel
     
  • When not SPROM is available a fallback mechanism is used. However,
    when that fails the code currently continues. This patch assures
    that the bcma_sprom_get() function aborts when that happens.

    Cc: Rafal Milecki
    Cc: Hauke Mehrtens
    Signed-off-by: Arend van Spriel
    Signed-off-by: John W. Linville

    Arend van Spriel
     

06 Mar, 2012

2 commits

  • On SoCs the sprom is stored in the nvram in a special partition on the
    flash chip. The nvram contains the sprom for the main bus, but
    sometimes also for a pci devices using bcma. This patch makes it
    possible for the arch code to register a function to fetch the needed
    sprom from the nvram and provide it to the bcma code.

    Signed-off-by: Hauke Mehrtens
    Signed-off-by: John W. Linville

    Hauke Mehrtens
     
  • This function is needed by the bcm47xx arch code to get the number of
    the ieee80211 core.

    Signed-off-by: Hauke Mehrtens
    Signed-off-by: John W. Linville

    Hauke Mehrtens
     

16 Feb, 2012

1 commit


07 Feb, 2012

9 commits


02 Feb, 2012

1 commit

  • bcma_bus_scan() leaks 'struct bcma_device' bytes if
    bcma_get_next_core() returns error.

    Restructure the code so we always kfree() the memory we allocate to
    the variable 'core' before it goes out of scope.

    Signed-off-by: Jesper Juhl
    Signed-off-by: John W. Linville

    Jesper Juhl
     

25 Jan, 2012

2 commits