14 Dec, 2011

1 commit


01 Nov, 2011

1 commit

  • The original implementations reference THIS_MODULE in an inline.
    We could include , but it is better to avoid chaining.

    Fortunately someone else already thought of this, and made a similar
    inline into a #define in for device_schedule_callback(),
    [see commit 523ded71de0] so follow that precedent here.

    Also bubble up any __must_check that were used on the prev. wrapper inline
    functions up one to the real __register functions, to preserve any prev.
    sanity checks that were used in those instances.

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

14 Sep, 2011

1 commit


10 Aug, 2011

1 commit


26 Jul, 2011

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (43 commits)
    fs: Merge split strings
    treewide: fix potentially dangerous trailing ';' in #defined values/expressions
    uwb: Fix misspelling of neighbourhood in comment
    net, netfilter: Remove redundant goto in ebt_ulog_packet
    trivial: don't touch files that are removed in the staging tree
    lib/vsprintf: replace link to Draft by final RFC number
    doc: Kconfig: `to be' -> `be'
    doc: Kconfig: Typo: square -> squared
    doc: Konfig: Documentation/power/{pm => apm-acpi}.txt
    drivers/net: static should be at beginning of declaration
    drivers/media: static should be at beginning of declaration
    drivers/i2c: static should be at beginning of declaration
    XTENSA: static should be at beginning of declaration
    SH: static should be at beginning of declaration
    MIPS: static should be at beginning of declaration
    ARM: static should be at beginning of declaration
    rcu: treewide: Do not use rcu_read_lock_held when calling rcu_dereference_check
    Update my e-mail address
    PCIe ASPM: forcedly -> forcibly
    gma500: push through device driver tree
    ...

    Fix up trivial conflicts:
    - arch/arm/mach-ep93xx/dma-m2p.c (deleted)
    - drivers/gpio/gpio-ep93xx.c (renamed and context nearby)
    - drivers/net/r8169.c (just context changes)

    Linus Torvalds
     

19 Jul, 2011

1 commit


07 Jul, 2011

1 commit


06 Jul, 2011

1 commit

  • The SSB code reads PCI revision ID register as 16-bit entity while the register
    is actually 8-bit only (the next 8 bits are the programming interface register).
    Fix the read and make the 'rev' field of 'struct ssb_boardinfo' 8-bit as well,
    to match the register size.

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: John W. Linville

    Sergei Shtylyov
     

21 May, 2011

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits)
    macvlan: fix panic if lowerdev in a bond
    tg3: Add braces around 5906 workaround.
    tg3: Fix NETIF_F_LOOPBACK error
    macvlan: remove one synchronize_rcu() call
    networking: NET_CLS_ROUTE4 depends on INET
    irda: Fix error propagation in ircomm_lmp_connect_response()
    irda: Kill set but unused variable 'bytes' in irlan_check_command_param()
    irda: Kill set but unused variable 'clen' in ircomm_connect_indication()
    rxrpc: Fix set but unused variable 'usage' in rxrpc_get_transport()
    be2net: Kill set but unused variable 'req' in lancer_fw_download()
    irda: Kill set but unused vars 'saddr' and 'daddr' in irlan_provider_connect_indication()
    atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.
    rxrpc: Fix set but unused variable 'usage' in rxrpc_get_peer().
    rxrpc: Kill set but unused variable 'local' in rxrpc_UDP_error_handler()
    rxrpc: Kill set but unused variable 'sp' in rxrpc_process_connection()
    rxrpc: Kill set but unused variable 'sp' in rxrpc_rotate_tx_window()
    pkt_sched: Kill set but unused variable 'protocol' in tc_classify()
    isdn: capi: Use pr_debug() instead of ifdefs.
    tg3: Update version to 3.119
    tg3: Apply rx_discards fix to 5719/5720
    ...

    Fix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c
    as per Davem.

    Linus Torvalds
     

19 May, 2011

1 commit

  • Some embedded devices like the Netgear WNDR3300 have two SSB based cards
    without an own sprom on the pci bus. We have to provide two different
    fallback sproms for these and this was not possible with the old solution.
    In the bcm47xx architecture the sprom data is stored in the nvram in the
    main flash storage. The architecture code will be able to fill the sprom
    with the stored data based on the bus where the device was found.

    The bcm63xx code should do the same thing as before, just using the new
    API.

    Acked-by: Michael Buesch
    Cc: netdev@vger.kernel.org
    Cc: linux-wireless@vger.kernel.org
    Cc: Florian Fainelli
    Signed-off-by: Hauke Mehrtens
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/2362/
    Signed-off-by: Ralf Baechle

    Hauke Mehrtens
     

