1. 05 Nov, 2021 2 commits
  2. 27 Oct, 2021 2 commits
  3. 19 Oct, 2021 3 commits
    • Alex Henrie's avatar
      HID: apple: Bring back flag for Apple tilde key quirk · d58cf34a
      Alex Henrie authored
      Some Apple ISO keyboards have a quirk where the backtick/tilde key is
      swapped with the less-than/greater-than key. Unfortunately, there is no
      perfectly reliable way to detect whether a keyboard has the quirk or
      not, but the quirk appears to only be present on models that support
      Bluetooth, and the affected keyboards usually report country code 13 in
      the HID descriptor.
      
      Therefore, the best we can do is to change
      /sys/module/hid_apple/parameters/iso_layout to a ternary:
      
      0 = Not ISO or ISO and not quirky
      1 = ISO and quirky
      -1 = Guess based on product ID and country code
      
      Table of keyboards that José, Julian and I have tested:
      
      Product    Model  Shape  Labels      Bus  Country  Quirky
      =========================================================
      05ac:0201  M2452  ANSI   Usonian     USB  0        No
      05ac:020b  A1048  ANSI   Usonian     USB  0        No
      05ac:020c  A1048  ISO    Québécois   USB  13       No
      05ac:0221  A1243  ISO    Norwegian   USB  13       No
      05ac:0221  A1243  ISO    Portuguese  USB  13       No
      05ac:0221  A1243  ISO    Swedish     USB  13       No
      05ac:0221  A1243  ISO    Swiss       USB  13       No
      05ac:022c  A1255  ANSI   Usonian     BT   33       No
      05ac:022d  A1255  ISO    Hebrew      BT   13       Yes
      05ac:022d  A1255  ISO    Québécois   BT   13       Yes
      05ac:022d  A1255  ISO    Spanish     BT   13       Yes
      05ac:023a  A1314  ISO    Russian     BT   13       Yes
      05ac:023a  A1314  ISO    Swiss       BT   13       Yes
      05ac:024f  A1243  ANSI   Usonian     USB  0        No
      05ac:0250  A1243  ISO    British     USB  13       No
      05ac:0250  A1243  ISO    German      USB  13       No
      05ac:0250  A1243  ISO    Italian     USB  13       No
      05ac:0250  A1243  ISO    Québécois   USB  13       No
      05ac:0251  A1243  JIS    Japanese    USB  15       No
      05ac:0255  A1314  ANSI   Usonian     BT   33       No
      05ac:0255  A1314  ANSI   Taiwanese   BT   33       No
      05ac:0255  A1314  ANSI   Thai        BT   33       No
      05ac:0256  A1314  ISO    Arabic      BT   13       Yes
      05ac:0256  A1314  ISO    French      BT   13       Yes
      05ac:0256  A1314  ISO    German      BT   13       Yes
      05ac:0256  A1314  ISO    Norwegian   BT   13       Yes
      05ac:0256  A1314  ISO    Spanish     BT   13       Yes
      05ac:0256  A1314  ISO    Swiss       BT   13       Yes
      05ac:0257  A1314  JIS    Japanese    BT   15       No
      05ac:0267  A1644  ANSI   Usonian     USB  33       No
      004c:0267  A1644  ANSI   Usonian     BT   0        No
      05ac:0267  A1644  ISO    British     USB  13       Yes
      004c:0267  A1644  ISO    British     BT   0        Yes
      05ac:0267  A1644  ISO    Finnish     USB  13       Yes
      004c:0267  A1644  ISO    Finnish     BT   0        Yes
      05ac:0267  A1644  ISO    Québécois   USB  13       Yes
      004c:0267  A1644  ISO    Québécois   BT   0        Yes
      05ac:0267  A1644  ISO    Spanish     USB  13       Yes
      004c:0267  A1644  ISO    Spanish     BT   0        Yes
      05ac:0267  A1644  ISO    Swiss       USB  13       Yes
      004c:0267  A1644  ISO    Swiss       BT   0        Yes
      05ac:0267  A1644  JIS    Japanese    USB  15       No
      004c:0267  A1644  JIS    Japanese    BT   0        No
      05ac:029c  A2450  ANSI   Usonian     USB  33       No
      004c:029c  A2450  ANSI   Usonian     BT   0        No
      05ac:029c  A2450  ISO    Spanish     USB  13       Yes
      004c:029c  A2450  ISO    Spanish     BT   0        Yes
      05ac:029c  A2450  JIS    Japanese    USB  15       No
      004c:029c  A2450  JIS    Japanese    BT   0        No
      Reported-by: default avatarJosé Expósito <jose.exposito89@gmail.com>
      Tested-by: default avatarJosé Expósito <jose.exposito89@gmail.com>
      Tested-by: default avatarJulian Weigt <juw@posteo.de>
      Signed-off-by: default avatarAlex Henrie <alexhenrie24@gmail.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      d58cf34a
    • Alex Henrie's avatar
      0cd3be51
    • Alex Henrie's avatar
      HID: apple: Rename MAGIC_KEYBOARD_ANSI to MAGIC_KEYBOARD_2015 · 371a9dce
      Alex Henrie authored
      The ANSI, ISO, and JIS variants of this keyboard all have the same
      product ID.
      Signed-off-by: default avatarAlex Henrie <alexhenrie24@gmail.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      371a9dce
  4. 07 Oct, 2021 1 commit
  5. 27 Sep, 2021 4 commits
  6. 22 Sep, 2021 2 commits
  7. 16 Sep, 2021 1 commit
  8. 15 Sep, 2021 4 commits
    • Joshua-Dickens's avatar
      HID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs · 0c8fbaa5
      Joshua-Dickens authored
      Add the new PIDs to wacom_wac.c to support the new models in the Intuos series.
      
      [jkosina@suse.cz: fix changelog]
      Signed-off-by: default avatarJoshua Dickens <joshua.dickens@wacom.com>
      Reviewed-by: default avatarPing Cheng <ping.cheng@wacom.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      0c8fbaa5
    • Mizuho Mori's avatar
      HID: apple: Fix logical maximum and usage maximum of Magic Keyboard JIS · 67fd71ba
      Mizuho Mori authored
      Apple Magic Keyboard(JIS)'s Logical Maximum and Usage Maximum are wrong.
      
      Below is a report descriptor.
      
      0x05, 0x01,         /*  Usage Page (Desktop),                           */
      0x09, 0x06,         /*  Usage (Keyboard),                               */
      0xA1, 0x01,         /*  Collection (Application),                       */
      0x85, 0x01,         /*      Report ID (1),                              */
      0x05, 0x07,         /*      Usage Page (Keyboard),                      */
      0x15, 0x00,         /*      Logical Minimum (0),                        */
      0x25, 0x01,         /*      Logical Maximum (1),                        */
      0x19, 0xE0,         /*      Usage Minimum (KB Leftcontrol),             */
      0x29, 0xE7,         /*      Usage Maximum (KB Right GUI),               */
      0x75, 0x01,         /*      Report Size (1),                            */
      0x95, 0x08,         /*      Report Count (8),                           */
      0x81, 0x02,         /*      Input (Variable),                           */
      0x95, 0x05,         /*      Report Count (5),                           */
      0x75, 0x01,         /*      Report Size (1),                            */
      0x05, 0x08,         /*      Usage Page (LED),                           */
      0x19, 0x01,         /*      Usage Minimum (01h),                        */
      0x29, 0x05,         /*      Usage Maximum (05h),                        */
      0x91, 0x02,         /*      Output (Variable),                          */
      0x95, 0x01,         /*      Report Count (1),                           */
      0x75, 0x03,         /*      Report Size (3),                            */
      0x91, 0x03,         /*      Output (Constant, Variable),                */
      0x95, 0x08,         /*      Report Count (8),                           */
      0x75, 0x01,         /*      Report Size (1),                            */
      0x15, 0x00,         /*      Logical Minimum (0),                        */
      0x25, 0x01,         /*      Logical Maximum (1),                        */
      
      here is a report descriptor which is parsed one in kernel.
      see sys/kernel/debug/hid/<dev>/rdesc
      
      05 01 09 06 a1 01 85 01 05 07
      15 00 25 01 19 e0 29 e7 75 01
      95 08 81 02 95 05 75 01 05 08
      19 01 29 05 91 02 95 01 75 03
      91 03 95 08 75 01 15 00 25 01
      06 00 ff 09 03 81 03 95 06 75
      08 15 00 25 [65] 05 07 19 00 29
      [65] 81 00 95 01 75 01 15 00 25
      01 05 0c 09 b8 81 02 95 01 75
      01 06 01 ff 09 03 81 02 95 01
      75 06 81 03 06 02 ff 09 55 85
      55 15 00 26 ff 00 75 08 95 40
      b1 a2 c0 06 00 ff 09 14 a1 01
      85 90 05 84 75 01 95 03 15 00
      25 01 09 61 05 85 09 44 09 46
      81 02 95 05 81 01 75 08 95 01
      15 00 26 ff 00 09 65 81 02 c0
      00
      
      Position 64(Logical Maximum) and 70(Usage Maximum) are 101.
      Both should be 0xE7 to support JIS specific keys(ろ, Eisu, Kana, |) support.
      position 117 is also 101 but not related(it is Usage 65h).
      
      There are no difference of product id between JIS and ANSI.
      They are same 0x0267.
      Signed-off-by: default avatarMizuho Mori <morimolymoly@gmail.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      67fd71ba
    • F.A.Sulaiman's avatar
      HID: betop: fix slab-out-of-bounds Write in betop_probe · 1e4ce418
      F.A.Sulaiman authored
      Syzbot reported slab-out-of-bounds Write bug in hid-betopff driver.
      The problem is the driver assumes the device must have an input report but
      some malicious devices violate this assumption.
      
      So this patch checks hid_device's input is non empty before it's been used.
      
      Reported-by: syzbot+07efed3bc5a1407bd742@syzkaller.appspotmail.com
      Signed-off-by: default avatarF.A. SULAIMAN <asha.16@itfac.mrt.ac.lk>
      Reviewed-by: default avatarPavel Skripkin <paskripkin@gmail.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      1e4ce418
    • Christophe JAILLET's avatar
      HID: amd_sfh: switch from 'pci_' to 'dma_' API · e70b7033
      Christophe JAILLET authored
      The wrappers in include/linux/pci-dma-compat.h should go away.
      
      The patch has been generated with the coccinelle script below.
      
      It has been compile tested.
      
      @@
      @@
      -    PCI_DMA_BIDIRECTIONAL
      +    DMA_BIDIRECTIONAL
      
      @@
      @@
      -    PCI_DMA_TODEVICE
      +    DMA_TO_DEVICE
      
      @@
      @@
      -    PCI_DMA_FROMDEVICE
      +    DMA_FROM_DEVICE
      
      @@
      @@
      -    PCI_DMA_NONE
      +    DMA_NONE
      
      @@
      expression e1, e2, e3;
      @@
      -    pci_alloc_consistent(e1, e2, e3)
      +    dma_alloc_coherent(&e1->dev, e2, e3, GFP_)
      
      @@
      expression e1, e2, e3;
      @@
      -    pci_zalloc_consistent(e1, e2, e3)
      +    dma_alloc_coherent(&e1->dev, e2, e3, GFP_)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_free_consistent(e1, e2, e3, e4)
      +    dma_free_coherent(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_map_single(e1, e2, e3, e4)
      +    dma_map_single(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_unmap_single(e1, e2, e3, e4)
      +    dma_unmap_single(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4, e5;
      @@
      -    pci_map_page(e1, e2, e3, e4, e5)
      +    dma_map_page(&e1->dev, e2, e3, e4, e5)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_unmap_page(e1, e2, e3, e4)
      +    dma_unmap_page(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_map_sg(e1, e2, e3, e4)
      +    dma_map_sg(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_unmap_sg(e1, e2, e3, e4)
      +    dma_unmap_sg(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_dma_sync_single_for_cpu(e1, e2, e3, e4)
      +    dma_sync_single_for_cpu(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_dma_sync_single_for_device(e1, e2, e3, e4)
      +    dma_sync_single_for_device(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_dma_sync_sg_for_cpu(e1, e2, e3, e4)
      +    dma_sync_sg_for_cpu(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2, e3, e4;
      @@
      -    pci_dma_sync_sg_for_device(e1, e2, e3, e4)
      +    dma_sync_sg_for_device(&e1->dev, e2, e3, e4)
      
      @@
      expression e1, e2;
      @@
      -    pci_dma_mapping_error(e1, e2)
      +    dma_mapping_error(&e1->dev, e2)
      
      @@
      expression e1, e2;
      @@
      -    pci_set_dma_mask(e1, e2)
      +    dma_set_mask(&e1->dev, e2)
      
      @@
      expression e1, e2;
      @@
      -    pci_set_consistent_dma_mask(e1, e2)
      +    dma_set_coherent_mask(&e1->dev, e2)
      Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
      Acked-by: default avatarBasavaraj Natikar <Basavaraj.Natikar@amd.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      e70b7033
  9. 02 Sep, 2021 21 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 83ec9169
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - Fix in i2c-hid driver for Elan touchpad quirk regression (Jim
         Broadus)
      
       - Quirk preventing ASUS Claymore from accidentally suspending whole
         system (Luke D. Jones)
      
       - Updates to the existing FW reporting mechanism, MP2 FW status checks,
         adding proper power management support for amd-sfh (Basavaraj
         Natikar)
      
       - Regression fix for an issue in HID core that got uncovered by recent
         USB core cleanup leading to issues when transfer_buffer_length is not
         in line with wLength (Alan Stern)
      
       - Memory leak fix in USB HID core (Anirudh Rayabharam)
      
       - Improvement of stylus battery reporting (Dmitry Torokhov)
      
       - Power management improvement for Goodix driver (Douglas Anderson)
      
       - High-resolution scroll support for Magicmouse devices (José Expósito)
      
       - Support for GHLive PS4 dongles (Daniel Nguyen)
      
       - Support proper EV_MSC emissions to hid-apple (Vincent Lefevre)
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (31 commits)
        HID: usbhid: Simplify code in hid_submit_ctrl()
        HID: usbhid: Fix warning caused by 0-length input reports
        HID: usbhid: Fix flood of "control queue full" messages
        HID: sony: Fix more ShanWan clone gamepads to not rumble when plugged in.
        HID: sony: support for the ghlive ps4 dongles
        HID: thrustmaster: clean up Makefile and adapt quirks
        HID: i2c-hid: Fix Elan touchpad regression
        HID: asus: Prevent Claymore sending suspend event
        HID: amd_sfh: Add dyndbg prints for debugging
        HID: amd_sfh: Add support for PM suspend and resume
        HID: amd_sfh: Move hid probe after sensor is enabled
        HID: amd_sfh: Add command response to check command status
        HID: amd_sfh: Fix period data field to enable sensor
        HID: logitech-hidpp: battery: provide CAPACITY property for newer devices
        HID: thrustmaster: Fix memory leak in thrustmaster_interrupts()
        HID: thrustmaster: Fix memory leak in remove
        HID: thrustmaster: Fix memory leaks in probe
        HID: elo: update the reference count of the usb device structure
        HID: logitech-hidpp: Use 'atomic_inc_return' instead of hand-writing it
        HID: apple: Add missing scan code event for keys handled by hid-apple
        ...
      83ec9169
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · c7930112
      Linus Torvalds authored
      Pull pin control updates from Linus Walleij:
       "This is the bulk of pin control changes for the v5.15 kernel cycle, no
        core changes at all this time, just driver work!
      
        New drivers:
      
         - New subdriver for Intel Keem Bay (an ARM-based SoC)
      
         - New subdriver for Qualcomm MDM9607 and SM6115
      
         - New subdriver for ST Microelectronics STM32MP135
      
         - New subdriver for Freescale i.MX8ULP ("Ultra Low Power")
      
         - New subdriver for Ingenic X2100
      
         - Support for Qualcomm PMC8180, PMC8180C, SA8155p-adp PMIC GPIO
      
         - Support Samsung Exynos850
      
         - Support Renesas RZ/G2L
      
        Enhancements:
      
         - A major refactoring of the Rockchip driver, breaking part of it out
           to a separate GPIO driver in drivers/gpio
      
         - Pin bias support on Renesas r8a77995
      
         - Add SCI pins support to Ingenic JZ4755 and JZ4760
      
         - Mediatek device tree bindings converted to YAML"
      
      * tag 'pinctrl-v5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (53 commits)
        pinctrl: renesas: Add RZ/G2L pin and gpio controller driver
        pinctrl: samsung: Add Exynos850 SoC specific data
        dt-bindings: pinctrl: samsung: Add Exynos850 doc
        MAINTAINERS: Add maintainers for amd-pinctrl driver
        pinctrl: Add Intel Keem Bay pinctrl driver
        dt-bindings: pinctrl: Add bindings for Intel Keembay pinctrl driver
        pinctrl: zynqmp: Drop pinctrl_unregister for devm_ registered device
        dt-bindings: pinctrl: qcom-pmic-gpio: Remove the interrupts property
        dt-bindings: pinctrl: qcom-pmic-gpio: Convert qcom pmic gpio bindings to YAML
        dt-bindings: pinctrl: mt8195: Use real world values for drive-strength arguments
        dt-bindings: mediatek: convert pinctrl to yaml
        arm: dts: mt8183: Move pinfunc to include/dt-bindings/pinctrl
        arm: dts: mt8135: Move pinfunc to include/dt-bindings/pinctrl
        pinctrl: ingenic: Add .max_register in regmap_config
        pinctrl: ingenic: Fix bias config for X2000(E)
        pinctrl: ingenic: Fix incorrect pull up/down info
        pinctrl: Ingenic: Add pinctrl driver for X2100.
        dt-bindings: pinctrl: Add bindings for Ingenic X2100.
        pinctrl: Ingenic: Add SSI pins support for JZ4755 and JZ4760.
        pinctrl: Ingenic: Improve the code.
        ...
      c7930112
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 75d6e7d9
      Linus Torvalds authored
      Pull clk updates from Stephen Boyd:
       "Nothing changed in the clk framework core this time around. We did get
        some updates to the basic clk types to use determine_rate for the
        divider type and add a power of two fractional divider flag though.
      
        Otherwise, this is a collection of clk driver updates. More than half
        the diffstat is in the Qualcomm clk driver where we add a bunch of
        data to describe clks on various SoCs and fix bugs. The other big new
        thing in here is the Mediatek MT8192 clk driver. That's been under
        review for a while and it's nice to see that it's finally upstream.
      
        Beyond that it's the usual set of minor fixes and tweaks to clk
        drivers. There are some non-clk driver bits in here which have all
        been acked by the respective maintainers.
      
        New Drivers:
         - Support video, gpu, display clks on qcom sc7280 SoCs
         - GCC clks on qcom MSM8953, SM4250/6115, and SM6350 SoCs
         - Multimedia clks (MMCC) on qcom MSM8994/MSM8992
         - RPMh clks on qcom SM6350 SoCs
         - Support for Mediatek MT8192 SoCs
         - Add display (DU and DSI) clocks on Renesas R-Car V3U
         - Add I2C, DMAC, USB, sound (SSIF-2), GPIO, CANFD, and ADC clocks and
           resets on Renesas RZ/G2L
      
        Updates:
         - Support the SD/OE pin on IDT VersaClock 5 and 6 clock generators
         - Add power of two flag to fractional divider clk type
         - Migrate some clk drivers to clk_divider_ops.determine_rate
         - Migrate to clk_parent_data in gcc-sdm660
         - Fix CLKOUT clocks on i.MX8MM and i.MX8MN by using imx_clk_hw_mux2
         - Switch from .round_rate to .determine_rate in clk-divider-gate
         - Fix clock tree update for TF-A controlled clocks for all i.MX8M
         - Add missing M7 core clock for i.MX8MN
         - YAML conversion of rk3399 clock controller binding
         - Removal of GRF dependency for the rk3328/rk3036 pll types
         - Drop CLK_IS_CRITICAL flag from Tegra fuse clk
         - Make CLK_R9A06G032 Kconfig symbol invisible
         - Convert various DT bindings to YAML"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (128 commits)
        dt-bindings: clock: samsung: fix header path in example
        clk: tegra: fix old-style declaration
        clk: qcom: Add SM6350 GCC driver
        MAINTAINERS: clock: include S3C and S5P in Samsung SoC clock entry
        dt-bindings: clock: samsung: convert S5Pv210 AudSS to dtschema
        dt-bindings: clock: samsung: convert Exynos AudSS to dtschema
        dt-bindings: clock: samsung: convert Exynos4 to dtschema
        dt-bindings: clock: samsung: convert Exynos3250 to dtschema
        dt-bindings: clock: samsung: convert Exynos542x to dtschema
        dt-bindings: clock: samsung: add bindings for Exynos external clock
        dt-bindings: clock: samsung: convert Exynos5250 to dtschema
        clk: vc5: Add properties for configuring SD/OE behavior
        clk: vc5: Use dev_err_probe
        dt-bindings: clk: vc5: Add properties for configuring the SD/OE pin
        dt-bindings: clock: brcm,iproc-clocks: fix armpll properties
        clk: zynqmp: Fix kernel-doc format
        clk: at91: clk-generated: Limit the requested rate to our range
        clk: ralink: avoid to set 'CLK_IS_CRITICAL' flag for gates
        clk: zynqmp: Fix a memory leak
        clk: zynqmp: Check the return type
        ...
      75d6e7d9
    • Linus Torvalds's avatar
      Merge tag 'mailbox-v5.15' of git://git.linaro.org/landing-teams/working/fujitsu/integration · a180eab0
      Linus Torvalds authored
      Pull mailbox updates from Jassi Brar:
      
       - mtk:
           - added support for mt8192 and mt8195
           - minor fix regarding address shift
      
       - qcom:
           - added compatibles for MSM8953, SM6350 and SM6115
           - enable loading IPCC as a module
      
       - misc:
           - change Altera maintainer
           - fix sti kernel-doc warnings
      
      * tag 'mailbox-v5.15' of git://git.linaro.org/landing-teams/working/fujitsu/integration:
        mailbox: cmdq: add multi-gce clocks support for mt8195
        mailbox: cmdq: add mediatek mailbox support for mt8195
        dt-bindings: gce: add gce header file for mt8195
        dt-bindings: mailbox: add definition for mt8195
        mailbox: qcom-apcs-ipc: Add compatible for MSM8953 SoC
        dt-bindings: mailbox: Add compatible for the MSM8953
        dt-bindings: mailbox: qcom-ipcc: Add compatible for SM6350
        mailbox: qcom: Add support for SM6115 APCS IPC
        dt-bindings: mailbox: qcom: Add SM6115 APCS compatible
        soc: mediatek: cmdq: add address shift in jump
        mailbox: cmdq: add mt8192 support
        dt-binding: gce: add gce header file for mt8192
        MAINTAINERS: Replace Ley Foon Tan as Altera Mailbox maintainer
        mailbox: qcom-ipcc: Enable loading QCOM_IPCC as a module
        mailbox: sti: quieten kernel-doc warnings
      a180eab0
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v5.15-1' of... · 7ba88a2a
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
      
      Pull x86 platform driver updates from Hans de Goede:
       "Highlights:
      
         - Move all the Intel drivers into their own subdir(s) (mostly Kate's
           work)
      
         - New meraki-mx100 platform driver
      
         - Asus WMI driver enhancements, including support for
           /sys/firmware/acpi/platform_profile
      
         - New BIOS SAR driver for Intel M.2 WWAM modems
      
         - Alder Lake support for the Intel PMC driver
      
         - A whole bunch of cleanups + fixes all over the place"
      
      * tag 'platform-drivers-x86-v5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (65 commits)
        platform/x86: dell-smbios-wmi: Add missing kfree in error-exit from run_smbios_call
        platform/x86: dell-smbios-wmi: Avoid false-positive memcpy() warning
        platform/x86: ISST: use semi-colons instead of commas
        platform/x86: asus-wmi: Fix "unsigned 'retval' is never less than zero" smatch warning
        platform/x86: asus-wmi: Delete impossible condition
        platform/x86: hp_accel: Convert to be a platform driver
        platform/x86: hp_accel: Remove _INI method call
        platform/mellanox: mlxbf-pmc: fix kernel-doc notation
        platform/x86/intel: pmc/core: Add GBE Package C10 fix for Alder Lake PCH
        platform/x86/intel: pmc/core: Add Alder Lake low power mode support for pmc core
        platform/x86/intel: pmc/core: Add Latency Tolerance Reporting (LTR) support to Alder Lake
        platform/x86/intel: pmc/core: Add Alderlake support to pmc core driver
        platform/x86: intel-wmi-thunderbolt: Move to intel sub-directory
        platform/x86: intel-wmi-sbl-fw-update: Move to intel sub-directory
        platform/x86: intel-vbtn: Move to intel sub-directory
        platform/x86: intel_oaktrail: Move to intel sub-directory
        platform/x86: intel_int0002_vgpio: Move to intel sub-directory
        platform/x86: intel-hid: Move to intel sub-directory
        platform/x86: intel_atomisp2: Move to intel sub-directory
        platform/x86: intel_speed_select_if: Move to intel sub-directory
        ...
      7ba88a2a
    • Linus Torvalds's avatar
      Merge tag 'vfio-v5.15-rc1' of git://github.com/awilliam/linux-vfio · 89b6b8cd
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
      
       - Fix dma-valid return WAITED implementation (Anthony Yznaga)
      
       - SPDX license cleanups (Cai Huoqing)
      
       - Split vfio-pci-core from vfio-pci and enhance PCI driver matching to
         support future vendor provided vfio-pci variants (Yishai Hadas, Max
         Gurtovoy, Jason Gunthorpe)
      
       - Replace duplicated reflck with core support for managing first open,
         last close, and device sets (Jason Gunthorpe, Max Gurtovoy, Yishai
         Hadas)
      
       - Fix non-modular mdev support and don't nag about request callback
         support (Christoph Hellwig)
      
       - Add semaphore to protect instruction intercept handler and replace
         open-coded locks in vfio-ap driver (Tony Krowiak)
      
       - Convert vfio-ap to vfio_register_group_dev() API (Jason Gunthorpe)
      
      * tag 'vfio-v5.15-rc1' of git://github.com/awilliam/linux-vfio: (37 commits)
        vfio/pci: Introduce vfio_pci_core.ko
        vfio: Use kconfig if XX/endif blocks instead of repeating 'depends on'
        vfio: Use select for eventfd
        PCI / VFIO: Add 'override_only' support for VFIO PCI sub system
        PCI: Add 'override_only' field to struct pci_device_id
        vfio/pci: Move module parameters to vfio_pci.c
        vfio/pci: Move igd initialization to vfio_pci.c
        vfio/pci: Split the pci_driver code out of vfio_pci_core.c
        vfio/pci: Include vfio header in vfio_pci_core.h
        vfio/pci: Rename ops functions to fit core namings
        vfio/pci: Rename vfio_pci_device to vfio_pci_core_device
        vfio/pci: Rename vfio_pci_private.h to vfio_pci_core.h
        vfio/pci: Rename vfio_pci.c to vfio_pci_core.c
        vfio/ap_ops: Convert to use vfio_register_group_dev()
        s390/vfio-ap: replace open coded locks for VFIO_GROUP_NOTIFY_SET_KVM notification
        s390/vfio-ap: r/w lock for PQAP interception handler function pointer
        vfio/type1: Fix vfio_find_dma_valid return
        vfio-pci/zdev: Remove repeated verbose license text
        vfio: platform: reset: Convert to SPDX identifier
        vfio: Remove struct vfio_device_ops open/release
        ...
      89b6b8cd
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.15-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 9ae5fceb
      Linus Torvalds authored
      Pull xen updates from Juergen Gross:
      
       - some small cleanups
      
       - a fix for a bug when running as Xen PV guest which could result in
         not all memory being transferred in case of a migration of the guest
      
       - a small series for getting rid of code for supporting very old Xen
         hypervisor versions nobody should be using since many years now
      
       - a series for hardening the Xen block frontend driver
      
       - a fix for Xen PV boot code issuing warning messages due to a stray
         preempt_disable() on the non-boot processors
      
      * tag 'for-linus-5.15-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen: remove stray preempt_disable() from PV AP startup code
        xen/pcifront: Removed unnecessary __ref annotation
        x86: xen: platform-pci-unplug: use pr_err() and pr_warn() instead of raw printk()
        drivers/xen/xenbus/xenbus_client.c: fix bugon.cocci warnings
        xen/blkfront: don't trust the backend response data blindly
        xen/blkfront: don't take local copy of a request from the ring page
        xen/blkfront: read response from backend only once
        xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guests
        xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for pv guests
        xen: check required Xen features
        xen: fix setting of max_pfn in shared_info
      9ae5fceb
    • Linus Torvalds's avatar
      Merge tag 'for-5.15/parisc' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · a2d616b9
      Linus Torvalds authored
      Pull parisc architecture updates from Helge Deller:
      
       - Fix a kernel crash when a signal is delivered to bad userspace stack
      
       - Fix fall-through warnings in math-emu code
      
       - Increase size of gcc stack frame check
      
       - Switch coding from 'pci_' to 'dma_' API
      
       - Make struct parisc_driver::remove() return void
      
       - Some parisc related Makefile changes
      
       - Minor cleanups, e.g. change to octal permissions, fix macro
         collisions, fix PMD_ORDER collision, replace spaces with tabs
      
      * tag 'for-5.15/parisc' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: math-emu: Fix fall-through warnings
        parisc: fix crash with signals and alloca
        parisc: Fix compile failure when building 64-bit kernel natively
        parisc: ccio-dma.c: Added tab instead of spaces
        parisc/parport_gsc: switch from 'pci_' to 'dma_' API
        parisc: move core-y in arch/parisc/Makefile to arch/parisc/Kbuild
        parisc: switch from 'pci_' to 'dma_' API
        parisc: Make struct parisc_driver::remove() return void
        parisc: remove unused arch/parisc/boot/install.sh and its phony target
        parisc: Rename PMD_ORDER to PMD_TABLE_ORDER
        parisc: math-emu: Avoid "fmt" macro collision
        parisc: Increase size of gcc stack frame check
        parisc: Replace symbolic permissions with octal permissions
      a2d616b9
    • Linus Torvalds's avatar
      Merge tag 'xtensa-20210902' of git://github.com/jcmvbkbc/linux-xtensa · b5d6d263
      Linus Torvalds authored
      Pull Xtensa updates from Max Filippov:
      
       - fix kconfig unmet dependency warning for HAVE_FUTEX_CMPXCHG
      
       - add fairness to handling IRQs of the same priority
      
       - fix pointer usage before NULL check in ISS console driver
      
       - build system cleanups
      
      * tag 'xtensa-20210902' of git://github.com/jcmvbkbc/linux-xtensa:
        xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild
        xtensa: build platform directories unconditionally
        xtensa: do not build variants directory
        xtensa: remove unneeded exports
        xtensa: ISS: don't use string pointer before NULL check
        xtensa: add fairness to IRQ handling
        xtensa: fix kconfig unmet dependency warning for HAVE_FUTEX_CMPXCHG
      b5d6d263
    • Linus Torvalds's avatar
      Merge tag 'locking-debug-2021-09-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · aa829778
      Linus Torvalds authored
      Pull memory model updates from Ingo Molnar:
       "LKMM updates:
      
         - Update documentation and code example
      
        KCSAN updates:
      
         - Introduce CONFIG_KCSAN_STRICT (which RCU uses)
      
         - Optimize use of get_ctx() by kcsan_found_watchpoint()
      
         - Rework atomic.h into permissive.h
      
         - Add the ability to ignore writes that change only one bit of a
           given data-racy variable.
      
         - Improve comments"
      
      * tag 'locking-debug-2021-09-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tools/memory-model: Document data_race(READ_ONCE())
        tools/memory-model: Heuristics using data_race() must handle all values
        tools/memory-model: Add example for heuristic lockless reads
        tools/memory-model: Make read_foo_diagnostic() more clearly diagnostic
        kcsan: Make strict mode imply interruptible watchers
        kcsan: permissive: Ignore data-racy 1-bit value changes
        kcsan: Print if strict or non-strict during init
        kcsan: Rework atomic.h into permissive.h
        kcsan: Reduce get_ctx() uses in kcsan_found_watchpoint()
        kcsan: Introduce CONFIG_KCSAN_STRICT
        kcsan: Remove CONFIG_KCSAN_DEBUG
        kcsan: Improve some Kconfig comments
      aa829778
    • Linus Torvalds's avatar
      Merge tag 'integrity-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity · aef4892a
      Linus Torvalds authored
      Pull integrity subsystem updates from Mimi Zohar:
      
       - Limit the allowed hash algorithms when writing security.ima xattrs or
         verifying them, based on the IMA policy and the configured hash
         algorithms.
      
       - Return the calculated "critical data" measurement hash and size to
         avoid code duplication. (Preparatory change for a proposed LSM.)
      
       - and a single patch to address a compiler warning.
      
      * tag 'integrity-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
        IMA: reject unknown hash algorithms in ima_get_hash_algo
        IMA: prevent SETXATTR_CHECK policy rules with unavailable algorithms
        IMA: introduce a new policy option func=SETXATTR_CHECK
        IMA: add a policy option to restrict xattr hash algorithms on appraisal
        IMA: add support to restrict the hash algorithms used for file appraisal
        IMA: block writes of the security.ima xattr with unsupported algorithms
        IMA: remove the dependency on CRYPTO_MD5
        ima: Add digest and digest_len params to the functions to measure a buffer
        ima: Return int in the functions to measure a buffer
        ima: Introduce ima_get_current_hash_algo()
        IMA: remove -Wmissing-prototypes warning
      aef4892a
    • Linus Torvalds's avatar
      Merge tag 'hardening-v5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · b55060d7
      Linus Torvalds authored
      Pull hardening updates from Kees Cook:
      
       - Expand lib/test_stackinit to include more initialization styles
      
       - Improve Kconfig for CLang's auto-var-init feature
      
       - Introduce support for GCC's zero-call-used-regs feature
      
      * tag 'hardening-v5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        lib/test_stackinit: Add assigned initializers
        lib/test_stackinit: Allow building stand-alone
        lib/test_stackinit: Fix static initializer test
        hardening: Clarify Kconfig text for auto-var-init
        hardening: Introduce CONFIG_ZERO_CALL_USED_REGS
      b55060d7
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-kunit-5.15-rc1' of... · c815f04b
      Linus Torvalds authored
      Merge tag 'linux-kselftest-kunit-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull KUnit updates from Shuah Khan:
       "This KUnit update for Linux 5.15-rc1 adds new features and tests:
      
        Tool:
      
         - support for '--kernel_args' to allow setting module params
      
         - support for '--raw_output' option to show just the kunit output
           during make
      
        Tests:
      
         - new KUnit tests for checksums and timestamps
      
         - Print test statistics on failure
      
         - Integrates UBSAN into the KUnit testing framework. It fails KUnit
           tests whenever it reports undefined behavior"
      
      * tag 'linux-kselftest-kunit-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        kunit: Print test statistics on failure
        kunit: tool: make --raw_output support only showing kunit output
        kunit: tool: add --kernel_args to allow setting module params
        kunit: ubsan integration
        fat: Add KUnit tests for checksums and timestamps
      c815f04b
    • Linus Torvalds's avatar
      Merge tag 'memblock-v5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock · 612b23f2
      Linus Torvalds authored
      Pull memblock updates from Mike Rapoport:
       "Robustness and debug improvements:
      
         - add check for memory add/cap ordering
      
         - add missing debug code to memblock_add_node()"
      
      * tag 'memblock-v5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock:
        memblock: Check memory add/cap ordering
        memblock: Add missing debug code to memblock_add_node()
      612b23f2
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-5.15' of git://git.infradead.org/users/hch/dma-mapping · 4a3bb420
      Linus Torvalds authored
      Pull dma-mapping updates from Christoph Hellwig:
      
       - fix debugfs initialization order (Anthony Iliopoulos)
      
       - use memory_intersects() directly (Kefeng Wang)
      
       - allow to return specific errors from ->map_sg (Logan Gunthorpe,
         Martin Oliveira)
      
       - turn the dma_map_sg return value into an unsigned int (me)
      
       - provide a common global coherent pool іmplementation (me)
      
      * tag 'dma-mapping-5.15' of git://git.infradead.org/users/hch/dma-mapping: (31 commits)
        hexagon: use the generic global coherent pool
        dma-mapping: make the global coherent pool conditional
        dma-mapping: add a dma_init_global_coherent helper
        dma-mapping: simplify dma_init_coherent_memory
        dma-mapping: allow using the global coherent pool for !ARM
        ARM/nommu: use the generic dma-direct code for non-coherent devices
        dma-direct: add support for dma_coherent_default_memory
        dma-mapping: return an unsigned int from dma_map_sg{,_attrs}
        dma-mapping: disallow .map_sg operations from returning zero on error
        dma-mapping: return error code from dma_dummy_map_sg()
        x86/amd_gart: don't set failed sg dma_address to DMA_MAPPING_ERROR
        x86/amd_gart: return error code from gart_map_sg()
        xen: swiotlb: return error code from xen_swiotlb_map_sg()
        parisc: return error code from .map_sg() ops
        sparc/iommu: don't set failed sg dma_address to DMA_MAPPING_ERROR
        sparc/iommu: return error codes from .map_sg() ops
        s390/pci: don't set failed sg dma_address to DMA_MAPPING_ERROR
        s390/pci: return error code from s390_dma_map_sg()
        powerpc/iommu: don't set failed sg dma_address to DMA_MAPPING_ERROR
        powerpc/iommu: return error code from .map_sg() ops
        ...
      4a3bb420
    • Linus Torvalds's avatar
      Merge tag 'configfs-5.15' of git://git.infradead.org/users/hch/configfs · eceae1e7
      Linus Torvalds authored
      Pull configfs updates from Christoph Hellwig:
      
       - fix a race in configfs_lookup (Sishuai Gong)
      
       - minor cleanups (me)
      
      * tag 'configfs-5.15' of git://git.infradead.org/users/hch/configfs:
        configfs: fix a race in configfs_lookup()
        configfs: fold configfs_attach_attr into configfs_lookup
        configfs: simplify the configfs_dirent_is_ready
        configfs: return -ENAMETOOLONG earlier in configfs_lookup
      eceae1e7
    • Linus Torvalds's avatar
      Merge tag 'dlm-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm · 265113f7
      Linus Torvalds authored
      Pull dlm updates from David Teigland:
       "This set includes a number of minor fixes and cleanups related to the
        networking changes in the last release.
      
        A patch to delay ack messages reduces network traffic significantly"
      
      * tag 'dlm-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
        fs: dlm: avoid comms shutdown delay in release_lockspace
        fs: dlm: fix return -EINTR on recovery stopped
        fs: dlm: implement delayed ack handling
        fs: dlm: move receive loop into receive handler
        fs: dlm: fix multiple empty writequeue alloc
        fs: dlm: generic connect func
        fs: dlm: auto load sctp module
        fs: dlm: introduce generic listen
        fs: dlm: move to static proto ops
        fs: dlm: introduce con_next_wq helper
        fs: dlm: cleanup and remove _send_rcom
        fs: dlm: clear CF_APP_LIMITED on close
        fs: dlm: fix typo in tlv prefix
        fs: dlm: use READ_ONCE for config var
        fs: dlm: use sk->sk_socket instead of con->sock
      265113f7
    • Linus Torvalds's avatar
      d_path: make 'prepend()' fill up the buffer exactly on overflow · b0cfcdd9
      Linus Torvalds authored
      Instead of just marking the buffer as having overflowed, fill it up as
      much as we can.  That will allow the overflow case to then return
      whatever truncated result if it wants to.
      
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b0cfcdd9
    • Linus Torvalds's avatar
      mm: don't allow oversized kvmalloc() calls · 7661809d
      Linus Torvalds authored
      'kvmalloc()' is a convenience function for people who want to do a
      kmalloc() but fall back on vmalloc() if there aren't enough physically
      contiguous pages, or if the allocation is larger than what kmalloc()
      supports.
      
      However, let's make sure it doesn't get _too_ easy to do crazy things
      with it.  In particular, don't allow big allocations that could be due
      to integer overflow or underflow.  So make sure the allocation size fits
      in an 'int', to protect against trivial integer conversion issues.
      Acked-by: default avatarWilly Tarreau <w@1wt.eu>
      Cc: Kees Cook <keescook@chromium.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7661809d
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 111c1aa8
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "In addition to some ext4 bug fixes and cleanups, this cycle we add the
        orphan_file feature, which eliminates bottlenecks when doing a large
        number of parallel truncates and file deletions, and move the discard
        operation out of the jbd2 commit thread when using the discard mount
        option, to better support devices with slow discard operations"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (23 commits)
        ext4: make the updating inode data procedure atomic
        ext4: remove an unnecessary if statement in __ext4_get_inode_loc()
        ext4: move inode eio simulation behind io completeion
        ext4: Improve scalability of ext4 orphan file handling
        ext4: Orphan file documentation
        ext4: Speedup ext4 orphan inode handling
        ext4: Move orphan inode handling into a separate file
        ext4: Support for checksumming from journal triggers
        ext4: fix race writing to an inline_data file while its xattrs are changing
        jbd2: add sparse annotations for add_transaction_credits()
        ext4: fix sparse warnings
        ext4: Make sure quota files are not grabbed accidentally
        ext4: fix e2fsprogs checksum failure for mounted filesystem
        ext4: if zeroout fails fall back to splitting the extent node
        ext4: reduce arguments of ext4_fc_add_dentry_tlv
        ext4: flush background discard kwork when retry allocation
        ext4: get discard out of jbd2 commit kthread contex
        ext4: remove the repeated comment of ext4_trim_all_free
        ext4: add new helper interface ext4_try_to_trim_range()
        ext4: remove the 'group' parameter of ext4_trim_extent
        ...
      111c1aa8
    • Linus Torvalds's avatar
      Merge tag 'ovl-update-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · 815409a1
      Linus Torvalds authored
      Pull overlayfs update from Miklos Szeredi:
      
       - Copy up immutable/append/sync/noatime attributes (Amir Goldstein)
      
       - Improve performance by enabling RCU lookup.
      
       - Misc fixes and improvements
      
      The reason this touches so many files is that the ->get_acl() method now
      gets a "bool rcu" argument.  The ->get_acl() API was updated based on
      comments from Al and Linus:
      
      Link: https://lore.kernel.org/linux-fsdevel/CAJfpeguQxpd6Wgc0Jd3ks77zcsAv_bn0q17L3VNnnmPKu11t8A@mail.gmail.com/
      
      * tag 'ovl-update-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: enable RCU'd ->get_acl()
        vfs: add rcu argument to ->get_acl() callback
        ovl: fix BUG_ON() in may_delete() when called from ovl_cleanup()
        ovl: use kvalloc in xattr copy-up
        ovl: update ctime when changing fileattr
        ovl: skip checking lower file's i_writecount on truncate
        ovl: relax lookup error on mismatch origin ftype
        ovl: do not set overlay.opaque for new directories
        ovl: add ovl_allow_offline_changes() helper
        ovl: disable decoding null uuid with redirect_dir
        ovl: consistent behavior for immutable/append-only inodes
        ovl: copy up sync/noatime fileattr flags
        ovl: pass ovl_fs to ovl_check_setxattr()
        fs: add generic helper for filling statx attribute flags
      815409a1