Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'staging-4.19-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging

Pull staging/IIO driver fixes from Greg KH:
"Here are a few small staging and iio driver fixes for -rc4.

Nothing major, just a few small bugfixes for some reported issues, and
a MAINTAINERS file update for the fbtft drivers.

We also re-enable the building of the erofs filesystem as the XArray
patches that were causing it to break never got merged in the -rc1
cycle, so there's no reason it can't be turned back on for now. The
problem that was previously there is now being handled in the Xarray
tree at the moment, so it will not hit us again in the future.

All of these patches have been in linux-next with no reported issues"

* tag 'staging-4.19-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
staging: vboxvideo: Change address of scanout buffer on page-flip
staging: vboxvideo: Fix IRQs no longer working
staging: gasket: TODO: re-implement using UIO
staging/fbtft: Update TODO and mailing lists
staging: erofs: rename superblock flags (MS_xyz -> SB_xyz)
iio: imu: st_lsm6dsx: take into account ts samples in wm configuration
Revert "iio: temperature: maxim_thermocouple: add MAX31856 part"
Revert "staging: erofs: disable compiling temporarile"
MAINTAINERS: Switch a maintainer for drivers/staging/gasket
staging: wilc1000: revert "fix TODO to compile spi and sdio components in single module"

+57 -20
+3 -1
MAINTAINERS
··· 5625 5625 5626 5626 FBTFT Framebuffer drivers 5627 5627 M: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 5628 + L: dri-devel@lists.freedesktop.org 5629 + L: linux-fbdev@vger.kernel.org 5628 5630 S: Maintained 5629 5631 F: drivers/staging/fbtft/ 5630 5632 ··· 6062 6060 6063 6061 GASKET DRIVER FRAMEWORK 6064 6062 M: Rob Springer <rspringer@google.com> 6065 - M: John Joseph <jnjoseph@google.com> 6063 + M: Todd Poynor <toddpoynor@google.com> 6066 6064 M: Ben Chan <benchan@chromium.org> 6067 6065 S: Maintained 6068 6066 F: drivers/staging/gasket/
+6 -7
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c
··· 187 187 188 188 int st_lsm6dsx_update_watermark(struct st_lsm6dsx_sensor *sensor, u16 watermark) 189 189 { 190 - u16 fifo_watermark = ~0, cur_watermark, sip = 0, fifo_th_mask; 190 + u16 fifo_watermark = ~0, cur_watermark, fifo_th_mask; 191 191 struct st_lsm6dsx_hw *hw = sensor->hw; 192 192 struct st_lsm6dsx_sensor *cur_sensor; 193 193 int i, err, data; 194 194 __le16 wdata; 195 + 196 + if (!hw->sip) 197 + return 0; 195 198 196 199 for (i = 0; i < ST_LSM6DSX_ID_MAX; i++) { 197 200 cur_sensor = iio_priv(hw->iio_devs[i]); ··· 206 203 : cur_sensor->watermark; 207 204 208 205 fifo_watermark = min_t(u16, fifo_watermark, cur_watermark); 209 - sip += cur_sensor->sip; 210 206 } 211 207 212 - if (!sip) 213 - return 0; 214 - 215 - fifo_watermark = max_t(u16, fifo_watermark, sip); 216 - fifo_watermark = (fifo_watermark / sip) * sip; 208 + fifo_watermark = max_t(u16, fifo_watermark, hw->sip); 209 + fifo_watermark = (fifo_watermark / hw->sip) * hw->sip; 217 210 fifo_watermark = fifo_watermark * hw->settings->fifo_ops.th_wl; 218 211 219 212 err = regmap_read(hw->regmap, hw->settings->fifo_ops.fifo_th.addr + 1,
-1
drivers/iio/temperature/maxim_thermocouple.c
··· 258 258 static const struct spi_device_id maxim_thermocouple_id[] = { 259 259 {"max6675", MAX6675}, 260 260 {"max31855", MAX31855}, 261 - {"max31856", MAX31855}, 262 261 {}, 263 262 }; 264 263 MODULE_DEVICE_TABLE(spi, maxim_thermocouple_id);
+1 -1
drivers/staging/erofs/Kconfig
··· 2 2 3 3 config EROFS_FS 4 4 tristate "EROFS filesystem support" 5 - depends on BROKEN 5 + depends on BLOCK 6 6 help 7 7 EROFS(Enhanced Read-Only File System) is a lightweight 8 8 read-only file system with modern designs (eg. page-sized
+2 -2
drivers/staging/erofs/super.c
··· 340 340 goto err_sbread; 341 341 342 342 sb->s_magic = EROFS_SUPER_MAGIC; 343 - sb->s_flags |= MS_RDONLY | MS_NOATIME; 343 + sb->s_flags |= SB_RDONLY | SB_NOATIME; 344 344 sb->s_maxbytes = MAX_LFS_FILESIZE; 345 345 sb->s_time_gran = 1; 346 346 ··· 627 627 { 628 628 BUG_ON(!sb_rdonly(sb)); 629 629 630 - *flags |= MS_RDONLY; 630 + *flags |= SB_RDONLY; 631 631 return 0; 632 632 } 633 633
+4
drivers/staging/fbtft/TODO
··· 2 2 GPIO descriptor API in <linux/gpio/consumer.h> and look up GPIO 3 3 lines from device tree, ACPI or board files, board files should 4 4 use <linux/gpio/machine.h> 5 + 6 + * convert all these over to drm_simple_display_pipe and submit for inclusion 7 + into the DRM subsystem under drivers/gpu/drm - fbdev doesn't take any new 8 + drivers anymore.
+13
drivers/staging/gasket/TODO
··· 1 1 This is a list of things that need to be done to get this driver out of the 2 2 staging directory. 3 + 4 + - Implement the gasket framework's functionality through UIO instead of 5 + introducing a new user-space drivers framework that is quite similar. 6 + 7 + UIO provides the necessary bits to implement user-space drivers. Meanwhile 8 + the gasket APIs adds some extra conveniences like PCI BAR mapping, and 9 + MSI interrupts. Add these features to the UIO subsystem, then re-implement 10 + the Apex driver as a basic UIO driver instead (include/linux/uio_driver.h) 11 + 3 12 - Document sysfs files with Documentation/ABI/ entries. 13 + 4 14 - Use misc interface instead of major number for driver version description. 15 + 5 16 - Add descriptions of module_param's 17 + 6 18 - apex_get_status() should actually check status. 19 + 7 20 - "drivers" should never be dealing with "raw" sysfs calls or mess around with 8 21 kobjects at all. The driver core should handle all of this for you 9 22 automaically. There should not be a need for raw attribute macros.
+7
drivers/staging/vboxvideo/vbox_drv.c
··· 59 59 ret = PTR_ERR(dev); 60 60 goto err_drv_alloc; 61 61 } 62 + 63 + ret = pci_enable_device(pdev); 64 + if (ret) 65 + goto err_pci_enable; 66 + 62 67 dev->pdev = pdev; 63 68 pci_set_drvdata(pdev, dev); 64 69 ··· 80 75 err_drv_dev_register: 81 76 vbox_driver_unload(dev); 82 77 err_vbox_driver_load: 78 + pci_disable_device(pdev); 79 + err_pci_enable: 83 80 drm_dev_put(dev); 84 81 err_drv_alloc: 85 82 return ret;
+5
drivers/staging/vboxvideo/vbox_mode.c
··· 323 323 if (rc) 324 324 return rc; 325 325 326 + mutex_lock(&vbox->hw_mutex); 327 + vbox_set_view(crtc); 328 + vbox_do_modeset(crtc, &crtc->mode); 329 + mutex_unlock(&vbox->hw_mutex); 330 + 326 331 spin_lock_irqsave(&drm->event_lock, flags); 327 332 328 333 if (event)
+1 -2
drivers/staging/wilc1000/Makefile
··· 1 1 # SPDX-License-Identifier: GPL-2.0 2 + obj-$(CONFIG_WILC1000) += wilc1000.o 2 3 3 4 ccflags-y += -DFIRMWARE_1002=\"atmel/wilc1002_firmware.bin\" \ 4 5 -DFIRMWARE_1003=\"atmel/wilc1003_firmware.bin\" ··· 12 11 wilc_wlan.o 13 12 14 13 obj-$(CONFIG_WILC1000_SDIO) += wilc1000-sdio.o 15 - wilc1000-sdio-objs += $(wilc1000-objs) 16 14 wilc1000-sdio-objs += wilc_sdio.o 17 15 18 16 obj-$(CONFIG_WILC1000_SPI) += wilc1000-spi.o 19 - wilc1000-spi-objs += $(wilc1000-objs) 20 17 wilc1000-spi-objs += wilc_spi.o
+4 -2
drivers/staging/wilc1000/linux_wlan.c
··· 1038 1038 } 1039 1039 1040 1040 kfree(wilc); 1041 - wilc_debugfs_remove(); 1042 1041 } 1042 + EXPORT_SYMBOL_GPL(wilc_netdev_cleanup); 1043 1043 1044 1044 static const struct net_device_ops wilc_netdev_ops = { 1045 1045 .ndo_init = mac_init_fn, ··· 1062 1062 if (!wl) 1063 1063 return -ENOMEM; 1064 1064 1065 - wilc_debugfs_init(); 1066 1065 *wilc = wl; 1067 1066 wl->io_type = io_type; 1068 1067 wl->hif_func = ops; ··· 1123 1124 1124 1125 return 0; 1125 1126 } 1127 + EXPORT_SYMBOL_GPL(wilc_netdev_init); 1128 + 1129 + MODULE_LICENSE("GPL");
+5 -2
drivers/staging/wilc1000/wilc_debugfs.c
··· 19 19 20 20 #define DBG_LEVEL_ALL (DEBUG | INFO | WRN | ERR) 21 21 static atomic_t WILC_DEBUG_LEVEL = ATOMIC_INIT(ERR); 22 + EXPORT_SYMBOL_GPL(WILC_DEBUG_LEVEL); 22 23 23 24 static ssize_t wilc_debug_level_read(struct file *file, char __user *userbuf, 24 25 size_t count, loff_t *ppos) ··· 88 87 }, 89 88 }; 90 89 91 - int wilc_debugfs_init(void) 90 + static int __init wilc_debugfs_init(void) 92 91 { 93 92 int i; 94 93 struct wilc_debugfs_info_t *info; ··· 104 103 } 105 104 return 0; 106 105 } 106 + module_init(wilc_debugfs_init); 107 107 108 - void wilc_debugfs_remove(void) 108 + static void __exit wilc_debugfs_remove(void) 109 109 { 110 110 debugfs_remove_recursive(wilc_dir); 111 111 } 112 + module_exit(wilc_debugfs_remove); 112 113 113 114 #endif
+6
drivers/staging/wilc1000/wilc_wlan.c
··· 417 417 wilc->hif_func->hif_write_reg(wilc, 0xf0, reg & ~BIT(0)); 418 418 wilc->hif_func->hif_write_reg(wilc, 0xfa, 0); 419 419 } 420 + EXPORT_SYMBOL_GPL(chip_allow_sleep); 420 421 421 422 void chip_wakeup(struct wilc *wilc) 422 423 { ··· 472 471 } 473 472 chip_ps_state = CHIP_WAKEDUP; 474 473 } 474 + EXPORT_SYMBOL_GPL(chip_wakeup); 475 475 476 476 void wilc_chip_sleep_manually(struct wilc *wilc) 477 477 { ··· 486 484 chip_ps_state = CHIP_SLEEPING_MANUAL; 487 485 release_bus(wilc, RELEASE_ONLY); 488 486 } 487 + EXPORT_SYMBOL_GPL(wilc_chip_sleep_manually); 489 488 490 489 void host_wakeup_notify(struct wilc *wilc) 491 490 { ··· 494 491 wilc->hif_func->hif_write_reg(wilc, 0x10b0, 1); 495 492 release_bus(wilc, RELEASE_ONLY); 496 493 } 494 + EXPORT_SYMBOL_GPL(host_wakeup_notify); 497 495 498 496 void host_sleep_notify(struct wilc *wilc) 499 497 { ··· 502 498 wilc->hif_func->hif_write_reg(wilc, 0x10ac, 1); 503 499 release_bus(wilc, RELEASE_ONLY); 504 500 } 501 + EXPORT_SYMBOL_GPL(host_sleep_notify); 505 502 506 503 int wilc_wlan_handle_txq(struct net_device *dev, u32 *txq_count) 507 504 { ··· 876 871 877 872 release_bus(wilc, RELEASE_ALLOW_SLEEP); 878 873 } 874 + EXPORT_SYMBOL_GPL(wilc_handle_isr); 879 875 880 876 int wilc_wlan_firmware_download(struct wilc *wilc, const u8 *buffer, 881 877 u32 buffer_size)
-2
drivers/staging/wilc1000/wilc_wlan_if.h
··· 831 831 int wilc_wlan_init(struct net_device *dev); 832 832 u32 wilc_get_chipid(struct wilc *wilc, bool update); 833 833 834 - int wilc_debugfs_init(void); 835 - void wilc_debugfs_remove(void); 836 834 #endif