12 May, 2011

1 commit


27 Apr, 2011

1 commit

  • My 14e4:4315 is SSB_IDLOW_SSBREV_26:
    read32 0xfaafcff8 -> 0x600422d5
    My 14e4:4328 is SSB_IDLOW_SSBREV_24:
    read32 0xfaafcff8 -> 0x400422c5
    My 14e4:432b is SSB_IDLOW_SSBREV_26 again:
    read32 0xfaafcff8 -> 0x600422d5

    For all of them wl driver is using 0x2 reject bit:
    write32(0xf98)
    Signed-off-by: John W. Linville

    Rafał Miłecki
     

26 Apr, 2011

2 commits


05 Apr, 2011

1 commit


19 Feb, 2011

2 commits


10 Feb, 2011

1 commit


27 Dec, 2010

1 commit


17 Dec, 2010

1 commit

  • The nvram_get function was never in the mainline kernel, it only existed in
    an external OpenWrt patch. Use nvram_getenv function, which is in mainline
    and use an include instead of an extra function declaration. et0macaddr
    contains the mac address in text from like 00:11:22:33:44:55. We have to
    parse it before adding it into macaddr.

    nvram_parse_macaddr will be merged into asm/mach-bcm47xx/nvram.h through
    the MIPS git tree and will be available soon. It will not build now without
    nvram_parse_macaddr, but it hasn't before either.

    Signed-off-by: Hauke Mehrtens
    To: linux-mips@linux-mips.org
    Cc: mb@bu3sch.de
    Cc: netdev@vger.kernel.org
    Cc: Hauke Mehrtens
    Acked-by: Michael Buesch
    Patchwork: https://patchwork.linux-mips.org/patch/1849/
    Signed-off-by: Ralf Baechle

    Hauke Mehrtens
     

03 Dec, 2010

1 commit


25 Aug, 2010

1 commit


05 Jun, 2010

2 commits

  • Now they are unnecessary. We can use the generic DMA API with any bus.

    Signed-off-by: FUJITA Tomonori
    Cc: Michael Buesch
    Cc: Gary Zambrano
    Cc: Stefano Brivio
    Cc: Larry Finger
    Cc: John W. Linville
    Cc: David S. Miller
    Signed-off-by: Andrew Morton
    Signed-off-by: John W. Linville

    FUJITA Tomonori
     
  • Add dma_dev, a pointer to struct device, to struct ssb_device. We pass it
    to the generic DMA API with SSB_BUSTYPE_PCI and SSB_BUSTYPE_SSB.
    ssb_devices_register() sets up it properly.

    This is preparation for replacing the ssb bus specific DMA API (ssb_dma_*)
    with the generic DMA API.

    Signed-off-by: FUJITA Tomonori
    Acked-by: Michael Buesch
    Cc: Gary Zambrano
    Cc: Stefano Brivio
    Cc: Larry Finger
    Cc: John W. Linville
    Acked-by: David S. Miller
    Signed-off-by: Andrew Morton
    Signed-off-by: John W. Linville

    FUJITA Tomonori
     

27 Apr, 2010

4 commits

  • Signed-off-by: Rafał Miłecki
    Signed-off-by: John W. Linville

    Rafał Miłecki
     
  • Signed-off-by: Rafał Miłecki
    Signed-off-by: John W. Linville

    Rafał Miłecki
     
  • Our offset handling becomes even a little more hackish now. For some reason I
    do not understand all offsets as inrelative. It assumes base offset is 0x1000
    but it will work for now as we make offsets relative anyway by removing base
    0x1000. Should be cleaner however.

    Signed-off-by: Rafał Miłecki
    Signed-off-by: John W. Linville

    Rafał Miłecki
     
  • Attempting to read registers that don't exist on the SSB bus can cause
    hangs on some boxes. At least some b43 devices are 'in the wild' that
    don't have SPROMs at all. When the SSB bus support loads, it attempts
    to read these (non-existant) SPROMs and causes hard hangs on the box --
    no console output, etc.

    This patch adds some intelligence to determine whether or not the SPROM
    is present before attempting to read it. This avoids those hard hangs
    on those devices with no SPROM attached to their SSB bus. The
    SSB-attached devices (e.g. b43, et al.) won't work, but at least the box
    will survive to test further patches. :-)

    Signed-off-by: John W. Linville
    Signed-off-by: Rafał Miłecki
    Cc: Larry Finger
    Cc: Michael Buesch

    John W. Linville
     

28 Oct, 2009

1 commit


09 Sep, 2009

