13 Sep, 2019

1 commit

  • Don't populate the array pwr_info_offset on the stack but instead make it
    static const. Makes the object code smaller by 207 bytes.

    Before:
    text data bss dec hex filename
    26066 3000 64 29130 71ca drivers/ssb/pci.o

    After:
    text data bss dec hex filename
    25763 3096 64 28923 70fb drivers/ssb/pci.o

    (gcc version 9.2.1, amd64)

    Signed-off-by: Colin Ian King
    Acked-by: Michael Büsch
    Signed-off-by: Kalle Valo

    Colin Ian King
     

25 Jun, 2019

1 commit


21 May, 2019

1 commit


08 May, 2019

1 commit

  • Pull networking updates from David Miller:
    "Highlights:

    1) Support AES128-CCM ciphers in kTLS, from Vakul Garg.

    2) Add fib_sync_mem to control the amount of dirty memory we allow to
    queue up between synchronize RCU calls, from David Ahern.

    3) Make flow classifier more lockless, from Vlad Buslov.

    4) Add PHY downshift support to aquantia driver, from Heiner
    Kallweit.

    5) Add SKB cache for TCP rx and tx, from Eric Dumazet. This reduces
    contention on SLAB spinlocks in heavy RPC workloads.

    6) Partial GSO offload support in XFRM, from Boris Pismenny.

    7) Add fast link down support to ethtool, from Heiner Kallweit.

    8) Use siphash for IP ID generator, from Eric Dumazet.

    9) Pull nexthops even further out from ipv4/ipv6 routes and FIB
    entries, from David Ahern.

    10) Move skb->xmit_more into a per-cpu variable, from Florian
    Westphal.

    11) Improve eBPF verifier speed and increase maximum program size,
    from Alexei Starovoitov.

    12) Eliminate per-bucket spinlocks in rhashtable, and instead use bit
    spinlocks. From Neil Brown.

    13) Allow tunneling with GUE encap in ipvs, from Jacky Hu.

    14) Improve link partner cap detection in generic PHY code, from
    Heiner Kallweit.

    15) Add layer 2 encap support to bpf_skb_adjust_room(), from Alan
    Maguire.

    16) Remove SKB list implementation assumptions in SCTP, your's truly.

    17) Various cleanups, optimizations, and simplifications in r8169
    driver. From Heiner Kallweit.

    18) Add memory accounting on TX and RX path of SCTP, from Xin Long.

    19) Switch PHY drivers over to use dynamic featue detection, from
    Heiner Kallweit.

    20) Support flow steering without masking in dpaa2-eth, from Ioana
    Ciocoi.

    21) Implement ndo_get_devlink_port in netdevsim driver, from Jiri
    Pirko.

    22) Increase the strict parsing of current and future netlink
    attributes, also export such policies to userspace. From Johannes
    Berg.

    23) Allow DSA tag drivers to be modular, from Andrew Lunn.

    24) Remove legacy DSA probing support, also from Andrew Lunn.

    25) Allow ll_temac driver to be used on non-x86 platforms, from Esben
    Haabendal.

    26) Add a generic tracepoint for TX queue timeouts to ease debugging,
    from Cong Wang.

    27) More indirect call optimizations, from Paolo Abeni"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1763 commits)
    cxgb4: Fix error path in cxgb4_init_module
    net: phy: improve pause mode reporting in phy_print_status
    dt-bindings: net: Fix a typo in the phy-mode list for ethernet bindings
    net: macb: Change interrupt and napi enable order in open
    net: ll_temac: Improve error message on error IRQ
    net/sched: remove block pointer from common offload structure
    net: ethernet: support of_get_mac_address new ERR_PTR error
    net: usb: smsc: fix warning reported by kbuild test robot
    staging: octeon-ethernet: Fix of_get_mac_address ERR_PTR check
    net: dsa: support of_get_mac_address new ERR_PTR error
    net: dsa: sja1105: Fix status initialization in sja1105_get_ethtool_stats
    vrf: sit mtu should not be updated when vrf netdev is the link
    net: dsa: Fix error cleanup path in dsa_init_module
    l2tp: Fix possible NULL pointer dereference
    taprio: add null check on sched_nest to avoid potential null pointer dereference
    net: mvpp2: cls: fix less than zero check on a u32 variable
    net_sched: sch_fq: handle non connected flows
    net_sched: sch_fq: do not assume EDT packets are ordered
    net: hns3: use devm_kcalloc when allocating desc_cb
    net: hns3: some cleanup for struct hns3_enet_ring
    ...

    Linus Torvalds
     

26 Apr, 2019

