linux-sg2042/drivers/staging
Arnd Bergmann f45b8934b9 staging: wilc1000: revert "fix TODO to compile spi and sdio components in single module"
The TODO item named "make spi and sdio components coexist in one build"
was apparently addressed a long time ago, but never removed from the
TODO file. However, the new patch that tries to address it actually
makes it worse again by duplicating the common parts of the driver into
two separate modules rather than sharing them. This also introduces a
build regression when one of the two is built-in while the other is a
loadable module:

drivers/staging/wilc1000/wilc_debugfs.o:(.data+0x10): undefined reference to `__this_module'

Reverting the patch makes it build again. I'm leaving the TODO file
modification though, as there is nothing left to do for this item.

A related problem however still seems to exist: one still cannot have
multiple concurrent instances of wilc1000 devices present in the
system, as there are lots of shared global variables such as

host_interface.c:static struct wilc_vif *periodic_rssi_vif;
wilc_sdio.c:static struct wilc_sdio g_sdio;
wilc_wlan.c:static enum chip_ps_states chip_ps_state = CHIP_WAKEDUP;
wilc_wlan.c:static u32 pending_acks;
wilc_wfi_cfgoperations.c:int wilc_connecting;

In order to have multiple instances working (sdio, spi, or mixed),
all such variables need to be dynamically allocated per instance and
stored in 'struct wilc' or one of the structures referenced by it.

Fixes: 9abc44ba4e ("staging: wilc1000: fix TODO to compile spi and sdio components in single module")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-08-27 19:12:59 +02:00
..
android Staging/IIO patches for 4.19-rc1 2018-08-18 11:00:00 -07:00
axis-fifo staging: fix platform_no_drv_owner.cocci warnings 2018-07-29 14:40:41 +02:00
board
clocking-wizard staging: clocking-wizard: prefer 'help' in Kconfig 2018-06-17 09:05:13 +02:00
comedi staging: comedi: ni_mio_common: fix subdevice flags for PFI subdevice 2018-08-08 14:11:19 +02:00
dgnc staging: dgnc: dgnc_tty.c: Avoid '(' at the end of line 2018-07-24 14:00:54 +02:00
emxx_udc
erofs staging: erofs: remove an extra semicolon in z_erofs_vle_unzip_all 2018-08-08 11:21:14 +02:00
fbtft staging: fbtft: Add spaces around / - Style 2018-08-08 14:23:16 +02:00
fsl-dpaa2 ARM: SoC driver updates 2018-08-23 13:52:46 -07:00
fwserial tty: replace ->proc_fops with ->proc_show 2018-05-16 07:24:30 +02:00
gasket staging: gasket: remove some extra semicolon 2018-08-08 11:20:45 +02:00
gdm724x staging: gdm724x: redundant variables idProduct and idVendor 2018-07-11 13:12:34 +02:00
goldfish staging: goldfish: add a blank line into struct goldfish_audio 2018-07-12 21:49:24 +02:00
greybus treewide: Use array_size() in vmalloc() 2018-06-12 16:19:22 -07:00
gs_fpgaboot
iio staging:iio:impedance-analyzer:ad5933: Macro replacement Cleanups. 2018-06-30 18:21:17 +01:00
ks7010 Merge 4.18-rc7 into staging-next 2018-07-30 10:13:15 +02:00
media media updates for v4.19-rc1 2018-08-15 18:29:14 -07:00
most Staging/IIO patches for 4.19-rc1 2018-08-18 11:00:00 -07:00
mt29f_spinand
mt7621-dma
mt7621-dts staging: mt7621-dts: add pcie controller port registers 2018-08-08 14:08:41 +02:00
mt7621-eth drivers/staging/mt7621-eth: Use dma_zalloc_coherent to replace dma_alloc_coherent+memset 2018-08-01 20:00:53 +02:00
mt7621-mmc staging: mt7621-mmc: Use BIT macro instead of explicit shifting in board.h 2018-07-29 10:08:02 +02:00
mt7621-pci staging: mt7621-pci: remove remaining pci_legacy dependant code 2018-08-08 14:08:41 +02:00
mt7621-pinctrl Revert "staging: mt7621-pinctrl: replace core_initcall_sync with builtin_platform_driver" 2018-07-10 12:36:28 +02:00
mt7621-spi staging: mt7621-spi: Remove unnecessary braces {} from single statement if block. 2018-06-17 09:05:12 +02:00
netlogic net: Add generic ndo_select_queue functions 2018-07-09 13:15:34 -07:00
nvec
octeon
octeon-usb Staging: octeon-usb: Adding SPDX license identifier 2018-07-27 17:18:14 +02:00
olpc_dcon staging: olpc_dcon: add missing identifier names 2018-07-16 10:19:14 +02:00
pi433 staging: pi433: fix error return code in pi433_probe() 2018-07-12 21:49:24 +02:00
rtl8188eu Staging/IIO patches for 4.19-rc1 2018-08-18 11:00:00 -07:00
rtl8192e staging: rtl8192e: ieee80211: Convert from ahash to shash 2018-07-29 10:05:23 +02:00
rtl8192u staging:rtl8192u: Remove unused macro definitions - Style 2018-08-08 14:27:03 +02:00
rtl8712 Staging/IIO patches for 4.19-rc1 2018-08-18 11:00:00 -07:00
rtl8723bs Staging/IIO patches for 4.19-rc1 2018-08-18 11:00:00 -07:00
rtlwifi Staging/IIO patches for 4.19-rc1 2018-08-18 11:00:00 -07:00
rts5208 staging: rts5208: xd.c fixed a brace coding style issue 2018-07-21 08:54:11 +02:00
sm750fb staging: sm750fb: remove redundant pointer 'output' 2018-07-11 14:45:54 +02:00
speakup Merge 4.18-rc7 into staging-next 2018-07-30 10:13:15 +02:00
unisys treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
vboxvideo Staging/IIO patches for 4.19-rc1 2018-08-18 11:00:00 -07:00
vc04_services Staging/IIO patches for 4.19-rc1 2018-08-18 11:00:00 -07:00
vme
vt6655 staging: vt6655: remove some redundant variables 2018-07-11 14:47:08 +02:00
vt6656 staging: vt6655: remove some redundant variables 2018-07-11 14:47:08 +02:00
wilc1000 staging: wilc1000: revert "fix TODO to compile spi and sdio components in single module" 2018-08-27 19:12:59 +02:00
wlan-ng staging: wlan-ng: remove unused definitions from p80211types.h 2018-08-05 16:12:42 +02:00
xgifb
Kconfig ARM: SoC driver updates 2018-08-23 13:52:46 -07:00
Makefile ARM: SoC driver updates 2018-08-23 13:52:46 -07:00