1 commit

  • Add support for communicating with a Sonics Silicon Backplane through a
    SDIO interface, as found in the Nintendo Wii WLAN daughter card.

    The Nintendo Wii WLAN card includes a custom Broadcom 4318 chip with
    a SDIO host interface.

    Signed-off-by: Albert Herranz
    Signed-off-by: Michael Buesch
    Signed-off-by: John W. Linville

    Albert Herranz
     

29 Aug, 2009

1 commit


14 Aug, 2009

1 commit


06 Mar, 2009

1 commit

  • This adds SSB functionality to register a fallback SPROM image from the
    architecture setup code.

    Weird architectures exist that have half-assed SSB devices without SPROM attached to
    their PCI busses. The architecture can register a fallback SPROM image that is
    used if no SPROM is found on the SSB device.

    Signed-off-by: Michael Buesch
    Cc: Florian Fainelli
    Signed-off-by: John W. Linville

    Michael Buesch
     

10 Feb, 2009

1 commit


30 Jan, 2009

1 commit


11 Nov, 2008

1 commit


30 Aug, 2008

2 commits

  • Only rev 1 and 2 ssb SPROMs have fields named et0mac and et1mac;
    however, all of the extraction routines extract pseudo data for these
    fields from regions that are all 1's resulting in a hardware address
    of FF:FF:FF:FF:FF:FF. This patch forces such a fill at the beginning of
    the data extraction process, and only does the formal extraction if the
    SPROM rev is 1 or 2.

    Signed-off-by: Larry Finger
    Signed-off-by: John W. Linville

    Larry Finger
     
  • Although a revision 5 SPROM has not been seen in the wild, the
    open-source portion of the MIPS driver 4.150.10.5 describes its
    layout, which is mostly inherited from revision 4. This patch
    implements the differences.

    Signed-off-by: Larry Finger
    Acked-by: Michael Buesch
    Signed-off-by: John W. Linville

    Larry Finger
     

27 Jul, 2008

1 commit

  • Add per-device dma_mapping_ops support for CONFIG_X86_64 as POWER
    architecture does:

    This enables us to cleanly fix the Calgary IOMMU issue that some devices
    are not behind the IOMMU (http://lkml.org/lkml/2008/5/8/423).

    I think that per-device dma_mapping_ops support would be also helpful for
    KVM people to support PCI passthrough but Andi thinks that this makes it
    difficult to support the PCI passthrough (see the above thread). So I
    CC'ed this to KVM camp. Comments are appreciated.

    A pointer to dma_mapping_ops to struct dev_archdata is added. If the
    pointer is non NULL, DMA operations in asm/dma-mapping.h use it. If it's
    NULL, the system-wide dma_ops pointer is used as before.

    If it's useful for KVM people, I plan to implement a mechanism to register
    a hook called when a new pci (or dma capable) device is created (it works
    with hot plugging). It enables IOMMUs to set up an appropriate
    dma_mapping_ops per device.

    The major obstacle is that dma_mapping_error doesn't take a pointer to the
    device unlike other DMA operations. So x86 can't have dma_mapping_ops per
    device. Note all the POWER IOMMUs use the same dma_mapping_error function
    so this is not a problem for POWER but x86 IOMMUs use different
    dma_mapping_error functions.

    The first patch adds the device argument to dma_mapping_error. The patch
    is trivial but large since it touches lots of drivers and dma-mapping.h in
    all the architecture.

    This patch:

    dma_mapping_error() doesn't take a pointer to the device unlike other DMA
    operations. So we can't have dma_mapping_ops per device.

    Note that POWER already has dma_mapping_ops per device but all the POWER
    IOMMUs use the same dma_mapping_error function. x86 IOMMUs use device
    argument.

    [akpm@linux-foundation.org: fix sge]
    [akpm@linux-foundation.org: fix svc_rdma]
    [akpm@linux-foundation.org: build fix]
    [akpm@linux-foundation.org: fix bnx2x]
    [akpm@linux-foundation.org: fix s2io]
    [akpm@linux-foundation.org: fix pasemi_mac]
    [akpm@linux-foundation.org: fix sdhci]
    [akpm@linux-foundation.org: build fix]
    [akpm@linux-foundation.org: fix sparc]
    [akpm@linux-foundation.org: fix ibmvscsi]
    Signed-off-by: FUJITA Tomonori
    Cc: Muli Ben-Yehuda
    Cc: Andi Kleen
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: Avi Kivity
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    FUJITA Tomonori
     

15 Jul, 2008

1 commit

  • ssb.h implements DMA mapping functions, so it should
    include dma-mapping.h. This fixes compile failures on certain architectures.

    Reported-by: Stephen Rothwell
    Signed-off-by: Michael Buesch
    Signed-off-by: John W. Linville

    Michael Buesch