1 commit

  • Syzkaller report this:

    kasan: GPF could be caused by NULL-ptr deref or user memory access
    general protection fault: 0000 [#1] SMP KASAN PTI
    CPU: 0 PID: 4492 Comm: syz-executor.0 Not tainted 5.0.0-rc7+ #45
    Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1ubuntu1 04/01/2014
    RIP: 0010:sysfs_remove_file_ns+0x27/0x70 fs/sysfs/file.c:468
    Code: 00 00 00 41 54 55 48 89 fd 53 49 89 d4 48 89 f3 e8 ee 76 9c ff 48 8d 7d 30 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 3c 02 00 75 2d 48 89 da 48 b8 00 00 00 00 00 fc ff df 48 8b 6d
    RSP: 0018:ffff8881e9d9fc00 EFLAGS: 00010206
    RAX: dffffc0000000000 RBX: ffffffff900367e0 RCX: ffffffff81a95952
    RDX: 0000000000000006 RSI: ffffc90001405000 RDI: 0000000000000030
    RBP: 0000000000000000 R08: fffffbfff1fa22ed R09: fffffbfff1fa22ed
    R10: 0000000000000001 R11: fffffbfff1fa22ec R12: 0000000000000000
    R13: ffffffffc1abdac0 R14: 1ffff1103d3b3f8b R15: 0000000000000000
    FS: 00007fe409dc1700(0000) GS:ffff8881f1200000(0000) knlGS:0000000000000000
    CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 0000001b2d721000 CR3: 00000001e98b6005 CR4: 00000000007606f0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
    PKRU: 55555554
    Call Trace:
    sysfs_remove_file include/linux/sysfs.h:519 [inline]
    driver_remove_file+0x40/0x50 drivers/base/driver.c:122
    pcmcia_remove_newid_file drivers/pcmcia/ds.c:163 [inline]
    pcmcia_unregister_driver+0x7d/0x2b0 drivers/pcmcia/ds.c:209
    ssb_modexit+0xa/0x1b [ssb]
    __do_sys_delete_module kernel/module.c:1018 [inline]
    __se_sys_delete_module kernel/module.c:961 [inline]
    __x64_sys_delete_module+0x3dc/0x5e0 kernel/module.c:961
    do_syscall_64+0x147/0x600 arch/x86/entry/common.c:290
    entry_SYSCALL_64_after_hwframe+0x49/0xbe
    RIP: 0033:0x462e99
    Code: f7 d8 64 89 02 b8 ff ff ff ff c3 66 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48
    RSP: 002b:00007fe409dc0c58 EFLAGS: 00000246 ORIG_RAX: 00000000000000b0
    RAX: ffffffffffffffda RBX: 000000000073bf00 RCX: 0000000000462e99
    RDX: 0000000000000000 RSI: 0000000000000000 RDI: 00000000200000c0
    RBP: 0000000000000002 R08: 0000000000000000 R09: 0000000000000000
    R10: 0000000000000000 R11: 0000000000000246 R12: 00007fe409dc16bc
    R13: 00000000004bccaa R14: 00000000006f6bc8 R15: 00000000ffffffff
    Modules linked in: ssb(-) 3c59x nvme_core macvlan tap pata_hpt3x3 rt2x00pci null_blk tsc40 pm_notifier_error_inject notifier_error_inject mdio cdc_wdm nf_reject_ipv4 ath9k_common ath9k_hw ath pppox ppp_generic slhc ehci_platform wl12xx wlcore tps6507x_ts ioc4 nf_synproxy_core ide_gd_mod ax25 can_dev iwlwifi can_raw atm tm2_touchkey can_gw can sundance adp5588_keys rt2800mmio rt2800lib rt2x00mmio rt2x00lib eeprom_93cx6 pn533 lru_cache elants_i2c ip_set nfnetlink gameport tipc hampshire nhc_ipv6 nhc_hop nhc_udp nhc_fragment nhc_routing nhc_mobility nhc_dest 6lowpan silead brcmutil nfc mt76_usb mt76 mac80211 iptable_security iptable_raw iptable_mangle iptable_nat nf_nat_ipv4 nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 iptable_filter bpfilter ip6_vti ip_gre sit hsr veth vxcan batman_adv cfg80211 rfkill chnl_net caif nlmon vcan bridge stp llc ip6_gre ip6_tunnel tunnel6 tun joydev mousedev serio_raw ide_pci_generic piix floppy ide_core sch_fq_codel ip_tables x_tables ipv6
    [last unloaded: 3c59x]
    Dumping ftrace buffer:
    (ftrace buffer empty)
    ---[ end trace 3913cbf8011e1c05 ]---

    In ssb_modinit, it does not fail SSB init when ssb_host_pcmcia_init failed,
    however in ssb_modexit, ssb_host_pcmcia_exit calls pcmcia_unregister_driver
    unconditionally, which may tigger a NULL pointer dereference issue as above.

    Reported-by: Hulk Robot
    Fixes: 399500da18f7 ("ssb: pick PCMCIA host code support from b43 driver")
    Signed-off-by: YueHaibing
    Signed-off-by: Kalle Valo

    YueHaibing
     

08 Apr, 2019

1 commit

  • mmiowb() is now implied by spin_unlock() on architectures that require
    it, so there is no reason to call it from driver code. This patch was
    generated using coccinelle:

    @mmiowb@
    @@
    - mmiowb();

    and invoked as:

    $ for d in drivers include/linux/qed sound; do \
    spatch --include-headers --sp-file mmiowb.cocci --dir $d --in-place; done

    NOTE: mmiowb() has only ever guaranteed ordering in conjunction with
    spin_unlock(). However, pairing each mmiowb() removal in this patch with
    the corresponding call to spin_unlock() is not at all trivial, so there
    is a small chance that this change may regress any drivers incorrectly
    relying on mmiowb() to order MMIO writes between CPUs using lock-free
    synchronisation. If you've ended up bisecting to this commit, you can
    reintroduce the mmiowb() calls using wmb() instead, which should restore
    the old behaviour on all architectures other than some esoteric ia64
    systems.

    Acked-by: Linus Torvalds
    Signed-off-by: Will Deacon

    Will Deacon
     

05 Oct, 2018

1 commit


09 Aug, 2018

3 commits


12 May, 2018

2 commits

  • SSB_PCICORE_HOSTMODE protects MIPS specific code that calls not exported
    symbols pcibios_enable_device and register_pci_controller. This code is
    supposed to be compiled only with ssb builtin.

    This fixes:
    ERROR: "pcibios_enable_device" [drivers/ssb/ssb.ko] undefined!
    ERROR: "register_pci_controller" [drivers/ssb/ssb.ko] undefined!
    make[1]: *** [scripts/Makefile.modpost:92: __modpost] Error 1

    Reported-by: Matt Redfearn
    Signed-off-by: Rafał Miłecki
    Reviewed-by: Larry Finger
    Signed-off-by: Kalle Valo

    Rafał Miłecki
     
  • This reverts commit 882164a4a928bcaa53280940436ca476e6b1db8e.

    Above commit added "SSB = y" dependency to the wrong symbol
    SSB_DRIVER_PCICORE_POSSIBLE and prevented SSB_DRIVER_PCICORE from being
    selected when needed. PCI core driver for core running in clienthost
    mode is important for bus initialization. It's perfectly valid scenario
    to have ssb built as module and use it with buses on PCI cards.

    This fixes regression that affected all *module* users with PCI cards.

    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1572349
    Signed-off-by: Rafał Miłecki
    Signed-off-by: Kalle Valo

    Rafał Miłecki
     

14 Mar, 2018

1 commit


28 Feb, 2018

2 commits


01 Feb, 2018

1 commit


26 Jan, 2018

1 commit

  • After upgrading an old laptop to 4.15-rc9, I found that the eth0 and
    wlan0 interfaces had disappeared. It turns out that the b43 and b44
    drivers require SSB_PCIHOST_POSSIBLE which depends on
    PCI_DRIVERS_LEGACY, a config option that only exists on Mips.

    Fixes: 58eae1416b80 ("ssb: Disable PCI host for PCI_DRIVERS_GENERIC")
    Cc: stable@vger.org
    Signed-off-by: Sven Joachim
    Reviewed-by: James Hogan
    Signed-off-by: Kalle Valo

    Sven Joachim
     

20 Jan, 2018

1 commit


17 Jan, 2018

1 commit

  • Since commit d41e6858ba58 ("MIPS: Kconfig: Set default MIPS system type
    as generic") changed the default MIPS platform to the "generic"
    platform, which uses PCI_DRIVERS_GENERIC instead of PCI_DRIVERS_LEGACY,
    various files in drivers/ssb/ have failed to build.

    This is particularly due to the existence of struct pci_controller being
    dependent on PCI_DRIVERS_LEGACY since commit c5611df96804 ("MIPS: PCI:
    Introduce CONFIG_PCI_DRIVERS_LEGACY"), so add that dependency to Kconfig
    to prevent these files being built for the "generic" platform including
    all{yes,mod}config builds.

    Fixes: c5611df96804 ("MIPS: PCI: Introduce CONFIG_PCI_DRIVERS_LEGACY")
    Signed-off-by: James Hogan
    Cc: Michael Buesch
    Cc: Ralf Baechle
    Cc: Paul Burton
    Cc: Matt Redfearn
    Cc: Guenter Roeck
    Cc: linux-wireless@vger.kernel.org
    Cc: linux-mips@linux-mips.org
    Tested-by: Guenter Roeck
    Signed-off-by: Kalle Valo

    James Hogan
     

07 Dec, 2017

1 commit

  • No need to get into the submenu to disable all SSB-related
    config entries.

    This makes it easier to disable all SSB config options
    without entering the submenu. It will also enable one
    to see that en/dis-abled state from the outside menu.

    This is only intended to change menuconfig UI, not change
    the config dependencies.

    Signed-off-by: Vincent Legoll
    Signed-off-by: Kalle Valo

    Vincent Legoll
     

02 Nov, 2017

1 commit

  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

24 May, 2017

1 commit


17 Nov, 2016

1 commit


06 Jul, 2016

1 commit


26 Apr, 2016

1 commit


26 Feb, 2016

1 commit

  • Drivers that use the SSB sprom functionality typically 'select SSB_SPROM'
    from Kconfig, but CONFIG_SSB_HOST_SOC misses this, which results in
    a build failure unless at least one of the other drivers that selects
    it is enabled:

    drivers/built-in.o: In function `ssb_host_soc_get_invariants':
    (.text+0x459494): undefined reference to `ssb_fill_sprom_with_fallback'

    This adds the same select statement that is used elsewhere.

    Signed-off-by: Arnd Bergmann
    Fixes: 541c9a84cd85 ("ssb: pick SoC invariants code from MIPS BCM47xx arch")
    Signed-off-by: Kalle Valo

    Arnd Bergmann
     

20 Jan, 2016

1 commit

  • The SoC variant of the ssb code is now optional like the other
    ones, which means we can build the framwork without any
    front-end, but that results in a warning:

    drivers/ssb/main.c:616:12: warning: 'ssb_bus_register' defined but not used [-Wunused-function]

    This annotates the ssb_bus_register function as __maybe_unused to
    shut up the warning. A configuration like this will not work on
    any hardware of course, but we still want this to silently build
    without warnings if the configuration is allowed in the first
    place.

    Signed-off-by: Arnd Bergmann
    Fixes: 845da6e58e19 ("ssb: add Kconfig entry for compiling SoC related code")
    Acked-by: Michael Buesch
    Signed-off-by: Kalle Valo

    Arnd Bergmann
     

16 Dec, 2015

1 commit

  • There is code in ssb fetching "invariants" that is basically a set of
    board specific data. Every host requires its own implementation of
    reading function. In ssb we have support for PCI, PCMCIA & SDIO.
    For some (historical?) reason code reading "invariants" for SoC was
    placed in arch code and provided by a callback. This is not needed
    nowadays, so lets move that into ssb. This way we keep all "invariants"
    functions in a single module making code cleaner.

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Kalle Valo

    Rafał Miłecki
     

29 Oct, 2015

3 commits

  • This allows saving a little of space when not using ssb on Broadcom SoC.

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Kalle Valo

    Rafał Miłecki
     
  • This cleans main.c a bit and will allow us to compile SoC related code
    conditionally in the future.

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Kalle Valo

    Rafał Miłecki
     
  • ssb bus can be found on various "host" devices like PCI/PCMCIA/SDIO.
    Every ssb bus contains cores AKA devices.
    The main idea is to have ssb driver scan/initialize bus and register
    ready-to-use cores. This way ssb drivers can operate on a single core
    mostly ignoring underlaying details.

    For some reason PCMCIA support was split between ssb and b43. We got
    PCMCIA host device probing in b43, then bus scanning in ssb and then
    wireless core probing back in b43. The truth is it's very unlikely we
    will ever see PCMCIA ssb device with no 802.11 core but I still don't
    see any advantage of the current architecture.

    With proposed change we get the same functionality with a simpler
    architecture, less Kconfig symbols, one killed EXPORT and hopefully
    cleaner b43. Since b43 supports both: ssb & bcma I prefer to keep ssb
    specific code in ssb driver.

    This mostly moves code from b43's pcmcia.c to bridge_pcmcia_80211.c. We
    already use similar solution with b43_pci_bridge.c. I didn't use "b43"
    in name of this new file as in theory any driver can operate on wireless
    core.

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Kalle Valo

    Rafał Miłecki
     

29 Sep, 2015

4 commits


09 Jun, 2015

1 commit

  • Dan Carpenter reported missing brackets which resulted in reading a
    wrong crystalfreq value. I also noticed that the result of this
    function is ignored.

    Reported-By: Dan Carpenter
    Signed-off-by: Hauke Mehrtens
    Signed-off-by: Michael Buesch
    Cc: davem@davemloft.net
    Cc: netdev@vger.kernel.org
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/10536/
    Signed-off-by: Ralf Baechle

    Hauke Mehrtens
     

20 May, 2015

1 commit


18 Apr, 2015

1 commit

  • Pull MIPS updates from Ralf Baechle:
    "This is the main pull request for MIPS for Linux 4.1. Most
    noteworthy:

    - Add more Octeon-optimized crypto functions
    - Octeon crypto preemption and locking fixes
    - Little endian support for Octeon
    - Use correct CSR to soft reset Octeons
    - Support LEDs on the Octeon-based DSR-1000N
    - Fix PCI interrupt mapping for the Octeon-based DSR-1000N
    - Mark prom_free_prom_memory() as __init for a number of systems
    - Support for Imagination's Pistachio SOC. This includes arch and
    CLK bits. I'd like to merge pinctrl bits later
    - Improve parallelism of csum_partial for certain pipelines
    - Organize DTB files in subdirs like other architectures
    - Implement read_sched_clock for all MIPS platforms other than
    Octeon
    - Massive series of 38 fixes and cleanups for the FPU emulator /
    kernel
    - Further FPU remulator work to support new features. This sits on a
    separate branch which also has been pulled into the 4.1 KVM branch
    - Clean up and fixes for the SEAD3 eval board; remove unused file
    - Various updates for Netlogic platforms
    - A number of small updates for Loongson 3 platforms
    - Increase the memory limit for ATH79 platforms to 256MB
    - A fair number of fixes and updates for BCM47xx platforms
    - Finish the implementation of XPA support
    - MIPS FDC support. No, not floppy controller but Fast Debug Channel :)
    - Detect the R16000 used in SGI legacy platforms
    - Fix Kconfig dependencies for the SSB bus support"

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (265 commits)
    MIPS: Makefile: Fix MIPS ASE detection code
    MIPS: asm: elf: Set O32 default FPU flags
    MIPS: BCM47XX: Fix detecting Microsoft MN-700 & Asus WL500G
    MIPS: Kconfig: Disable SMP/CPS for 64-bit
    MIPS: Hibernate: flush TLB entries earlier
    MIPS: smp-cps: cpu_set FPU mask if FPU present
    MIPS: lose_fpu(): Disable FPU when MSA enabled
    MIPS: ralink: add missing symbol for RALINK_ILL_ACC
    MIPS: ralink: Fix bad config symbol in PCI makefile.
    SSB: fix Kconfig dependencies
    MIPS: Malta: Detect and fix bad memsize values
    Revert "MIPS: Avoid pipeline stalls on some MIPS32R2 cores."
    MIPS: Octeon: Delete override of cpu_has_mips_r2_exec_hazard.
    MIPS: Fix cpu_has_mips_r2_exec_hazard.
    MIPS: kernel: entry.S: Set correct ISA level for mips_ihb
    MIPS: asm: spinlock: Fix addiu instruction for R10000_LLSC_WAR case
    MIPS: r4kcache: Use correct base register for MIPS R6 cache flushes
    MIPS: Kconfig: Fix typo for the r2-to-r6 emulator kernel parameter
    MIPS: unaligned: Fix regular load/store instruction emulation for EVA
    MIPS: unaligned: Surround load/store macros in do {} while statements
    ...

    Linus Torvalds
     

13 Apr, 2015

1 commit


10 Apr, 2015

1 commit

  • The commit 21400f252a97 ("MIPS: BCM47XX: Make ssb init NVRAM instead of
    bcm47xx polling it") introduces a dependency to SSB_SFLASH but did not
    add it to the Kconfig.

    drivers/ssb/driver_mipscore.c:216:36: error: 'struct ssb_mipscore' has no
    member named 'sflash'
    struct ssb_sflash *sflash = &mcore->sflash;
    ^
    drivers/ssb/driver_mipscore.c:249:12: error: dereferencing pointer to
    incomplete type
    if (sflash->present) {
    ^

    Signed-off-by: Adrien Schildknecht
    Cc: m@bues.ch
    Cc: zajec5@gmail.com
    Cc: linux-mips@linux-mips.org
    Cc: linux-kernel@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/9598/
    Signed-off-by: Ralf Baechle

    Adrien Schildknecht