This contains a couple of conversions of bindings to json-schema, as
well as symbolic names for the various memory clients on Tegra20,
Tegra30 and Tegra124. There's also a couple of fixes for Tegra194
pinmux and ARM GIC bindings. Finally, a new vendor prefix is added
for Ouya and the Ouya game console compatible string is defined.
-----BEGIN PGP SIGNATURE-----
iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAl/BDUoTHHRyZWRpbmdA
bnZpZGlhLmNvbQAKCRDdI6zXfz6zoYVxD/0QruCebMImdUoKHYeFPyDsDDUM/zrn
MjG88uq3yqvEqCQU3vD5M+p+9TZ8pfJhnGTPd+Bg7+25oOQjVmfpBtcPWhWM1L2k
8cNpRgeJ/7Hekt2gYxxHBc6LkYZhhT5uuax/QahEBrvG+xYLJAKU6Dau6qBrLol6
3DD1MSqpXhGu2MOJDn/maWTu3cLeKzpPu3mZKsR/tMd5dILm4BaiXkG6S1XWlpW+
v/n5VYZg84J0MX/+h/YapUqbteZijTl/f1+b9c0bzj4NUUjqasbTf+TYIjvBN+ML
izhRouZQlYu62oshV0q7lQu1dx/exWg4wubKH+1GZZF9uJtME9OIjpF0ysJ67khg
+2g8SRBErRto6An8rN5NTY2g06VQ4LuIB3P6Fy8GgdyNqglMQuKk1q5eEARZXwWU
5INOQeIeCFck4/Z7iM5iryA8YOd18gZJ0a0m9mOyN6nl7nv/s1XkRd60xOgNSRMw
OVbjWHq5K+tQM6x72d4ywVBl9SMlIAm49m82fRVSW6kpCfHeBpajTPPomQLMDTm0
EgFstRKUMVMiJZY5LML/sY7lXbUVR385tt4GXHh8LomvCLTL9baq70gSq8n+cEC0
AMbTXZpVYKZ3VpomL57ROBniY75ZkxgkWNRoRFmlXaRtCM0qWyMDbfNU3GHfR0V6
VF2PkSpkM+1Edw==
=UKyi
-----END PGP SIGNATURE-----
Merge tag 'tegra-for-5.11-dt-bindings' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/dt
dt-bindings: Changes for v5.11-rc1
This contains a couple of conversions of bindings to json-schema, as
well as symbolic names for the various memory clients on Tegra20,
Tegra30 and Tegra124. There's also a couple of fixes for Tegra194
pinmux and ARM GIC bindings. Finally, a new vendor prefix is added
for Ouya and the Ouya game console compatible string is defined.
* tag 'tegra-for-5.11-dt-bindings' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
dt-bindings: bus: Convert ACONNECT doc to json-schema
dt-bindings: interrupt-controller: arm,gic: Update Tegra compatibles
dt-bindings: dma: Convert ADMA doc to json-schema
dt-bindings: Fix entry name for I/O High Voltage property
dt-bindings: ARM: tegra: Add Ouya game console
dt-bindings: Add vendor prefix for Ouya Inc.
dt-bindings: memory: tegra124: Add memory client IDs
dt-bindings: memory: tegra30: Add memory client IDs
dt-bindings: memory: tegra20: Add memory client IDs
Link: https://lore.kernel.org/r/20201127144329.124891-1-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
- PCIe endpoint support for the R-Car H3 ES2.0+ SoC.
-----BEGIN PGP SIGNATURE-----
iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCX8D7wQAKCRCKwlD9ZEnx
cGthAP9Tnhv6LWGL4002pLs2LS/qnPqIhWLjh+o989pKkCEJtAD9GKuzI0+tiSuk
CfPOhZUFUI7eZ99icVBPbc0yamB9UQs=
=lR48
-----END PGP SIGNATURE-----
Merge tag 'renesas-arm-dt-for-v5.11-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt
Renesas ARM DT updates for v5.11 (take two)
- PCIe endpoint support for the R-Car H3 ES2.0+ SoC.
* tag 'renesas-arm-dt-for-v5.11-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
arm64: dts: renesas: r8a77951: Add PCIe EP nodes
Link: https://lore.kernel.org/r/20201127132155.77418-2-geert@linux-m68k.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Highlights:
----------
MCU part:
-Fix dmamux reg property (length) on stm32h743.
-Explicitly set DCMI bus type on stm32429i eval board.
MPU part:
-Enable FIFO mode with half-full threshold for DCMI.
-Harmonize EHCI/OHCI nodes.
-Move SDMMC IP version to v2.0 to get features improvements.
-Add LP-timer wakeup support.
-Enable crypto/hash/crc support.
-Explicitly set DCMI bus type on stm32mp157 eval board.
-Add USB type-c controller (STUSB1600) on stm32mp15 DK boards
(It is connected to I2C4).
-Fix dmamux reg property (length) on stm32mp151.
-Optimize USB OTG FIFO sizes on stm32mp151.
-Declare tamp node also as "simple-mfd".
-LXA:
-Document Octavo vendor-prefixes yaml file.
-Document lxa,stm32mp157c-mc1 in STM32 yaml file.
-DH:
-Connect PHY IRQ line on DH SoM.
-Add KS8851 Ethernet support on DHCOM which is mapped to FMC2.
-Document all DH compatible strings in STM32 yaml file.
-Add DHCOM based PicoITX board. This board embedds ethernet port,
USB, CAN LEDS and a custom board-to-board connector.
-----BEGIN PGP SIGNATURE-----
iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAl/Au8MdHGFsZXhhbmRy
ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIXyEw//WdCcKbynDRO0GjK3
sFIAHUBLKt4vZJRD7M5jWojKgcdggl/kaY/k5Us2hr2eLRK0yEG76njIcMEHElxz
rUnEOcnJ7z0qAXZkaTCbvs/5cLybHEyAfEAl+V4fGPYO0CuJrGKpqz6cliU40VJq
vWcn7hFhS7wf3bFmJgUeW36mTbBJVFD4xqvdN6ZCV3VeClqCdln7VVz3QcYEU0RW
7TcJVuvsmBOUseprmzXnTLCiEEG28Y7TexoJgAlwPvcKUlA4RGT8+cvibObTyTN6
Gvprpgm90M2Lp7RvnHQJ043o6rvu0tKjzHDxr2XIZw4uiwMwn8xtKNJUFiOCMjP4
YwTGbO1FcDFDGoWoRcFwglJSpSxBxnbFwgmdMYXoIQuJv9wv1AdFQgSknxtJzxTs
0waE0WY5+YLGFRt4x/tXoP/VCg/U4xbPXc/zOGMZwjHfZXzZyuLVj/Y2uXM2WRZZ
EUCfsNUQGX460M1MF2ap2d0sI3q6WI1223dIB7bO+QN03gCLoCZ6Rhqb/JJXODu6
Nm5g5byg4Ov7p4znvAIYbGkcrqecS0YjVM1Lq6gbWV/pgjiNwkjgMuVw7AYND01u
J7UWvGvJevAIfitCJTG8U66jbY+BKJQsbjHA3x1zOp7F/SnQM3jFIRgKUfrB2kd9
wPdXEthFxOFTdeyAy994NO8XTJc=
=O+Lk
-----END PGP SIGNATURE-----
Merge tag 'stm32-dt-for-v5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into arm/dt
STM32 DT updates for v5.11, round 1
Highlights:
----------
MCU part:
-Fix dmamux reg property (length) on stm32h743.
-Explicitly set DCMI bus type on stm32429i eval board.
MPU part:
-Enable FIFO mode with half-full threshold for DCMI.
-Harmonize EHCI/OHCI nodes.
-Move SDMMC IP version to v2.0 to get features improvements.
-Add LP-timer wakeup support.
-Enable crypto/hash/crc support.
-Explicitly set DCMI bus type on stm32mp157 eval board.
-Add USB type-c controller (STUSB1600) on stm32mp15 DK boards
(It is connected to I2C4).
-Fix dmamux reg property (length) on stm32mp151.
-Optimize USB OTG FIFO sizes on stm32mp151.
-Declare tamp node also as "simple-mfd".
-LXA:
-Document Octavo vendor-prefixes yaml file.
-Document lxa,stm32mp157c-mc1 in STM32 yaml file.
-DH:
-Connect PHY IRQ line on DH SoM.
-Add KS8851 Ethernet support on DHCOM which is mapped to FMC2.
-Document all DH compatible strings in STM32 yaml file.
-Add DHCOM based PicoITX board. This board embedds ethernet port,
USB, CAN LEDS and a custom board-to-board connector.
* tag 'stm32-dt-for-v5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32: (34 commits)
ARM: dts: stm32: lxa-mc1: add OSD32MP15x to list of compatibles
dt-bindings: arm: stm32: add extra SiP compatible for lxa,stm32mp157c-mc1
dt-bindings: vendor-prefixes: document Octavo Systems oct prefix
ARM: dts: stm32: Add DHCOM based PicoITX board
dt-bindings: arm: stm32: Add compatible strings for DH SoMs and boards
ARM: dts: stm32: support child mfd cells for the stm32mp1 TAMP syscon
dt-bindings: arm: stm32: add simple-mfd compatible for tamp node
ARM: dts: stm32: update stm32mp151 for remote proc synchronization support
ARM: dts: stm32: adjust USB OTG gadget fifo sizes in stm32mp151
ARM: dts: stm32: fix dmamux reg property on stm32h743
ARM: dts: stm32: fix dmamux reg property on stm32mp151
ARM: dts: stm32: fix mdma1 clients channel priority level on stm32mp151
ARM: dts: stm32: add STUSB1600 Type-C using I2C4 on stm32mp15xx-dkx
dt-bindings: usb: Add DT bindings for STUSB160x Type-C controller
dt-bindings: connector: add typec-power-opmode property to usb-connector
ARM: dts: stm32: reorder spi4 within stm32mp15-pinctrl
ARM: dts: stm32: set bus-type in DCMI endpoint for stm32429i-eval board
ARM: dts: stm32: set bus-type in DCMI endpoint for stm32mp157c-ev1 board
ARM: dts: stm32: enable CRYP by default on stm32mp15
ARM: dts: stm32: enable CRC1 by default on stm32mp15
...
Link: https://lore.kernel.org/r/873c17a5-28d5-9261-f691-1b917611c932@foss.st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
- Two non-urgent pandaboard updates to get gpio button and bluetooth
working on pandaboard-es
- Updates to follow devicetree binding docs for dwc3 and pwm-leds
- Add initial support for droid bionic based on what we have for droid4
- Add second sha instance for dra7
- Add eQEP nodes for am335x for boneblue
- Fix wrong comments for am335x gpio_31
-----BEGIN PGP SIGNATURE-----
iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAl/Aq4ARHHRvbnlAYXRv
bWlkZS5jb20ACgkQG9Q+yVyrpXPxVg/9Gcw/MabrgYLZfDiDqtDJooNz0nBMTGVF
eRGqUUnf5DBaOvJpq+nliqSvpl0BGnReYr48d9iqs4avZAUoBH14m8vGMgrS8ppc
84j/g4kYEMdmriWoPuAmQKLKoxyAv886I5Zv665vy2MGFAJYhXOhtLcZTf8IAbU+
Ln9nBntAk9/1bRQEpbSMyVOZ0NQLSeA3xxXIiyV+Y6hEUUbh+7jqXzwRR6O7UEVz
WDSHofUmr3FoJyVkjUzxeqfTE18DEV/EIP+0FzxWFy6nDNGSDC9vXmJGPa4Ll8f7
Hw7JO9j0fZjom+OHh28jG0syARws/cE4v3EvvNuEKrMJoyBi0+Y4Paov8AOb/LpL
j7JYgounOt0BSnnoZQILvLH34p+kZqj8Rw3nvf23bVASgTouOCYLpLjS8DDg1tzI
v6O+hYbi7f2XR4b7u8ZpEXrjiO335MiZl530XU5GihXza5Keg/qDSF9uSmxkAGvD
FIB2agmGfVj6Uk1LcR7JTfY+BHDWeRw7Om5EEEhiH9SBGVfZkLFnH7GkwtcG63nY
EoPPocqw0Tdldgn0dxRAiTP3nbN28KRIrNNmePh6jfBcWLUtAxUREJZVoDq8tH2P
YwwLm1RbCFm8B7RcRSHmBB6PAyWbmtczoaZ6jF0ehXz72w1jACu6KvE+VYkLr9Bc
gCXfxbUycio=
=7jNq
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v5.11/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/dt
Devicetree changes for omaps for v5.11 merge window
- Two non-urgent pandaboard updates to get gpio button and bluetooth
working on pandaboard-es
- Updates to follow devicetree binding docs for dwc3 and pwm-leds
- Add initial support for droid bionic based on what we have for droid4
- Add second sha instance for dra7
- Add eQEP nodes for am335x for boneblue
- Fix wrong comments for am335x gpio_31
* tag 'omap-for-v5.11/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: dts: am335x: Fix comments for AM335X_PIN_GPMC_WPN pin in GPIO mode
ARM: dts: am335x-boneblue: Enable eQEP
ARM: dts: am33xx: Add nodes for eQEP
ARM: dts: dra7: add second SHA instance
ARM: dts: xt875: add section for kionix kxtf9
ARM: dts: mapphone: separate out xt894 specific things
ARM: dts: omap: Fix schema warnings for pwm-leds
ARM: dts: omap5: Harmonize DWC USB3 DT nodes name
ARM: dts: am437x: Correct DWC USB3 compatible string
ARM: dts: pandaboard es: add bluetooth uart for HCI
ARM: dts: pandaboard: fix pinmux for gpio user button of Pandaboard ES
Link: https://lore.kernel.org/r/pull-1606462656-588116@atomide.com-2
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Contains a single fix for a strncpy()/strncat() issue that some versions
of GCC are reporting.
-----BEGIN PGP SIGNATURE-----
iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAl/BDfgTHHRyZWRpbmdA
bnZpZGlhLmNvbQAKCRDdI6zXfz6zodlhEACy0anRWjikj1uXqnvHK8ELT5LHi8mr
z/4uJi2VnKyP3WD6/DWM90/KIaNEYPyGRP23X8rBAZuzByoprs7gpG/gi4rk/w1z
EaJiXiHLOJEjffmi9+JAei5x8gVIh6czD972HDU4iEHRZwV38twsr4hGBDA4zES2
qFvKORjE5eZ75v7ipOYLq3nUgc/JJsANK5QnkpaXEdo8Cd9HdoGXsNgyLzL8MLIU
el7xIR3VMgRha2ONn7EqTDX6yINhNNCYBtoOKP0RSA2I5sZB9mULQx8DRcNsL0zh
pGVJeou3iwOQPbCevKQ3HX67x5GCcgDt2fBzjBQ5B+YszpNpWqr/gQA6ohGc6RDP
IWxilkgwnAmLTrSXMy6/ABb/NjNj2grnLAHAPtYUDbWf4P2fkCYZjYSR/Py2GOe3
p+uNFGjvsRgBBPMz7SEhJ9bCTbplrJlmOADx1Ho+vZhzmgyCn/pY88Ke9rCNde7G
lMStT8d9/6K5E6lMZLC0I8Hc6Y1CvvGUqoyYhu58wqgKFNhGw9/OkOIac5CJ2dIl
RfJqRtnwYOzmdbRcoEm1g1wijxCwv3hlNfhl7fzBD3dSmW061pwbGO3sD4FNNRxI
689b6g1CdtAPo1VCN+u29FCbQOuzE01myuclEAVft+qhYfvmDa6RjkyebvuR3KH6
MrCuNG4mLmFe1A==
=Aw/q
-----END PGP SIGNATURE-----
Merge tag 'tegra-for-5.11-firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/drivers
firmware: tegra: Changes for v5.11-rc1
Contains a single fix for a strncpy()/strncat() issue that some versions
of GCC are reporting.
* tag 'tegra-for-5.11-firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
firmware: tegra: fix strncpy()/strncat() confusion
Link: https://lore.kernel.org/r/20201127144329.124891-3-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This contains a couple of warning fixes and a fix for a mostly harmless
bug in the process ID retrieval code.
-----BEGIN PGP SIGNATURE-----
iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAl/BDZMTHHRyZWRpbmdA
bnZpZGlhLmNvbQAKCRDdI6zXfz6zoZ2DD/96vxktcIs6aXtVZlQY3dehuxCTs0s3
sut/qnctkvccwrnCtsJz1NtWjHupnJIFbuGxpLD5II9TIuas81XJUxfY1GCEsuDx
fVPJybDL/mDIwK+8SNwcYgvkwDO/Fl2IboRCM3Wc2VceCGAlAlum8NJeO5dMP29k
OTt0ui+kC8N5MyxsMngtNVsSe67GI6v6cxTC3OTcBSsPqcrb0eW4T6uEXMy69z66
J/fujbZ4rPI5iHn78zrte8P/oJNet7JHCjnsNcTZUf5St8hZqTDCoObNCz87DpNQ
2LvJcE/WLW/JnVaZag1z3xdDEygHJYWf/kFsuDKonzPXHVkSiywKuvt/wu/zE3OS
SCtQz4dHCNoGzLu6t82FG14Gy/Bn3Z5qHN/YuMhKIynCdp5OUyTJKQhzyPkaMQ7w
pdZNisxIuCI0nBDMr3TGRigYUI5j3RBzcvRwFlmJM5QtrveyQAkmGFcnspCNJXDL
KZV0OHklesZs5bFE2c7RPZS4zPmz+x/MWruV0S53R33kYh2+5xK+XKwHj2MHwyY4
hUhe4vkuKAbpZ+l3FJ9LEEBya5IQ9lqbAtbG0FDmX8klsJRvoVZKua0lTG0JOMDn
VBJYk4hiMH3QoipqgA+45EDGcKkOQxFvkuUD8K+UZGFe2eCtbAFk7oCEAa9US6/T
vQFre0gnefKkqg==
=mYgF
-----END PGP SIGNATURE-----
Merge tag 'tegra-for-5.11-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/drivers
soc/tegra: Changes for v5.11-rc1
This contains a couple of warning fixes and a fix for a mostly harmless
bug in the process ID retrieval code.
* tag 'tegra-for-5.11-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
soc/tegra: fuse: Fix index bug in get_process_id
soc: tegra: fuse: speedo-tegra210: Remove a group of set but unused variables
soc: tegra: fuse: speedo-tegra124: Remove some set but unused variables
Link: https://lore.kernel.org/r/20201127144329.124891-2-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Stash is a mechanism that uses the core information carried by the ARM AXI
bus to access the L3 cache. It can be used to improve the performance by
increasing the hit ratio of L3 cache. QPs need to enable stash by default.
Link: https://lore.kernel.org/r/1606374251-21512-3-git-send-email-liweihang@huawei.com
Signed-off-by: Lang Cheng <chenglang@huawei.com>
Signed-off-by: Weihang Li <liweihang@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Stash is a mechanism that uses the core information carried by the ARM AXI
bus to access the L3 cache. It can be used to improve the performance by
increasing the hit ratio of L3 cache. CQs need to enable stash by default.
Link: https://lore.kernel.org/r/1606374251-21512-2-git-send-email-liweihang@huawei.com
Signed-off-by: Lang Cheng <chenglang@huawei.com>
Signed-off-by: Weihang Li <liweihang@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
The Tegra234 VDK support that was introduced in v5.10-rc1 is now enabled
by default.
-----BEGIN PGP SIGNATURE-----
iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAl/BDsYTHHRyZWRpbmdA
bnZpZGlhLmNvbQAKCRDdI6zXfz6zoZJXD/sFHypGN+vCxFGx8PCNcrfAcdZVDuIF
Ad0KpSvhSAnQHnLh6QGZ0Tddj0bm7OGG5PdoBjntHcKWemmZAUrIS/c2JNvjpqJx
4YvfelcY1XKgIRAPIS3cx9s2lCw3ce2SGmHsgmn0oS1WpAhxTtxKS7fpdXt+1/O+
qTwP/ZqPzPnnMlU20n47ZbBRzdHMGRnRUTPQvw+SxpoqrI98OCNUU3Oq/1k/H5RI
caD1J9ePOQli+DiO/g9F8p0acr2nlJqSq3qgaRM5yrBwTqM+s1syfJOQGxloEvy8
IoA/tBP2iQanpZvTNtbPp2ILRVrHkytp2MsjlNF3IPGlLDm4lodNdRxjfBDMurUn
pJc1i5WEOuXcdL2zCC43+qhmfKK9Izm+czOHe0UWCG4qGjHRjV68v4ukmy0kiwEp
v8CgTNr7IL8nyhB377G5moofcGi9N4r7OsOmKHsBptO9R2kZds7kocSsfazmfcRA
w7y4Hb0sm0FVxtPDpkzZB3ZyD4tyajFzF8M28hqwJ58SjrgJlvClY6suziv4DV23
LYzhDlRRGqZUlv6GfVjPr2aBJMh3UA1K9QezZBovgcRg/eHrE5TN7Ir4BXER8SEn
dkyRhGFZ5qbRpGGIyWujZQhVFKnNpG0crw/jEF43vn8HnWQblltLZX3lcorcXYkE
hD/tbVfdoRbxrw==
=KgUW
-----END PGP SIGNATURE-----
Merge tag 'tegra-for-5.11-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/defconfig
arm64: tegra: Default configuration changes for v5.11-rc1
The Tegra234 VDK support that was introduced in v5.10-rc1 is now enabled
by default.
* tag 'tegra-for-5.11-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
arm64: defconfig: Enable Tegra234 support
Link: https://lore.kernel.org/r/20201127144329.124891-6-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
- Enable thermal support for omap3 now that the driver changes have
been merged
- Enable magnetometer and accelerometer support as loadable modules
for Motorola mapphone devices
- Enable eQEP counter for beaglebone blue as loadable modules
-----BEGIN PGP SIGNATURE-----
iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAl/ArIMRHHRvbnlAYXRv
bWlkZS5jb20ACgkQG9Q+yVyrpXNBNg/+OFd+gwIuXBBRSN5x8ST/MhTWWsD4ELmA
ZfkCtR/XEF4IXoh9ZIvlKSHMsNY9eXa4O8OUL+I+hR1UKsgZgkNxxLtJCm1ZGyzH
3x3lHgLzQ2H6E1U5wCdGP++wUsSa5uIOn6LG6PQU/IR84MAjf2UYjfxISinUZXTX
Wju1bLnFs2E5CEis/0B8I/fhn+ifKS1wUnXbFwx7DGzesSmuyx4/I6Tb/7koLI8A
mdNVHTx43jejIppBg4/oOTNpuoLD5kBWvtPhvD7m2JUVJxwkS/at1vIAxWOUCHec
kuj9Eg5JjZEoqxPhw0yXHBjFS5bvxgxUBlLduSHEZHLLXvufwf9lTBbi03XWM7ka
okju9gkmBa6Qhv4QFSgmKqfLNElsfHUSd+K9q/SU50KvX0P4NFlL6TRTbFxNiIjH
cbPlonNUvNWAUOuoIL7+sj8xXYnMddzf/rupf05QPyMIP+y3Mo13N8w/U30oKGNf
EQgT2VUMKXusEfIIO5To6kI6H+IoDbWI0Y8kwvxqVMg28PQsf83WarOsx+NL4ntq
bUPpDFVAwTcjMmQR8lEIQwV+DBRxTb36GQKm6wnArEaH5BKTA4AyAEXb7xODBZob
5E7FYpPfpsML1uduHNdcsYVH98xJeOPyTYNC03KSUiRUFLPejCGtmeTxlywxfoX9
iJ/Mveb/0cc=
=7JiH
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v5.11/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/defconfig
Defconfig changes for omaps for v5.11 merge window
- Enable thermal support for omap3 now that the driver changes have
been merged
- Enable magnetometer and accelerometer support as loadable modules
for Motorola mapphone devices
- Enable eQEP counter for beaglebone blue as loadable modules
* tag 'omap-for-v5.11/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: omap2plus_defconfig: Enable TI eQEP counter driver
ARM: omap2plus_defconfig: add CONFIG_AK8975=m and CONFIG_KXCJK1013=m
ARM: omap2plus_defconfig: Enable OMAP3_THERMAL
Link: https://lore.kernel.org/r/pull-1606462656-588116@atomide.com-3
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Several non-urgent fixes for various issues found by automated tests.
So far we have not been hitting any of these so these can wait for the
merge window no problem.
-----BEGIN PGP SIGNATURE-----
iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAl/Aqg4RHHRvbnlAYXRv
bWlkZS5jb20ACgkQG9Q+yVyrpXNEuw//RX3IH2d4SYfQ+4ymTYXv1XoKrh7xd7/t
XCXfWAiPF+1EqplDOrSm/qy3QcLUlB+6YfiB8qCY/hmSIAOOSdrzHcx7kelYjDD7
oG8tScqHL6KT8n7xWDgAFpuCizsOVvmkRItpg83e1n7UNf/zt2S0BGjKRXPF2Z7z
DTfwHZ5MxkEnutmpLeb+6OW1h1NV4knBVMLhjERNjbKONiXl3DYLmjf2/nPINSAY
1yiKrNdCIm/64Q06M+SeVYGd7FSa90VCKyiYZ5AFYHJtfJP6/EBDx+IGnN2b3tvr
FyXH0LmkT8Wa+0HwkZuwS0Xf08aLqCK/nMd0IGkPdjq2OH7qZf9yJPiiBHCXoNb6
gn3LJkRnq1po4zD8+bgOoVUnFnI44AVjRTWWGHLc+oskSO/giDFnwMAdehnX2G/o
mP3k8AdKT12Ts6eN5daBQWZTuZG3MI+xJCWjOOgwm52/6s4nsQDd9vU6QDMpmc7I
yNidVtNyNkjWy8McBLFZbunStW+3Ictfc6bKOcMtiCvp+yalqxS9MYnb774AJvyG
mqyZ+foKuaYO3f/PpkzT1Mqwed5bCkxS4vcNgLC2Kq9+mEtB50qBZe3suG+tOxcO
RYak1NzYExx4mk3r7ZDLKKY8ZVZU05uo64Q6pQ4iqfmOKdd8DMlw90wDdNpRQmkp
RNRXyuzgFDg=
=L1Tn
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v5.11/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/soc
SoC changes for omaps for v5.11 merge window:
Several non-urgent fixes for various issues found by automated tests.
So far we have not been hitting any of these so these can wait for the
merge window no problem.
* tag 'omap-for-v5.11/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: OMAP1: clock: Use IS_ERR_OR_NULL() to clean code
ARM: OMAP2+: Remove redundant null check before clk_prepare_enable/clk_disable_unprepare
ARM: OMAP2+: Remove redundant assignment to variable ret
ARM: OMAP2+: Fix kfree NULL pointer in omap2xxx_clkt_vps_init
ARM: OMAP2+: Fix memleak in omap2xxx_clkt_vps_init
Link: https://lore.kernel.org/r/pull-1606462656-588116@atomide.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Allows OP-TEE to work with ARMv7 based single CPU systems by allowing
writeback cache policy for shared memory.
-----BEGIN PGP SIGNATURE-----
iQJOBAABCgA4FiEEFV+gSSXZJY9ZyuB5LinzTIcAHJcFAl++RYIaHGplbnMud2lr
bGFuZGVyQGxpbmFyby5vcmcACgkQLinzTIcAHJf4AQ/8DtO6CixvM9VKOwfwb+I+
ww5oLpWCfqxI7/Mnr6pGN3OmLKC972lD+KbbsrWMpT13KwY5Uk7s7NQfHAz4Qy2e
c9eO9ntCfrcUCezkL/+CVFPoBFAFRZC+0wKxK2/q0e7W7um8LSEXAkFhQbg21VqR
e5fIn9MZE4cazOsV1Cs4Gz7Qtebt8qjmAQLNxm7Pck3zv/XupPDikRQobsdEL+qn
FA6wGVP8S7rFR+zQnaZHTAk90BxRPmFT/1Fod6z7CSVPwHUxUTUkUVNey2kXALK+
LVTvcdjiHtdaSqjw/Oax3Y2RDaJ3RSOLSxzTKugmHYlOg4f25dJn8MNrERBekHSn
6hJOGSlaMs4Mmbe1jiyreRsB2tLwUhWlS8EqSj2SmefBIKJJic9Vek3mwp1aPGX3
gdSmxGrdOhLLy80Szdpjp9zir+i7dKdVzm6oAO/0JHT9VpIUIx6ciGgB6wSFYxDJ
0EA0j5Ab18K7PGunL1m1boYh0ck/+438GYycSF2CkLkSy8CHp7N8XdTfBW4jljAa
4ugH7kZmry6XEBbLltMDdNGXAM9wE38ma3Viz9XZ80TfnWmzII3lhwX3/rAnDNbV
XYc+baLNBpEJvV+R944hbcTEfbcWkRXM3zvvVa1ZFv5ES7Sx2eupNSedE9tXSAFl
JrkTej9xXtF1rEYqMcwRTRM=
=umMU
-----END PGP SIGNATURE-----
Merge tag 'optee-valid-memory-type-for-v5.11' of git://git.linaro.org/people/jens.wiklander/linux-tee into arm/fixes
Add writeback to valid OP-TEE shared memory types
Allows OP-TEE to work with ARMv7 based single CPU systems by allowing
writeback cache policy for shared memory.
* tag 'optee-valid-memory-type-for-v5.11' of git://git.linaro.org/people/jens.wiklander/linux-tee:
optee: add writeback to valid memory type
Link: https://lore.kernel.org/r/20201125120134.GA1642471@jade
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
In order to improve performance by balancing the load between different
banks of cache, the QPC cache is desigend to choose one of 8 banks
according to lower 3 bits of QPN. The hns driver needs to count the number
of QP on each bank and then assigns the QP being created to the bank with
the minimum load first.
Link: https://lore.kernel.org/r/1606220649-1465-1-git-send-email-liweihang@huawei.com
Signed-off-by: Yangyang Li <liyangyang20@huawei.com>
Signed-off-by: Weihang Li <liweihang@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Currently, if mce_end() fails, no_way_out - the variable denoting
whether the machine can recover from this MCE - is determined by whether
the worst severity that was found across the MCA banks associated with
the current CPU, is of panic severity.
However, at this point no_way_out could have been already set by
mca_start() after looking at all severities of all CPUs that entered the
MCE handler. If mce_end() fails, check first if no_way_out is already
set and, if so, stick to it, otherwise use the local worst value.
[ bp: Massage. ]
Signed-off-by: Gabriele Paoloni <gabriele.paoloni@intel.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Cc: <stable@vger.kernel.org>
Link: https://lkml.kernel.org/r/20201127161819.3106432-2-gabriele.paoloni@intel.com
Commit 95fb5b0258 ("kvm: x86/mmu: Support MMIO in the TDP MMU") caused
the following WARNING on an Intel Ice Lake CPU:
get_mmio_spte: detect reserved bits on spte, addr 0xb80a0, dump hierarchy:
------ spte 0xb80a0 level 5.
------ spte 0xfcd210107 level 4.
------ spte 0x1004c40107 level 3.
------ spte 0x1004c41107 level 2.
------ spte 0x1db00000000b83b6 level 1.
WARNING: CPU: 109 PID: 10254 at arch/x86/kvm/mmu/mmu.c:3569 kvm_mmu_page_fault.cold.150+0x54/0x22f [kvm]
...
Call Trace:
? kvm_io_bus_get_first_dev+0x55/0x110 [kvm]
vcpu_enter_guest+0xaa1/0x16a0 [kvm]
? vmx_get_cs_db_l_bits+0x17/0x30 [kvm_intel]
? skip_emulated_instruction+0xaa/0x150 [kvm_intel]
kvm_arch_vcpu_ioctl_run+0xca/0x520 [kvm]
The guest triggering this crashes. Note, this happens with the traditional
MMU and EPT enabled, not with the newly introduced TDP MMU. Turns out,
there was a subtle change in the above mentioned commit. Previously,
walk_shadow_page_get_mmio_spte() was setting 'root' to 'iterator.level'
which is returned by shadow_walk_init() and this equals to
'vcpu->arch.mmu->shadow_root_level'. Now, get_mmio_spte() sets it to
'int root = vcpu->arch.mmu->root_level'.
The difference between 'root_level' and 'shadow_root_level' on CPUs
supporting 5-level page tables is that in some case we don't want to
use 5-level, in particular when 'cpuid_maxphyaddr(vcpu) <= 48'
kvm_mmu_get_tdp_level() returns '4'. In case upper layer is not used,
the corresponding SPTE will fail '__is_rsvd_bits_set()' check.
Revert to using 'shadow_root_level'.
Fixes: 95fb5b0258 ("kvm: x86/mmu: Support MMIO in the TDP MMU")
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20201126110206.2118959-1-vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
MDI_TP_P0 (gpio51) is used by pwm1 and uart2 (uart1 on gpio-header)
MDI_RP_P4 (gpio67) is used by pwm4 and spi1
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
Link: https://lore.kernel.org/r/20201016204019.2606-3-linux@fw-web.de
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
mt7622 only supports 6 pwm-channels so drop pwm7
third pwm (pwm2) is inverted and connected to fan-socket
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
Link: https://lore.kernel.org/r/20201016204019.2606-2-linux@fw-web.de
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
The latest changes in restrack name handling allowed to simplify the QP
creation code to support all types of QPs.
For example XRC QP are presented with rdmatool.
$ ibv_xsrq_pingpong &
$ rdma res show qp
link ibp0s9/1 lqpn 0 type SMI state RTS sq-psn 0 comm [ib_core]
link ibp0s9/1 lqpn 1 type GSI state RTS sq-psn 0 comm [ib_core]
link ibp0s9/1 lqpn 7 type UD state RTS sq-psn 0 comm [mlx5_ib]
link ibp0s9/1 lqpn 42 type XRC_TGT state INIT sq-psn 0 path-mig-state MIGRATED comm [ib_uverbs]
link ibp0s9/1 lqpn 43 type XRC_INI state INIT sq-psn 0 path-mig-state MIGRATED pdn 197 pid 419 comm ibv_xsrq_pingpong
Link: https://lore.kernel.org/r/20201117070148.1974114-4-leon@kernel.org
Reviewed-by: Mark Zhang <markz@nvidia.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Driver QP types are special case with no IBTA restrictions. For example,
EFA implemented creation of this QP type as regular one, while mlx5
separated create to two step: create and modify. That separation causes to
the situation where DC QP (mlx5) is always added to the same xarray index
zero.
This change allows to drivers like mlx5 simply disable restrack DB
tracking, but it doesn't disable kref on the memory.
Fixes: 52e0a118a2 ("RDMA/restrack: Track driver QP types in resource tracker")
Link: https://lore.kernel.org/r/20201117070148.1974114-3-leon@kernel.org
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Device memory (DM) are registered as MR during initialization flow, these
MRs were not tracked by resource tracker and had res->valid set as a
false. Update the code to manage them too.
Before this change:
$ ibv_rc_pingpong -j &
$ rdma res show mr <-- shows nothing
After this change:
$ ibv_rc_pingpong -j &
$ rdma res show mr
dev ibp0s9 mrn 0 mrlen 4096 pdn 3 pid 734 comm ibv_rc_pingpong
Fixes: be934cca9e ("IB/uverbs: Add device memory registration ioctl support")
Link: https://lore.kernel.org/r/20201117070148.1974114-2-leon@kernel.org
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
This device uses the SIPODEV SP1064 touchpad, which does not
supply descriptors, so it has to be added to the override list.
Cc: stable@vger.kernel.org
Signed-off-by: Julian Sax <jsbc@gmx.de>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Make the hid-ite driver handle the Acer S1002 keyboard-dock, this
leads to 2 improvements:
1. The non working wifi-toggle hotkey now works.
2. Toggling the touchpad on of with the hotkey will no show OSD
notifications in e.g. GNOME3. The actual toggling is handled inside
the keyboard, this adds support for notifying evdev listeners about this.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
When offset is not 4 bytes aligned, directly shift righty by 2 bits
will cause reading out wrong data. Since imx ocotp only supports
4 bytes reading once, we need handle offset is not 4 bytes aligned
and enlarge the bytes to 4 bytes aligned. After reading finished,
copy the needed data from buffer to caller and free buffer.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102837.19366-6-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Some fuse ranges are protected by the XPU such that the AP cannot
access them. Attempting to do so causes an SError. Use the newly
introduced per-soc compatible string, and the newly introduced
nvmem keepout support to attach the set of regions
we should not access.
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Evan Green <evgreen@chromium.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102837.19366-5-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Add SoC-specific compatible strings so that data can be attached
to it in the driver.
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Evan Green <evgreen@chromium.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102837.19366-4-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Introduce support into the nvmem core for arrays of register ranges
that should not result in actual device access. For these regions a
constant byte (repeated) is returned instead on read, and writes are
quietly ignored and returned as successful.
This is useful for instance if certain efuse regions are protected
from access by Linux because they contain secret info to another part
of the system (like an integrated modem).
Signed-off-by: Evan Green <evgreen@chromium.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102837.19366-3-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Attempting to send a power request during PM operations, when the QMI
handle isn't initialized results in a NULL pointer dereference. So check
if the QMI handle has been initialized before attempting to post the
power requests.
Fixes: 917809e228 ("slimbus: ngd: Add qcom SLIMBus NGD driver")
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102451.17114-7-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
qcom_slim_qmi_msg_handlers[] and qcom_slim_ngd_qmi_svc_event_ops are
only used as input arguments to qmi_handle_init() which accepts const
pointers to both qmi_ops and qmi_msg_handler. Make them const to allow
the compiler to put them in read-only memory.
Signed-off-by: Rikard Falkeborn <rikard.falkeborn@gmail.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102451.17114-6-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
In preparation to enable -Wimplicit-fallthrough for Clang, fix a warning
by explicitly adding a break statement instead of letting the code fall
through to the next case.
Link: https://github.com/KSPP/linux/issues/115
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102451.17114-5-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Add support to protection domain restart. Protection domain restart
would also restart the service just like SSR.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102451.17114-4-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This patch adds SSR(SubSystem Restart) support which includes, synchronisation
between SSR and QMI server notifications. Also with this patch now NGD is taken
down by SSR instead of QMI server down notification.
NGD up path now relies on both SSR and QMI notifications and particularly
sequence of SSR up followed by QMI server up notification.
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102451.17114-3-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Fix the name of the enum on its kernel-doc markup:
enum slim_ch_aux_fmt -> enum slim_ch_aux_bit_fmt
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201127102451.17114-2-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
the microphone is attached to external codec(adau7002)
instead of rt5682.We need to always use 32 bit format on sc7180
to meet the clock requirement of adau7002:
The ADAU7002 requires a BCLK rate
that is a minimum of 64× the LRCLK sample rate
Signed-off-by: xuyuqing <xuyuqing@huaqin.corp-partner.google.com>
Link: https://lore.kernel.org/r/20201118005858.123013-2-xuyuqing@huaqin.corp-partner.google.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit adds support for the Guitar Hero Live PS3 and Wii U dongles.
These dongles require a "magic" USB control message [1] to be sent
approximately every 10 seconds otherwise the dongle will not report
events where the strumbar is hit while a fret is being held.
Also, inspired by a patch sent on linux-input by Sanjay Govind [2], the
accelerometer is mapped to ABS_RY for tilt.
Interestingly, the Wii U and PS3 dongles share the same VID and PID.
[1] https://github.com/ghlre/GHLtarUtility/
[2] https://marc.info/?l=linux-input&m=157242835928542&w=2
Signed-off-by: Pascal Giard <pascal.giard@etsmtl.ca>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
I mistakenly added the select attributes to the SPI_DW_BT1_DIRMAP config
instead of having them defined in SPI_DW_BT1. If the kernel doesn't have
the MULTIPLEXER and MUX_MMIO configs manually enabled and the
SPI_DW_BT1_DIRMAP config hasn't been selected, Baikal-T1 SPI device will
always fail to be probed by the driver. Fix that and the error reported by
the test robot:
>> ld.lld: error: undefined symbol: devm_mux_control_get
>>> referenced by spi-dw-bt1.c
>>> spi/spi-dw-bt1.o:(dw_spi_bt1_sys_init) in archive drivers/built-in.a
by moving the MULTIPLEXER/MUX_MMIO configs selection to the SPI_DW_BT1
config.
Link: https://lore.kernel.org/lkml/202011161745.uYRlekse-lkp@intel.com/
Link: https://lore.kernel.org/linux-spi/20201116040721.8001-1-rdunlap@infradead.org/
Fixes: abf0090753 ("spi: dw: Add Baikal-T1 SPI Controller glue driver")
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Ramil Zaripov <Ramil.Zaripov@baikalelectronics.ru>
Link: https://lore.kernel.org/r/20201127144612.4204-1-Sergey.Semin@baikalelectronics.ru
Signed-off-by: Mark Brown <broonie@kernel.org>
Currently the hidraw module can only read and write feature HID reports on
demand, via dedicated ioctls. Input reports are read from the device through
the read() interface, while output reports are written through the write
interface().
This is insufficient; it is desirable in many situations to be able to read and
write input and output reports through the control interface to cover
additional scenarios:
- Reading an input report by its report ID, to get initial state
- Writing an input report, to set initial input state in the device
- Reading an output report by its report ID, to obtain current state
- Writing an output report by its report ID, out of band
This patch adds these missing ioctl requests to read and write the remaining
HID report types. Note that not all HID backends will neccesarily support this
(e.g. while the USB link layer supports setting Input reports, others may not).
Also included are documentation and example updates. The current hidraw
documentation states that feature reports read from the device does *not*
include the report ID, however this is not the case and the returned report
will have its report ID prepended by conforming HID devices, as the report data
sent from the device over the control endpoint must be indentical in format to
those sent over the regular transport.
Signed-off-by: Dean Camera <dean@fourwalledcubicle.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Currently the maximum HID report size which can be buffered by the kernel is
8KB. This is sufficient for the vast majority of HID devices on the market, as
most HID reports are fairly small.
However, some unusual devices such as the Elgate Stream Deck exist which use a
report size slightly over 8KB for the image data that is sent to the device.
Reports these large cannot be buffered by the regular HID subsystem currently,
thus the only way to use such device is to bypass the HID subsystem entirely.
This increases the maximum HID report size to 16KB, which should cover all
sanely designed HID devices.
Signed-off-by: Dean Camera <dean@fourwalledcubicle.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
kvm_cpu_accept_dm_intr and kvm_vcpu_ready_for_interrupt_injection are
a hodge-podge of conditions, hacked together to get something that
more or less works. But what is actually needed is much simpler;
in both cases the fundamental question is, do we have a place to stash
an interrupt if userspace does KVM_INTERRUPT?
In userspace irqchip mode, that is !vcpu->arch.interrupt.injected.
Currently kvm_event_needs_reinjection(vcpu) covers it, but it is
unnecessarily restrictive.
In split irqchip mode it's a bit more complicated, we need to check
kvm_apic_accept_pic_intr(vcpu) (the IRQ window exit is basically an INTACK
cycle and thus requires ExtINTs not to be masked) as well as
!pending_userspace_extint(vcpu). However, there is no need to
check kvm_event_needs_reinjection(vcpu), since split irqchip keeps
pending ExtINT state separate from event injection state, and checking
kvm_cpu_has_interrupt(vcpu) is wrong too since ExtINT has higher
priority than APIC interrupts. In fact the latter fixes a bug:
when userspace requests an IRQ window vmexit, an interrupt in the
local APIC can cause kvm_cpu_has_interrupt() to be true and thus
kvm_vcpu_ready_for_interrupt_injection() to return false. When this
happens, vcpu_run does not exit to userspace but the interrupt window
vmexits keep occurring. The VM loops without any hope of making progress.
Once we try to fix these with something like
return kvm_arch_interrupt_allowed(vcpu) &&
- !kvm_cpu_has_interrupt(vcpu) &&
- !kvm_event_needs_reinjection(vcpu) &&
- kvm_cpu_accept_dm_intr(vcpu);
+ (!lapic_in_kernel(vcpu)
+ ? !vcpu->arch.interrupt.injected
+ : (kvm_apic_accept_pic_intr(vcpu)
+ && !pending_userspace_extint(v)));
we realize two things. First, thanks to the previous patch the complex
conditional can reuse !kvm_cpu_has_extint(vcpu). Second, the interrupt
window request in vcpu_enter_guest()
bool req_int_win =
dm_request_for_irq_injection(vcpu) &&
kvm_cpu_accept_dm_intr(vcpu);
should be kept in sync with kvm_vcpu_ready_for_interrupt_injection():
it is unnecessary to ask the processor for an interrupt window
if we would not be able to return to userspace. Therefore,
kvm_cpu_accept_dm_intr(vcpu) is basically !kvm_cpu_has_extint(vcpu)
ANDed with the existing check for masked ExtINT. It all makes sense:
- we can accept an interrupt from userspace if there is a place
to stash it (and, for irqchip split, ExtINTs are not masked).
Interrupts from userspace _can_ be accepted even if right now
EFLAGS.IF=0.
- in order to tell userspace we will inject its interrupt ("IRQ
window open" i.e. kvm_vcpu_ready_for_interrupt_injection), both
KVM and the vCPU need to be ready to accept the interrupt.
... and this is what the patch implements.
Reported-by: David Woodhouse <dwmw@amazon.co.uk>
Analyzed-by: David Woodhouse <dwmw@amazon.co.uk>
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Nikos Tsironis <ntsironis@arrikto.com>
Reviewed-by: David Woodhouse <dwmw@amazon.co.uk>
Tested-by: David Woodhouse <dwmw@amazon.co.uk>
Centralize handling of interrupts from the userspace APIC
in kvm_cpu_has_extint and kvm_cpu_get_extint, since
userspace APIC interrupts are handled more or less the
same as ExtINTs are with split irqchip. This removes
duplicated code from kvm_cpu_has_injectable_intr and
kvm_cpu_has_interrupt, and makes the code more similar
between kvm_cpu_has_{extint,interrupt} on one side
and kvm_cpu_get_{extint,interrupt} on the other.
Cc: stable@vger.kernel.org
Reviewed-by: Filippo Sironi <sironi@amazon.de>
Reviewed-by: David Woodhouse <dwmw@amazon.co.uk>
Tested-by: David Woodhouse <dwmw@amazon.co.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
- Fix alignment of the new HYP sections
- Fix GICR_TYPER access from userspace
-----BEGIN PGP SIGNATURE-----
iQJDBAABCgAtFiEEn9UcU+C1Yxj9lZw9I9DQutE9ekMFAl/A3ZYPHG1hekBrZXJu
ZWwub3JnAAoJECPQ0LrRPXpDXZAQALpTVjUr0BKjP6t7cZFcBim0x3eG8CQGK65K
mR1ZGevXawtU62qmPlWYpFIwzB76QGc5w6W46stluXJ5kDA2verzad2RXIEOr93Q
69uHuhBqClC6stPZRZLw1FaJ0SsxmydF2I14uFWGYkyqzpRXxhfJetMolgjFyeDE
bd0qtnvA9Phu2ZQHvdxvmSzIPSSw6/irdEyX/Z1/S1UHxFWEJdX9B9x6KaoATYDF
hlnRaXXfhEhTRVGFpu+O8DEH4MAxbZfu0bqubZnv7ilOes0SqIV4rVXm1BoDVWtP
1W/zIvOPZDl/zoXylIcqPQJUQgPVfSXdc1MYWBOJxLGKlpTT2cT4iy0YswgNWa8i
glnV94LoR6bzXYn1ymxLPeg0CwAkstvOIctGmDhm4+kvX/bGPTtyRShKBygwHmEB
zkBzKKa8LhbVjhBI7kpDlZnLQXdxy1+pR2QFb6mCE/Fq+2YwGdU8KfSTpxNSwjtQ
5loSzR8is3aZ2ETEcVnI3TxN/oAE30/GUIk762/3sFbqo6O5i/KrRo0YgzNRCiHU
oZyjGNeJCcprKD4ITfa3UdXjvuee0nAwkTPldriwSYHSNWM8ObBVG+Ek5m35ZFhN
toHepjYlj2RJLIF+mpqASxBQV5fhAVR2IlK+di4iczMJJTowSIUKAyppoJXg0zAw
CxOORtWZ
=oova
-----END PGP SIGNATURE-----
Merge tag 'kvmarm-fixes-5.10-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master
KVM/arm64 fixes for v5.10, take #4
- Fix alignment of the new HYP sections
- Fix GICR_TYPER access from userspace
J7200 main_i2c1 is connected to the i2c bus on the CPB marked as main_i2c3
The i2c1 devices on the CPB are _not_ connected to the SoC, they are not
usable with the J7200 SOM.
Correct the expander name from exp4 to exp3 and at the same time add the
line names as well.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com>
Link: https://lore.kernel.org/r/20201120073533.24486-3-peter.ujfalusi@ti.com
The J7200 SOM have additional io expander which is used to control several
SOM level muxes to make sure that the correct signals are routed to the
correct pin on the SOM <-> CPB connectors.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com>
Link: https://lore.kernel.org/r/20201120073533.24486-2-peter.ujfalusi@ti.com
A small set of driver specific fixes, plus a new platform quirk from
Hans.
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAl/A98YACgkQJNaLcl1U
h9ClFggAgPr2/KIB3kRZCaKXaNgQ7oqgPdf0NNMYmwAnLaRK+t1EL0GdiyP5AxDA
sU9RWjoXyCmoe+dqmlS7Iavcj2Ne+y7w2isonrreI26LFrAkO8jL2mo656NArMjx
cxIhjF7sNWVbel2MYhrRSta8LkqrI8FiSV8elGW5DttGyceYHuoNXjo4AN3emnk3
V5kx9uT/kC1ef7SseLeN868VAMM5n42bZV+Eide/DJwYivlX7Hcwaqmax7FPjuYe
J/n3VrNh+AjABvpzPXBD+6e7X8aiYtQWAAtBz2FZLoL+4bREiG4qWP2kW4nwnisS
Bl0W0rE2LvctIKqkAey4/JUwwWCkXg==
=39QE
-----END PGP SIGNATURE-----
Merge tag 'asoc-fix-v5.10-rc5' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Fixes for v5.10
A small set of driver specific fixes, plus a new platform quirk from
Hans.