15 Dec, 2011

1 commit


14 Dec, 2011

1 commit


09 Dec, 2011

1 commit

  • This fixes a Data bus error on some SoCs. The first fix for this
    problem did not solve it on all devices.
    commit 6ae8ec27868bfdbb815287bee8146acbefaee867
    Author: Rafał Miłecki
    Date: Tue Jul 5 17:25:32 2011 +0200
    ssb: fix init regression of hostmode PCI core

    In ssb_pcicore_fix_sprom_core_index() the sprom on the PCI core is
    accessed, but the sprom only exists when the ssb bus is connected over
    a PCI bus to the rest of the system and not when the SSB Bus is the
    main system bus. SoCs sometimes have a PCI host controller and there
    this code will not be executed, but there are some old SoCs with an PCI
    controller in client mode around and ssb_pcicore_fix_sprom_core_index()
    should not be called on these devices too. The PCI controller on these
    devices are unused, but without this fix it results in an Data bus
    error when it gets initialized.

    Cc: Michael Buesch
    Cc: Rafał Miłecki
    Signed-off-by: Hauke Mehrtens
    Cc: stable@vger.kernel.org
    Signed-off-by: John W. Linville

    Hauke Mehrtens
     

01 Nov, 2011

2 commits

  • Or we will get things like this when we remove the implicit path:

    drivers/ssb/embedded.c:32: warning: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'
    drivers/ssb/driver_chipcommon.c:432: warning: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'
    drivers/ssb/driver_chipcommon_pmu.c:607: warning: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'
    drivers/ssb/pcihost_wrapper.c:120: error: ‘THIS_MODULE’ undeclared (first use in this function)
    drivers/ssb/driver_pcicore.c:721: warning: type defaults to ‘int’ in declaration of ‘EXPORT_SYMBOL’
    drivers/ssb/driver_gige.c:249: warning: type defaults to 'int' in declaration of 'EXPORT_SYMBOL'

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     
  • The header cleanup means that module.h is no longer simply
    everywhere. So real modules need to actively include it.

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

25 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
     

22 Jul, 2011

1 commit


12 Jul, 2011

1 commit


11 Jul, 2011

1 commit


08 Jul, 2011

1 commit

  • Our workarounds seem to be clientmode PCI specific. Using SPROM
    workaround on SoC resulted in Oops:

    Data bus error, epc == 8017ed58, ra == 80225838
    Oops[#1]:
    Cpu 0
    $ 0 : 00000000 10008000 b8000000 00000001
    $ 4 : 80293b5c 00000caa ffffffff 00000000
    $ 8 : 0000000a 00000003 00000001 696d6d20
    $12 : ffffffff 00000000 00000000 ffffffff
    $16 : 802d0140 b8004800 802c0000 00000000
    $20 : 00000000 802c0000 00000000 802d04d4
    $24 : 00000018 80151a00
    $28 : 81816000 81817df8 8029bda0 80225838
    Hi : 00000000
    Lo : 00000000
    epc : 8017ed58 ssb_ssb_read16+0x48/0x60
    Not tainted
    ra : 80225838 ssb_pcicore_init+0x54/0x3b4

    Reported-by: Hauke Mehrtens
    Signed-off-by: Rafał Miłecki
    Tested-by: Hauke Mehrtens
    Signed-off-by: John W. Linville

    Rafał Miłecki
     

07 Jul, 2011

1 commit


06 Jul, 2011

3 commits

  • The SSB code reads PCI subsystem IDs from the PCI configuration registers while
    they are already stored by the PCI subsystem in the 'subsystem_{vendor|device}'
    fields of 'struct pci_dev'...

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

    Sergei Shtylyov
     
  • The SSB code reads PCI revision ID from the PCI configuration register while
    it's already stored by the PCI subsystem in the 'revision' field of 'struct
    pci_dev'...

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

    Sergei Shtylyov
     
  • 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
     

28 Jun, 2011

2 commits


23 Jun, 2011

1 commit

  • Two functions in ssb are using register_pci_controller() which is
    __devinit. The functions ssb_pcicore_init_hostmode() and
    ssb_gige_probe() should also be __devinit.

    This fixes the following warning:
    WARNING: vmlinux.o(.text+0x2727b8): Section mismatch in reference from the function ssb_pcicore_init_hostmode() to the function .devinit.text:register_pci_controller()
    The function ssb_pcicore_init_hostmode() references
    the function __devinit register_pci_controller().
    This is often because ssb_pcicore_init_hostmode lacks a __devinit
    annotation or the annotation of register_pci_controller is wrong.

    WARNING: vmlinux.o(.text+0x273398): Section mismatch in reference from the function ssb_gige_probe() to the function .devinit.text:register_pci_controller()
    The function ssb_gige_probe() references
    the function __devinit register_pci_controller().
    This is often because ssb_gige_probe lacks a __devinit
    annotation or the annotation of register_pci_controller is wrong.

    Reported-by: Ralf Baechle
    Signed-off-by: Hauke Mehrtens
    Signed-off-by: John W. Linville

    Hauke Mehrtens
     

18 Jun, 2011

1 commit

  • warning message
    drivers/ssb/driver_chipcommon_pmu.c: In function ssb_pmu_resources_init
    drivers/ssb/driver_chipcommon_pmu.c:420:15: warning: updown_tab_size may
    be used uninitilized in this function.

    updown_tab_size and depend_tab_size may not be set in the bus->chip_id
    switch statement, so set to 0 by default to avoid using uninitialized
    stack space.

    Signed-off-by: Connor Hansen
    Signed-off-by: Michael Buesch
    Signed-off-by: John W. Linville

    Connor Hansen
     

04 Jun, 2011

1 commit


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
     

17 May, 2011

1 commit


14 May, 2011

1 commit

  • drivers/ssb/main.c:1336: error: 'SSB_PCICORE_BCAST_ADDR' undeclared (first use in this function)
    drivers/ssb/main.c:1337: error: 'SSB_PCICORE_BCAST_DATA' undeclared (first use in this function)
    drivers/ssb/main.c:1349: error: 'struct ssb_pcicore' has no member named 'dev'

    Reported-by: Randy Dunlap
    Signed-off-by: John W. Linville

    John W. Linville
     

12 May, 2011

1 commit


11 May, 2011

1 commit

  • Some of the BCM43xx chips contain cores that are attached to the SSB, but are
    inactive as they do not connect to the external environment. These must not be
    registered. Several of these types are handled in driver ssb; however, the
    specific case of an inactive 802.11 cores is now treated in b43 and b43legacy.
    Although the current setup works, this minor change will place all such
    workarounds in ssb, and simplify the code in drivers b43 and b43legacy.

    Signed-off-by: Rafał Miłecki
    Tested-by: Larry Finger
    Acked-by: Larry Finger
    Signed-off-by: John W. Linville

    Rafał Miłecki
     

06 May, 2011

1 commit


03 May, 2011

1 commit


29 Apr, 2011

3 commits


27 Apr, 2011

2 commits

  • 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
     
  • ssb_chipco_set_clockmode may want to touch CC registers to control power of the
    bus. However touching registers without powered_up set causes warnings.

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

    Rafał Miłecki
     

26 Apr, 2011

3 commits


13 Apr, 2011

1 commit


05 Apr, 2011

3 commits