1. 05 Jul, 2021 13 commits
    • Linus Torvalds's avatar
      Merge tag 'staging-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · a16d8644
      Linus Torvalds authored
      Pull staging / IIO driver updates from Greg KH:
       "Here is the big set of IIO and staging driver patches for 5.14-rc1.
      
        Loads of IIO driver updates and additions in here, the shortlog has
        the full details.
      
        For the staging side, we moved a few drivers out of staging, and
        deleted the kpc2000 drivers as the original developer asked us to
        because no one was working on them anymore.
      
        Also in here are loads of coding style cleanups due to different
        intern projects focusing on the staging tree to try to get experience
        doing kernel development.
      
        All of these have been in the linux-next tree for a while with no
        reported problems"
      
      * tag 'staging-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (744 commits)
        staging: hi6421-spmi-pmic: cleanup some macros
        staging: hi6421-spmi-pmic: change identation of a table
        staging: hi6421-spmi-pmic: change a return code
        staging: hi6421-spmi-pmic: better name IRQs
        staging: hi6421-spmi-pmic: use devm_request_threaded_irq()
        staging: hisilicon,hi6421-spmi-pmic.yaml: cleanup descriptions
        spmi: hisi-spmi-controller: move driver from staging
        phy: phy-hi3670-usb3: move driver from staging into phy
        staging: rtl8188eu: remove include/rtw_debug.h header
        staging: rtl8188eu: remove GlobalDebugLevel variable
        staging: rtl8188eu: remove DRIVER_PREFIX preprocessor definition
        staging: rtl8188eu: remove RT_TRACE macro
        staging: rtl8188eu: remove all RT_TRACE calls from hal/rtl8188eu_recv.c
        staging: rtl8188eu: remove all RT_TRACE calls from hal/hal_intf.c
        staging: rtl8188eu: remove all RT_TRACE calls from hal/rtl8188eu_xmit.c
        staging: rtl8188eu: remove all RT_TRACE calls from core/rtw_xmit.c
        staging: rtl8188eu: remove all RT_TRACE calls from core/rtw_pwrctrl.c
        staging: rtl8188eu: remove all RT_TRACE calls from core/rtw_recv.c
        staging: rtl8188eu: remove all RT_TRACE calls from core/rtw_ioctl_set.c
        staging: rtl8188eu: remove all RT_TRACE calls from core/rtw_ieee80211.c
        ...
      a16d8644
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.14-rc1' of... · f5c13f1f
      Linus Torvalds authored
      Merge tag 'driver-core-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core changes from Greg KH:
       "Here is the small set of driver core and debugfs updates for 5.14-rc1.
      
        Included in here are:
      
         - debugfs api cleanups (touched some drivers)
      
         - devres updates
      
         - tiny driver core updates and tweaks
      
        Nothing major in here at all, and all have been in linux-next for a
        while with no reported issues"
      
      * tag 'driver-core-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (27 commits)
        docs: ABI: testing: sysfs-firmware-memmap: add some memmap types.
        devres: Enable trace events
        devres: No need to call remove_nodes() when there none present
        devres: Use list_for_each_safe_from() in remove_nodes()
        devres: Make locking straight forward in release_nodes()
        kernfs: move revalidate to be near lookup
        drivers/base: Constify static attribute_group structs
        firmware_loader: remove unneeded 'comma' macro
        devcoredump: remove contact information
        driver core: Drop helper devm_platform_ioremap_resource_wc()
        component: Rename 'dev' to 'parent'
        component: Drop 'dev' argument to component_match_realloc()
        device property: Don't check for NULL twice in the loops
        driver core: auxiliary bus: Fix typo in the docs
        drivers/base/node.c: make CACHE_ATTR define static DEVICE_ATTR_RO
        debugfs: remove return value of debugfs_create_ulong()
        debugfs: remove return value of debugfs_create_bool()
        scsi: snic: debugfs: remove local storage of debugfs files
        b43: don't save dentries for debugfs
        b43legacy: don't save dentries for debugfs
        ...
      f5c13f1f
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · eed0218e
      Linus Torvalds authored
      Pull char / misc driver updates from Greg KH:
       "Here is the big set of char / misc and other driver subsystem updates
        for 5.14-rc1. Included in here are:
      
         - habanalabs driver updates
      
         - fsl-mc driver updates
      
         - comedi driver updates
      
         - fpga driver updates
      
         - extcon driver updates
      
         - interconnect driver updates
      
         - mei driver updates
      
         - nvmem driver updates
      
         - phy driver updates
      
         - pnp driver updates
      
         - soundwire driver updates
      
         - lots of other tiny driver updates for char and misc drivers
      
        This is looking more and more like the "various driver subsystems
        mushed together" tree...
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'char-misc-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (292 commits)
        mcb: Use DEFINE_RES_MEM() helper macro and fix the end address
        PNP: moved EXPORT_SYMBOL so that it immediately followed its function/variable
        bus: mhi: pci-generic: Add missing 'pci_disable_pcie_error_reporting()' calls
        bus: mhi: Wait for M2 state during system resume
        bus: mhi: core: Fix power down latency
        intel_th: Wait until port is in reset before programming it
        intel_th: msu: Make contiguous buffers uncached
        intel_th: Remove an unused exit point from intel_th_remove()
        stm class: Spelling fix
        nitro_enclaves: Set Bus Master for the NE PCI device
        misc: ibmasm: Modify matricies to matrices
        misc: vmw_vmci: return the correct errno code
        siox: Simplify error handling via dev_err_probe()
        fpga: machxo2-spi: Address warning about unused variable
        lkdtm/heap: Add init_on_alloc tests
        selftests/lkdtm: Enable various testable CONFIGs
        lkdtm: Add CONFIG hints in errors where possible
        lkdtm: Enable DOUBLE_FAULT on all architectures
        lkdtm/heap: Add vmalloc linear overflow test
        lkdtm/bugs: XFAIL UNALIGNED_LOAD_STORE_WRITE
        ...
      eed0218e
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 3f8b8e7d
      Linus Torvalds authored
      Pull backlight updates from Lee Jones:
       "New Drivers:
         - Add support for Richtek RT4831 Backlight
      
        New Device Support:
         - Add support for Qualcomm PMI8994 WLED Backlight
      
        Fix-ups:
         - Device Tree adaptions to richtek,rt4831-backlight
         - Trivial spelling, whitespace, etc in Kconfig
         - Use Atomic PWM API in lm3630a_bl
      
        Bug Fixes:
         - Fix Firmware Node Leak in error path in lm3630a_bl
         - Fix erroneous return codes in lm3630a_bl"
      
      * tag 'backlight-next-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight: lm3630a: Convert to atomic PWM API and check for errors
        backlight: lm3630a: Fix return code of .update_status() callback
        backlight: Kconfig whitespace and indentation cleanups
        video: backlight: qcom-wled: Add PMI8994 compatible
        backlight: rt4831: Adds support for Richtek RT4831 backlight
        backlight: rt4831: Adds DT binding document for Richtek RT4831 backlight
        backlight: lm3630a_bl: Put fwnode in error case during ->probe()
      3f8b8e7d
    • Linus Torvalds's avatar
      Merge tag 'mfd-next-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 463c09d0
      Linus Torvalds authored
      Pull mfd updates from Lee Jones:
       "Core Frameworks:
         - Fix Software Node clean-up code
      
        New Drivers:
         - Add support for MediaTek MT6359 PMIC
         - Add support for Qualcomm PM8008 PMIC
         - Add support for Richtek RT4831
      
        New Device Support:
         - Add support for Audio CODECs to Rockchip RK817
         - Add support for Alder Lake-M to Intel LPSS PCI
         - Add support for Periph Device Charge to ChromeOS EC
      
        New Functionality:
         - Provide additional IRQs for wcd934x
         - Add optional Reset functionality to lp87565
      
        Fix-ups:
         - Namespacing & visibility fixes to lp87565
         - Differentiate between Power and Home key IRQs in mt6358
         - Export I2C device tables in da9052-i2c, stmpe-i2c
         - Adapt IRQ flags in max8907, rn5t61, max8907
         - Make some functions/devices optional in axp20x, cros_ec_dev
         - Explicitly include used header files in ioc3
         - Remove superfluous lines in MAINTAINERS, sec-core, st,stm32-timers
         - Resolve Kerneldoc issues in omap-usb-host, omap-usb-tll, si476x-cmd, si476x-i2c
         - Convert arizona-core to a module
         - Copyright changes in hi655x-pmic
         - Drop support for board file initialisation in sec-core
         - Trivial spelling, whitespace etc updates in lp87565, si476x-cmd,
           mt6360-core, wm831x-core, twl-core, db8500-prcmu
         - Simplify various implementations of wcd934x, mt6360-core, max8997,
           max8998, da9052-i2c, da9062-core, sec-core,
         - Device Tree binding changes in google,cros-ec,
           richtek,rt4831-backlight, db8500-prcmu, qcom,pm8008, qcom,spmi-pmic
         - Use provided APIs to simplify t7l66xb, as3722, da9055-core,
           tps80031, 88pm800, 88pm805, asic3, sun6i-prcm, wm831x-core,
           wm831x-otp, ucb1x00-assabet, timberdale, sm501, pcf50633-core,
           kempld-core, janz-cmodio, intel_soc_pmic_bxtwc, ab8500-core
      
        Bug Fixes:
         - Fix unused variable warning in rk817_codec
         - Fix regulator voltage configuration in rohm-bd71828
         - Fix ongoing freeing of regmap_config 'name' issue in syscon
         - Fix error handling path in da9063-i2c
         - Fix Kconfig issues in MFD_MP2629
         - Fix DMA mask warnings in motorola-cpcap"
      
      * tag 'mfd-next-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (83 commits)
        mfd: cros_ec: Add peripheral device charger
        mfd: max8907: Remove IRQF_NO_AUTOEN flag
        mfd: ab8500-core: Use DEVICE_ATTR_RO/RW macro
        mfd: intel_soc_pmic_bxtwc: Use DEVICE_ATTR_ADMIN_RW macro
        mfd: janz-cmodio: Use DEVICE_ATTR_RO macro
        mfd: kempld-core: Use DEVICE_ATTR_RO macro
        mfd: pcf50633: Use DEVICE_ATTR_ADMIN_RO macro
        mfd: sm501: Use DEVICE_ATTR_RO macro
        mfd: timberdale: Use DEVICE_ATTR_RO macro
        mfd: ucb1x00-assabet: Use DEVICE_ATTR_RO macro
        mfd: wm831x: Use DEVICE_ATTR_RO macro
        mfd: wm831x: Use DEFINE_RES_IRQ_NAMED() and DEFINE_RES_IRQ() to simplify code
        dt-bindings: mfd: stm32-timers: Remove #address/size cells from required properties
        mfd: sun6i-prcm: Use DEFINE_RES_MEM() to simplify code
        mfd: asic3: Use DEFINE_RES_MEM() and DEFINE_RES_IRQ() to simplify code
        mfd: 88pm805: Use DEFINE_RES_IRQ_NAMED() to simplify code
        mfd: 88pm800: Use DEFINE_RES_IRQ_NAMED() to simplify code
        mfd: tps80031: Use DEFINE_RES_IRQ() to simplify code
        mfd: da9055: Use DEFINE_RES_IRQ_NAMED() to simplify code
        mfd: as3722: Use DEFINE_RES_IRQ_NAMED() to simplify code
        ...
      463c09d0
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine · 18ef0827
      Linus Torvalds authored
      Pull dmaengine updates from Vinod Koul:
       "This time around we have a smaller pull request than usual and this
        includes code removal, so should be good!
      
        New drivers/devices
         - Support for QCOM SM8250 GPI DMA
         - removal of shdma-of driver and binding
      
        Updates:
         - arm-pl08x yaml binding move
         - altera-msgdma gained DT support
         - removal of imx-sdma platform data support
         - idxd and xilinx driver updates"
      
      * tag 'dmaengine-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine: (22 commits)
        dmaengine: imx-sdma: Remove platform data header
        dmaengine: xilinx: dpdma: Fix spacing around addr[i-1]
        dmaengine: xilinx: dpdma: Use kernel type u32 over uint32_t
        dmaengine: altera-msgdma: add OF support
        MAINTAINERS: add entry for Altera mSGDMA
        dt-bindings: dma: add schema for altera-msgdma
        dmaengine: xilinx: dpdma: fix kernel-doc
        dmaengine: sf-pdma: apply proper spinlock flags in sf_pdma_prep_dma_memcpy()
        dmaengine: sh: Remove unused shdma-of driver
        dt-bindings: dmaengine: Remove SHDMA Device Tree bindings
        dmaengine: qcom: gpi: Add SM8250 compatible
        dt-bindings: dmaengine: qcom: gpi: add compatible for sm8250
        dmaengine: sun4i: Use list_move_tail instead of list_del/list_add_tail
        dmaengine: ti: omap-dma: Skip pointless cpu_pm context restore on errors
        dmaengine: hsu: Account transferred bytes
        dmaengine: Move kdoc description of struct dma_chan_percpu closer to it
        dmaengine: xilinx: dpdma: Print debug message when losing vsync race
        dmaengine: xilinx: dpdma: Print channel number in kernel log messages
        dt-bindings: dma: convert arm-pl08x to yaml
        dmaengine: idxd: remove devm allocation for idxd->int_handles
        ...
      18ef0827
    • Linus Torvalds's avatar
      Merge tag 'mmc-v5.14-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 8f3f2ccf
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson
       "MMC core:
         - Clear flags before allowing to retune
      
        MMC host:
         - sdhci: Clear unused bounce buffer at DMA mmap error path
         - sdhci: Fix warning message when accessing RPMB in HS400 mode
         - sdhci-of-arasan: Use clock-frequency property to update clk_xin
         - mtk-sd: Fixup compatible string for MT8195"
      
      * tag 'mmc-v5.14-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
        mmc: sdhci: Fix warning message when accessing RPMB in HS400 mode
        dt-bindings: mmc: change compatiable string for MT8195 mmc host IP
        mmc: sdhci: Clear unused bounce buffer at DMA mmap error path
        phy: intel: Fix for warnings due to EMMC clock 175Mhz change in FIP
        mmc: sdhci-of-arasan: Use clock-frequency property to update clk_xin
        mmc: core: clear flags before allowing to retune
      8f3f2ccf
    • Linus Torvalds's avatar
      Merge tag 'gpio-updates-for-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · b8052599
      Linus Torvalds authored
      Pull gpio updates from Bartosz Golaszewski:
       "One new driver, support for new models in existing ones, dt-bindings
        conversions for several modules and improvements all over the place.
      
        Summary:
      
         - new driver for the IDT 79RC3243x GPIO controller
      
         - device tree bindings coversion to YAML for the following drivers:
           gpio-rk3328-grf, gpio-omap, gpio-davinci, gpio-zynq, gpio-stp,
           gpio-pcf857x
      
         - cleanup of probe functions in many drivers from Alexandru Ardelean,
           mostly dropping unnecessary calls to platform_set_drvdata() and
           removing error messages where none are needed (handled by the
           subsystem already)
      
         - several improvements to the core gpiolib and the sysfs interface
           code from Andy Shevchenko
      
         - conversion of the gpio-xilinx driver to using the bitmap API +
           improvements of suspend/resume handling + minor tweaks
      
         - convert the gpio-stmpe to using devres helpers exclusively in probe
           for improved robustness
      
         - updates for the generic gpio-regmap driver
      
         - updates for the gpio-dwapb driver
      
         - support for a new model in gpio-pca953x
      
         - cleanups in gpio-tegra186, gpio-104-idio-16, gpio-mxs & gpio-xgene
      
         - slight code refactoring of the gpio-zynq driver
      
         - documentation fixes from Mauro Carvalho Chehab
      
         - a bunch of minor tweaks and improvements all over the place"
      
      * tag 'gpio-updates-for-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (57 commits)
        docs: driver-api: gpio: using-gpio.rst: avoid using ReST :doc:`foo` markup
        dt-bindings: gpio: pcf857x: Convert to json-schema
        gpio: mxs: Prefer unsigned int to bare use of unsigned
        dt-bindings: gpio: stp: convert to json-schema
        dt-bindings: gpio: zynq: convert bindings to YAML
        dt-bindings: gpio: gpio-davinci: Convert to json-schema
        gpio: pca953x: Add support for the On Semi pca9655
        gpio: gpio-xilinx: update on suspend and resume calls
        gpio: zynq: Check return value of irq_get_irq_data
        gpio: zynq: Check return value of pm_runtime_get_sync
        gpio: zynq: use module_platform_driver to simplify the code
        gpio: idt3243x: Fix return value check in idt_gpio_probe()
        MAINTAINERS: update ti,omap-gpio.yaml reference
        dt-bindings: gpio: Add devicetree binding for IDT 79RC32434 GPIO controller
        gpio: Add support for IDT 79RC3243x GPIO controller
        gpio: regmap: move drvdata to config data
        gpio-dwapb: Drop unused headers and sort the rest
        gpio: gpio-regmap: Use devm_add_action_or_reset()
        gpio: dwapb: Switch to use fwnode_irq_get()
        gpio: dwapb: Drop redundant check in dwapb_irq_set_type()
        ...
      b8052599
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 1f89a590
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - a new driver for SparkFun Qwiic Joystick
      
       - pm8941-pwrkey driver now supports PMK8350
      
       - a bunch of assorted driver fixes
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (44 commits)
        Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl
        Input: hideep - fix the uninitialized use in hideep_nvm_unlock()
        Input: trackpoint - use kobj_to_dev()
        Input: atkbd - use kobj_to_dev()
        Input: tsc200x-core - use kobj_to_dev()
        Input: ims-pcu - use kobj_to_dev()
        Input: cros_ec_keyb - use kobj_to_dev() API
        dt-bindings: input: touchscreen: st1232: Convert to json-schema
        Input: i8042 - fix typos in comments
        Input: add SparkFun Qwiic Joystick driver
        dt-bindings: Add vendor prefix and bindings for Qwiic Joystick
        Input: cy8ctmg110_ts - switch to using gpiod API
        Input: cy8ctmg110_ts - switch to using managed resources
        Input: cy8ctmg110_ts - use endian helpers when converting data on wire
        Input: cy8ctmg110_ts - let I2C core configure wake interrupt
        Input: cy8ctmg110_ts - do not hardcode as wakeup source
        Input: cy8ctmg110_ts - do not hard code interrupt trigger
        Input: cy8ctmg110_ts - rely on platform code to supply interrupt
        Input: resistive-adc-touch - fix uninitialized variable 'press'
        Input: pm8941-pwrkey - add support for PMK8350 PON_HLOS PMIC peripheral
        ...
      1f89a590
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · da85e7ed
      Linus Torvalds authored
      Pull MTD updates from Richard Weinberger:
       "MTD core changes:
         - Convert list_for_each to entry variant
         - Use MTD_DEVICE_ATTR_RO/RW() helper macros
         - Remove unnecessary OOM messages
         - Potential NULL dereference in mtd_otp_size()
         - Fix freeing of otp_info buffer
         - Create partname and partid debug files for child MTDs
         - tests:
            - Remove redundant assignment to err
            - Fix error return code in mtd_oobtest_init()
         - Add OTP NVMEM provider support
         - Allow specifying of_node
         - Convert sysfs sprintf/snprintf family to sysfs_emit
      
        Bindings changes:
         - Convert ti,am654-hbmc.txt to YAML schema
         - spi-nor: add otp property
         - Add OTP bindings
         - add YAML schema for the generic MTD bindings
         - Add brcm,trx-magic
      
        MTD device drivers changes:
         - Add support for microchip 48l640 EERAM
         - Remove superfluous "break"
         - sm_ftl:
            - Fix alignment of block comment
         - nftl:
            - Return -ENOMEM when kmalloc failed
         - nftlcore:
            - Remove set but rewrite variables
         - phram:
            - Fix error return code in phram_setup()
         - plat-ram:
            - Remove redundant dev_err call in platram_probe()
      
        MTD parsers changes:
         - Qcom:
            - Fix leaking of partition name
         - Redboot:
            - Fix style issues
            - Seek fis-index-block in the right node
         - trx:
            - Allow to use TRX parser on Mediatek SoCs
            - Allow to specify brcm, trx-magic in DT
      
        Raw NAND core:
         - Allow SDR timings to be nacked
         - Bring support for NV-DDR timings which involved a number of small
           preparation changes to bring new helpers, properly introduce NV-DDR
           structures, fill them, differenciate them and pick the best timing
           set.
         - Add the necessary infrastructure to parse the new gpio-cs property
           which aims at enlarging the number of available CS when a hardware
           controller is too constrained.
         - Update dead URL
         - Silence static checker warning in nand_setup_interface()
         - BBT:
            - Fix corner case in bad block table handling
         - onfi:
            - Use more recent ONFI specification wording
            - Use the BIT() macro when possible
      
        Raw NAND controller drivers:
         - Atmel:
            - Ensure the data interface is supported.
         - Arasan:
            - Finer grain NV-DDR configuration
            - Rename the data interface register
            - Use the right DMA mask
            - Leverage additional GPIO CS
            - Ensure proper configuration for the asserted target
            - Add support for the NV-DDR interface
            - Fix a macro parameter
         - brcmnand:
            - Convert bindings to json-schema
         - OMAP:
            - Various fixes and style improvements
            - Add larger page NAND chips support
         - PL35X:
            - New driver
         - QCOM:
            - Avoid writing to obsolete register
            - Delete an unneeded bool conversion
            - Allow override of partition parser
         - Marvell:
            - Minor documentation correction
            - Add missing clk_disable_unprepare() on error in
              marvell_nfc_resume()
         - R852:
            - Use DEVICE_ATTR_RO() helper macro
         - MTK:
            - Remove redundant dev_err call in mtk_ecc_probe()
         - HISI504:
            - Remove redundant dev_err call in probe
      
        SPI-NAND core:
         - Light reorganisation for the introduction of a core resume handler
         - Fix double counting of ECC stats
      
        SPI-NAND manufacturer drivers:
         - Macronix:
            - Add support for serial NAND flash
      
        SPI NOR core changes:
         - Ability to dump SFDP tables via sysfs
         - Support for erasing OTP regions on Winbond and similar flashes
         - Few API doc updates and fixes
         - Locking support for MX25L12805D
      
        SPI NOR controller drivers changes:
         - Use SPI_MODE_X_MASK in nxp-spifi
         - Intel Alder Lake-M SPI serial flash support"
      
      * tag 'mtd/for-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (125 commits)
        mtd: spi-nor: remove redundant continue statement
        mtd: rawnand: omap: Add larger page NAND chips support
        mtd: rawnand: omap: Various style fixes
        mtd: rawnand: omap: Check return values
        mtd: rawnand: omap: Rename a macro
        mtd: rawnand: omap: Aggregate the HW configuration of the ELM
        mtd: rawnand: pl353: Add support for the ARM PL353 SMC NAND controller
        dt-bindings: mtd: pl353-nand: Describe this hardware controller
        MAINTAINERS: Add PL353 NAND controller entry
        mtd: rawnand: qcom: avoid writing to obsolete register
        mtd: rawnand: marvell: Minor documentation correction
        mtd: rawnand: r852: use DEVICE_ATTR_RO() helper macro
        mtd: spinand: add SPI-NAND MTD resume handler
        mtd: spinand: Add spinand_init_flash() helper
        mtd: spinand: add spinand_read_cfg() helper
        mtd: rawnand: marvell: add missing clk_disable_unprepare() on error in marvell_nfc_resume()
        mtd: rawnand: arasan: Finer grain NV-DDR configuration
        mtd: rawnand: arasan: Rename the data interface register
        mtd: rawnand: onfi: Fix endianness when reading NV-DDR values
        mtd: rawnand: arasan: Use the right DMA mask
        ...
      da85e7ed
    • Linus Torvalds's avatar
      Merge tag 'm68knommu-for-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · 8fc4fb17
      Linus Torvalds authored
      Pull m68knommu update from Greg Ungerer:
       "Fix fix missing LCD splash screen data initializer"
      
      * tag 'm68knommu-for-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68knommu: fix missing LCD splash screen data initializer
      8fc4fb17
    • Dmitry Torokhov's avatar
      Merge branch 'next' into for-linus · 818b2658
      Dmitry Torokhov authored
      Prepare input updates for 5.14 merge window.
      818b2658
    • Alexander Larkin's avatar
      Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl · f8f84af5
      Alexander Larkin authored
      Even though we validate user-provided inputs we then traverse past
      validated data when applying the new map. The issue was originally
      discovered by Murray McAllister with this simple POC (if the following
      is executed by an unprivileged user it will instantly panic the system):
      
      int main(void) {
      	int fd, ret;
      	unsigned int buffer[10000];
      
      	fd = open("/dev/input/js0", O_RDONLY);
      	if (fd == -1)
      		printf("Error opening file\n");
      
      	ret = ioctl(fd, JSIOCSBTNMAP & ~IOCSIZE_MASK, &buffer);
      	printf("%d\n", ret);
      }
      
      The solution is to traverse internal buffer which is guaranteed to only
      contain valid date when constructing the map.
      
      Fixes: 182d679b ("Input: joydev - prevent potential read overflow in ioctl")
      Fixes: 999b874f ("Input: joydev - validate axis/button maps before clobbering current ones")
      Reported-by: default avatarMurray McAllister <murray.mcallister@gmail.com>
      Suggested-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarAlexander Larkin <avlarkin82@gmail.com>
      Link: https://lore.kernel.org/r/20210620120030.1513655-1-avlarkin82@gmail.com
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      f8f84af5
  2. 04 Jul, 2021 12 commits
    • Linus Torvalds's avatar
      iov_iter: remove uaccess_kernel() warning from iov_iter_init() · a180bd1d
      Linus Torvalds authored
      This warning was there to catch any architectures that still use
      CONFIG_SET_FS, and that would mis-use iov_iter_init() for anything that
      wasn't a proper user space pointer.  So that
      
              WARN_ON_ONCE(uaccess_kernel());
      
      makes perfect conceptual sense: you really shouldn't use a kernel
      pointer with set_fs(KERNEL_DS) and then pass it to iov_iter_init().
      
      HOWEVER.
      
      Guenter Roeck reports that this warning actually triggers in no-mmu
      configurations of both ARM and m68k.  And the reason isn't that they
      pass in a kernel pointer under set_fs(KERNEL_DS) at all: the reason is
      that in those configurations, "uaccess_kernel()" is simply not reliable.
      
      Those no-mmu setups set USER_DS and KERNEL_DS to the same values, so you
      can't test for the difference.
      
      In particular, the no-mmu case for ARM does
      
         #define USER_DS                 KERNEL_DS
         #define uaccess_kernel()        (true)
      
      so USER_DS and KERNEL_DS have the same value, and uaccess_kernel() is
      always trivially true.
      
      The m68k case is slightly different and not quite as obvious.  It does
      (spread out over multiple header files just to be extra exciting:
      asm/processor.h, asm/segment.h and asm-generic/uaccess.h):
      
         #define TASK_SIZE       (0xFFFFFFFFUL)
         #define USER_DS         MAKE_MM_SEG(TASK_SIZE)
         #define KERNEL_DS       MAKE_MM_SEG(~0UL)
         #define get_fs()        (current_thread_info()->addr_limit)
         #define uaccess_kernel() (get_fs().seg == KERNEL_DS.seg)
      
      but the end result is the same: uaccess_kernel() will always be true,
      because USER_DS and KERNEL_DS end up having the same value, even if that
      value is defined differently.
      
      This is very arguably a misfeature in those implementations, but in the
      end we don't really care.  All modern architectures have gotten rid of
      set_fs() already, and generic kernel code never uses it.  And while the
      sanity check was a nice idea, an architecture would have to go the extra
      mile to actually break this.
      
      So this well-intentioned warning isn't really all that likely to find
      anything but these known false positives, and as such just isn't worth
      maintaining.
      Reported-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Fixes: 8cd54c1c ("iov_iter: separate direction from flavour")
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a180bd1d
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-2021.07.04' of... · 28e92f99
      Linus Torvalds authored
      Merge branch 'core-rcu-2021.07.04' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu
      
      Pull RCU updates from Paul McKenney:
      
       - Bitmap parsing support for "all" as an alias for all bits
      
       - Documentation updates
      
       - Miscellaneous fixes, including some that overlap into mm and lockdep
      
       - kvfree_rcu() updates
      
       - mem_dump_obj() updates, with acks from one of the slab-allocator
         maintainers
      
       - RCU NOCB CPU updates, including limited deoffloading
      
       - SRCU updates
      
       - Tasks-RCU updates
      
       - Torture-test updates
      
      * 'core-rcu-2021.07.04' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu: (78 commits)
        tasks-rcu: Make show_rcu_tasks_gp_kthreads() be static inline
        rcu-tasks: Make ksoftirqd provide RCU Tasks quiescent states
        rcu: Add missing __releases() annotation
        rcu: Remove obsolete rcu_read_unlock() deadlock commentary
        rcu: Improve comments describing RCU read-side critical sections
        rcu: Create an unrcu_pointer() to remove __rcu from a pointer
        srcu: Early test SRCU polling start
        rcu: Fix various typos in comments
        rcu/nocb: Unify timers
        rcu/nocb: Prepare for fine-grained deferred wakeup
        rcu/nocb: Only cancel nocb timer if not polling
        rcu/nocb: Delete bypass_timer upon nocb_gp wakeup
        rcu/nocb: Cancel nocb_timer upon nocb_gp wakeup
        rcu/nocb: Allow de-offloading rdp leader
        rcu/nocb: Directly call __wake_nocb_gp() from bypass timer
        rcu: Don't penalize priority boosting when there is nothing to boost
        rcu: Point to documentation of ordering guarantees
        rcu: Make rcu_gp_cleanup() be noinline for tracing
        rcu: Restrict RCU_STRICT_GRACE_PERIOD to at most four CPUs
        rcu: Make show_rcu_gp_kthreads() dump rcu_node structures blocking GP
        ...
      28e92f99
    • Linus Torvalds's avatar
      Merge branch 'lkmm.2021.05.10c' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · da803f82
      Linus Torvalds authored
      Pull lkmm fixlet from Paul E McKenney.
      
      Fix missing underscore in Linux-kernel memory model docs.
      
      * 'lkmm.2021.05.10c' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
        tools/memory-model: Fix smp_mb__after_spinlock() spelling
      da803f82
    • Linus Torvalds's avatar
      Merge branch 'kcsan.2021.05.18a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu · b97efd5e
      Linus Torvalds authored
      Pull KCSAN updates from Paul McKenney.
      
      * 'kcsan.2021.05.18a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
        kcsan: Use URL link for pointing access-marking.txt
        kcsan: Document "value changed" line
        kcsan: Report observed value changes
        kcsan: Remove kcsan_report_type
        kcsan: Remove reporting indirection
        kcsan: Refactor access_info initialization
        kcsan: Fold panic() call into print_report()
        kcsan: Refactor passing watchpoint/other_info
        kcsan: Distinguish kcsan_report() calls
        kcsan: Simplify value change detection
        kcsan: Add pointer to access-marking.txt to data_race() bullet
      b97efd5e
    • Linus Torvalds's avatar
      Merge tag 'memblock-v5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock · a412897f
      Linus Torvalds authored
      Pull memblock updates from Mike Rapoport:
       "Fix arm crashes caused by holes in the memory map.
      
        The coordination between freeing of unused memory map, pfn_valid() and
        core mm assumptions about validity of the memory map in various ranges
        was not designed for complex layouts of the physical memory with a lot
        of holes all over the place.
      
        Kefen Wang reported crashes in move_freepages() on a system with the
        following memory layout [1]:
      
      	node 0: [mem 0x0000000080a00000-0x00000000855fffff]
      	node 0: [mem 0x0000000086a00000-0x0000000087dfffff]
      	node 0: [mem 0x000000008bd00000-0x000000008c4fffff]
      	node 0: [mem 0x000000008e300000-0x000000008ecfffff]
      	node 0: [mem 0x0000000090d00000-0x00000000bfffffff]
      	node 0: [mem 0x00000000cc000000-0x00000000dc9fffff]
      	node 0: [mem 0x00000000de700000-0x00000000de9fffff]
      	node 0: [mem 0x00000000e0800000-0x00000000e0bfffff]
      	node 0: [mem 0x00000000f4b00000-0x00000000f6ffffff]
      	node 0: [mem 0x00000000fda00000-0x00000000ffffefff]
      
        These crashes can be mitigated by enabling CONFIG_HOLES_IN_ZONE on ARM
        and essentially turning pfn_valid_within() to pfn_valid() instead of
        having it hardwired to 1 on that architecture, but this would require
        to keep CONFIG_HOLES_IN_ZONE solely for this purpose.
      
        A cleaner approach is to update ARM's implementation of pfn_valid() to
        take into accounting rounding of the freed memory map to pageblock
        boundaries and make sure it returns true for PFNs that have memory map
        entries even if there is no physical memory backing those PFNs"
      
      Link: https://lore.kernel.org/lkml/2a1592ad-bc9d-4664-fd19-f7448a37edc0@huawei.com [1]
      
      * tag 'memblock-v5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock:
        arm: extend pfn_valid to take into account freed memory map alignment
        memblock: ensure there is no overflow in memblock_overlaps_region()
        memblock: align freed memory map on pageblock boundaries with SPARSEMEM
        memblock: free_unused_memmap: use pageblock units instead of MAX_ORDER
      a412897f
    • Linus Torvalds's avatar
      Merge tag 's390-5.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 2bb919b6
      Linus Torvalds authored
      Pull s390 updates from Vasily Gorbik:
      
       - Rework inline asm to get rid of error prone "register asm"
         constructs, which are problematic especially when code
         instrumentation is enabled.
      
         In particular introduce and use register pair union to allocate
         even/odd register pairs. Unfortunately this breaks compatibility with
         older clang compilers and minimum clang version for s390 has been
         raised to 13.
      
           https://lore.kernel.org/linux-next/CAK7LNARuSmPCEy-ak0erPrPTgZdGVypBROFhtw+=3spoGoYsyw@mail.gmail.com/
      
       - Fix gcc 11 warnings, which triggered various minor reworks all over
         the code.
      
       - Add zstd kernel image compression support.
      
       - Rework boot CPU lowcore handling.
      
       - De-duplicate and move kernel memory layout setup logic earlier.
      
       - Few fixes in preparation for FORTIFY_SOURCE performing compile-time
         and run-time field bounds checking for mem functions.
      
       - Remove broken and unused power management support leftovers in s390
         drivers.
      
       - Disable stack-protector for decompressor and purgatory to fix
         buildroot build.
      
       - Fix vt220 sclp console name to match the char device name.
      
       - Enable HAVE_IOREMAP_PROT and add zpci_set_irq()/zpci_clear_irq() in
         zPCI code.
      
       - Remove some implausible WARN_ON_ONCEs and remove arch specific
         counter transaction call backs in favour of default transaction
         handling in perf code.
      
       - Extend/add new uevents for online/config/mode state changes of AP
         card / queue device in zcrypt.
      
       - Minor entry and ccwgroup code improvements.
      
       - Other small various fixes and improvements all over the code.
      
      * tag 's390-5.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (91 commits)
        s390/dasd: use register pair instead of register asm
        s390/qdio: get rid of register asm
        s390/ioasm: use symbolic names for asm operands
        s390/ioasm: get rid of register asm
        s390/cmf: get rid of register asm
        s390/lib,string: get rid of register asm
        s390/lib,uaccess: get rid of register asm
        s390/string: get rid of register asm
        s390/cmpxchg: use register pair instead of register asm
        s390/mm,pages-states: get rid of register asm
        s390/lib,xor: get rid of register asm
        s390/timex: get rid of register asm
        s390/hypfs: use register pair instead of register asm
        s390/zcrypt: Switch to flexible array member
        s390/speculation: Use statically initialized const for instructions
        virtio/s390: get rid of open-coded kvm hypercall
        s390/pci: add zpci_set_irq()/zpci_clear_irq()
        scripts/min-tool-version.sh: Raise minimum clang version to 13.0.0 for s390
        s390/ipl: use register pair instead of register asm
        s390/mem_detect: fix tprot() program check new psw handling
        ...
      2bb919b6
    • Linus Torvalds's avatar
      Merge tag 'csky-for-linus-5.14-rc1' of git://github.com/c-sky/csky-linux · 0d4d4c6f
      Linus Torvalds authored
      Pull arch/csky updates from Guo Ren:
       "A small cleanup and a fixup"
      
      * tag 'csky-for-linus-5.14-rc1' of git://github.com/c-sky/csky-linux:
        csky: Kconfig: Remove unused selects
        csky: syscache: Fixup duplicate cache flush
      0d4d4c6f
    • Linus Torvalds's avatar
      Merge tag 'cxl-for-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl · 0c66a95c
      Linus Torvalds authored
      Pull CXL (Compute Express Link) updates from Dan Williams:
       "This subsystem is still in the build-out phase as the bulk of the
        update is improvements to enumeration and fleshing out the device
        model. In terms of new features, more mailbox commands have been added
        to the allowed-list in support of persistent memory provisioning
        support targeting v5.15.
      
        The critical update from an enumeration perspective is support for the
        CXL Fixed Memory Window Structure that indicates to Linux which system
        physical address ranges decode to the CXL Host Bridges in the system.
        This allows the driver to detect which address ranges have been mapped
        by firmware and what address ranges are available for future hotplug.
      
        So, again, mostly skeleton this round, with more meat targeting v5.15.
      
        Summary:
      
         - Add support for the CXL Fixed Memory Window Structure, a recent
           extension of the ACPI CEDT (CXL Early Discovery Table)
      
         - Add infrastructure for component registers
      
         - Add HDM (Host-managed device memory) decoder definitions
      
         - Define a device model for an HDM decoder tree
      
         - Bridge CXL persistent memory capabilities to an NVDIMM bus /
           device-model
      
         - Switch to fine grained mapping of CXL MMIO registers to allow
           different drivers / system software to own individual register
           blocks
      
         - Enable media provisioning commands, and publish the label storage
           area size in sysfs
      
         - Miscellaneous cleanups and fixes"
      
      * tag 'cxl-for-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl: (34 commits)
        cxl/pci: Rename CXL REGLOC ID
        cxl/acpi: Use the ACPI CFMWS to create static decoder objects
        cxl/acpi: Add the Host Bridge base address to CXL port objects
        cxl/pmem: Register 'pmem' / cxl_nvdimm devices
        libnvdimm: Drop unused device power management support
        libnvdimm: Export nvdimm shutdown helper, nvdimm_delete()
        cxl/pmem: Add initial infrastructure for pmem support
        cxl/core: Add cxl-bus driver infrastructure
        cxl/pci: Add media provisioning required commands
        cxl/component_regs: Fix offset
        cxl/hdm: Fix decoder count calculation
        cxl/acpi: Introduce cxl_decoder objects
        cxl/acpi: Enumerate host bridge root ports
        cxl/acpi: Add downstream port data to cxl_port instances
        cxl/Kconfig: Default drivers to CONFIG_CXL_BUS
        cxl/acpi: Introduce the root of a cxl_port topology
        cxl/pci: Fixup devm_cxl_iomap_block() to take a 'struct device *'
        cxl/pci: Add HDM decoder capabilities
        cxl/pci: Reserve individual register block regions
        cxl/pci: Map registers based on capabilities
        ...
      0c66a95c
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-mergewindow' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 855ff900
      Linus Torvalds authored
      Pull i2c updates from Wolfram Sang:
      
       - core supports now bus regulators controlling power for SCL/SDA
      
       - quite some DT binding conversions to YAML
      
       - added a seperate DT binding for the optional SMBus Alert feature
      
       - documentation with examples how to deal with I2C sysfs files
      
       - some bigger rework for the i801 driver
      
       - and a few usual driver updates
      
      * 'i2c/for-mergewindow' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (42 commits)
        i2c: ali1535: mention that the device should not be disabled
        i2c: mpc: Restore reread of I2C status register
        i2c: core-smbus: Expose PEC calculate function for generic use
        Documentation: i2c: Add doc for I2C sysfs
        i2c: core: Disable client irq on reboot/shutdown
        dt-bindings: i2c: update bindings for MT8195 SoC
        i2c: imx: Fix some checkpatch warnings
        i2c: davinci: Simplify with dev_err_probe()
        i2c: cadence: Simplify with dev_err_probe()
        i2c: xiic: Simplify with dev_err_probe()
        i2c: cadence: Clear HOLD bit before xfer_size register rolls over
        dt-bindings: i2c: ce4100: Replace "ti,pcf8575" by "nxp,pcf8575"
        i2c: i801: Improve i801_setup_hstcfg
        i2c: i801: Use driver name constant instead of function dev_driver_string
        i2c: i801: Simplify initialization of i2c_board_info in i801_probe_optional_slaves
        i2c: i801: Improve status polling
        i2c: cht-wc: Replace of_node by NULL
        i2c: riic: Add RZ/G2L support
        dt-bindings: i2c: renesas,riic: Document RZ/G2L I2C controller
        dt-bindings: i2c: renesas,iic: Convert to json-schema
        ...
      855ff900
    • Martin K. Petersen's avatar
      scsi: blkcg: Fix application ID config options · d2500a0c
      Martin K. Petersen authored
      Commit d2bcbeab ("scsi: blkcg: Add app identifier support for
      blkcg") introduced an FC_APPID config option under SCSI. However, the
      added config option is not used anywhere. Simply remove it.
      
      The block layer BLK_CGROUP_FC_APPID config option is what actually
      controls whether the application ID code should be built or not. Make
      this option dependent on NVMe over FC since that is currently the only
      transport which supports the capability.
      
      Fixes: d2bcbeab ("scsi: blkcg: Add app identifier support for blkcg")
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d2500a0c
    • Guo Ren's avatar
      csky: Kconfig: Remove unused selects · 90dc8c0e
      Guo Ren authored
       - GENERIC_ALLOCATOR is duplicated
       - Remove USB_ARCH_HAS_OHCI & USB_ARCH_HAS_EHCI, because they
         have been removed from linux.
      Signed-off-by: default avatarGuo Ren <guoren@linux.alibaba.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      90dc8c0e
    • Guo Ren's avatar
      csky: syscache: Fixup duplicate cache flush · 6ea42c84
      Guo Ren authored
      The current csky logic of sys_cacheflush is wrong, it'll cause
      icache flush call dcache flush again. Now fixup it with a
      conditional "break & fallthrough".
      
      Fixes: 997153b9 ("csky: Add flush_icache_mm to defer flush icache all")
      Fixes: 0679d29d ("csky: fix syscache.c fallthrough warning")
      Acked-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Co-Developed-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: default avatarGuo Ren <guoren@linux.alibaba.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      6ea42c84
  3. 03 Jul, 2021 8 commits
    • Linus Torvalds's avatar
      Merge tag 'leds-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds · 303392fd
      Linus Torvalds authored
      Pull LED updates from Pavel Machek:
       "This contains quite a lot of fixes, with more fixes in my inbox that
        did not make it (sorry)"
      
      * tag 'leds-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds: (36 commits)
        leds: lgm: Fix up includes
        leds: ktd2692: Fix an error handling path
        leds: as3645a: Fix error return code in as3645a_parse_node()
        leds: turris-omnia: add missing MODULE_DEVICE_TABLE
        leds: lp55xx: Initialize enable GPIO direction to output
        leds: lm36274: Add missed property.h
        leds: el15203000: Make error handling more robust
        leds: pwm: Make error handling more robust
        leds: lt3593: Make use of device properties
        leds: lp50xx: Put fwnode in error case during ->probe()
        leds: lm3697: Don't spam logs when probe is deferred
        leds: lm3692x: Put fwnode in any case during ->probe()
        leds: lm36274: Correct headers (of*.h -> mod_devicetable.h)
        leds: lm36274: Put fwnode in error case during ->probe()
        leds: lm3532: Make error handling more robust
        leds: lm3532: select regmap I2C API
        leds: lgm-sso: Drop duplicate NULL check for GPIO operations
        leds: lgm-sso: Remove unneeded of_match_ptr()
        leds: lgm-sso: Fix clock handling
        leds: el15203000: Introduce to_el15203000_led() helper
        ...
      303392fd
    • Linus Torvalds's avatar
      Merge tag 'vfio-v5.14-rc1' of git://github.com/awilliam/linux-vfio · 8e8d9442
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
      
       - Module reference fixes, structure renaming (Max Gurtovoy)
      
       - Export and use common pci_dev_trylock() (Luis Chamberlain)
      
       - Enable direct mdev device creation and probing by parent (Christoph
         Hellwig & Jason Gunthorpe)
      
       - Fix mdpy error path leak (Colin Ian King)
      
       - Fix mtty list entry leak (Jason Gunthorpe)
      
       - Enforce mtty device limit (Alex Williamson)
      
       - Resolve concurrent vfio-pci mmap faults (Alex Williamson)
      
      * tag 'vfio-v5.14-rc1' of git://github.com/awilliam/linux-vfio:
        vfio/pci: Handle concurrent vma faults
        vfio/mtty: Enforce available_instances
        vfio/mtty: Delete mdev_devices_list
        vfio: use the new pci_dev_trylock() helper to simplify try lock
        PCI: Export pci_dev_trylock() and pci_dev_unlock()
        vfio/mdpy: Fix memory leak of object mdev_state->vconfig
        vfio/iommu_type1: rename vfio_group struck to vfio_iommu_group
        vfio/mbochs: Convert to use vfio_register_group_dev()
        vfio/mdpy: Convert to use vfio_register_group_dev()
        vfio/mtty: Convert to use vfio_register_group_dev()
        vfio/mdev: Allow the mdev_parent_ops to specify the device driver to bind
        vfio/mdev: Remove CONFIG_VFIO_MDEV_DEVICE
        driver core: Export device_driver_attach()
        driver core: Don't return EPROBE_DEFER to userspace during sysfs bind
        driver core: Flow the return code from ->probe() through to sysfs bind
        driver core: Better distinguish probe errors in really_probe
        driver core: Pull required checks into driver_probe_device()
        vfio/platform: remove unneeded parent_module attribute
        vfio: centralize module refcount in subsystem layer
      8e8d9442
    • Linus Torvalds's avatar
      Merge branch 'work.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 58ec9059
      Linus Torvalds authored
      Pull vfs name lookup updates from Al Viro:
       "Small namei.c patch series, mostly to simplify the rules for nameidata
        state. It's actually from the previous cycle - but I didn't post it
        for review in time...
      
        Changes visible outside of fs/namei.c: file_open_root() calling
        conventions change, some freed bits in LOOKUP_... space"
      
      * 'work.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        namei: make sure nd->depth is always valid
        teach set_nameidata() to handle setting the root as well
        take LOOKUP_{ROOT,ROOT_GRABBED,JUMPED} out of LOOKUP_... space
        switch file_open_root() to struct path
      58ec9059
    • Linus Torvalds's avatar
      Merge branch 'work.iov_iter' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · d3acb15a
      Linus Torvalds authored
      Pull iov_iter updates from Al Viro:
       "iov_iter cleanups and fixes.
      
        There are followups, but this is what had sat in -next this cycle. IMO
        the macro forest in there became much thinner and easier to follow..."
      
      * 'work.iov_iter' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (37 commits)
        csum_and_copy_to_pipe_iter(): leave handling of csum_state to caller
        clean up copy_mc_pipe_to_iter()
        pipe_zero(): we don't need no stinkin' kmap_atomic()...
        iov_iter: clean csum_and_copy_...() primitives up a bit
        copy_page_from_iter(): don't need kmap_atomic() for kvec/bvec cases
        copy_page_to_iter(): don't bother with kmap_atomic() for bvec/kvec cases
        iterate_xarray(): only of the first iteration we might get offset != 0
        pull handling of ->iov_offset into iterate_{iovec,bvec,xarray}
        iov_iter: make iterator callbacks use base and len instead of iovec
        iov_iter: make the amount already copied available to iterator callbacks
        iov_iter: get rid of separate bvec and xarray callbacks
        iov_iter: teach iterate_{bvec,xarray}() about possible short copies
        iterate_bvec(): expand bvec.h macro forest, massage a bit
        iov_iter: unify iterate_iovec and iterate_kvec
        iov_iter: massage iterate_iovec and iterate_kvec to logics similar to iterate_bvec
        iterate_and_advance(): get rid of magic in case when n is 0
        csum_and_copy_to_iter(): massage into form closer to csum_and_copy_from_iter()
        iov_iter: replace iov_iter_copy_from_user_atomic() with iterator-advancing variant
        [xarray] iov_iter_npages(): just use DIV_ROUND_UP()
        iov_iter_npages(): don't bother with iterate_all_kinds()
        ...
      d3acb15a
    • Linus Torvalds's avatar
      Merge branch 'work.d_path' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · f92a322a
      Linus Torvalds authored
      Pull vfs d_path() updates from Al Viro:
       "d_path.c refactoring"
      
      * 'work.d_path' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        getcwd(2): clean up error handling
        d_path: prepend_path() is unlikely to return non-zero
        d_path: prepend_path(): lift the inner loop into a new helper
        d_path: prepend_path(): lift resetting b in case when we'd return 3 out of loop
        d_path: prepend_path(): get rid of vfsmnt
        d_path: introduce struct prepend_buffer
        d_path: make prepend_name() boolean
        d_path: lift -ENAMETOOLONG handling into callers of prepend_path()
        d_path: don't bother with return value of prepend()
        getcwd(2): saner logics around prepend_path() call
        d_path: get rid of path_with_deleted()
        d_path: regularize handling of root dentry in __dentry_path()
        d_path: saner calling conventions for __dentry_path()
        d_path: "\0" is {0,0}, not {0}
      f92a322a
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 757fa80f
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
      
       - Added option for per CPU threads to the hwlat tracer
      
       - Have hwlat tracer handle hotplug CPUs
      
       - New tracer: osnoise, that detects latency caused by interrupts,
         softirqs and scheduling of other tasks.
      
       - Added timerlat tracer that creates a thread and measures in detail
         what sources of latency it has for wake ups.
      
       - Removed the "success" field of the sched_wakeup trace event. This has
         been hardcoded as "1" since 2015, no tooling should be looking at it
         now. If one exists, we can revert this commit, fix that tool and try
         to remove it again in the future.
      
       - tgid mapping fixed to handle more than PID_MAX_DEFAULT pids/tgids.
      
       - New boot command line option "tp_printk_stop", as tp_printk causes
         trace events to write to console. When user space starts, this can
         easily live lock the system. Having a boot option to stop just after
         boot up is useful to prevent that from happening.
      
       - Have ftrace_dump_on_oops boot command line option take numbers that
         match the numbers shown in /proc/sys/kernel/ftrace_dump_on_oops.
      
       - Bootconfig clean ups, fixes and enhancements.
      
       - New ktest script that tests bootconfig options.
      
       - Add tracepoint_probe_register_may_exist() to register a tracepoint
         without triggering a WARN*() if it already exists. BPF has a path
         from user space that can do this. All other paths are considered a
         bug.
      
       - Small clean ups and fixes
      
      * tag 'trace-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (49 commits)
        tracing: Resize tgid_map to pid_max, not PID_MAX_DEFAULT
        tracing: Simplify & fix saved_tgids logic
        treewide: Add missing semicolons to __assign_str uses
        tracing: Change variable type as bool for clean-up
        trace/timerlat: Fix indentation on timerlat_main()
        trace/osnoise: Make 'noise' variable s64 in run_osnoise()
        tracepoint: Add tracepoint_probe_register_may_exist() for BPF tracing
        tracing: Fix spelling in osnoise tracer "interferences" -> "interference"
        Documentation: Fix a typo on trace/osnoise-tracer
        trace/osnoise: Fix return value on osnoise_init_hotplug_support
        trace/osnoise: Make interval u64 on osnoise_main
        trace/osnoise: Fix 'no previous prototype' warnings
        tracing: Have osnoise_main() add a quiescent state for task rcu
        seq_buf: Make trace_seq_putmem_hex() support data longer than 8
        seq_buf: Fix overflow in seq_buf_putmem_hex()
        trace/osnoise: Support hotplug operations
        trace/hwlat: Support hotplug operations
        trace/hwlat: Protect kdata->kthread with get/put_online_cpus
        trace: Add timerlat tracer
        trace: Add osnoise tracer
        ...
      757fa80f
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · a70bb580
      Linus Torvalds authored
      Pull devicetree updates from Rob Herring:
      
       - Refine reserved memory nomap handling
      
       - Merge some PCI and non-PCI address handling implementations
      
       - Simplify of_address.h header ifdefs
      
       - Improve printk handling of some 64-bit types
      
       - Convert adi,adv7511, Arm ccree, Arm SCMI, Arm SCU, Arm TWD timer, Arm
         VIC, arm,sbsa-gwdt, Arm/Amlogic SCPI, Aspeed I2C, Broadcom iProc PWM,
         linaro,optee-tz, MDIO GPIO, Mediatek RNG, MTD physmap, NXP
         pcf8563/pcf85263/pcf85363, Renesas TPU, renesas,emev2-smu,
         renesas,r9a06g032-sysctrl, sysc-rmobile, Tegra20 EMC, TI AM56 PCI, TI
         OMAP mailbox, TI SCI bindings, virtio-mmio, Zynq FPGA, and ZynqMP RTC
         to DT schema
      
       - Convert mux and mux controller bindings to schema. This includes MDIO
         IIO, and I2C muxes.
      
       - Add Arm PL031 RTC binding schema
      
       - Add vendor prefixes for StarFive Technology Co. Ltd. and Insignal Ltd
      
       - Fix some stale doc references
      
       - Remove stale property-units.txt. Superseded by schema in dt-schema
         repo.
      
       - Fixes for 'unevaluatedProperties' handling (enabled with experimental
         json-schema support)
      
       - Drop redundant usage of minItems and maxItems across the tree
      
       - Update some examples to use bindings with a schema
      
      * tag 'devicetree-for-5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (83 commits)
        dt-bindings: Fix 'unevaluatedProperties' errors in DT graph users
        dt-bindings: display: renesas,du: Fix 'ports' reference
        dt-bindings: media: adv7180: Add missing video-interfaces.yaml reference
        dt-bindings: crypto: ccree: Convert to json-schema
        dt-bindings: fpga: zynq: convert bindings to YAML
        dt-bindings: rtc: zynqmp: convert bindings to YAML
        dt-bindings: interrupt-controller: Convert ARM VIC to json-schema
        of: of_reserved_mem: mark nomap memory instead of removing
        of: of_reserved_mem: only call memblock_free for normal reserved memory
        dt-bindings: Drop redundant minItems/maxItems
        dt-bindings: spmi: Correct 'reg' schema
        of: reserved-memory: Add stub for RESERVEDMEM_OF_DECLARE()
        dt-bindings: clk: vc5: Fix example
        dt-bindings: timer: renesas,tmu: add r8a779a0 TMU support
        dt-bindings: drm: bridge: adi,adv7511.txt: convert to yaml
        dt-bindings: PCI: ti,am65: Convert PCIe host/endpoint mode dt-bindings to YAML
        of: Remove superfluous casts when printing u64 values
        of: Fix truncation of memory sizes on 32-bit platforms
        dt-bindings: rtc: nxp,pcf8563: Absorb pcf85263/pcf85363 bindings
        dt-bindings: pwm: Use examples with documented/matching schema
        ...
      a70bb580
    • Linus Torvalds's avatar
      Revert "ALSA: usb-audio: Reduce latency at playback start" · 4b820e16
      Linus Torvalds authored
      This reverts commit 9ce650a7.
      
      This commit causes watchdog lockups on my machine, and while I have no
      idea what the cause is, it bisected right to this commit, and reverting
      the change promptly fixes it.
      
      At least occasionally one of the watchdog call traces was
      
        Call Trace:
          _raw_spin_lock_irqsave+0x35/0x40
          snd_pcm_period_elapsed+0x1b/0xa0 [snd_pcm]
          snd_usb_endpoint_start+0x1a0/0x3c0 [snd_usb_audio]
          start_endpoints+0x23/0x90 [snd_usb_audio]
          snd_usb_substream_playback_trigger+0x7b/0x1a0 [snd_usb_audio]
          snd_pcm_common_ioctl+0x1c44/0x2360 [snd_pcm]
          snd_pcm_ioctl+0x2e/0x40 [snd_pcm]
          __se_sys_ioctl+0x72/0xc0
          do_syscall_64+0x4c/0xa0
          entry_SYSCALL_64_after_hwframe+0x44/0xae
      
      so presumably it's a locking error on that substream spinlock that
      snd_pcm_period_elapsed() takes.  But at this point I just want to have a
      working system so that I can continue the merge window work tomorrow.
      
      Cc: Takashi Iwai <tiwai@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4b820e16
  4. 02 Jul, 2021 7 commits
    • Linus Torvalds's avatar
      Merge tag 'sound-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · d6b63b5b
      Linus Torvalds authored
      Pull sound updates from Takashi Iwai:
       "As the diffstat scatters over the tree, we've got many tree-wide small
        changes, but also got quite a few intrusive changes in the core side.
        The only ABI-visible core change is the new rawmidi framing mode
        support while others are kernel-internal, mostly code refactoring
        and/or nice improvements.
      
        Here are some highlights:
      
        Core:
         - A new framing access mode for rawmidi to get timestamps
         - Cleanup / refactoring of buffer memory management helper code
         - Support for automatic negotiation of ASoC DAI formats
         - Revival of software suspend for PCM and control core, as a
           preliminary work for PCI BAR rescan support
      
        ASoC:
         - Accessory detection support for several Qualcomm parts
         - Support for IEC958 control with hdmi-codec
         - Merging of Tegra machine drivers into a single driver
         - Support for AmLogic SM1 TOACODEC, Intel AlderLake-M, several NXP
           i.MX8 variants, NXP TFA1 and TDF9897, Rockchip RK817, Qualcomm
           Quinary MI2S, Texas Instruments TAS2505
      
        USB-audio:
         - Reduction of latency at playback start
         - Code cleanup / fixes of usx2y driver
         - Scarlett2 mixer code fixes and enhancements
         - Quirks for Ozone and Denon devices
      
        HD-audio:
         - A few quirks for HP and ASUS machines
         - Display power management fixes
      
        Others:
         - FireWire code refactoring and enhancements
         - Tree-wide trivial coding-style fixes"
      
      * tag 'sound-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (594 commits)
        ALSA: usb-audio: scarlett2: Fix for loop increment in scarlett2_usb_get_config
        ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 630 G8
        ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G8
        ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 450 G8
        ALSA: hda/realtek - Add ALC285 HP init procedure
        ALSA: hda/realtek - Add type for ALC287
        ALSA: scarlett2: Fix scarlett2_*_ctl_put() return values again
        ALSA: scarlett2: Fix pad count for 18i8 Gen 3
        ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 830 G8 Notebook PC
        ALSA: firewire-lib: Fix 'amdtp_domain_start()' when no AMDTP_OUT_STREAM stream is found
        ASoC: qcom: lpass-cpu: mark IRQ_CLEAR register as volatile and readable
        ALSA: hda: Release codec display power during shutdown/reboot
        ALSA: hda: Release controller display power during shutdown/reboot
        ALSA: hda/realtek: Apply LED fixup for HP Dragonfly G1, too
        ASoC: fsl: remove unnecessary oom message
        ASoC: tlv320aic32x4: dt-bindings: add TAS2505 to compatible
        ASoC: tlv320aic32x4: add support for TAS2505
        ASoC: tlv320aic32x4: add type to device private data struct
        ASoC: tegra30: ahub: Use devm_platform_get_and_ioremap_resource()
        ASoC: tegra: tegra210_admaif: Use devm_platform_get_and_ioremap_resource()
        ...
      d6b63b5b
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · bd31b9ef
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This series consists of the usual driver updates (ufs, ibmvfc,
        megaraid_sas, lpfc, elx, mpi3mr, qedi, iscsi, storvsc, mpt3sas) with
        elx and mpi3mr being new drivers.
      
        The major core change is a rework to drop the status byte handling
        macros and the old bit shifted definitions and the rest of the updates
        are minor fixes"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (287 commits)
        scsi: aha1740: Avoid over-read of sense buffer
        scsi: arcmsr: Avoid over-read of sense buffer
        scsi: ips: Avoid over-read of sense buffer
        scsi: ufs: ufs-mediatek: Add missing of_node_put() in ufs_mtk_probe()
        scsi: elx: libefc: Fix IRQ restore in efc_domain_dispatch_frame()
        scsi: elx: libefc: Fix less than zero comparison of a unsigned int
        scsi: elx: efct: Fix pointer error checking in debugfs init
        scsi: elx: efct: Fix is_originator return code type
        scsi: elx: efct: Fix link error for _bad_cmpxchg
        scsi: elx: efct: Eliminate unnecessary boolean check in efct_hw_command_cancel()
        scsi: elx: efct: Do not use id uninitialized in efct_lio_setup_session()
        scsi: elx: efct: Fix error handling in efct_hw_init()
        scsi: elx: efct: Remove redundant initialization of variable lun
        scsi: elx: efct: Fix spelling mistake "Unexected" -> "Unexpected"
        scsi: lpfc: Fix build error in lpfc_scsi.c
        scsi: target: iscsi: Remove redundant continue statement
        scsi: qla4xxx: Remove redundant continue statement
        scsi: ppa: Switch to use module_parport_driver()
        scsi: imm: Switch to use module_parport_driver()
        scsi: mpt3sas: Fix error return value in _scsih_expander_add()
        ...
      bd31b9ef
    • Linus Torvalds's avatar
      Merge tag 'xfs-5.14-merge-6' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 9f7b640f
      Linus Torvalds authored
      Pull xfs updates from Darrick Wong:
       "Most of the work this cycle has been on refactoring various parts of
        the codebase. The biggest non-cleanup changes are (1) reducing the
        number of cache flushes sent when writing the log; (2) a substantial
        number of log recovery fixes; and (3) I started accepting pull
        requests from contributors if the commits in their branches match
        what's been sent to the list.
      
        For a week or so I /had/ staged a major cleanup of the logging code
        from Dave Chinner, but it exposed so many lurking bugs in other parts
        of the logging and log recovery code that I decided to defer that
        patchset until we can address those latent bugs.
      
        Larger cleanups this time include walking the incore inode cache (me)
        and rework of the extended attribute code (Allison) to prepare it for
        adding logged xattr updates (and directory tree parent pointers) in
        future releases.
      
        Summary:
      
         - Refactor the buffer cache to use bulk page allocation
      
         - Convert agnumber-based AG iteration to walk per-AG structures
      
         - Clean up some unit conversions and other code warts
      
         - Reduce spinlock contention in the directio fastpath
      
         - Collapse all the inode cache walks into a single function
      
         - Remove indirect function calls from the inode cache walk code
      
         - Dramatically reduce the number of cache flushes sent when writing
           log buffers
      
         - Preserve inode sickness reports for longer
      
         - Rename xfs_eofblocks since it controls inode cache walks
      
         - Refactor the extended attribute code to prepare it for the addition
           of log intent items to make xattrs fully transactional
      
         - A few fixes to earlier large patchsets
      
         - Log recovery fixes so that we don't accidentally mark the log clean
           when log intent recovery fails
      
         - Fix some latent SOB errors
      
         - Clean up shutdown messages that get logged to dmesg
      
         - Fix a regression in the online shrink code
      
         - Fix a UAF in the buffer logging code if the fs goes offline
      
         - Fix uninitialized error variables
      
         - Fix a UAF in the CIL when commited log item callbacks race with a
           shutdown
      
         - Fix a bug where the CIL could hang trying to push part of the log
           ring buffer that hasn't been filled yet"
      
      * tag 'xfs-5.14-merge-6' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (102 commits)
        xfs: don't wait on future iclogs when pushing the CIL
        xfs: Fix a CIL UAF by getting get rid of the iclog callback lock
        xfs: remove callback dequeue loop from xlog_state_do_iclog_callbacks
        xfs: don't nest icloglock inside ic_callback_lock
        xfs: Initialize error in xfs_attr_remove_iter
        xfs: fix endianness issue in xfs_ag_shrink_space
        xfs: remove dead stale buf unpin handling code
        xfs: hold buffer across unpin and potential shutdown processing
        xfs: force the log offline when log intent item recovery fails
        xfs: fix log intent recovery ENOSPC shutdowns when inactivating inodes
        xfs: shorten the shutdown messages to a single line
        xfs: print name of function causing fs shutdown instead of hex pointer
        xfs: fix type mismatches in the inode reclaim functions
        xfs: separate primary inode selection criteria in xfs_iget_cache_hit
        xfs: refactor the inode recycling code
        xfs: add iclog state trace events
        xfs: xfs_log_force_lsn isn't passed a LSN
        xfs: Fix CIL throttle hang when CIL space used going backwards
        xfs: journal IO cache flush reductions
        xfs: remove need_start_rec parameter from xlog_write()
        ...
      9f7b640f
    • Linus Torvalds's avatar
      Merge tag 'jfs-5.14' of git://github.com/kleikamp/linux-shaggy · e4aa67b0
      Linus Torvalds authored
      Pull jfs updates from David Kleikamp:
       "JFS fixes for 5.14"
      
      * tag 'jfs-5.14' of git://github.com/kleikamp/linux-shaggy:
        jfs: Avoid field-overflowing memcpy()
        jfs: remove unnecessary oom message
        jfs: fix GPF in diFree
        fs/jfs: Fix missing error code in lmLogInit()
        jfs: Remove trailing semicolon in macros
        fs: Fix typo issue
      e4aa67b0
    • Linus Torvalds's avatar
      Merge tag 'configfs-5.13' of git://git.infradead.org/users/hch/configfs · ced4cca7
      Linus Torvalds authored
      Pull configfs updates from Christoph Hellwig:
      
       - fix a memleak in configfs_release_bin_file (Chung-Chiang Cheng)
      
       - implement the .read_iter and .write_iter (Bart Van Assche)
      
       - minor cleanups (Bart Van Assche, me)
      
      * tag 'configfs-5.13' of git://git.infradead.org/users/hch/configfs:
        configfs: simplify configfs_release_bin_file
        configfs: fix memleak in configfs_release_bin_file
        configfs: implement the .read_iter and .write_iter methods
        configfs: drop pointless kerneldoc comments
        configfs: fix the kerneldoc comment for configfs_create_bin_file
      ced4cca7
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-5.14' of git://git.infradead.org/users/hch/dma-mapping · e72b0696
      Linus Torvalds authored
      Pull dma-mapping updates from Christoph Hellwig:
      
       - a trivivial whitespace fix (Zhen Lei)
      
       - report -EEXIST errors in add_dma_entry (Hamza Mahfooz)
      
      * tag 'dma-mapping-5.14' of git://git.infradead.org/users/hch/dma-mapping:
        dma-debug: report -EEXIST errors in add_dma_entry
        dma-mapping: remove a trailing space
      e72b0696
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · cd3eb7ef
      Linus Torvalds authored
      Pull iommu updates from Joerg Roedel:
      
       - SMMU Updates from Will Deacon:
      
           - SMMUv3:
              - Support stalling faults for platform devices
              - Decrease defaults sizes for the event and PRI queues
           - SMMUv2:
              - Support for a new '->probe_finalize' hook, needed by Nvidia
              - Even more Qualcomm compatible strings
              - Avoid Adreno TTBR1 quirk for DB820C platform
      
       - Intel VT-d updates from Lu Baolu:
      
           - Convert Intel IOMMU to use sva_lib helpers in iommu core
           - ftrace and debugfs supports for page fault handling
           - Support asynchronous nested capabilities
           - Various misc cleanups
      
       - Support for new VIOT ACPI table to make the VirtIO IOMMU
         available on x86
      
       - Add the amd_iommu=force_enable command line option to enable
         the IOMMU on platforms where they are known to cause problems
      
       - Support for version 2 of the Rockchip IOMMU
      
       - Various smaller fixes, cleanups and refactorings
      
      * tag 'iommu-updates-v5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (66 commits)
        iommu/virtio: Enable x86 support
        iommu/dma: Pass address limit rather than size to iommu_setup_dma_ops()
        ACPI: Add driver for the VIOT table
        ACPI: Move IOMMU setup code out of IORT
        ACPI: arm64: Move DMA setup operations out of IORT
        iommu/vt-d: Fix dereference of pointer info before it is null checked
        iommu: Update "iommu.strict" documentation
        iommu/arm-smmu: Check smmu->impl pointer before dereferencing
        iommu/arm-smmu-v3: Remove unnecessary oom message
        iommu/arm-smmu: Fix arm_smmu_device refcount leak in address translation
        iommu/arm-smmu: Fix arm_smmu_device refcount leak when arm_smmu_rpm_get fails
        iommu/vt-d: Fix linker error on 32-bit
        iommu/vt-d: No need to typecast
        iommu/vt-d: Define counter explicitly as unsigned int
        iommu/vt-d: Remove unnecessary braces
        iommu/vt-d: Removed unused iommu_count in dmar domain
        iommu/vt-d: Use bitfields for DMAR capabilities
        iommu/vt-d: Use DEVICE_ATTR_RO macro
        iommu/vt-d: Fix out-bounds-warning in intel/svm.c
        iommu/vt-d: Add PRQ handling latency sampling
        ...
      cd3eb7ef