Commit Graph

20079 Commits

Author SHA1 Message Date
Michael Walle b3b44f5024
arm64: defconfig: enable Layerscape SFP driver
Enable the driver for the Layerscape SFP (Security Fuse Processor) found
on most Layerscape SoCs. For example, a per-device unique serial number
is stored in the fuses.

Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-08 16:43:57 +01:00
Arnd Bergmann 7b4fc7c6f9 This pull request contains Broadcom ARM64-based SoCs Device Tree updates
for 5.18, please pull the following:
 
 - Krzysztof aligns the PL330 DMA controller node name to the schema
 
 - Rafal corrects the TWD (Timer/Watchdog) block, adds the watchdog node,
   I2C controller node and the pinctrl node for the 4908 SoC
 
 - Kuldeep fixes the Northstar 2 SPI properties as well as the PL022 SPI
   controller clock names
 
 - Frank fixes the SATA node names to conform to the AHCI controller
   schema
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmImX64ACgkQh9CWnEQH
 BwRKhQ//RUIUtJqWOZNMkvspu2VaIOa4DeDFXHQ2F8X7hoRsRw93mksxk90xBuIG
 Oz4UdzF5D0cKwXdlNWeJ3V8er6qSkl5V37Z0iBUft6n1vYiqPzQHAG7lvI3r0ZNX
 Ial9H1TLuT36CeubcUlb88ztPvMZYDPoUDFQv8GKoavGldwMithoHe6SZ3SFGFVh
 /lzRyqJImJR3wITZJboLdyqkUvksj1lofR0kRM25bNZ1QeDxzEdA48svZYnexnGh
 PNPGvuhNlT63CBSdteXs5lU2pmt6OhaxUH6Vl9dWE5LznqCrEPAlSy6jiNsymgHp
 GqijueWGQyVQYqCE2T0VNowCTLY1a3bl7rFQUigZLCurbqYr932GwZP+r/1/xfqI
 pP96QjA/Fz4fjuH9yZ30dTCB3xe69GurM80V3udNi1nr8ExDjOY/3rmrEmKVLKDR
 Y94wgzjgzy1Wopvnzu9CtlabixQ7sv0NLJB6YjSSqc+ziBZsnJOl0+b7hWaBTuno
 UxBY3pIsekBg4MP6evPHs8muUHO9STXijDwnny6tNj5o/usGrfWIBtilNYnAYg/1
 /3UWnDArcV+/zpRhIwsAwYb19pUBOQCpKFLdZYw4yNss12KLqxvmA3fe6JXAu9HF
 bmCUEjAwuf3mtEN41V8Tjyp3ftuh7rO3VVjDuT72VfYiEh2QtKU=
 =nJaL
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIndl0ACgkQmmx57+YA
 GNk5PhAAxL+CTTI8nidIhzO5kO/KZ4NIb7LO/QnMWknn+HeUdXPl0GDRyIpsXml9
 X5qcIzL4Npj0U8+UAHYarT6ngDcj8EZDWv+H5zRmt5qXSNhpfnlm+1OEgicy8Y1u
 XwgIfLtGbdE9w05i9fPPtSIjoAjMQpJEplOkKKzex3k8GN653dT8bLm/manevoL7
 7Sn27jxfQUcRM10QOJcWmF1fqgdl542J31bE4xl1axXww1Fa6aoZAXeeh+XlO8KB
 oXJhcw4HLW7LKpZUESCwTiXS7fymSgp73U2bRhr41g40BPzt8wJbmS5MMsY7eiLP
 9+kgfswtDrNt5NBDHFye71bU1YXvIAdcWkexlJfio8bsv8HweS+hU61+jpULpbtp
 EzttCHoljyyAIpnjOMe7mrQKsm4hTnTcB0vKBgZqpxAlLZaoKcrkknfZz57nwcHL
 xLtkug5lEp6jIXtAAQAYZ5ZwkQCUo4oaHlN16DypGvAsvSUd3UjQbLJBtfb7joac
 wQ8stJQGhMcSzjyiOAEwSHqJeau9uJ03xWHrKNYPAx8aj5eVtNLMXxNcq69mzMvb
 BbDUt8SMedxxficxteZfC3tkoH6CQ+zOHSEAzm/A+Q0GvJkxOkyDt6IW+BE30bGE
 vDzfJmwBrf2N8FhnkbJsob+vlWZuAz4ezM5q8i4zHx6U2MoSc3I=
 =B+QM
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-5.18/devicetree-arm64' of https://github.com/Broadcom/stblinux into arm/dt

This pull request contains Broadcom ARM64-based SoCs Device Tree updates
for 5.18, please pull the following:

- Krzysztof aligns the PL330 DMA controller node name to the schema

- Rafal corrects the TWD (Timer/Watchdog) block, adds the watchdog node,
  I2C controller node and the pinctrl node for the 4908 SoC

- Kuldeep fixes the Northstar 2 SPI properties as well as the PL022 SPI
  controller clock names

- Frank fixes the SATA node names to conform to the AHCI controller
  schema

* tag 'arm-soc/for-5.18/devicetree-arm64' of https://github.com/Broadcom/stblinux:
  arm64: dts: stingray: Fix spi clock name
  arm64: dts: ns2: Fix spi clock name
  arm64: dts: broadcom: Fix sata nodename
  arm64: dts: ns2: Fix spi-cpol and spi-cpha property
  arm64: dts: broadcom: bcm4908: add I2C block
  arm64: dts: broadcom: bcm4908: add watchdog block
  arm64: dts: broadcom: bcm4908: add pinctrl binding
  arm64: dts: broadcom: bcm4908: use proper TWD binding
  arm64: dts: broadcom: align pl330 node name with dtschema

Link: https://lore.kernel.org/r/20220307194817.3754107-3-f.fainelli@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-08 16:29:33 +01:00
Arnd Bergmann dd5d787f48 This pull request contains Broadcom ARM-based SoCs Device Tree changes
for 5.18, please pull the following:
 
 - Arinc defines the switch ports of the RTL8365MB switch on the Asus
   RT-AC88U
 
 - Richard provides cache information for the BCM2835/36/37 and BCM2711
   SoCs such that tools like "lscpu -C" can report it when supported
 
 - Stefan adds support for the Raspberry Pi Zero 2 W (wireless)
 
 - Matthew defines the MAC address NVMEM cells for the Cisco Meraki
   MX64/MX65 devices, he also fixes the LED for these platforms.
 
 - Rafal adds the MAC addres NVMEM cell for the Luxul XWR-3150
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmImXvIACgkQh9CWnEQH
 BwTVXxAAoyyP5yDDRysvcEoK0bgNnInp2RyVbYPgI/lMCkn5Ngs/9jTPEveVO3hq
 UOljI3uqmi4h+K+bLp7NpqybiueFH/92t26J2V+mqRQ7G1ivKnHXh08B3LBv5OU0
 IeOQgUwe+lQLlb6boH4O7dvju/3cnBpJUGW4KZpAzjxtmyRjekutmd+dIlkJr7zM
 jvNT+MLvpapCECWgXYo0km7TP1SnIB9TG1EWFPvf7YjYfBhroLEeKQS7K1VANtjG
 sVP0FVAuiXRx4cs751EnGoIR2Nla+XrbYrJxZBya81xAZ3rCzwjxbGztdCFDqm5j
 gf4D3Ww4NZHVIONOJOWGy7c6KIU1aiSGPzNaqK8rNGyxRH6cmavh5QEIEb6fSQOH
 9Gyg0aEbxxaH/j75pa4e60pbivise7+TI1yN23aJDTaIKTEYtkSADVZw3PW++il6
 kIOaCGmOaYHMQRCByjTxg6soqbaaSuUZ/A1Frh1Ox/EpfU+6N04+RC+D2OPuSPT/
 yuN0P3gYo8/Le1Zv1RB2+0CmNsgrAiRFy9kbD//6WEOaa7r7t3z4RTfFduGrZF2R
 XtxDatKKqIkNpWmHp0s2g28QXcDow1mnM/x6g6aA2UR8rCj7mg/odULZyxqStGxj
 ehh0M7gZo1P92HVf+HT5A6t/jXk+HEw0xddRh+xdzzrd+JHwTUo=
 =ZPvV
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIndXEACgkQmmx57+YA
 GNm+zA//RCHiiWwfAgJXPquuZcdcioZw2R451MmvgfVA1ST2hTZexL2jkHym6X/b
 UE01YttV0A82JNWy+4zxMVkTefjhbp+rSNSSlMHN+Z3SXIXOZSIEW3eWc+D6UCqw
 /XQx8wthJUDCPdGw+e1sW8GqcagY6uwa2xyrBGlhQu9uv7Waor+Q6rbUOKRCr9oD
 j4o3wFdBFrMRCg6AzGhchDJ7454C87Nc6hC5xpst9za2O+4uU6LE3GOMuWEHQmTz
 hsqkuOPvMNW+6dXicC6nihRUdRS6Km781VFtc5+7xRvPRqpzdAhi83dJz0KmL/Aq
 mucnIn+hfPvL6DMGUzSLh+fGR3e2m7586RA7IeRA2Bd/xyJsEBZr59iXg+qhde3V
 0odwGqRNWPR5XKOhkSTBW5+JJZveCk7QcLvIYdfPMiNMSEBCSt8M46golgWTmbgA
 RB7cOzp5OPUjNmKKN2io4VO6pmnsFUT5ygR652x7LgpX/5t5nanjrOAOQJbObEid
 kgO8lFd2arOBW530x6xAyW/RGNZ7rbrCQVoa1jXD5lP1V3isGl32weNp5+dC1OeF
 IvEeU7chZli0dXpmKuD8tKU4M0XStBmMYQJHu44UArjYeB4gSR/aYztkaUhX01Aj
 jWILMQPMgfvEXb6NYqqxgJhmNpbscwLfhUHDu0gUJ2IhBwRKwTw=
 =8qCg
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-5.18/devicetree' of https://github.com/Broadcom/stblinux into arm/dt

This pull request contains Broadcom ARM-based SoCs Device Tree changes
for 5.18, please pull the following:

- Arinc defines the switch ports of the RTL8365MB switch on the Asus
  RT-AC88U

- Richard provides cache information for the BCM2835/36/37 and BCM2711
  SoCs such that tools like "lscpu -C" can report it when supported

- Stefan adds support for the Raspberry Pi Zero 2 W (wireless)

- Matthew defines the MAC address NVMEM cells for the Cisco Meraki
  MX64/MX65 devices, he also fixes the LED for these platforms.

- Rafal adds the MAC addres NVMEM cell for the Luxul XWR-3150

* tag 'arm-soc/for-5.18/devicetree' of https://github.com/Broadcom/stblinux:
  ARM: dts: BCM5301X: Add Ethernet MAC address to Luxul XWR-3150
  ARM: dts: NSP: MX6X: correct LED function types
  ARM: dts: NSP: MX6X: get mac-address from eeprom
  arm64: dts: broadcom: Add reference to RPi Zero 2 W
  ARM: dts: Add Raspberry Pi Zero 2 W
  dt-bindings: arm: bcm2835: Add Raspberry Pi Zero 2 W
  ARM: dts: bcm2835/6: Add the missing L1/L2 cache information
  ARM: dts: bcm2711: Add the missing L1/L2 cache information
  ARM: dts: bcm2837: Add the missing L1/L2 cache information
  ARM: dts: BCM5301X: define RTL8365MB switch on Asus RT-AC88U

Link: https://lore.kernel.org/r/20220307194817.3754107-2-f.fainelli@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-08 16:25:37 +01:00
Arnd Bergmann e8f022f9ec Minor cleanup of ARM64 DTS for v5.18
The DT schema expects DMA controller nodes to follow certain node naming
 and having dma-cells property.  Adjust the DTS files to pass DT schema
 checks.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmImQd0QHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD15hhD/99coMYC+XVBpdu79/HtEv86ALj15ydibAZ
 /uvhf/DuVooZYw1QBX4wVjJN6nBF9UYHmxy25bnOx6Ufs1l961FjM5vguClgkZwJ
 aCF7vbLRtkGnPWqDtdhRhxwf4XXW0kIMy58HvRxXzpo2i6xWwx+GRluvAWHaqrL+
 Fn5Q35NxJWAKovGI7DXU4xQfC0vvY8MSArcHmz6CbQqwPx9GouFXb6n9olUmcW3d
 wQj7SsuOsvMrhF6mWr4uO39tOR9JO8CdAZjoUkM1EoV4lP4zDMWJ20p4Ocmg+HXG
 s153aMXKWC5QbV2x7cU5NRX0D/a3M5bxUPJ6h633iB2yZ0GArOlKr/te0qPf+cV/
 7LBfLymQmAufd5I5UVrWURcWgx1LgD01MsSifnPs5YR9yykPeKCDeCwJrysK1zHc
 q3aBfWSXsZ0OtFi44a9leJiEkwa67gRAzK0UvKVYJHkd2hRIPlymA2ZTW8NxM6TD
 RCsGjxQz5imvAPR64vKeIpfzWNzAZd2KOaNn0maz0ej3JyFdRaVjgszaGOPfmP9u
 2UqqFeQfv8UGpXdvC8nbc29szqRPYANmXNKZwJZ8ztFnteJx4I+cJcw3SE1u192T
 ulhHGvwh1TZFZrUjGU052bINM1S3QXvsD/kHhDg+sJzfAetcSM9mlIgnEjPF9vg1
 l/vuEeolxw==
 =/7Y4
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIndUEACgkQmmx57+YA
 GNmauxAAptI+unmLKDUClEJHKhSITUh8Eh3qdKJKKN4LbaGce7Abu5Utp6eLILvH
 trhxv3/4AXMGRkrl5JATyks2OYVaOvwhQJs5iQyMnkJ/6W8Y/q4DdCPbSB+tywmo
 neuUCfovsW6Y2Bt6+jMxVYm0LuA7/szC3+9HwX3i3tD35ceWFSWfTatGqCSuSveB
 TxdAU3GfA+KyL/czxjvOdwgB2omSfuOs6dDvm/qT0bwEUBJI/0djXn209cRylcSx
 d/oU3G2Cb3SHtTAQfFVrzHENLPpyiZsVgfc6FutRaGjnXI0cUH7TM8k8KtwztCcE
 QMadmK1JLQUoIruj5Gf3eNjTOaqc3nDk5m+6R/bK3lMLtEhg8Qx5UhTCRI2OE8F8
 wURjGsww/eK26ucUwD8i+X4KzVJlrUrYGslRO3z984vCfIRtH49d9RcsiAwsd8+o
 6O/KH//otebn7AAfUHwmsODTuq97j/5Y52gJAMOoz03CwNC6wS5o4g2eK9vpPZSO
 fLhKMMPyEeakg/Lal71KJ/ZYD0HuRoWoCzqZr0dWQIWd2hY/SuOKGhgxAKo+S2zt
 ZPTRsaLoS9cJydpd3+p5EWMsQJt6CvPaM1lz5PgxYMTFHsx+SUNOxERsqHpH6YTb
 jYD2O0jpxbLKvAqrrkkr5mqQTnu5RYKKnyy/3dP1vyuYtGvbctU=
 =7PmD
 -----END PGP SIGNATURE-----

Merge tag 'dt64-cleanup-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt

Minor cleanup of ARM64 DTS for v5.18

The DT schema expects DMA controller nodes to follow certain node naming
and having dma-cells property.  Adjust the DTS files to pass DT schema
checks.

* tag 'dt64-cleanup-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: dts: lg: align pl330 node name with dtschema
  arm64: dts: lg: add dma-cells to pl330 node
  arm64: dts: juno: align pl330 node name with dtschema

Link: https://lore.kernel.org/r/20220307173614.157884-1-krzysztof.kozlowski@canonical.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-08 16:24:49 +01:00
Arnd Bergmann 756f4ae145 arm64: dts: ZynqMP DT changes for v5.18
- Dropping #stream-id-cells
 - Add missing dma-cells and change dma node names
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQbPNTMvXmYlBPRwx7KSWXLKUoMIQUCYiDcywAKCRDKSWXLKUoM
 IcGaAJwKIckkfXL3q1BwYtd5TWz+Cxb/OQCZAdumbjGsl20YiLl70W5R82pS0Is=
 =gb7o
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIncPUACgkQmmx57+YA
 GNmNfw//USkXcgjQFbKRPPJj7BaSNSBOZQ7439ReGN+39FpRcdlCLH+cdG+0qLLg
 ntacDpglzx6K2hg5KvPLHRQgMsxXV3mooxBj8OHMUYt98zjiMtjNtlrIZmQEvtqM
 OG7s3aXB9xldSYa3kCMV7jKYy2bwhFeOe9qcTVFF09vUN+Hq5vB+n+H0FP13bnIE
 I/galZvks0AcimyGjUQrvz8ACGTF3vTrV3Hup6wNI1tYvGBPRYnPFCddXHeIqO5K
 zjf/jxGZ/iIP43e8mkhiAvq4Nq3pJm1E2PrZv5p333wW1e9Tk1XeXeOc+1asGgAU
 Tl3+EriL44OAXuqml2cWtBEcd+HBWfNwEod7qmsWw/MvG8KIWNy/SI9yROTwQwht
 BMewg5d9Bn3dR3vaVoUcCEWHi4r+b+hkNt/8R3zwLI5BdofbRVjhXwWHYKeuPIL0
 yeFwr6YcS9QZs3Qh9OK4ARczD7cUqTTGQWovQPcEzfgVwbjuAoz3PNUg+y6zmSBi
 bCR58cgMq5OOpWv9MquvNY+lNT3asXKupSRze53p8i+AviDTMo61kAKbBkZgFF2U
 fAFGwlnMjaYt9/Ha5bjQTmD9KO8W7R7RKYXhEejxwWC+etdIJuK66sSuwlDg2LLd
 5ua1at5vou0XNStqTANR2o058xC8u9/a11NDPVS3aPEEyK7F0gg=
 =5iZX
 -----END PGP SIGNATURE-----

Merge tag 'zynqmp-dt-for-v5.18' of https://github.com/Xilinx/linux-xlnx into arm/dt

arm64: dts: ZynqMP DT changes for v5.18

- Dropping #stream-id-cells
- Add missing dma-cells and change dma node names

* tag 'zynqmp-dt-for-v5.18' of https://github.com/Xilinx/linux-xlnx:
  arm64: zynqmp: Rename dma to dma-controller
  arm64: zynqmp: Add missing #dma-cells property
  arm64: xilinx: dts: drop legacy property #stream-id-cells

Link: https://lore.kernel.org/r/19464dc6-eca9-f9a7-8aba-43af094d7c37@xilinx.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-08 16:06:29 +01:00
Robert Foss d3258737af
Revert "arm64: dts: mt8183: jacuzzi: Fix bus properties in anx's DSI endpoint"
This reverts commit 32568ae375.

Signed-off-by: Robert Foss <robert.foss@linaro.org>
Reviewed-by: Chen-Yu Tsai <wenst@chromium.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Matthias Brugger <matthias.bgg@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-08 15:20:17 +01:00
Will Deacon 0162052214 Merge branch 'for-next/perf-m1' into for-next/perf
Support for the CPU PMUs on the Apple M1.

* for-next/perf-m1:
  drivers/perf: Add Apple icestorm/firestorm CPU PMU driver
  drivers/perf: arm_pmu: Handle 47 bit counters
  irqchip/apple-aic: Move PMU-specific registers to their own include file
  arm64: dts: apple: Add t8303 PMU nodes
  arm64: dts: apple: Add t8103 PMU interrupt affinities
  irqchip/apple-aic: Wire PMU interrupts
  irqchip/apple-aic: Parse FIQ affinities from device-tree
  dt-bindings: apple,aic: Add affinity description for per-cpu pseudo-interrupts
  dt-bindings: apple,aic: Add CPU PMU per-cpu pseudo-interrupts
  dt-bindings: arm-pmu: Document Apple PMU compatible strings
2022-03-08 13:33:34 +00:00
Marc Zyngier a639027a1b drivers/perf: Add Apple icestorm/firestorm CPU PMU driver
Add a new, weird and wonderful driver for the equally weird Apple
PMU HW. Although the PMU itself is functional, we don't know much
about the events yet, so this can be considered as yet another
random number generator...

Nonetheless, it can reliably count at least cycles and instructions
in the usually wonky big-little way. For anything else, it of course
supports raw event numbers.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-08 13:32:48 +00:00
Shaokun Zhang f00f367487 arm64: perf: Consistently make all event numbers as 16-bits
Arm ARM documents PMU event numbers as 16-bits in the table and more 0x4XXX
events have been added in the header file, so use 16-bits for all event
numbers and make them consistent.

No functional change intended.

Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Will Deacon <will@kernel.org>
Signed-off-by: Shaokun Zhang <zhangshaokun@hisilicon.com>
Link: https://lore.kernel.org/r/20220303100710.2238-1-zhangshaokun@hisilicon.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-08 11:41:03 +00:00
Shaokun Zhang 83f83cc0c1 arm64: perf: Expose some Armv9 common events under sysfs
Armv9[1] has introduced some common architectural events (0x400C-0x400F)
and common microarchitectural events (0x4010-0x401B), which can be detected
by PMCEID0_EL0 from bit44 to bit59, so expose these common events under
sysfs.

[1] https://developer.arm.com/documentation/ddi0608/ba

Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Will Deacon <will@kernel.org>
Signed-off-by: Shaokun Zhang <zhangshaokun@hisilicon.com>
Link: https://lore.kernel.org/r/20220303085419.64085-1-zhangshaokun@hisilicon.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-08 11:40:44 +00:00
Masahiro Yamada 819a47d24b arm64: clean up tools Makefile
Remove unused gen-y.

Remove redundant $(shell ...) because 'mkdir' is done in cmd_gen_cpucaps.

Replace $(filter-out $(PHONY), $^) with the $(real-prereqs) shorthand.

The '&&' in cmd_gen_cpucaps should be replaced with ';' because it is
run under 'set -e' environment.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Link: https://lore.kernel.org/r/20220227085232.206529-1-masahiroy@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-08 11:17:10 +00:00
Sagar Patel ee94b5a061 arm64: drop unused includes of <linux/personality.h>
Drop several includes of <linux/personality.h> which are not used.
git-blame indicates they were used at some point, but they're not needed
anymore.

Signed-off-by: Sagar Patel <sagarmp@cs.unc.edu>
Link: https://lore.kernel.org/r/20220307222412.146506-1-sagarmp@cs.unc.edu
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-08 10:23:42 +00:00
Vijay Balakrishna 031495635b arm64: Do not defer reserve_crashkernel() for platforms with no DMA memory zones
The following patches resulted in deferring crash kernel reservation to
mem_init(), mainly aimed at platforms with DMA memory zones (no IOMMU),
in particular Raspberry Pi 4.

commit 1a8e1cef76 ("arm64: use both ZONE_DMA and ZONE_DMA32")
commit 8424ecdde7 ("arm64: mm: Set ZONE_DMA size based on devicetree's dma-ranges")
commit 0a30c53573 ("arm64: mm: Move reserve_crashkernel() into mem_init()")
commit 2687275a58 ("arm64: Force NO_BLOCK_MAPPINGS if crashkernel reservation is required")

Above changes introduced boot slowdown due to linear map creation for
all the memory banks with NO_BLOCK_MAPPINGS, see discussion[1].  The proposed
changes restore crash kernel reservation to earlier behavior thus avoids
slow boot, particularly for platforms with IOMMU (no DMA memory zones).

Tested changes to confirm no ~150ms boot slowdown on our SoC with IOMMU
and 8GB memory.  Also tested with ZONE_DMA and/or ZONE_DMA32 configs to confirm
no regression to deferring scheme of crash kernel memory reservation.
In both cases successfully collected kernel crash dump.

[1] https://lore.kernel.org/all/9436d033-579b-55fa-9b00-6f4b661c2dd7@linux.microsoft.com/

Signed-off-by: Vijay Balakrishna <vijayb@linux.microsoft.com>
Cc: stable@vger.kernel.org
Reviewed-by: Pasha Tatashin <pasha.tatashin@soleen.com>
Link: https://lore.kernel.org/r/1646242689-20744-1-git-send-email-vijayb@linux.microsoft.com
[will: Add #ifdef CONFIG_KEXEC_CORE guards to fix 'crashk_res' references in allnoconfig build]
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-08 10:22:33 +00:00
Catalin Marinas 6e2edd6371 arm64: Ensure execute-only permissions are not allowed without EPAN
Commit 18107f8a2d ("arm64: Support execute-only permissions with
Enhanced PAN") re-introduced execute-only permissions when EPAN is
available. When EPAN is not available, arch_filter_pgprot() is supposed
to change a PAGE_EXECONLY permission into PAGE_READONLY_EXEC. However,
if BTI or MTE are present, such check does not detect the execute-only
pgprot in the presence of PTE_GP (BTI) or MT_NORMAL_TAGGED (MTE),
allowing the user to request PROT_EXEC with PROT_BTI or PROT_MTE.

Remove the arch_filter_pgprot() function, change the default VM_EXEC
permissions to PAGE_READONLY_EXEC and update the protection_map[] array
at core_initcall() if EPAN is detected.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Fixes: 18107f8a2d ("arm64: Support execute-only permissions with Enhanced PAN")
Cc: <stable@vger.kernel.org> # 5.13.x
Acked-by: Will Deacon <will@kernel.org>
Reviewed-by: Vladimir Murzin <vladimir.murzin@arm.com>
Tested-by: Vladimir Murzin <vladimir.murzin@arm.com>
2022-03-08 10:03:51 +00:00
Arnd Bergmann 537c3757b4 arm64: tegra: Device tree fixes for v5.17
This contains a single, last-minute fix to disable the display SMMU by
 default because under some circumstances leaving it enabled by default
 can cause SMMU faults on boot.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmImSxQTHHRyZWRpbmdA
 bnZpZGlhLmNvbQAKCRDdI6zXfz6zoVELD/9exQGVRakSmrp/kcySASsJa9El8Tkh
 9rOnmP/+E+V7531G6Nkzhntb5gEnvFRMr36sCJMkyd6J7v7mGKR2/JpgOLH5cIJx
 odbN9F68PpVtgG3JUCy8vOl6+5bg7uxTcNaArBRjzghO5Y/vvliL/k647I3mwVfy
 6Q3B3Qiq0mMqbxBo5DZDAnElR34Npnmus4LQqSd0P+tEb7LwahfbiRC8mF3YlbEl
 p3njS5CJbx8mbXMY2hpM0e7CnVJeFy5i8On4IEdSset3/wR6DuUsbFjyXQPCdX4y
 dV0JxDpkAi3lc48tS3h/wM+pCHLR5OSByjGa0qLTLfZUHqEAHLv07GMgDOisBsZw
 gDZZHi7na3gOoDDzTFKM8HoHiFssrQSr9Q/DjJoRYVIOssq1aTn5+JNDuD4eJRiB
 ukANMZinXuqlmCu/jD+Pm+uOK3zvwvlACPj8BQvF/a51DhczfwEIuilbCC2APAR4
 Nl4By38Ee5TNH8X+7zc1x+hX7TvWZWkC/KnOH5Re32rs0b2Wg0lis2gjlDYodgDO
 0Ca549fnqHxuC5LHyiUxHJcK5v0i47AtkWpP5Dy4skpbL70GKpJpZvTzWd5CmsyH
 UnmGQxACcMCylabC7patqwLrQGSQWiXgA+zJpTp+2lrGNVMMl77jXqukHkmRa2xD
 VCAR/jFPpAKmgQ==
 =9uGD
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmImhf4ACgkQmmx57+YA
 GNlLDhAAwYqtpHFMYBg0HPOwIkPUX9WhAK2WtG83rd5YY8Y5jPZxmCbJyDxveIt4
 eQ+6DYtZG+FnZ/0CIKN6XUWENzXJl9fjB40dLXX53TbCxf2llrfr3zZgY8p8sHHP
 Kxo2vU79mxmLvZcV9lkp5yNd7Co+Rxoe+KJMMGcvvjWNZZ5lgX9J44+ahmNA7M49
 KhV8zMzLHC8FuoeZyQV1AxIXEalPLU34aGrRpBmuEbhv86Gb4MFw5V/5LmLO5jFp
 ApWlAiMBM78FqCpvd1/cJs37ckmy8lDnOI/RNM5Ye+2PjIDyC7fC0Pd2N4Odvx2V
 VXLVKJ/+4YlXsIMnqh5qHJJr7f3QNFAv2WQDnSitBtyKFLy9IcVmhArDJBLHpXVY
 2lPZthcGvawoQJuVYItYTkbBfQkeYisXzZICvEwSZwfb8SK7ZdvvzzOvq2YSg5KR
 5XUEuWhYcaFe+Be/LcCJ5PVUfhnlbmvFtK4TpBq/TA3/QjAEdHIsvHR+Q8wMnMoL
 qfgx2bTpZiuI6ymmvQyVy8G+8sg3IbRO9CooDLoBQdaQSoh8jzAgSiER70fETf08
 7TdsjsWJpkmXgr4UyuXmsHQG/tf/P8dn+53fWe9r5ELxbHOeSHwMaLaqnWm40Iii
 FN9KIDQYSMRgvnGapL7iRYv6CMxCJbBc6/Lztj9EU6xGVxlRckg=
 =qW8w
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-5.17-arm64-dt-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/fixes

arm64: tegra: Device tree fixes for v5.17

This contains a single, last-minute fix to disable the display SMMU by
default because under some circumstances leaving it enabled by default
can cause SMMU faults on boot.

* tag 'tegra-for-5.17-arm64-dt-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: tegra: Disable ISO SMMU for Tegra194

Link: https://lore.kernel.org/r/20220307182120.2169598-1-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-07 23:23:58 +01:00
Joey Gouly e33c89256e Revert "arm64: Mitigate MTE issues with str{n}cmp()"
This reverts commit 59a68d4138.

Now that the str{n}cmp functions have been updated to handle MTE
properly, the workaround to use the generic functions is no longer
needed.

Signed-off-by: Joey Gouly <joey.gouly@arm.com>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220301101435.19327-4-joey.gouly@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:57:02 +00:00
Joey Gouly 387d828adf arm64: lib: Import latest version of Arm Optimized Routines' strncmp
Import the latest version of the Arm Optimized Routines strncmp function based
on the upstream code of string/aarch64/strncmp.S at commit 189dfefe37d5 from:
  https://github.com/ARM-software/optimized-routines

This latest version includes MTE support.

Note that for simplicity Arm have chosen to contribute this code to Linux under
GPLv2 rather than the original MIT OR Apache-2.0 WITH LLVM-exception license.
Arm is the sole copyright holder for this code.

Signed-off-by: Joey Gouly <joey.gouly@arm.com>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220301101435.19327-3-joey.gouly@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:57:02 +00:00
Joey Gouly 507f788d05 arm64: lib: Import latest version of Arm Optimized Routines' strcmp
Import the latest version of the Arm Optimized Routines strcmp function based
on the upstream code of string/aarch64/strcmp.S at commit 189dfefe37d5 from:
  https://github.com/ARM-software/optimized-routines

This latest version includes MTE support.

Note that for simplicity Arm have chosen to contribute this code to Linux under
GPLv2 rather than the original MIT OR Apache-2.0 WITH LLVM-exception license.
Arm is the sole copyright holder for this code.

Signed-off-by: Joey Gouly <joey.gouly@arm.com>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220301101435.19327-2-joey.gouly@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:57:02 +00:00
Linu Cherian 24a147bcef irqchip/gic-v3: Workaround Marvell erratum 38545 when reading IAR
When a IAR register read races with a GIC interrupt RELEASE event,
GIC-CPU interface could wrongly return a valid INTID to the CPU
for an interrupt that is already released(non activated) instead of 0x3ff.

As a side effect, an interrupt handler could run twice, once with
interrupt priority and then with idle priority.

As a workaround, gic_read_iar is updated so that it will return a
valid interrupt ID only if there is a change in the active priority list
after the IAR read on all the affected Silicons.

Since there are silicon variants where both 23154 and 38545 are applicable,
workaround for erratum 23154 has been extended to address both of them.

Signed-off-by: Linu Cherian <lcherian@marvell.com>
Reviewed-by: Marc Zyngier <maz@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220307143014.22758-1-lcherian@marvell.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:45:02 +00:00
Anshuman Khandual 1310222c27 arm64/mm: Drop use_1G_block()
pud_sect_supported() already checks for PUD level block mapping support i.e
on ARM64_4K_PAGES config. Hence pud_sect_supported(), along with some other
required alignment checks can help completely drop use_1G_block().

Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/1644988012-25455-1-git-send-email-anshuman.khandual@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:44:22 +00:00
Muchun Song cf5a501d98 arm64: avoid flushing icache multiple times on contiguous HugeTLB
When a contiguous HugeTLB page is mapped, set_pte_at() will be called
CONT_PTES/CONT_PMDS times.  Therefore, __sync_icache_dcache() will
flush cache multiple times if the page is executable (to ensure
the I-D cache coherency).  However, the first flushing cache already
covers subsequent cache flush operations.  So only flusing cache
for the head page if it is a HugeTLB page to avoid redundant cache
flushing.  In the next patch, it is also depends on this change
since the tail vmemmap pages of HugeTLB is mapped with read-only
meanning only head page struct can be modified.

Signed-off-by: Muchun Song <songmuchun@bytedance.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220302084624.33340-1-songmuchun@bytedance.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:42:34 +00:00
Mark Brown f2c281204b arm64: cpufeature: Warn if we attempt to read a zero width field
Add a WARN_ON_ONCE() when extracting a field if no width is specified. This
should never happen outside of development since it will be triggered with
or without the feature so long as the relevant ID register is present.  If
the warning triggers hope that the field was the standard 4 bits wide and
soldier on.

Suggested-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20220307180900.3045812-1-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:40:52 +00:00
Mark Brown b8fc780137 arm64: cpufeature: Add missing .field_width for GIC system registers
This was missed when making specification of a field standard.

Fixes: 0a2eec83c2 ("arm64: cpufeature: Always specify and use a field width for capabilities")
Reported-by: Qian Cai <quic_qiancai@quicinc.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20220302134225.159217-1-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:40:31 +00:00
David Engraf 0a32c88ddb arm64: signal: nofpsimd: Do not allocate fp/simd context when not available
Commit 6d502b6ba1 ("arm64: signal: nofpsimd: Handle fp/simd context for
signal frames") introduced saving the fp/simd context for signal handling
only when support is available. But setup_sigframe_layout() always
reserves memory for fp/simd context. The additional memory is not touched
because preserve_fpsimd_context() is not called and thus the magic is
invalid.

This may lead to an error when parse_user_sigframe() checks the fp/simd
area and does not find a valid magic number.

Signed-off-by: David Engraf <david.engraf@sysgo.com>
Reviwed-by: Mark Brown <broonie@kernel.org>
Fixes: 6d502b6ba1 ("arm64: signal: nofpsimd: Handle fp/simd context for signal frames")
Cc: <stable@vger.kernel.org> # 5.6.x
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220225104008.820289-1-david.engraf@sysgo.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:38:25 +00:00
Mark Rutland 614c0b9fee arm64: prevent instrumentation of bp hardening callbacks
We may call arm64_apply_bp_hardening() early during entry (e.g. in
el0_ia()) before it is safe to run instrumented code. Unfortunately this
may result in running instrumented code in two cases:

* The hardening callbacks called by arm64_apply_bp_hardening() are not
  marked as `noinstr`, and have been observed to be instrumented when
  compiled with either GCC or LLVM.

* Since arm64_apply_bp_hardening() itself is only marked as `inline`
  rather than `__always_inline`, it is possible that the compiler
  decides to place it out-of-line, whereupon it may be instrumented.

For example, with defconfig built with clang 13.0.0,
call_hvc_arch_workaround_1() is compiled as:

| <call_hvc_arch_workaround_1>:
|        d503233f        paciasp
|        f81f0ffe        str     x30, [sp, #-16]!
|        320183e0        mov     w0, #0x80008000
|        d503201f        nop
|        d4000002        hvc     #0x0
|        f84107fe        ldr     x30, [sp], #16
|        d50323bf        autiasp
|        d65f03c0        ret

... but when CONFIG_FTRACE=y and CONFIG_KCOV=y this is compiled as:

| <call_hvc_arch_workaround_1>:
|        d503245f        bti     c
|        d503201f        nop
|        d503201f        nop
|        d503233f        paciasp
|        a9bf7bfd        stp     x29, x30, [sp, #-16]!
|        910003fd        mov     x29, sp
|        94000000        bl      0 <__sanitizer_cov_trace_pc>
|        320183e0        mov     w0, #0x80008000
|        d503201f        nop
|        d4000002        hvc     #0x0
|        a8c17bfd        ldp     x29, x30, [sp], #16
|        d50323bf        autiasp
|        d65f03c0        ret

... with a patchable function entry registered with ftrace, and a direct
call to __sanitizer_cov_trace_pc(). Neither of these are safe early
during entry sequences.

This patch avoids the unsafe instrumentation by marking
arm64_apply_bp_hardening() as `__always_inline` and by marking the
hardening functions as `noinstr`. This avoids the potential for
instrumentation, and causes clang to consistently generate the function
as with the defconfig sample.

Note: in the defconfig compilation, when CONFIG_SVE=y, x30 is spilled to
the stack without being placed in a frame record, which will result in a
missing entry if call_hvc_arch_workaround_1() is backtraced. Similar is
true of qcom_link_stack_sanitisation(), where inline asm spills the LR
to a GPR prior to corrupting it. This is not a significant issue
presently as we will only backtrace here if an exception is taken, and
in such cases we may omit entries for other reasons today.

The relevant hardening functions were introduced in commits:

  ec82b567a7 ("arm64: Implement branch predictor hardening for Falkor")
  b092201e00 ("arm64: Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support")

... and these were subsequently moved in commit:

  d4647f0a2a ("arm64: Rewrite Spectre-v2 mitigation code")

The arm64_apply_bp_hardening() function was introduced in commit:

  0f15adbb28 ("arm64: Add skeleton to harden the branch predictor against aliasing attacks")

... and was subsequently moved and reworked in commit:

  6279017e80 ("KVM: arm64: Move BP hardening helpers into spectre.h")

Fixes: ec82b567a7 ("arm64: Implement branch predictor hardening for Falkor")
Fixes: b092201e00 ("arm64: Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support")
Fixes: d4647f0a2a ("arm64: Rewrite Spectre-v2 mitigation code")
Fixes: 0f15adbb28 ("arm64: Add skeleton to harden the branch predictor against aliasing attacks")
Fixes: 6279017e80 ("KVM: arm64: Move BP hardening helpers into spectre.h")
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Mark Brown <broonie@kernel.org>
Cc: Will Deacon <will@kernel.org>
Acked-by: Marc Zyngier <maz@kernel.org>
Reviewed-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20220224181028.512873-1-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:35:06 +00:00
Huang Shijie 2369f171d5 arm64: crash_core: Export MODULES, VMALLOC, and VMEMMAP ranges
The following interrelated ranges are needed by the kdump crash tool:
	MODULES_VADDR ~ MODULES_END,
	VMALLOC_START ~ VMALLOC_END,
	VMEMMAP_START ~ VMEMMAP_END

Since these values change from time to time, it is preferable to export
them via vmcoreinfo than to change the crash's code frequently.

Signed-off-by: Huang Shijie <shijie@os.amperecomputing.com>
Link: https://lore.kernel.org/r/20220209092642.9181-1-shijie@os.amperecomputing.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-03-07 21:25:47 +00:00
Kuldeep Singh 66435063c5 arm64: dts: stingray: Fix spi clock name
SPI clock name for pl022 is "sspclk" and not "spiclk".
Also fix below dtc warning:
clock-names:0: 'spiclk' is not one of ['SSPCLK', 'sspclk']

Signed-off-by: Kuldeep Singh <singh.kuldeep87k@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2022-03-07 11:18:11 -08:00
Kuldeep Singh bb8555fe87 arm64: dts: ns2: Fix spi clock name
SPI clock name for pl022 is "sspclk" and not "spiclk".
Also fix below dtc warning:
clock-names:0: 'spiclk' is not one of ['SSPCLK', 'sspclk']

Signed-off-by: Kuldeep Singh <singh.kuldeep87k@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2022-03-07 11:18:11 -08:00
James Morse 58c9a5060c arm64: proton-pack: Include unprivileged eBPF status in Spectre v2 mitigation reporting
The mitigations for Spectre-BHB are only applied when an exception is
taken from user-space. The mitigation status is reported via the spectre_v2
sysfs vulnerabilities file.

When unprivileged eBPF is enabled the mitigation in the exception vectors
can be avoided by an eBPF program.

When unprivileged eBPF is enabled, print a warning and report vulnerable
via the sysfs vulnerabilities file.

Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
2022-03-07 17:25:52 +00:00
Chris Morgan 9d25aadd55 arm64: dts: rockchip: Add #clock-cells value for rk805
Based on a brief discussion on the mailing list it was determined that
clock-cells should be a required parameter in the event that a consumer
of the clock gets added in an overlay.

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/20220303203958.4904-3-macroalpha82@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-03-05 18:16:45 +01:00
Chris Morgan 079d76ab30 arm64: dts: rockchip: Remove vcc13 and vcc14 for rk808
The Rockchip rk808 Power Management IC does not have a vcc13 or a
vcc14. The schematics for at least the Pinebook Pro suggest this is
actually vcc1 and vcc2, and may be an artifact from the reference
design schematic).

Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/20220303203958.4904-2-macroalpha82@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-03-05 18:16:45 +01:00
Rob Herring 37cbd3c522 arm64: dts: rockchip: Fix SDIO regulator supply properties on rk3399-firefly
A label reference without brackets is a path string, not a phandle as
intended. Add the missing brackets.

Fixes: a5002c41c3 ("arm64: dts: rockchip: add WiFi module support for Firefly-RK3399")
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220304202559.317749-1-robh@kernel.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-03-05 18:12:33 +01:00
Jakub Kicinski 6646dc241d Merge https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next
Daniel Borkmann says:

====================
pull-request: bpf-next 2022-03-04

We've added 32 non-merge commits during the last 14 day(s) which contain
a total of 59 files changed, 1038 insertions(+), 473 deletions(-).

The main changes are:

1) Optimize BPF stackmap's build_id retrieval by caching last valid build_id,
   as consecutive stack frames are likely to be in the same VMA and therefore
   have the same build id, from Hao Luo.

2) Several improvements to arm64 BPF JIT, that is, support for JITing
   the atomic[64]_fetch_add, atomic[64]_[fetch_]{and,or,xor} and lastly
   atomic[64]_{xchg|cmpxchg}. Also fix the BTF line info dump for JITed
   programs, from Hou Tao.

3) Optimize generic BPF map batch deletion by only enforcing synchronize_rcu()
   barrier once upon return to user space, from Eric Dumazet.

4) For kernel build parse DWARF and generate BTF through pahole with enabled
   multithreading, from Kui-Feng Lee.

5) BPF verifier usability improvements by making log info more concise and
   replacing inv with scalar type name, from Mykola Lysenko.

6) Two follow-up fixes for BPF prog JIT pack allocator, from Song Liu.

7) Add a new Kconfig to allow for loading kernel modules with non-matching
   BTF type info; their BTF info is then removed on load, from Connor O'Brien.

8) Remove reallocarray() usage from bpftool and switch to libbpf_reallocarray()
   in order to fix compilation errors for older glibc, from Mauricio Vásquez.

9) Fix libbpf to error on conflicting name in BTF when type declaration
   appears before the definition, from Xu Kuohai.

10) Fix issue in BPF preload for in-kernel light skeleton where loaded BPF
    program fds prevent init process from setting up fd 0-2, from Yucong Sun.

11) Fix libbpf reuse of pinned perf RB map when max_entries is auto-determined
    by libbpf, from Stijn Tintel.

12) Several cleanups for libbpf and a fix to enforce perf RB map #pages to be
    non-zero, from Yuntao Wang.

* https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next: (32 commits)
  bpf: Small BPF verifier log improvements
  libbpf: Add a check to ensure that page_cnt is non-zero
  bpf, x86: Set header->size properly before freeing it
  x86: Disable HAVE_ARCH_HUGE_VMALLOC on 32-bit x86
  bpf, test_run: Fix overflow in XDP frags bpf_test_finish
  selftests/bpf: Update btf_dump case for conflicting names
  libbpf: Skip forward declaration when counting duplicated type names
  bpf: Add some description about BPF_JIT_ALWAYS_ON in Kconfig
  bpf, docs: Add a missing colon in verifier.rst
  bpf: Cache the last valid build_id
  libbpf: Fix BPF_MAP_TYPE_PERF_EVENT_ARRAY auto-pinning
  bpf, selftests: Use raw_tp program for atomic test
  bpf, arm64: Support more atomic operations
  bpftool: Remove redundant slashes
  bpf: Add config to allow loading modules with BTF mismatches
  bpf, arm64: Feed byte-offset into bpf line info
  bpf, arm64: Call build_prologue() first in first JIT pass
  bpf: Fix issue with bpf preload module taking over stdout/stdin of kernel.
  bpftool: Bpf skeletons assert type sizes
  bpf: Cleanup comments
  ...
====================

Link: https://lore.kernel.org/r/20220304164313.31675-1-daniel@iogearbox.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2022-03-04 19:28:17 -08:00
Marc Zyngier f7659f8bcd KVM: arm64: Only open the interrupt window on exit due to an interrupt
Now that we properly account for interrupts taken whilst the guest
was running, it becomes obvious that there is no need to open
this accounting window if we didn't exit because of an interrupt.

This saves a number of system register accesses and other barriers
if we exited for any other reason (such as a trap, for example).

Signed-off-by: Marc Zyngier <maz@kernel.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Link: https://lore.kernel.org/r/20220304135914.1464721-1-maz@kernel.org
2022-03-04 15:07:04 +00:00
Horatiu Vultur 6015fb905d dts: sparx5: Enable ptp interrupt
Add support for ptp interrupt. This interrupt is used when using 2-step
timestamping. For each timestamp that is added in a queue, an interrupt
is generated.

Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2022-03-04 13:03:09 +00:00
Jakub Kicinski 80901bff81 Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
net/batman-adv/hard-interface.c
  commit 690bb6fb64 ("batman-adv: Request iflink once in batadv-on-batadv check")
  commit 6ee3c393ee ("batman-adv: Demote batadv-on-batadv skip error message")
https://lore.kernel.org/all/20220302163049.101957-1-sw@simonwunderlich.de/

net/smc/af_smc.c
  commit 4d08b7b57e ("net/smc: Fix cleanup when register ULP fails")
  commit 462791bbfa ("net/smc: add sysctl interface for SMC")
https://lore.kernel.org/all/20220302112209.355def40@canb.auug.org.au/

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2022-03-03 11:55:12 -08:00
Mario Limonciello 01f6c7338c cpuidle: PSCI: Move the `has_lpi` check to the beginning of the function
Currently the first thing checked is whether the PCSI cpu_suspend function
has been initialized.

Another change will be overloading `acpi_processor_ffh_lpi_probe` and
calling it sooner.  So make the `has_lpi` check the first thing checked
to prepare for that change.

Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2022-03-03 20:20:06 +01:00
Christoph Hellwig dc90f0846d mm: don't include <linux/memremap.h> in <linux/mm.h>
Move the check for the actual pgmap types that need the free at refcount
one behavior into the out of line helper, and thus avoid the need to
pull memremap.h into mm.h.

Link: https://lkml.kernel.org/r/20220210072828.2930359-7-hch@lst.de
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Logan Gunthorpe <logang@deltatee.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Acked-by: Felix Kuehling <Felix.Kuehling@amd.com>
Tested-by: "Sierra Guiza, Alejandro (Alex)" <alex.sierra@amd.com>

Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Alistair Popple <apopple@nvidia.com>
Cc: Ben Skeggs <bskeggs@redhat.com>
Cc: Chaitanya Kulkarni <kch@nvidia.com>
Cc: Karol Herbst <kherbst@redhat.com>
Cc: Lyude Paul <lyude@redhat.com>
Cc: Miaohe Lin <linmiaohe@huawei.com>
Cc: Muchun Song <songmuchun@bytedance.com>
Cc: "Pan, Xinhui" <Xinhui.Pan@amd.com>
Cc: Ralph Campbell <rcampbell@nvidia.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
2022-03-03 12:47:33 -05:00
Krzysztof Kozlowski ad3c72b0c6 arm64: dts: lg: align pl330 node name with dtschema
Fixes dtbs_check warnings like:

  dma@c1128000: $nodename:0: 'dma@c1128000' does not match '^dma-controller(@.*)?$'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Chanho Min <chanho.min@lge.com>
Link: https://lore.kernel.org/r/20220129175514.298942-2-krzysztof.kozlowski@canonical.com
2022-03-02 20:25:14 +01:00
Krzysztof Kozlowski 8ede5890fa arm64: dts: lg: add dma-cells to pl330 node
dma-cells property is required for dma-controller.  Fixes dtbs_check
warnings like:

  dma@c1128000: '#dma-cells' is a required property

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Chanho Min <chanho.min@lge.com>
Link: https://lore.kernel.org/r/20220129175514.298942-1-krzysztof.kozlowski@canonical.com
2022-03-02 20:25:14 +01:00
Krzysztof Kozlowski e7f127b213 arm64: dts: juno: align pl330 node name with dtschema
Fixes dtbs_check warning:

  dma@7ff00000: $nodename:0: 'dma@7ff00000' does not match '^dma-controller(@.*)?$'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20220129175621.299254-1-krzysztof.kozlowski@canonical.com
2022-03-02 20:24:44 +01:00
Mark Brown 4c11113c1a KVM: arm64: Enable Cortex-A510 erratum 2077057 by default
The recently added configuration option for Cortex A510 erratum 2077057 does
not have a "default y" unlike other errata fixes. This appears to simply be
an oversight since the help text suggests enabling the option if unsure and
there's nothing in the commit log to suggest it is intentional.

Fixes: 1dd498e5e2 ("KVM: arm64: Workaround Cortex-A510's single-step and PAC trap errata")
Signed-off-by: Mark Brown <broonie@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220225184658.172527-1-broonie@kernel.org
2022-03-02 15:02:27 +00:00
Frank Wunderlich 55927cb44d arm64: dts: broadcom: Fix sata nodename
After converting ahci-platform txt binding to yaml nodename is reported
as not matching the standard:

arch/arm64/boot/dts/broadcom/northstar2/ns2-svk.dt.yaml:
ahci@663f2000: $nodename:0: 'ahci@663f2000' does not match '^sata(@.*)?$'

Fix it to match binding.

Fixes: ac9aae00f0 ("arm64: dts: Add SATA3 AHCI and SATA3 PHY DT nodes for NS2")
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2022-03-01 13:29:28 -08:00
Pali Rohár a0e897d1b3
arm64: dts: armada-3720-turris-mox: Add missing ethernet0 alias
U-Boot uses ethernet* aliases for setting MAC addresses. Therefore define
also alias for ethernet0.

Fixes: 7109d817db ("arm64: dts: marvell: add DTS for Turris Mox")
Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01 22:13:07 +01:00
Linus Torvalds fb184c4af9 The bigger part of the change is a revert for x86 hosts. Here the
second patch was supposed to fix the first, but in reality it was
 just as broken, so both have to go.
 
 x86 host:
 
 * Revert incorrect assumption that cr3 changes come with preempt notifier
   callbacks (they don't when static branches are changed, for example)
 
 ARM host:
 
 * Correctly synchronise PMR and co on PSCI CPU_SUSPEND
 
 * Skip tests that depend on GICv3 when the HW isn't available
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmIeGnUUHHBib256aW5p
 QHJlZGhhdC5jb20ACgkQv/vSX3jHroMCYgf9GPVUOQUbHVxVqvKB1ABnY3ZIZuS3
 +/XLgVifSmXb2sPQmcKIPk7eQkxlzpnVdbznJO5qFMtVKRv/ppj+/ly2wwF8l+rR
 m1XvyYo2sukK5vTpBrQiRm3aWY7vpx0ds4DStLnrnBuPF/U7x6WlHSL/BqXaNcSJ
 e+SXd/UFhkg7dEQaU3eqXyf2/mMfR2ZLdUb4v+/UiV7kfzzvRqNERd8HUoVk2FcM
 VYBr07ChaV4XB/dZsCDVSz2Z7f7rH3sMMW82ZHKjuFUEW4Dij9NiX2ycaeRvkSLG
 tnliTuROCY2bOQeIVCTHf5XqCAAm7sA1AoClFaUy30+UW9s9j45NuhUQbA==
 =nuHK
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull kvm fixes from Paolo Bonzini:
 "The bigger part of the change is a revert for x86 hosts. Here the
  second patch was supposed to fix the first, but in reality it was just
  as broken, so both have to go.

  x86 host:

   - Revert incorrect assumption that cr3 changes come with preempt
     notifier callbacks (they don't when static branches are changed,
     for example)

  ARM host:

   - Correctly synchronise PMR and co on PSCI CPU_SUSPEND

   - Skip tests that depend on GICv3 when the HW isn't available"

* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
  KVM: selftests: aarch64: Skip tests if we can't create a vgic-v3
  Revert "KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest()"
  Revert "KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs()"
  KVM: arm64: Don't miss pending interrupts for suspended vCPU
2022-03-01 12:01:18 -08:00
Arnd Bergmann c807a335d3 Qualcomm ARM64 defconfig updates for v5.17
This enables GCC, TLMM pinctrl and the main interconnect provider for
 the SM8450 platform.
 -----BEGIN PGP SIGNATURE-----
 
 iQJPBAABCAA5FiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmHDQlQbHGJqb3JuLmFu
 ZGVyc3NvbkBsaW5hcm8ub3JnAAoJEAsfOT8Nma3F/kAQANjxWUk+rJI/zXKJ5oLx
 xYAhzO02Lym7Ua+vnKwSTECVUnGCzhaNOL+icXGPjxNJX/yKp8efSHbUtpb6IRJb
 tqXeOiCxaZUq0vMcGjv1CXQBMXTflr+SOEuN8EVBUL6byB81TCWY78mtRhFBo6ft
 UfBuQK4bZljivdGZazEpn1tpY5dW9U9fnEs4xowmRrj1/CLjBTrRf20BuKzOzl16
 Ujmz2QXKw1BFO9nDScmV84prYJ8xI1ZFSZiaa3e3MAAGq90SlINWdZO6aE7UBpQm
 deQ6Rda7IUhotH/+kAec++Tg/Qs0Z+EZx/Ie+RXtIPVK+VneHnh/70MhxDGavScB
 UFCsmpajiqDOyez5XwmhOQyi9+7MUlHyPN89bSRUGOU0ybJW4EE2UWisskfskf4e
 cJaGCbcF0z4l0PHXBFY1LnyXQm7JXH0P/F5v7ecOl1/cIQ6Utn+IAstItskx9R8C
 a22TNOLjw9y/22KKO6eFjgHh5wLwflMRI70mIluyzZCzwRQtgwwGrCSjuXR6M07I
 LmQJbFiTclWzZLY1IQoXRlpdLEMdcslVsqtLwsYTqnVOTbekUnykw3aZMmZLYdA2
 pGySCPNOYJayiLrkvcYcv64TPczK+YcV19j2/UHy6MG3te+RSJ9xSGqU7mmCBxZo
 o49yf4AXXwG7YMM3OBG2BO9X
 =QCCN
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIeZFoACgkQmmx57+YA
 GNmdSQ//RUXhsniLv0NPEjRxDmJKXp/zQ1VWknWBwMj9u1XAt1vHiaGHfKL1goRe
 GV12lxgmc8AMVcRvN4FJKA8IF0BDSMVsGEZW8sfm5A3yI6Kn4SDK8A/b3iVzrlyP
 nDEQLUh4oOJ3PiF36IXAADzDHiPohX/4Isbq9/UtVvdEXIRt99hjR8iLT7h6uxu4
 8n4P/3wV13Rfdf1IXdIjdtdVrk5nQgdi6d0cqMBKTGhealzex8cN+ggzqcfWhFnA
 nEBrQ/YgkN9Z2NzxkcOniBA5Hy+tD3Xk8LflHmgr4XiQlE0pkLdqj3mjy0wy/nkA
 XYOiBXrr4fUWu0PVSvbklo4fGbpmAO+RYSbacJk1pb9xqYMHq9SXN/dANZkpJAvj
 5Jftczb/AdIK9vTQ3ny4yQmGKuauCTO0EP/K5wY5HZhEOY1JfwgjRAtlZMJsITb+
 gFxDjB5tBl+PDJkrowKsvbXG1gQJhFLcVDnfvV6NHYwUmaicXrFMjpeLdYh+7+7c
 muZFFPox0eiwGVFQ1ciiwKR5QkV0n7c8XOq6Zk/yRf5ekZMb21qfIQZWcrmYE8DZ
 c12XYcoOEjc1AsfYVovSSTRF2jremMQ/sofG6lWo4rOGAYpvFitn3crY9vbuoNCC
 FxlNZDXN1v/0NfsPGvs+SQytpRs3SpAE8JlhKYoxwCvUui71nHM=
 =XJpa
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-defconfig-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/defconfig

Qualcomm ARM64 defconfig updates for v5.17

This enables GCC, TLMM pinctrl and the main interconnect provider for
the SM8450 platform.

* tag 'qcom-arm64-defconfig-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  arm64: defconfig: Add SM8450 icc configs
  arm64: defconfig: Add SM8450 pinctrl config
  arm64: defconfig: Add SM8450 GCC config

Link: https://lore.kernel.org/r/20211222152219.3752973-1-bjorn.andersson@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01 19:22:17 +01:00
Dinh Nguyen a461cac0c4 arm64: defconfig: enable the CVP driver
Build the CVP driver in the standard arm64 defconfig.

Signed-off-by: Niravkumar L Rabara <niravkumar.l.rabara@intel.com>
Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
2022-03-01 10:01:59 -06:00
Dinh Nguyen ef82c9be84 arm64: dts: n5x: add sdr edac support
The N5X platform has the Synopsys DDR controller the includes an EDAC
controller. Add the entry for the controller in the DTS file instead of
the base Agilex DTSI because the base Agilex does not have the
controller.

Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
2022-03-01 09:43:15 -06:00
Krzysztof Kozlowski 4b557e171a arm64: dts: agilex/stratix10: add clock-names to USB DWC2 node
USB DWC2 requires clock-names:

  arm64/boot/dts/altera/socfpga_stratix10_socdk_nand.dt.yaml:
    usb@ffb00000: 'clock-names' is a required property

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
2022-03-01 09:41:55 -06:00
Arnd Bergmann 94b0655636 mvebu dt64 for 5.18 (part 1)
Add PCIe clock resource for Armada 37xx
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCYh4DgAAKCRALBhiOFHI7
 1eJ3AJ92AmeOukv6fX5kvGahCxIwQMyungCfWMXEgqJUAjaJSpGcl2c8dlf3tsQ=
 =hehd
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIeM/QACgkQmmx57+YA
 GNlU3g/+NKudQ6czo1Tk0hFZ7WPqtUilBuqZaxTrhjAPrPaT1yaYWHWSUbp3vxqP
 9Yg0ktvjgc+B16boSVNudN7QDeTt7PYly7B3t3nEGhZ7nbuF7wp+k1wfRLKXPd6V
 GaSuvdCARK6vqDZmTMZFWeGZ+WyhqoymftqwY27kL6M0ig+HJRSTT73B1225EFpR
 0NuHHw6RYDrAto3PAAJWLUe2EHiD0mdv+g5w3gDavxIG/GFNXQ0TfSPqN1B1gn0o
 PS4hGEsblSmZCGh2ESgc84LAS4elSsVrCEddAfO/OIgERUCR0roBZEWvLZ1qX42F
 ivn+d/3ZSfbjHM1rXmlOi+XQOK0KZrkQ3B/sDkQq5ZWOLWwVKhJWrjBUcWlefHQ9
 2mXW0Z9f3bKeko60uSJXUW9vtyxy/8dapbPe27aw5chv/TQG6EfC24iQwN1DXJW+
 ZYV3RxiLbsUjhP54rYTdy/2IsfnB81TNCRt0nNjNE0+bGsZBam9cwZsDA+pkol2s
 xiuyv6ZZ2zNgI25BLLE+FsKmrl83e+YcAASEmBHoc2ezDCkKJyudUdSsdxrIYLhO
 bpzWb/SmqCtnAswfhFhBl6Rptx79uhmldUxucnUIThJhkCiR2kzhZduHtmIt2UfL
 UnFF8jx9yzKRGMcEarfyWKTJMDbuV7v/8KQPg9RUxXYqvc7Vdfw=
 =7yRl
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt64-5.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu into arm/dt

mvebu dt64 for 5.18 (part 1)

Add PCIe clock resource for Armada 37xx

* tag 'mvebu-dt64-5.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu:
  arm64: dts: marvell: armada-37xx: Add clock to PCIe node

Link: https://lore.kernel.org/r/87v8wxzrlo.fsf@BL-laptop
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01 15:55:48 +01:00
Arnd Bergmann c723b6b7b7 mt8192
- add clocks to the devices
 - add watchdog node
 - add power domain controller node
 
 mt8183:
 - add pmic (mt6358) key board node
 - add JPEG enconder node
 
 mt7986:
 - update memory node
 - add clock controller for mt7986a version
 -----BEGIN PGP SIGNATURE-----
 
 iQJLBAABCAA1FiEEUdvKHhzqrUYPB/u8L21+TfbCqH4FAmId41kXHG1hdHRoaWFz
 LmJnZ0BnbWFpbC5jb20ACgkQL21+TfbCqH6zdg//S3zsN7ffMNwTVTT+LPbffn57
 QUNvbZbkH/lcyjE7IPOd54/tlk+5Sr/9nJgXdsDhZf31cuydgXUEgMU7+Lh0ZcEH
 mEjYqL4I9SdF21JHi6qarOEhQLq0JJlrLxRgBOW8UQLkHcLb2Qb6HldoTzwFOsyh
 /naOlX5jSmPjfm2B/BfK/X4n4qgg6wipGd60JiK0IB0kmz9KLm3g0nUbQmQTIBs+
 Q4k0miMVgiFqntJ352qNUZLQ8Ll2HHXGnSV/gowFE+ew17G/AR0UA95AZqakYBOb
 oPeBXOEIIJ0Lushn/YLEmkp0YpCoXG00H7C0DRH/giRmhkpX7/EV7dqbdWuX62Zj
 eqRpBeBwoVbbOz3Kh7ZtpDu5iX9KWYlpatgc+lBj1t0U0+H3bv+ZDC4hnX96rkCC
 8QMrsr3qkZF1nr3CAdllYMMbu0qFXYbm6/TnQE7lwr3cIniVocIt9nVaRYe1Pefz
 X377VqFG+9a98a/EfOZOp8IZddFIzr90NRcBeW08B2fB366RRFZTmDTTKq57COLm
 cmjACmL/U2kenkbKN3+h9jRUPIj9XoI50fzoHqRdbxmQj1h4Tv8gPULpYP+d44FG
 rrEwGSZK6hBPqu5spZbKntENFP09zRqai8MOxdisw7pAOlupug1nfmRGWXGgWTdA
 mbMzeCL5wtB/f/eAoLw=
 =cQ7h
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIeKNAACgkQmmx57+YA
 GNlXGA/8ClJECFupNfi4njgxBdZnV7AmmyAAY+Cad1uAHYjHmxhL2AkA2Ddox6pu
 1M6qXsHQcpOZh9O7zWob8ugShMEI3FLa6VyceJq004kPFPpMRSQdk109ma8WK/OW
 3W0SgWOlw9j3llSnbjP28DB0pMcVeTq17ynG1ctslodzVo8K9NoBX+4c+HWZL+CI
 XLiWYTNY/NgZBwKuedLAOQsD+gvhfNXn0ruPV41snBDTBomV8sK/zP6XVBrDxo6L
 Wp9oLn0Y+ic4v/W6lI0c86QrPiTW1r25yzAcpeVY5rq6wm1Imv7DsFWpQj4CFRXA
 UGnbDSYHInCB3azv+U2FFmHrDFwD5y2LvyNl+C/Bx+EviLw5zG7DrlzC3N+1XdOz
 07JMH2pXVac1ZBCqUr0TjvUcKHyj7LQFoKzUl8JXoB4K57ostbJLPXLD6vb5K0Hv
 W38EULoebrjwu81IitrbPWdRdGhvVt+Eddqp9p1dcGBzZSeGrFtHCvaGQbDXqPFY
 1RDL+QQJ91AFK9eqcpRyCb+ooqnXPNzvS7ZFm/3FEOg57Nic0295dY5E0o4agxl5
 IC/1bZSKxqdpiz1z8oYDx03F0lXr2WZ3qOFVf/7y4TI5cGXhwflTkTpBtgqkPTur
 qMp7ndMliaHAyAsxnUwiyQVEkaj9ccUn/0VHSOxwDTLmWy47tYY=
 =O8Cc
 -----END PGP SIGNATURE-----

Merge tag 'v5.17-next-dts64' of git://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux into arm/dt

mt8192
- add clocks to the devices
- add watchdog node
- add power domain controller node

mt8183:
- add pmic (mt6358) key board node
- add JPEG enconder node

mt7986:
- update memory node
- add clock controller for mt7986a version

* tag 'v5.17-next-dts64' of git://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux:
  arm64: dts: mediatek: update mt7986b memory node
  arm64: dts: mediatek: update mt7986a memory node
  arm64: dts: mediatek: add clock support for mt7986a
  arm64: dts: mediatek: Add mt8192 power domains controller
  arm64: dts: mt6358: add mt6358-keys node
  arm64: dts: mt8183: add jpeg enc node for mt8183
  arm64: dts: mt8192: Add watchdog node
  arm64: dts: mediatek: Correct system timer clock of MT8192
  arm64: dts: mediatek: Correct I2C clock of MT8192
  arm64: dts: mediatek: Correct Nor Flash clock of MT8192
  arm64: dts: mediatek: Correct SPI clock of MT8192
  arm64: dts: mediatek: Correct uart clock of MT8192

Link: https://lore.kernel.org/r/c2064dcc-acdc-c86b-5ef7-cb8e7ae3122f@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01 15:08:16 +01:00
Arnd Bergmann c687cdc66f - Enable Airoha SoC on armv7 config.
- Enable CPU freq for arm64 based SoCs.
 - Enable PMIC based (mt6397) RTC for mt8173
 -----BEGIN PGP SIGNATURE-----
 
 iQJLBAABCAA1FiEEUdvKHhzqrUYPB/u8L21+TfbCqH4FAmId5MgXHG1hdHRoaWFz
 LmJnZ0BnbWFpbC5jb20ACgkQL21+TfbCqH4gSRAAtArvtvjefla4B46XYHo9Pt4x
 9jLApn1LjFaHm9yyAOkcmfFcGIMUnA2yUYlo0ClWz595MR9Nz3u8w4DyqmjQLZK0
 vgBrfhHsWSlqBhAES8vyzIOS+bWBIRg+tN8imb3cK6mMHcn84LLVmXwJhWFWg3CP
 7/3dywApFTTxHIcslDC2Y7XEz392dJKVA4NtAKCm2o/XFWKswV3L8gbYlEx+fVpg
 Ub2DNzVjtrNZiy6DxduQIK6fKV110wpN6Mr9FhkqD7fVeLzONYFHxhEW7GLAQxHB
 YRAjNpVjSvtImxA7KiV0Tbx7N4qyFH/rjZOjrZ1fxVyIUtFBTEWY1W3LT9XZtQkJ
 hDxN4kZLgaX6Ikawem0p8YQKCnj8YVv6R/95i2g1m1tbfp1/l9Xn6mlmcyJls33o
 UCXxekn/KcI31AHzWzhbOVJHoIbMHQvHudPVUcGwlw3zy0HfUB16RkNpJ4Fdd2VP
 sn4/c8mYs0JA0n1+HUMKNpUfNPKgGvRRnmlOvrlSN9o+Hy6Wi/IQQlMtI+PC38eo
 IqdzcRgMdl1T7ylVDGFudpuLPIO1u8KqBheApeBGE904pJpzMG8Rikas7dZenI5n
 j3nxygSs6gUEqr0Hfb5w8uvt+42IBFh/tlS4Dno/B++rJoug31PQVZB1KY870I1V
 rp7qcYbWjtq4jy2JvTg=
 =hCMQ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmId9U0ACgkQmmx57+YA
 GNkzkw//Zp49ncT0DaExqqQTqq2FwxWgT7Fv/+9+wFzKxdjaQVDhLcph8tEnaLnB
 j2jKZwHSrkI5T5yIX4+w5w5ZfJEKYiUjvh5bglIPCsFVTuU9E4nULWgrXwsYV+Yk
 UTCDaBTB4jgqmXUqD+XnjLskuDyMG321wWASsmV2PgR/6MdsI9A4h8Jbm4MJcUer
 u6eDPOAk/0pu3quDg9TLSsY8ptmEZPjSKmXiGu4b+q4AaBpRuFHLN4MrUVV8pJ1w
 DenyGlVLBUMRK954GHqyRDYX8SYnwSu4RUZUsexpuavaFAKuv1bFra/SfNkvoy7e
 t54bIbgVRsrsHlIhKUE7Ag+LDMzFqF1SMJkhZ1923Ai3DsUyt1UvAe5RmUtvKuJX
 YxkKREDlzbC8zCK5nZKjtjwXiRBlu0sqhuKw7zqA90eMiPZZiSK54goo5iuKTYCA
 APHnOgJvZrL9iJEmqsbNUtnWtJg4S2lLKRI7QTNj5HSdNW9f1IPQTe27X5xKt2m7
 f3oieiZD8OumVlWJCjNUgfHYhwUKu3jdkDuyNR1NguoSbwpLBGQ9BaVvzrpY1T8a
 A5OafZwX/HplYyij1M0sdxY0H9tk4qzu674orYywrcj7iIapWRpC6+y1D82SZVbg
 hnMU2kZ9ORtbeYv41HS6+Nv9uXpb3/Nf0QE3pnT4I6zaSHdjE7s=
 =AI73
 -----END PGP SIGNATURE-----

Merge tag 'v5.17-next-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux into arm/defconfig

- Enable Airoha SoC on armv7 config.
- Enable CPU freq for arm64 based SoCs.
- Enable PMIC based (mt6397) RTC for mt8173

* tag 'v5.17-next-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux:
  ARM: multi_v7_defconfig: Add support for Airoha EN7523 SoC
  arm64: defconfig: Enable cpufreq for MediaTek
  arm64: defconfig: Enable MT6397 RTC

Link: https://lore.kernel.org/r/9b90b407-025b-ec78-a626-faccdbc7ab39@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01 11:28:29 +01:00
Arnd Bergmann 29cefaaf2b Qualcomm ARM64 DeviceTree updates for v5.18
New platforms: Snapdragon 625 and Snapdragon 632
 New boards: Google Herobrine R1, Fairphone FP3, SHIFT6mq, Samsung Galaxy
 Book2 and Snapdragon 8 Gen 1 Hardware Development Kit (HDK)
 
 On IPQ6018 the USB reference period is corrected, GICv2m support is
 enabled and the max-link-speed for PCIe is specified.
 
 IPQ8074 adds description of GIVv2m and SMEM, and ensures that TrustZone
 related memory is reserved from Linux.
 
 On the Snapdragon 7c Gen 3 (SC7280) description of display, displayport,
 L3 interconnect, bluetooth, CPU opp-tables are added. Another revision
 of the Google Herobrine is introduced and a bunch of cleanups are
 introduced.
 
 On Snapdragon 845 new support for the SHIFT6mq device is introduced, the
 OnePlus devices gains fuel gauge and the platform gains GSI DMA support,
 which is enabled for SPI (for now).
 
 On the Snapdragon 850 based WindowsOnSnapdragon laptops, initial support
 for Samsugn Galaxy Book2 is introduced and the Lenovo Yoga C630 gains
 description of its backlight controls.
 
 The Snapdragon 625 platform (MSM8953) the thereof derrived Snapdragon
 632 platform is introduced, with initial description of the Fairphone 3.
 
 Fairphone 4 on the SM7225 platform gains proper WLED configuration.
 
 On Snapdragon 855 (SM8150) description of the limits hardware (LMh) is
 introduced and the SPI and I2C devices are wired to the GSI DMA controller.
 
 On Snapdragon 865 (SM8250) the CPU and cluster idle states are
 introduced, the MSI interrupts for PCIe 1 and 2 are corrected and the
 CPUfreq driver gains knowledge about thermal pressure interrupts.
 
 On Snapdragon 8 Gen 1 (SM8450) LLCC, interconnect and remoteproc
 descriptions are added. The SM8450 Hardware Development Kit is
 introduced and the QRD has its remoteproc instances enabled.
 
 Cluster idle and RPMh parameters are corrected on SM8150, SM8350 and
 SM8540.
 
 The IPA device on SC7180, SC7280 and SM8350 gains knowledge of the AOSS
 QMP mailbox, allowing it to enable retention of IPA registers during
 power collapse.
 
 DeviceTree validation issues related to thermal zone naming, missing
 CPU, device and platform compatibles, APR, Google EC PWM, DB410c sound,
 QCS404 opp-tables and SM8250 PCIe nodes are corrected.
 
 A bunch of cleanups and style fixes for MSM8992, MSM8994, MSM8996 and
 MSM8916 are introduced as well.
 -----BEGIN PGP SIGNATURE-----
 
 iQJPBAABCAA5FiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmIdsU4bHGJqb3JuLmFu
 ZGVyc3NvbkBsaW5hcm8ub3JnAAoJEAsfOT8Nma3FyaMP/0gQTc8OAvNRtsnir8th
 uYgPu3OgIdJy85xE0ql5s9o2TLVgnLVTOpAimUSJsxds0GWwsFMfmE+cFaz7bdmw
 Qf30xIO40IJctft79uFhW1JjrBvjHzh1LqTWNHXDN/x5ZhcDuP+xUPvQxAxf8gfu
 1VCB1ZwfLmA5la/gZ9Gg5xoHM2UdbOwlWx/v7Tx/H3ra0LCOFwfMgA1ljaavmnlU
 tOkcRROVgNNSDBeROBWG1tug6Nb9MOjaCQXmEIaSZkzCFmxo8+rxLbySzVU6esOr
 DUp7plV0MLFG+4i9tG5VmOP+l9oZ7pyJE002v575oO7W8muLB0VqGmHRwxnHcmTF
 rMuIcpRgdXzc5SjckWQC67GjL0qDAkI4tPcjKIjepP3ODFo2K0kt9oXPNUgbCyVO
 DWL98UrXhZii4482+TmikceZe5mYhFoIq1dX5fzS0yXromq+QnlM5UwPrjhi1dGz
 KWUIDt7BjoP8trfukNc3X61vxDU7ca5BlGwoJnH0X3Fh7b24BpNHSy7mF1sE0cfF
 bn89rjm9sEf9gK9jbpkp2Xwit4wjAp8E95dsp/+J1HBV6t4L20vTBrkXwh2zRLDN
 SDF/Nfof5NDITEHyIRbyP9Q8Ilbk8QdSllWyUkJa4I8/3k1C1J+p1oE3nocrtJWJ
 LH5yCnajaLzPm/PCOyBflqmM
 =rj9c
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmId8moACgkQmmx57+YA
 GNmEVxAAhaKNPlZp4stzDhGwdwCI8heagtON6QN012QTu2KYLLh/5rFBooRhAMef
 7fKk/LcNxOA6vZgOkYks4Hm5y/VwXAaKhOMEqlQ+D5JGe1Pq5iZVXt35xGpuHfrF
 edcbyjy6XckjBVFpP2+wT+THmcwQgZLFsO2C9eRn/AiAY8P2akM+bG8g+giejT+f
 KtL39P6TtP2dqiuyrXd/lua1TD3X5cubugw5JbsGwPk6SqoSOMkiSJbgIeH4oQan
 qqu+V/S9cCKijzV34IqtudMUUF3Z+BZDZQ0snU0iiuZ8B+W963lv+O6N7azeN/h9
 a0q/YuAr9+DMt8kVfI8cIpf4lRz9wS2jc7/0wbXn6UjjoxIRdcYz7jR5IVtNysNq
 syqh9e9Se6bJFwQ2vCvkOuZZ8JSjj/lWcTBNjMI5QEAm9gfQKUmK+cNkQWIenll/
 OA50XzSA5+AvSKvvG0TnLvfIAbkCsRwf3+XVXnIjvfYD4e2mZepbHBWhC6PTXyVO
 V79jLfxM4tj891t/w9qsaEuCF5GfXT4w+Mii+mHNQtm7tfLz3NDnwz68QuogjUmp
 9L6TpmbvmCwmOv1mHVk9kQPckG25CsaBg2CGIoFI3MTjMRPycIoiOpKSd+u4NejK
 kLlia0qBIJVCGllhDLgct51OUcG6Am6W9bl32L8KLNXHPNiTZYc=
 =EUCM
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-for-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt

Qualcomm ARM64 DeviceTree updates for v5.18

New platforms: Snapdragon 625 and Snapdragon 632
New boards: Google Herobrine R1, Fairphone FP3, SHIFT6mq, Samsung Galaxy
Book2 and Snapdragon 8 Gen 1 Hardware Development Kit (HDK)

On IPQ6018 the USB reference period is corrected, GICv2m support is
enabled and the max-link-speed for PCIe is specified.

IPQ8074 adds description of GIVv2m and SMEM, and ensures that TrustZone
related memory is reserved from Linux.

On the Snapdragon 7c Gen 3 (SC7280) description of display, displayport,
L3 interconnect, bluetooth, CPU opp-tables are added. Another revision
of the Google Herobrine is introduced and a bunch of cleanups are
introduced.

On Snapdragon 845 new support for the SHIFT6mq device is introduced, the
OnePlus devices gains fuel gauge and the platform gains GSI DMA support,
which is enabled for SPI (for now).

On the Snapdragon 850 based WindowsOnSnapdragon laptops, initial support
for Samsugn Galaxy Book2 is introduced and the Lenovo Yoga C630 gains
description of its backlight controls.

The Snapdragon 625 platform (MSM8953) the thereof derrived Snapdragon
632 platform is introduced, with initial description of the Fairphone 3.

Fairphone 4 on the SM7225 platform gains proper WLED configuration.

On Snapdragon 855 (SM8150) description of the limits hardware (LMh) is
introduced and the SPI and I2C devices are wired to the GSI DMA controller.

On Snapdragon 865 (SM8250) the CPU and cluster idle states are
introduced, the MSI interrupts for PCIe 1 and 2 are corrected and the
CPUfreq driver gains knowledge about thermal pressure interrupts.

On Snapdragon 8 Gen 1 (SM8450) LLCC, interconnect and remoteproc
descriptions are added. The SM8450 Hardware Development Kit is
introduced and the QRD has its remoteproc instances enabled.

Cluster idle and RPMh parameters are corrected on SM8150, SM8350 and
SM8540.

The IPA device on SC7180, SC7280 and SM8350 gains knowledge of the AOSS
QMP mailbox, allowing it to enable retention of IPA registers during
power collapse.

DeviceTree validation issues related to thermal zone naming, missing
CPU, device and platform compatibles, APR, Google EC PWM, DB410c sound,
QCS404 opp-tables and SM8250 PCIe nodes are corrected.

A bunch of cleanups and style fixes for MSM8992, MSM8994, MSM8996 and
MSM8916 are introduced as well.

* tag 'qcom-arm64-for-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (96 commits)
  arm64: dts: qcom: sdm632: Add device tree for Fairphone 3
  dt-bindings: arm: qcom: Document sdm632 and fairphone,fp3 board
  arm64: dts: qcom: Add SDM632 device tree
  arm64: dts: qcom: Add PM8953 PMIC
  arm64: dts: qcom: Add MSM8953 device tree
  dt-bindings: arm: cpus: Add Kryo 250 CPUs
  arm64: dts: qcom: msm8916-longcheer-l8150: Add light and proximity sensor
  arm64: dts: qcom: align Google CROS EC PWM node name with dtschema
  arm64: dts: qcom: Add support for Samsung Galaxy Book2
  arm64: dts: qcom: msm8996: convert xo_board to RPM_SMD_BB_CLK1
  arm64: dts: qcom: msm8996: add cxo and sleep-clk to gcc node
  arm64: dts: qcom: sdm845: add bi_tcxo to camcc
  arm64: dts: qcom: sdm845: enable dma for spi
  arm64: dts: qcom: sdm845: Add gsi dma node
  arm64: dts: qcom: sc7280: Add cpu OPP tables
  arm64: dts: qcom: sc7280: Add EPSS L3 interconnect provider
  arm64: dts: qcom: sm8450: Add LLCC/system-cache-controller node
  arm64: dts: qcom: ipq6018: drop the clock-frequency property
  arm64: dts: qcom: ipq8074: drop the clock-frequency property
  arm64: dts: qcom: sm8450: add interconnect nodes
  ...

Link: https://lore.kernel.org/r/20220301053929.1809684-1-bjorn.andersson@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01 11:16:09 +01:00
Arnd Bergmann 35e33a24f8 - Set display pipeline to DSI on mt8183 kukui jacuzzi
- Fix display for mt8192 based boards by fixing the routing table
 -----BEGIN PGP SIGNATURE-----
 
 iQJLBAABCAA1FiEEUdvKHhzqrUYPB/u8L21+TfbCqH4FAmId5aQXHG1hdHRoaWFz
 LmJnZ0BnbWFpbC5jb20ACgkQL21+TfbCqH4D7Q/9EN56TtY2CJcovK0FUTlf5mXL
 iPTOm5VAyWZ9/pIFMaO4FQu5PNXlgULf026TGdrk3KpxqtVk4SIdFqw7T7dVUpYa
 ikpQvM6WCUrAqFu63drEEAPLZiHbajtlUqi4UyPgD3sxDDZqp5F/Y90E8XowuNU2
 AQFWcCYDSfsA56bng1KmmsSEe7o4+blcBnoF8R9FRtRA37J8MuFlS168aOSJoDrC
 rx9qEQerqd1kaqhKfhe1eMoBlT1Ljw/xtedugW0yFBkOYe++BuVtpzL6nzVa5e56
 5/3hi8tJvdhe+z7vILQTqOumae3E9RaMYmgU9j4D6fc35A7Yf8KijFF7bjHGd+1m
 fmK/nq21Aw2I3MkFHe1u8EWc6pnrigwL010Vs3HpfWzzSRVex8eGgVMk0ihUmVic
 QoxWV9ThMtyjgbr8e/yxYKJYxdN83wRdMqaVzf4u1/7UQO8O6Q8CxwydnKZcUBsn
 5KrXwtIc8c1dscfHJq92yfnyIHV/GxN9PV0DcMzFGlhcTX5Pf5A/rqPVQSt0J//g
 gtZQqbk93F12iAs15OySaCyKYylOkyV//9zXhaa/WMlW3lv1lQrNSDMgSVbCMdjn
 RrLTeKncHZ+Xo3laRmsn5Hr+86m8ezosjo5zQrHVC/42qU6YXk+0XC5ccU278vZt
 Lc9+zi791eTQnWd8mRo=
 =LNoR
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmId610ACgkQmmx57+YA
 GNn6GRAAjcv0OkKxpM2CGEjI34zAxAAL8cIm/YwhzlOkPCmquYmXH66YcaVU4HQ+
 8/0JaQiVCGUJqnj5IBSk6bJfff9aX5aq8v7VLJeHdVeeA4K8Gq+Gf7UmRS59SY6y
 rLZzUE2QzoPfKpQorWWoixgWDT+YkYKRIp7BYw2qLETxwA2YU++zVdgp8k1kaNkN
 i1iO5Z/WGWl9AlEpNXvClYaCNcrpbDdkpVsbV6TPX6tYVYnV5Q333GGeiT9MpAit
 pURw10h1ldy9NINz8rKBloQ1vxBg/HjLUDgKy6LcEp2XpFBknRGq2puxJHG8ouvA
 6yZrdu6wDjy30EkMTnMHDv6NLt31zkK0t7G4Z/3qW77zHuqAl6cYu47HkFvaYAiR
 7acichMGDZ2tQ1qcIfkybJt+MwKX1YkvjaWTe/SRIsJwc5Nffyeh5dOM47qBcHz7
 t1l3lCUygREsDVMvKVjXpfd6oM/en5sLJORYVLKO7baAzjiVnvSBBDxIgcPTTdgW
 /egV9LuPYpVLmf6Kv/IGhfmj7EuME7vKon+pxhl4tKyLuVRk5svnqUO8c+/+EXyq
 FofKkf6DGaFNEnwQ7snhbuRz6RbTjltXOE1+IGL1tAXpON/HjHEVyYNXWOGwz/WB
 52OQlaUjKpvAMKr3lR+e4hikfRuKNVhxQAsNi32uBArZLbreXpU=
 =2Ms1
 -----END PGP SIGNATURE-----

Merge tag 'v5.17-fixes-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux into arm/fixes

- Set display pipeline to DSI on mt8183 kukui jacuzzi
- Fix display for mt8192 based boards by fixing the routing table

* tag 'v5.17-fixes-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux:
  soc: mediatek: mt8192-mmsys: Fix dither to dsi0 path's input sel
  arm64: dts: mt8183: jacuzzi: Fix bus properties in anx's DSI endpoint

Link: https://lore.kernel.org/r/8eb8510d-c597-4fee-e4b3-924b6d4bb3be@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01 10:46:05 +01:00
Arnd Bergmann e1d7eed180 Qualcomm ARM64 DeviceTree fixes for 5.17
This starts off by fixing an issue introduced in a bug fix in the
 global clock controller, where the symbol clocks for UFS would
 end up picking the wrong parent clock which breaks UFS.
 
 It then makes sure that the reference clock for the USB blocks are
 enabled, even with booting without clk_ignore_unused.
 
 It corrects the apps SMMU interrupts defintion by adding a missing
 interrupt in the list.
 
 Lastly it disables the Qualcomm crypto hardware (for now) on the Lenovo
 Yoga C630, to prevent the cryptomanager tests during boot from crashing
 the device.
 -----BEGIN PGP SIGNATURE-----
 
 iQJPBAABCAA5FiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmIdk9IbHGJqb3JuLmFu
 ZGVyc3NvbkBsaW5hcm8ub3JnAAoJEAsfOT8Nma3Fi0UQAJEw6/F9aFsdaGRHO3D+
 XhgEooCMMbF0QNewWdw5FXoYW46SH2enl3monIHSAbyoKO6mkzXxBmuOOfpIvkNj
 mmqW6gOhsqa4ZUlAwJ9Q1OzQUuOfaLtvORMk0NSi6BohvNqtsN1mVNbYUlpEiYLj
 9O2QHoLlKoq+yGUMvFOb+dLScGI2oLfqpfewLW+wRSNuDfLhZxbd850MeWH0ZpuQ
 qOPSF+2WStVvf9ZZSijSPqZBl5gtf0fHiwXBJQfxdQvHcAMk4OKKZySSl8xJhX5i
 Tgn/+5+B2bLIga1DdmfYu1y3h/05w2420qdVkouh5ue0YtZfp1I6LRUwJfNLnkzA
 elu+p4N5g+8QstSV0ntN5cBpQSqqQodXOolcxDG9K/GdZwHdsOsC4Mgfowg6RMRI
 hTWmGIT+ZDfXUlpJa6ZLv3qUEm4MqLKbNcVYYKqJD7UJJxOlw46owKvjJpJwAyxP
 yzkJhXCzDb9rV6pPqj3XslWIl25xNipi5Spm8EXkL5SyZijF9RLlzCqnnMjGueNp
 GHl4hKMJeyWxoOuiFhF7oCymQLnroEgzAJddWHqmH4lT2CZuri1yLiZGiTTBm8B/
 Q7SuT9sAqQKUKM25o6XPdUS7JGLDVDIVSGORIQLeYLc8IddBCfDGIf7YJAzBhs0x
 ROuQCmuSyUncsjO5AEXdOrSK
 =soai
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmId60sACgkQmmx57+YA
 GNl98w/+KWpsJ/FLxKqSsCjeqp2j6x4wkq/krSLelCI56G3BLhdI8SxnD4GUdiA3
 yR5B8Hev1JFp/YlqU2F8JSyDwKKUkp1ghP1KuAkl1CWbgZo5TOGwOw4ZqBH8jUgd
 mKNMfA+6m7Hqcwpq6ojN6r2HZKg315N22/egRsOPpx6Du5iGKGeepjiGXbixVyWe
 EdI9gDKCuDSqg2Ium1z0oKwPUNTbFBHkrMXYDmlJFoSz63lJEpDvoJZHKx05hri1
 S/PCzcoBEOVk91jKlrC1lnlofpCVcuoTnZ72awAOyIwMrvcjkw+nB6E3zHSuD818
 RFBUgGu5CwfdhShMr1J8kcOgvhobnSgs0YH7shY99BsxJkwCwUkjbUJN/ihG4TN6
 qnGvr2PbA6vphBIDPLcXj2gBSJyB8feu7xD9Su+H+6BgriP0hLQ0WOIMbznM808U
 3fR8K0tqzfPx9MeEcdOYZ29wvATUn6++GZjszZEeDVkpqQJIhbscrHOZhOKgz/TR
 l62chtqp1wt/hpspjzYOfDCbETS+qBhXtgz4Y8RArx7fGbdKbjZOMdAaoVzPQuKG
 tSsjDH+7OpnBQ4+PeDd9044P8h6XyYT9SE5CqDI5WfNOLZve2fZuepbEwQI9KnKz
 qzkFIyDq518IMWvTJMc2ethrgTrBlGp02fk7o6v1Jo1VwoWDhwY=
 =9VJk
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-fixes-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/fixes

Qualcomm ARM64 DeviceTree fixes for 5.17

This starts off by fixing an issue introduced in a bug fix in the
global clock controller, where the symbol clocks for UFS would
end up picking the wrong parent clock which breaks UFS.

It then makes sure that the reference clock for the USB blocks are
enabled, even with booting without clk_ignore_unused.

It corrects the apps SMMU interrupts defintion by adding a missing
interrupt in the list.

Lastly it disables the Qualcomm crypto hardware (for now) on the Lenovo
Yoga C630, to prevent the cryptomanager tests during boot from crashing
the device.

* tag 'qcom-arm64-fixes-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  arm64: dts: qcom: c630: disable crypto due to serror
  arm64: dts: qcom: sm8450: fix apps_smmu interrupts
  arm64: dts: qcom: sm8450: enable GCC_USB3_0_CLKREF_EN for usb
  arm64: dts: qcom: sm8350: Correct UFS symbol clocks

Link: https://lore.kernel.org/r/20220301033526.1801295-1-bjorn.andersson@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01 10:45:47 +01:00
Sam Shih 809967d76e arm64: dts: mediatek: update mt7986b memory node
This patch updates the format of memory node in DT adding the
device_type.

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Link: https://lore.kernel.org/r/20220119123537.9968-3-sam.shih@mediatek.com
[mb: fixed commit message]
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-03-01 09:49:02 +01:00
Sam Shih fbaac5b105 arm64: dts: mediatek: update mt7986a memory node
This patch updates the format of memory node in DT adding the correct
device_type.

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Link: https://lore.kernel.org/r/20220119123537.9968-2-sam.shih@mediatek.com
[mb: fixed commit message]
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-03-01 09:47:58 +01:00
Sam Shih 1f9986b258 arm64: dts: mediatek: add clock support for mt7986a
Add clock controller nodes, include 40M clock source, topckgen,
infracfg, apmixedsys and ethernet subsystem.

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Link: https://lore.kernel.org/r/20220119123624.10043-2-sam.shih@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-03-01 09:27:58 +01:00
Chun-Jie Chen 994a71a3c9 arm64: dts: mediatek: Add mt8192 power domains controller
Add power domains controller node for SoC mt8192

Signed-off-by: Weiyi Lu <weiyi.lu@mediatek.com>
Signed-off-by: Chun-Jie Chen <chun-jie.chen@mediatek.com>
Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://lore.kernel.org/r/20210825010426.30303-1-chun-jie.chen@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-03-01 08:49:37 +01:00
Mattijs Korpershoek a97af4b52b arm64: dts: mt6358: add mt6358-keys node
This enables the power,home keys on MediaTek boards with a mt6358 pmic.

Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Link: https://lore.kernel.org/r/20220121140323.4080640-5-mkorpershoek@baylibre.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-03-01 08:43:53 +01:00
Maoguang Meng 462f6c4a7c arm64: dts: mt8183: add jpeg enc node for mt8183
Add jpeg encoder device tree node.

Signed-off-by: Maoguang Meng <maoguang.meng@mediatek.com>
Signed-off-by: Hsin-Yi Wang <hsinyi@chromium.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20211206130425.184420-3-hsinyi@chromium.org
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-03-01 08:29:49 +01:00
Kuldeep Singh c953c764e5 arm64: dts: ns2: Fix spi-cpol and spi-cpha property
Broadcom ns2 platform has spi-cpol and spi-cpho properties set
incorrectly. As per spi-slave-peripheral-prop.yaml, these properties are
of flag or boolean type and not integer type. Fix the values.

Fixes: d69dbd9f41 (arm64: dts: Add ARM PL022 SPI DT nodes for NS2)
Signed-off-by: Kuldeep Singh <singh.kuldeep87k@gmail.com>
CC: Ray Jui <rjui@broadcom.com>
CC: Scott Branden <sbranden@broadcom.com>
CC: Florian Fainelli <f.fainelli@gmail.com>
2022-02-28 13:31:01 -08:00
Linus Torvalds 719fce7539 ARM: SoC fixes for v5.17, part 2
The code changes address mostly minor problems:
 
  - Several NXP/FSL SoC driver fixes, addressing issues with error
    handling and compilation
 
  - Fix a clock disabling imbalance in gpcv2 driver.
 
  - Arm Juno DMA coherency issue
 
  - Trivial firmware driver fixes for op-tee and scmi firmware
 
 The remaining changes address issues in the devicetree files:
 
  - a timer regression for the OMAP devkit8000, which has to use
    the alternative timer.
 
  - A hang in the i.MX8MM power domain configuration
 
  - Multiple fixes for the Rockchip RK3399 addressing issues
    with sound and eMMC
 
  - Cosmetic fixes for i.MX8ULP, RK3xxx, and Tegra124
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIc+ooACgkQmmx57+YA
 GNnNhQ/+O3PntP8vYNO50tteeFVuClgyb4hA2P2xx6Kis4dLSTDaUcTd3745roLh
 mT6k90fZH3nBKQHzDSlc5Pf0mpskuJFOwt96wDC6a40VAW7+VwTFDdFDOG3z/KyX
 +8yXWv613EjzE5IYx0LEt0W2/2CaHfzysu99o1J6Wrp0DkHyh7lmgvrRzdckYCqZ
 Bj4ehCyaMTFyoSyFJDrs/+HDeN7eeeEwS/UXzzvQnNfne+kKVsJKcpfg6pPsLjOV
 oMadkV42uLB79XZs1R5/4bs2NL7ceFphtDovKaeZ9z3HKF0ZFudYfq93ymflS/df
 l/uXBX6eRrT8C6IuJSlCN8vZWD9vLOzcBTrNx7mbk9gcXjaN91tXu7TJqurWu8xk
 t5F7H1gfPcVD7jTGdD9cArqJTJAFTeyMB0eUFdGhX7KhDo+oeJQ49HTzjx8TEX6y
 oEL6LnGBFYvnV6TYZtkp/aPvaqFaJ4j5WT+VzsVina8yOAKb0bWizoC3I2IvyNXS
 aX3rSuJ3vYfm6wmcdx3yCS0wAD7mqOip7OeuG43L8pcnc4Fgz/cFtzsB6shl9oNj
 e41/xfvnyn+mGn2QnZ41XjcnZieRcwZ62OaMfMhd3Oa7Xj7XD0lE5fFd7LnfJ0pn
 5xsMpHo+AuPHO1YyMFmMopqYNuromtQLmNCdg6LDnsXAnL7g45c=
 =NNpd
 -----END PGP SIGNATURE-----

Merge tag 'soc-fixes-5.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC fixes from Arnd Bergmann:
 "The code changes address mostly minor problems:

   - Several NXP/FSL SoC driver fixes, addressing issues with error
     handling and compilation

   - Fix a clock disabling imbalance in gpcv2 driver.

   - Arm Juno DMA coherency issue

   - Trivial firmware driver fixes for op-tee and scmi firmware

  The remaining changes address issues in the devicetree files:

   - A timer regression for the OMAP devkit8000, which has to use the
     alternative timer.

   - A hang in the i.MX8MM power domain configuration

   - Multiple fixes for the Rockchip RK3399 addressing issues with sound
     and eMMC

   - Cosmetic fixes for i.MX8ULP, RK3xxx, and Tegra124"

* tag 'soc-fixes-5.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (32 commits)
  ARM: tegra: Move panels to AUX bus
  soc: imx: gpcv2: Fix clock disabling imbalance in error path
  soc: fsl: qe: Check of ioremap return value
  soc: fsl: qe: fix typo in a comment
  soc: fsl: guts: Add a missing memory allocation failure check
  soc: fsl: guts: Revert commit 3c0d64e867
  soc: fsl: Correct MAINTAINERS database (SOC)
  soc: fsl: Correct MAINTAINERS database (QUICC ENGINE LIBRARY)
  soc: fsl: Replace kernel.h with the necessary inclusions
  dt-bindings: fsl,layerscape-dcfg: add missing compatible for lx2160a
  dt-bindings: qoriq-clock: add missing compatible for lx2160a
  ARM: dts: Use 32KiHz oscillator on devkit8000
  ARM: dts: switch timer config to common devkit8000 devicetree
  tee: optee: fix error return code in probe function
  arm64: dts: imx8ulp: Set #thermal-sensor-cells to 1 as required
  arm64: dts: imx8mm: Fix VPU Hanging
  ARM: dts: rockchip: fix a typo on rk3288 crypto-controller
  ARM: dts: rockchip: reorder rk322x hmdi clocks
  firmware: arm_scmi: Remove space in MODULE_ALIAS name
  arm64: dts: agilex: use the compatible "intel,socfpga-agilex-hsotg"
  ...
2022-02-28 12:51:14 -08:00
Greg Kroah-Hartman d4ab5487cc Merge 5.17-rc6 into tty-next
We need the tty/serial fixes in here as well.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-02-28 21:48:16 +01:00
Greg Kroah-Hartman ca9400ef7f Merge 5.17-rc6 into usb-next
We need the USB fixes in here, and it resolves a merge conflict in:
	drivers/usb/dwc3/dwc3-pci.c

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-02-28 21:42:36 +01:00
Marek Behún 5344930c64 arm64: dts: marvell: armada-37xx: Add clock to PCIe node
The clock binding documents PCIe clock for a long time already. Add
clock phande into the PCIe node.

Signed-off-by: Marek Behún <kabel@kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
2022-02-28 16:51:32 +01:00
Hou Tao 1902472b4f bpf, arm64: Support more atomic operations
Atomics for eBPF patch series adds support for atomic[64]_fetch_add,
atomic[64]_[fetch_]{and,or,xor} and atomic[64]_{xchg|cmpxchg}, but it
only adds support for x86-64, so support these atomic operations for
arm64 as well.

Basically the implementation procedure is almost mechanical translation
of code snippets in atomic_ll_sc.h & atomic_lse.h & cmpxchg.h located
under arch/arm64/include/asm.

When LSE atomic is unavailable, an extra temporary register is needed for
(BPF_ADD | BPF_FETCH) to save the value of src register, instead of adding
TMP_REG_4 just use BPF_REG_AX instead. Also make emit_lse_atomic() as an
empty inline function when CONFIG_ARM64_LSE_ATOMICS is disabled.

For cpus_have_cap(ARM64_HAS_LSE_ATOMICS) case and no-LSE-ATOMICS case, the
following three tests: "./test_verifier", "./test_progs -t atomic" and
"insmod ./test_bpf.ko" are exercised and passed.

Signed-off-by: Hou Tao <houtao1@huawei.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20220217072232.1186625-4-houtao1@huawei.com
2022-02-28 16:27:22 +01:00
Daniel Borkmann 79e7ce2e51 Merge branch 'for-next/insn' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/arm64/linux
Will Deacon says:

====================
On Tue, Feb 22, 2022 at 10:38:02PM +0000, Will Deacon wrote:
> On Thu, 17 Feb 2022 15:22:28 +0800, Hou Tao wrote:
> > Atomics support in bpf has already been done by "Atomics for eBPF"
> > patch series [1], but it only adds support for x86, and this patchset
> > adds support for arm64.
> >
> > Patch #1 & patch #2 are arm64 related. Patch #1 moves the common used
> > macro AARCH64_BREAK_FAULT into insn-def.h for insn.h. Patch #2 adds
> > necessary encoder helpers for atomic operations.
> >
> > [...]
>
> Applied to arm64 (for-next/insn), thanks!
>
> [1/4] arm64: move AARCH64_BREAK_FAULT into insn-def.h
>       https://git.kernel.org/arm64/c/97e58e395e9c
> [2/4] arm64: insn: add encoders for atomic operations
>       https://git.kernel.org/arm64/c/fa1114d9eba5

Daniel -- let's give this a day or so in -next, then if nothing catches
fire you're more than welcome to pull this branch as a base for the rest
of the series.
====================

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20220222224211.GB16976@willie-the-truck
2022-02-28 16:22:58 +01:00
Arnd Bergmann d271758452 TI K3 device tree updates for v5.18
Since (ti-k3-dt-fixes-for-v5.17):
 Fixes:
 * Cleanups for flash nodes across K3.
 * gic-v3 backward compatible registers
 * j721s2 interrupt parent fixup for wakeup GPIO
 
 New:
 * AM62 SoC and AM62-SK board
 * wdt support for am64
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE+KKGk1TrgjIXoxo03bWEnRc2JJ0FAmIct6oACgkQ3bWEnRc2
 JJ0IphAAlXcsR2Eu7QrVn3yD+kQmVGuiiwpSZ4byQ1ZqfzmqCLsmTEAnQuNcEv00
 wRiQf//JrdKb81Uho0Ag0a5V9Hwm66aFx80wxhCdZ1oYGq/MbdKOm76GYwJCqQqZ
 n3TSnRmXYSIdV0T3TfmdmOie+OHosQ+DpICXKC5g5ZMkrQK7t6oS7M/8FJx+UfsE
 2FgNzepdPrY241x02CnAPirdL2ptAiCO7qIeLyxCk1yQjXyCsmSLyGDScHnM+6PA
 E9kO0XA0AeTlrp3U7SzqHAL2rmxXnFP92f1gLC2z3aQ5pwg5kglL/Ll3VwTRBUx9
 FfX3sRE1SHLfTTVascgLr8oab/xJ8KR6228Gu/FAOR74i4s0h3kgHppvU3h3HgAe
 PFm6oWLjQREosb7vmkhMursd3kqkrlg8Kq6dqxAKzcB36QbpkAWlXfpts8g58U2R
 M3EiYTK81mOVP1V1eUAXu5LdGsTpOFcS7FlYk6l1PbzJPQAkbmSwIgd911kAQsUy
 Qjj000H3Rv7tH1LluyBR/vm8B3MVrl2PMTAHhi9wV8zaNiqTJWsQO3NgmaPHzYb1
 VFGxf+75pdDnq2+DdbyGmvgQSZ1n3fRa/QFvqO62in13R7uwdUpLzWCouLXkdHPu
 hs2vVo1bzJMVMkihjRKrlkLBjsO6HTKUL2AC9Du8BgAkRwh+aPY=
 =mVxU
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIc2nEACgkQmmx57+YA
 GNlIvA/9HiZZ4C42kZ4MgmwysvF1Dx+j5nwhDyFBFmLdlesiy/0LcdanyZhY1vAp
 kwAmMC4xOnq5o5QAH0F5GuMXYptYk3grJ7rMb4LpQaSeog/74VhRBAzmYafobAqu
 uongkSBk+ZUXDFwYQ80JZthOKTJcgBKDA0uYj1NQ8GVDKTwFsBoN29XWo5fkVbi7
 NBu9vyAjcvhZXW7lUFz9qeoZ1shuQlUBjTfPfL2Fgt8ravNsBttqk382Kg3fd/vN
 EMsjWfL06iBXayzNfoShrZ2y3ngbxIl9t8QiV8y1Mwzz0KoFZimWjnHvUCR3H55b
 GVj4Xy6qXAFUZchzd1JeypnT+jHMeJhCSkZkYvDUePFvJxd7i21sdOIjAA8fLERL
 cR32Nx24Z+4I2Mjq1FGV6RaybUd/zsKITfRoGJj2+iymw7tDnmZnkO8XlQAcvxgq
 ByBang7hwHYf/5XWm6t+SypBv3Oc7mrj8w34LUVOHz92UXWS0B0LVoVB6j28L5yf
 NaC3pV0VmH1LT6zobkJP7Ykz0EggjQEmUrWogsEN35B7SNZeAlehGis0qdx+di00
 S/Q9eb4a9Wu7dS8q16DaxEf/JNAL0nbpMiRQdwAhyENaN3nAIRaJcLEWOpr6/d7a
 MxW6wZ578XFqnUppVCm6fbtXUOYBK4A2Y4/2WqX2Zvk8rqRraCQ=
 =uMlU
 -----END PGP SIGNATURE-----

Merge tag 'ti-k3-dt-for-v5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into arm/dt

TI K3 device tree updates for v5.18

Since (ti-k3-dt-fixes-for-v5.17):
Fixes:
* Cleanups for flash nodes across K3.
* gic-v3 backward compatible registers
* j721s2 interrupt parent fixup for wakeup GPIO

New:
* AM62 SoC and AM62-SK board
* wdt support for am64

* tag 'ti-k3-dt-for-v5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux:
  arm64: dts: ti: Add support for AM62-SK
  arm64: dts: ti: Introduce base support for AM62x SoC
  dt-bindings: pinctrl: k3: Introduce pinmux definitions for AM62
  dt-bindings: arm: ti: Add bindings for AM625 SoC
  arm64: dts: ti: k3-*: Drop address and size cells from flash nodes
  arm64: dts: ti: k3-*: Fix whitespace around flash@0 nodes
  arm64: dts: ti: k3-j721s2: Fix gic-v3 compatible regs
  arm64: dts: ti: k3-am64: Fix gic-v3 compatible regs
  arm64: dts: ti: k3-j7200: Fix gic-v3 compatible regs
  arm64: dts: ti: k3-j721e: Fix gic-v3 compatible regs
  arm64: dts: ti: k3-am65: Fix gic-v3 compatible regs
  arm64: dts: ti: k3-j721s2-mcu-wakeup: Fix the interrupt-parent for wkup_gpioX instances
  arm64: dts: ti: k3-am64: Add ESM0 to device memory map
  arm64: dts: ti: k3-am65*: Remove #address-cells/#size-cells from flash nodes
  arm64: dts: ti: k3-am64-main: Add RTI watchdog nodes
  arm64: dts: ti: k3-j721s2-common-proc-board: Alias console uart to serial2
  arm64: dts: ti: k3-j721s2: Move aliases to board dts

Link: https://lore.kernel.org/r/20220228120711.xdburehxs5gnwxko@capacity
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-28 15:21:37 +01:00
Arnd Bergmann 2cd76c2aba Samsung DTS ARM64 changes for v5.18, part two
1. Minor fixes and cleanups in newly introduced support for Exynos850.
 2. Add basic support for Exynos7885 and  Samsung Galaxy A8 (2018):
    SM-A530F.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmIaoIgQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD16CtD/wIWks7DuJBI4l3CGqWe+30xjIuTbcClWn9
 cykB6hONIz1Gpw+l2i/RFaYIDYD+HA9FyCC+dRvL+SuGp+awFqcgIOtTs3YzBVti
 Tu3XKX2q9xodGeMx/1vDkAfg9dpKgIs9ua4DMYeTW0B7/WTaX7YUayEDHIV4E5Z4
 FUSjD1S+JHyFQXpJrU+vlGTyLx2IbUW7ybvh0wcEdCeqVdmpg10tgjaZiKBGbNGe
 m56Wnq2v0hMVN7Ol60WUuvbKS5+l1UJtbOQQEiHU/t7qHji2zO1mMrdXiAcqp4CE
 9SPPS5uOQCVkNrNdpICQwDx+A4Fb96I1oiOoZ30EX/5VWLU2tCrWdYltRqqeYtIF
 vq9Zha4WCj80OFYfcXzHYyZf4E+OqqORZYE8plXoO7kphqRQrX0GV6MT+Sh2hmks
 zZosZUmuKj0bKZx41gDmilS5Q5a4eg0hoRFxl7DqBBulAgACJalfiLxlJXyOymwg
 a1hYrdWbUKhtyZ272Scsd3PG1kDqboanVp0ziIXgB4OWHefTeYGo84x4rDGU8Ttf
 nB2sSxalTjSWHvmywLG0iHWdaGkXKqvXS1pomvHDCNnabBCXKxgpXFuUNbrE+Nre
 5FTwveJ4CrSZbKdXcLDtXwx9Z8f+7PmROm+1E0XT7ohZXSezrxTCfYyVFyOlv3Zm
 315FnazzXw==
 =+2r/
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIc2b0ACgkQmmx57+YA
 GNkFnBAAtnETyanWN205FGTIYpP0Up8Vj+4q1fultPqzcZ3bK0uo2PNl7iS3FyUW
 ix75d8onM/dakkjIRAUTsnv6oK+9LrmsPUBg4zac9AbEUo8w3sGlTeQwAHQ5kuDS
 WlZHHzkB2GFeZzwlKCYMuCgWFyOzizl9kTQmRxRcJYYd5/VzpdlcCJwwdlN5Rcvn
 4v3Mtr0Mz4YyS8Ij9EKX/xJ18S6VRU6tbHhlU5EVW4QpUbqAd3kUh2IbUO+PuFjk
 rs2kicGOP3BcmIPDa8ABscf//50NLIAHBFvl55MzL6Z+NPWdfg7EhlUGIXIs786p
 XDEUMNzwPGmba4gyDYLp5/bYe94+x0dnmFk7+i3kymHLh6xCfEE8HA8f5qAGIz1W
 GKuNUeKsh0nQNBEHW8Y4KbJIjz5/Q09wWF8iA2WliL40iktos6CcpDU+mjE57Z2T
 GCO/4dh3gYDz/+jLhBrrQrBIvt4i3xTnlnQ0yboyb20urXbHoJ6nqma+NKVvtkID
 5YhZHMFEPhJ5J6NBEJJ1OHXkJV1hR+EjP5kW3zvla5pkSfdYzTkZ6FmwovG13Nk/
 D9MG6r0NQMUfw+8OxoD4Qo5Mv2bNZemya3JjhAYvA9MJLgKDvY4DONaVVlW4ym0A
 /VdR7vN40aNHb8Ahr+3AKYLc4j4ldSGNAhTRJZMd6Hlxe8za14U=
 =efOO
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt64-5.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt

Samsung DTS ARM64 changes for v5.18, part two

1. Minor fixes and cleanups in newly introduced support for Exynos850.
2. Add basic support for Exynos7885 and  Samsung Galaxy A8 (2018):
   SM-A530F.

* tag 'samsung-dt64-5.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: dts: exynos: Add initial device tree support for Exynos7885 SoC
  arm64: dts: exynos: use dedicated wake-up pinctrl compatible in Exynos850
  arm64: dts: exynos: align pinctrl with dtschema in Exynos850
  arm64: dts: exynos: drop incorrectly placed wakeup interrupts in Exynos850

Link: https://lore.kernel.org/r/20220226220116.13452-2-krzysztof.kozlowski@canonical.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-28 15:18:37 +01:00
Arnd Bergmann 664abe8866 arm64: tegra: Device tree changes for v5.18-rc1
Based on the for-5.18/dt-bindings changes, this adds various new
 features on Tegra234 such as IOMMU, audio, gpio-keys, I2C and PWM
 support.
 
 Device trees for 64-bit Tegra boards are now also built with overlay
 support enabled, which allows firmware to apply overlays and customize
 the DTB that is passed to the kernel.
 
 There are also a couple of cleanups and additions for older devices,
 such as USB device mode support on Jetson Xavier NX.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmIZBv4THHRyZWRpbmdA
 bnZpZGlhLmNvbQAKCRDdI6zXfz6zoQCxD/91Rrrx6YerbjauJbX8on8yFhRGQUuf
 MNvOkfyzI3fSZjJyfZxR13gcJp0gh8oaFBEoBnIaSUEN+lLtlWZl4oQOU+Y1ZE1x
 vXiResOWGJaugKcRsR1CiGPnsWUDBiJtnRqoRdZSWUDHKno2ekqMS9lhMp+PmMY0
 8U/m3VV4C6JvNe9gO5kwo0egYRe9jFuncwtepi/YFUpMkGQ6P5WC1PjrLH3xJm3i
 609zobLbbOreV/ZN3W3x3uUgh49bm9FORwRSHrlmv79rlnBLMEXDEbWP4GHuDSUR
 jVFu9tghxv6PGy6JxkNomdv9EYOjrLa8NgmXKkfbLEIZf4jT1cNXrtSufhyj4GXC
 5KKkPB19fMtv/t53EzDjkDLfVAuCb/yBO62rtj28DLsR30ubhlVBK4GcHIsAcmot
 wz0mE7+NkBsr3X2qCUr0JBC6thFv6X8E5bXTc/zsGDfVNnKl8k+zXejiZDh68aVN
 EHYgQLneAWIQ2Af1nK6gQjs3pMdiqtAUZlCVFL0vM6VgT9hGi1N8l1DeHZa7elJw
 WHUrSFr/56WBdC0eKT2nxDzhygEGxkjkI2HKI/7hVrsRaOOC4rY4PDat0VwWyUIN
 JYPjTKqVcvYa+rNuAr7P4/EMl4kglB6dBTQFyeT446ff9R5Umxpvv+CaPD0aDz0o
 8TzA9Gc89MiH2Q==
 =ZfCL
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIc2QUACgkQmmx57+YA
 GNm8RxAAn4b8uK0TQ/AMvgdFabENBfsNGm6cYVIUp28SW1PBwacSzXRJYLypVXqv
 HWb6GmWoDqgvCHPFYtUF68IvC1SY3pgT517UFSXucnfqXw17Ew9rY45lNkW4rEI3
 jEmaTGNdqon33KTNQyH6r8m4qL8lKOAdU7TO4UjvcAK41eHL2r4uTLe2hNW+etqR
 /3Vbc5aVY6gq89hQh00KNjd6RSaLC/axJCBd2fMEwGFYHajk8IEldKe2bTPU/hWZ
 egNEmWjRPy3SvJ+zKl8irbaEIvgGv59gE9mTiqDfgTHXI3FPe8I3DwqYo0a9Wmjb
 6ACU9NfO6pyXgfaPtiqtQRN/QHhJngc/pZLX7x0GdszSDGff44Z/GY6Sowi3Y56i
 h8H+bYXZouCqH8Sb850fO+Bxlrl5TuwCQ8CwVzwlKgkbnmfVMPk6pmdSuLRJGcpr
 d+Tor0jbZWF4OO1vNcJ9YmA+/CVWmOuDDJU40IwuQldHwAZsVcAt2J88FkteYn28
 seVQOkfbXIhR8r80aUU+E9yTgYAr7k9wJU+B4qB2HLZM6CxEkfRk82BpJODTakD8
 42CvZIZXBCQ+ulTUTxz0nmHCjipJPOIxJ83eYEwuCZkgM79b0APiSVjw0htPmCzD
 znh6zecOBtxr1ftNnZPi+aVfyuJDpmnkpuw+netaDms3gRqFpxE=
 =l0Ys
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-5.18-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/dt

arm64: tegra: Device tree changes for v5.18-rc1

Based on the for-5.18/dt-bindings changes, this adds various new
features on Tegra234 such as IOMMU, audio, gpio-keys, I2C and PWM
support.

Device trees for 64-bit Tegra boards are now also built with overlay
support enabled, which allows firmware to apply overlays and customize
the DTB that is passed to the kernel.

There are also a couple of cleanups and additions for older devices,
such as USB device mode support on Jetson Xavier NX.

* tag 'tegra-for-5.18-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: tegra: Drop arm,armv8-pmuv3 compatible string
  arm64: tegra: Enable Jetson Xavier NX USB device mode
  arm64: tegra: Enable UART instance on 40-pin header
  arm64: tegra: Add HDA device tree node for Tegra234
  arm64: tegra: Enable device-tree overlay support
  arm64: tegra: APE sound card for Jetson AGX Orin
  arm64: tegra: Add audio devices on Tegra234
  arm64: tegra: Move audio IOMMU properties to ADMAIF node
  arm64: tegra: Add Tegra234 IOMMUs
  arm64: tegra: Enable gpio-keys on Jetson AGX Orin Developer Kit
  arm64: tegra: Add GPCDMA node for tegra186 and tegra194
  arm64: tegra: Add Tegra234 PWM devicetree nodes
  arm64: tegra: Add Tegra234 I2C devicetree nodes

Link: https://lore.kernel.org/r/20220225164741.1064416-4-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-28 15:15:33 +01:00
Arnd Bergmann 53238ebcfa arm64: tegra: Default configuration updates for v5.18-rc1
Enables the GPCDMA driver that was recently introduced for Tegra186 and
 later generation Tegra SoCs.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmIZBycTHHRyZWRpbmdA
 bnZpZGlhLmNvbQAKCRDdI6zXfz6zoWeZD/0WaAn6ia8Jp9nBM8eMpAXHb8iN7V6N
 2h2024QUQ7kdbPTy5lN9kWL4JWtfN0d6wAqPcyLnV6F8ZG/nEj4TcOhNDdNxas1w
 ydy2r2D+7h6SykqNQldHWyCFG9jjMkSSo+77lkYr+6eZfY9VfIGEraIqMM/ED4P+
 gXctcR0x1JcRvhagV9qzPlXfRRt78jsHNa4fw9KBOSvJuWIC/NethKCt32/EEn3T
 tECMIO1V+CnBtJxmoQ4JVmiVSFR0upyc73IwnQAOZ5T/SPLpIj9tssxmP4vI3wBa
 VvZANLa6UhL6fs2VLYOANHG6TQVjA370g4co4QuPcwQX63ryX/zosD/2pWTb3ZQc
 XNQkruVvYWKDQDWkcaxesncqJ6aHusyPtpfJyb1vqsD1MRrmPCy0l4u7HlKkkAPI
 GXldJU1u/dQarHpxMA0XtyGFM2RVxRxgW+Vc3EzZcO00adJlCohExo/3SF5IjXK3
 i7iMryLI6PCoK7wG3TFitedmPal5k/jUEkthONCLkcgp9vAI6XsQ+V6G9dRlLDRa
 8QOUPSgCxX1J94TaIc6PAxlSgg3n4QCo8Lwq6kJNsRFwdi4It1nOhMXNXMDXcglh
 UWbKNxK+V4mkx1s9mitNozd44Pg+GhtQ4Q2yPC1m3nc6FenMgqRgPTNPDIVo5kje
 bRL/rHx7Tj0XGg==
 =CvHk
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIc034ACgkQmmx57+YA
 GNmiQBAApXt5E9PmPzNKIPzH53uk+OsEAhi+CAPDYsW1ZnGOiYckDx1mf3/Bnv9D
 KTl68UWdWPHIt/+tP5pyYjcOO+77QpTITP5JaYeibRILvMfGdIpUArqtnMHxcIJs
 9h5exW2HLtR6P6k7aMYyzX3E4g58+JcvmLCBuZTbPeeVC5wDtxZISsOvi6cvriWZ
 mDj1QiroGxvmqfoRvHlEm+sn97mpUDXZ7l9OXn7CLhn7lJZFx7X/wpCXBf8z7mzo
 lUrdNkIXRTd+a41D8b5FwXcqWHb+Hgvrh/np5Q5WRE+L1qfxxZgP4EiWOJG0MllI
 kWxGIs7OR2tHZV5uXbZ+LmTZFwodBvx4SFmSPi9JNUV1ftWVzKr0C5VPfx06m/YQ
 1zuhN7l5jLnwbWLotvpmLWED4RDRFKIq5IGQHhAUIb04USx/Y0tFxdF68NFcJ1Ic
 zet6OQdRu2wNq5JWAHdQcJIeMPApr9Q9n4MDOyJQowX63QEMSiejFMeO876GPola
 qP2SO0hvhQxjbPzE6BIOsmFyRsFdkpIc/W8hl/XQ+9VcgHlNbVtYRsgt6UcTsUPj
 6JY9ZyW4uj24GtmVG3cOVSHNO7oKDkxS6nNNu8IZosXG/fnf5avPT/AZrL8LvIW0
 Hirsi5+HUSyJX5l6uAcEMP3izA6SMaJXEw/Pu9a607ff+c/lK9c=
 =gBN0
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-5.18-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/defconfig

arm64: tegra: Default configuration updates for v5.18-rc1

Enables the GPCDMA driver that was recently introduced for Tegra186 and
later generation Tegra SoCs.

* tag 'tegra-for-5.18-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: defconfig: tegra: Enable GPCDMA

Link: https://lore.kernel.org/r/20220225164741.1064416-5-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-28 14:51:58 +01:00
Hou Tao dda7596c10 bpf, arm64: Feed byte-offset into bpf line info
insn_to_jit_off passed to bpf_prog_fill_jited_linfo() is calculated in
instruction granularity instead of bytes granularity, but BPF line info
requires byte offset.

bpf_prog_fill_jited_linfo() will be the last user of ctx.offset before
it is freed, so convert the offset into byte-offset before calling into
bpf_prog_fill_jited_linfo() in order to fix the line info dump on arm64.

Fixes: 37ab566c17 ("bpf: arm64: Enable arm64 jit to provide bpf_line_info")
Suggested-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Hou Tao <houtao1@huawei.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20220226121906.5709-3-houtao1@huawei.com
2022-02-28 13:50:28 +01:00
Hou Tao 68e4f238b0 bpf, arm64: Call build_prologue() first in first JIT pass
BPF line info needs ctx->offset to be the instruction offset in the whole JITed
image instead of the body itself, so also call build_prologue() first in first
JIT pass.

Fixes: 37ab566c17 ("bpf: arm64: Enable arm64 jit to provide bpf_line_info")
Signed-off-by: Hou Tao <houtao1@huawei.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20220226121906.5709-2-houtao1@huawei.com
2022-02-28 13:48:08 +01:00
Nishanth Menon a033588ec6 arm64: dts: ti: Add support for AM62-SK
AM62 StarterKit (SK) board is a low cost, small form factor board
designed for TI’s AM625 SoC. It supports the following interfaces:
* 2 GB DDR4 RAM
* x2 Gigabit Ethernet interfaces capable of working in Switch and MAC mode
* x1 HDMI Port with audio + x1 OLDI/LVDS Display interface for Dual Display
* x1 Headphone Jack
* x1 USB2.0 Hub with two Type A host and x1 USB Type-C DRP Port
* x1 UHS-1 capable µSD card slot
* 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
* 512 Mbit OSPI flash
* x4 UART through UART-USB bridge
* XDS110 for onboard JTAG debug using USB
* Temperature sensors, user push buttons and LEDs
* 40-pin User Expansion Connector
* 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
* 20-pin header for Programmable Realtime Unit (PRU) IO pins
* 15-pin CSI header

Add basic support for AM62-SK.

Schematics: https://www.ti.com/lit/zip/sprr448

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
Link: https://lore.kernel.org/r/20220225120239.1303821-6-vigneshr@ti.com
2022-02-28 05:34:43 -06:00
Vignesh Raghavendra f1d17330a5 arm64: dts: ti: Introduce base support for AM62x SoC
This add bare minimum DT for AM62 describing ARM compute clusters, Main,
MCU and Wakeup domain and interconnects, UARTs and I2Cs to enable
booting using ramdisk.

Hierarchy of dts files:
am62.dtsi:
base SoC skeleton which is common across am62xx family of SoCs,
includes am62-main.dtsi, am62-mcu.dtsi and am62-wakeup.dtsi
representing 3 domains and peripherals in each of these domain

am625.dtsi:
describes CPU cluster (Quad A53s). Since, am625 is a current superset
device with all peripherals, am625.dtsi includes am62.dtsi completing
SoC definition.
Individual EVMs using this SoC will just need to include am625.dtsi
thus making things easier for Board and SOM Vendors.
Future derivative SoCs will have their own am62{1-9}{1-9}.dtsi
overriding cluster / peripheral definitions with their own compatibles.

More details about the SoCs can be found in the Technical Reference Manual:
https://www.ti.com/lit/pdf/spruiv7

Co-developed-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Suman Anna <s-anna@ti.com>
Co-developed-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
Link: https://lore.kernel.org/r/20220225120239.1303821-5-vigneshr@ti.com
2022-02-28 05:34:43 -06:00
Nícolas F. R. A. Prado 32568ae375 arm64: dts: mt8183: jacuzzi: Fix bus properties in anx's DSI endpoint
mt8183-kukui-jacuzzi has an anx7625 bridge connected to the output of
its DSI host. However, after commit fd0310b6fe ("drm/bridge: anx7625:
add MIPI DPI input feature"), a bus-type property started being required
in the endpoint node by the driver to indicate whether it is DSI or DPI.

Add the missing bus-type property and set it to 5
(V4L2_FWNODE_BUS_TYPE_PARALLEL) so that the driver has its input
configured to DSI and the display pipeline can probe correctly.

While at it, also set the data-lanes property that was also introduced
in that same commit, so that we don't rely on the default value.

Fixes: fd0310b6fe ("drm/bridge: anx7625: add MIPI DPI input feature")
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://lore.kernel.org/r/20220214200507.2500693-1-nfraprado@collabora.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-02-28 12:23:08 +01:00
Allen-KH Cheng d1986fbd56 arm64: dts: mt8192: Add watchdog node
Add watchdog device node to MT8192 SoC.

Signed-off-by: Allen-KH Cheng <Allen-KH.Cheng@mediatek.com>
Tested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://lore.kernel.org/r/20220207094024.22674-1-allen-kh.cheng@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-02-28 10:44:48 +01:00
Kees Cook 2792d84e6d usercopy: Check valid lifetime via stack depth
One of the things that CONFIG_HARDENED_USERCOPY sanity-checks is whether
an object that is about to be copied to/from userspace is overlapping
the stack at all. If it is, it performs a number of inexpensive
bounds checks. One of the finer-grained checks is whether an object
crosses stack frames within the stack region. Doing this on x86 with
CONFIG_FRAME_POINTER was cheap/easy. Doing it with ORC was deemed too
heavy, and was left out (a while ago), leaving the courser whole-stack
check.

The LKDTM tests USERCOPY_STACK_FRAME_TO and USERCOPY_STACK_FRAME_FROM
try to exercise these cross-frame cases to validate the defense is
working. They have been failing ever since ORC was added (which was
expected). While Muhammad was investigating various LKDTM failures[1],
he asked me for additional details on them, and I realized that when
exact stack frame boundary checking is not available (i.e. everything
except x86 with FRAME_POINTER), it could check if a stack object is at
least "current depth valid", in the sense that any object within the
stack region but not between start-of-stack and current_stack_pointer
should be considered unavailable (i.e. its lifetime is from a call no
longer present on the stack).

Introduce ARCH_HAS_CURRENT_STACK_POINTER to track which architectures
have actually implemented the common global register alias.

Additionally report usercopy bounds checking failures with an offset
from current_stack_pointer, which may assist with diagnosing failures.

The LKDTM USERCOPY_STACK_FRAME_TO and USERCOPY_STACK_FRAME_FROM tests
(once slightly adjusted in a separate patch) pass again with this fixed.

[1] https://github.com/kernelci/kernelci-project/issues/84

Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org
Reported-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
---
v1: https://lore.kernel.org/lkml/20220216201449.2087956-1-keescook@chromium.org
v2: https://lore.kernel.org/lkml/20220224060342.1855457-1-keescook@chromium.org
v3: https://lore.kernel.org/lkml/20220225173345.3358109-1-keescook@chromium.org
v4: - improve commit log (akpm)
2022-02-25 18:20:11 -08:00
Arnd Bergmann 0917b5bdbe Renesas ARM defconfig updates for v5.18
- Enable the new Audio Graph Card2 driver which can handle sound cards
     more flexibly in the arm64 defconfig,
   - Disable unneeded 8250 serial options in shmobile_defconfig,
   - Enable additional support for Renesas platforms in the arm64
     defconfig.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYgZfpgAKCRCKwlD9ZEnx
 cM5XAP4nyb1rxKQpDWbdozSOmItkytpfC2+NTS9+Ul0mAVz98QD/YfuW1awSR8EE
 6iyGVM2WqFbaKKGNEqogHI2eNGvbyAk=
 =HkeI
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIZLs0ACgkQmmx57+YA
 GNnkeRAAsmvm8kbzQwA3yC+hPKAC+DmizTvdmTs5KO4Vrb9i036KMfjRxzBKKFVO
 VZzUIIQG75sJ6gGHMYxdYH4K/frkwzE+iDQcQTjNQovUilyqfjiGiJbiPONL47QT
 G8dm6UhZ/tdnatDVRdWWmhmrXOuu/Jg7Gn9KLcDxzSdZ/bGhy2GdbwXLHvlvmD4n
 xGO2Oh4ZAp6QDngdppD2Cs5DjwqlqnpxqKjW+H6kuOI2f7wIoTkLMrfiwcNnB2Ei
 53EnBphPlCLvMzM5HZgBjOWb+xUiVTQvDiaQ1IlgCZMKI22XKExvUrLnoO9PzhRE
 IuTXo/bLPWkN9iiR4nvE7rsW47xU4e2BPX4614Lzg4agzIlKKh1q28wka1rirfU9
 9vQRAfItZhU29TRURzrDyZOfbZ8rQmHLxff89V79ki5B+FkegopUP6im8ZmyNkhV
 8+ucoBi0QHqus6IvSzWvYzVSBk6oK6+/EsHTVve+CTRLfzeoGaiHUgxeODEw5vlI
 fePQOORMPMbhg6oTkokL3BVi0ZfvBItzR6Sb7pHsdjwZaexVYDk/ssWiQyrRPFjz
 LuPPG7qQpysCiINbHZmK511MDCVlyu5hQiWTA4Njq7qtjZxrVH8sBehKox8XkqUI
 8t9GIx619GKDIH7Uw9nGlYD5gPwxiDr57lv1RU9SXnanTdL24g0=
 =G8H0
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm-defconfig-for-v5.18-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/defconfig

Renesas ARM defconfig updates for v5.18

  - Enable the new Audio Graph Card2 driver which can handle sound cards
    more flexibly in the arm64 defconfig,
  - Disable unneeded 8250 serial options in shmobile_defconfig,
  - Enable additional support for Renesas platforms in the arm64
    defconfig.

* tag 'renesas-arm-defconfig-for-v5.18-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  arm64: defconfig: Enable additional support for Renesas platforms
  ARM: shmobile: defconfig: Disable unneeded 8250 serial options
  arm64: defconfig: Enable Audio Graph Card2 driver

Link: https://lore.kernel.org/r/cover.1644587198.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 20:32:29 +01:00
Arnd Bergmann 32d748a03e i.MX defconfig change for 5.18:
- Add a new defconfig for Cortex-M based i.MXRT family.
 - A series from Marcel Ziswiler to rebuild arm64 defconfig with
   'savedefconfig', and then enable various relevant options needed by
   Toradex verdin-imx8mm device.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmIUkysUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM7+rwgAh6O4IeWd9PFgNsocVV5gjJUSr3HE
 N6kODKwbd6xbVt+JA6kAUfhqaDAOO5daicnB+BIjTxnttflZXxpER10G5HBZL1qH
 ACglN1NQPzz38RzfeJd/PaNqixMFsOdn4RsHbwQicX8aHUBP7MpfFh0FT50/fpgo
 nYeW5itpyvcSHzTrmgXNveriVz7/UiE5i/0FSvwEjjraD2hWVFI3nZgHFtzQcVhe
 KLD8Q8f1bH40wEAH4KAlWY0m5VD5jmnAkeRMlvYzWnKaG1sl2gsZlGb1w1zOrC41
 lD+mU/SvcNoe4Bupn3J6BjA1MISfaKClYWbJ0iOVj3S6RUQKC8ToUxHVJA==
 =ozsC
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIZAdMACgkQmmx57+YA
 GNkfIRAAuxlkBlz8iIL2dh0Y7BB3NaKhwkWJxw9h5vT0/UE8QmGOFytvyA1VUcHM
 KkF33OI6ua/ge6uWh3n/ehIx2qMsi47bMCt29PBa06UEBii4h/B8/mL+A368H/Pt
 cpUDndCLiSRoA+FAlrWgykBh1xAKAaUeZR43IMJpzwR5IaW2wW2anDZ+JRRb1bFO
 E3keZOIGey6HwSwsjZILJ5yg9RoUcPunXsmxobfAQfDu+I4BZiE3f2H1gYMp9+Jk
 hTtxBeBUXR3T6MERT4RLNNr85NC9vMtxPDMSWE6JqV/TKF/+TvWZPyRmY/J0JJlM
 mh1RAsWvglpO4rRu08SN8AsUdl63CTMmie+5VFnzOBx7bJiPxlGlEA2ib/YstMtP
 ETRqXsg/Mghce+Xo8JMKhszsQU/V8jWBFWRrjyZEiVOt44BuOH4kfqkjBQ/fuGH6
 Wq+G/diIcKH675elakze17GGoS6pOqK3Po83G18W48DzNee8m8WYiCWVN7qQNWe5
 3DZnW1E1SILZAZMQNsDqWN9VBXr6OiDA/mz4ypiCQo/sIGBYVjXX77XTo7L9h6S2
 zLm6OGwVjNQqsFG5KXbfxZGOXGXJpJjhsDBfRRAYbpqNKbrANv/Fs07khpQXQMBc
 b7a3JZMijOIqSOZ9aIjeSocuQ5IUtuSec2L2e0oqYf5WA0r2euc=
 =Ce1L
 -----END PGP SIGNATURE-----

Merge tag 'imx-defconfig-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/defconfig

i.MX defconfig change for 5.18:

- Add a new defconfig for Cortex-M based i.MXRT family.
- A series from Marcel Ziswiler to rebuild arm64 defconfig with
  'savedefconfig', and then enable various relevant options needed by
  Toradex verdin-imx8mm device.

* tag 'imx-defconfig-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: defconfig: enable verdin-imx8mm relevant drivers as modules
  arm64: defconfig: build r8169 as a module
  arm64: defconfig: build imx-sdma as a module
  arm64: defconfig: enable imx8m pcie phy driver
  arm64: defconfig: enable bpf/cgroup firewalling
  arm64: defconfig: rebuild default configuration
  arm64: defconfig: re-order default configuration
  arm64: defconfig: enable pcieaer configuration
  arm64: defconfig: enable taskstats configuration
  ARM: imxrt_defconfig: Add i.MXRT family defconfig

Link: https://lore.kernel.org/r/20220222075226.160187-6-shawnguo@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 17:20:35 +01:00
Arnd Bergmann 707e0a4235 ARM64 defconfig changes for TI K3 platforms for v5.17 merge window:
- Enable drivers for USB and SERDES IPs on TI K3 SoC
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEEyRC2zAhGcGjrhiNExEYeRXyRFuMFAmHEEI0QHHZpZ25lc2hy
 QHRpLmNvbQAKCRDERh5FfJEW4+qvB/9bn7oXiHF0tdkgeFu1naq0gIBXbcbH6xxU
 O9EAbRlVn3NC6XApDx/KuKaIHtogjV4n+PkLaStLcyBd3SYEB2k/VvnKI0IFlhPG
 L8u+t6O5/pNUK9MZzT6+VsY67CAOHjdy/kU83UboD4EsgXn2NS0EosGTQFs/RCVt
 0LQONv5+6Tu8UaBg0tt3r6Q6THMcSsLzqCVfMZgehhCOJmk1yQ/7VeiFZtJr0RX5
 M1G+IWYhgaWNpzO3AAxkM3iWXo3xL7vDi8eNhMX1nSLygfkQ4TSyoYHxo32VfoWH
 U9js6HwDj7+KaPDfvGlkGW/4vjGgPiFN/iJXTGEeFZdap41jc9aN
 =L/gY
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIZAb0ACgkQmmx57+YA
 GNncsg/5ATuitQ1/ldRlL8sUNp+aaaLMsv2QYDSbFZbu+N2mcYp4YGk7/E6cJQwv
 Y0556Uu9YGUwMqDw2KfHX/a0hXx0yM7GDvvG7F75axXaaJOQR/EvqmAwsyKK/z/Y
 z5/P8n0a5N4lmzv20H4JRS2k0khBcat+z9oBRJMpv1iG8uo/f7oLzfQ5snxIhbvX
 2DcYNG7fhIf2+6WL+xE8s9Sz0R7qZGR3IS0udcdTZFiwtQA+whfkUP+fSncgiFMB
 VRipr3gafZ1P0qFWFRvFiWQT5XsYJErMZbP1qZizn8w4f3NiQK/1iGWiJ4KUeGG2
 lFzQNFUFEpTaYJahg+Os3vTD+pntCoNwVtvr5Q8s+GkkZ/vbt8aeHDpzIMcMkIp6
 E0YKT1ejw/tt65fVWCLIX4WExgMEmCgs3xv4Gqs5x7fhToy3NP0k8SSL/VBD0RLF
 uM5Spoyc2K876qD7DHykCEFvhDLurS89RcDCzTmFe1MABne5J5DMOedBNUvuBAz2
 gSHHNsJXHkZtHcBVUFw6Wvo0P0KKvh5Sl32rJpLjKw4H3R5TwC86gnhvz+iYzpE4
 MQgj0KiwnDT1LDp0l8ncIVaEdeNlH+7OUxBm3ChyIg5JU3Kkmtf8dSN0EDMJwbo+
 OMhK30EgzJYY62GKq0jr7NTz4djI8uWBKmL7MWqCHfUM2qKBjzA=
 =OX1P
 -----END PGP SIGNATURE-----

Merge tag 'ti-k3-config-for-v5.17-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into arm/defconfig

ARM64 defconfig changes for TI K3 platforms for v5.17 merge window:

- Enable drivers for USB and SERDES IPs on TI K3 SoC

* tag 'ti-k3-config-for-v5.17-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux:
  arm64: defconfig: Enable USB controller drivers for TI K3 SoC

Link: https://lore.kernel.org/r/20211223094040.15349-1-vigneshr@ti.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 17:20:12 +01:00
Arnd Bergmann eda2a6830f Renesas ARM DT updates for v5.18 (take three)
- Pin control support for the R-Car S4-8 SoC on the Spider development
     board.
 -----BEGIN PGP SIGNATURE-----
 
 iHQEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYhjYwAAKCRCKwlD9ZEnx
 cKSXAP0aBTnnmwZauIy0QIa2YGrGAqaiU1q++b0LV3iygbinSwD46Goz5adJeXrZ
 +wta4wt82uakJRUdwouY+wBR4bPODw==
 =kgbD
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY8vEACgkQmmx57+YA
 GNn3OQ/+IhJ3AtsNRjl2YK5jBsXggax+Af4lVyB9ihBDN1HyWa1y2QjMRFcBmviY
 Q/F+OdkyXNi6bUESDC7oCeZRqrW7qcw8gjy6ItPPgQC7UfUeluBxVedxbw+y7Mvm
 8zwca6UPjOw4IdJgwCMVslSvqZnoiuUjJFacYQ6k/l8JBeKiuPDytgwx9tG0BXkV
 Dps71xdxScpp55KyLYqU7MR3j9f6VtnP/46rdTs+xecRoASElrsXxojt0R6NLufg
 7rtKoFzLNXHDR9L4xJNNgWVoq50OCK4nsZSFk6LZVQmMgpwTzA2V4zGEeWqLZsMw
 Mey/RV7rG1T1YR3BY038BIaqJ+TnCbLXgp2TaEa6vgE4P8FyswobPRDZrzaVPSIc
 gY2GrpmtonuIol7Ew8NSe9Mj8EbxPva95S3zK/XFdjHvb/9nG5hRaoN6dDEiF9ln
 JTD0eWL5j9cPuzUtann49lbPhljnRjwRLWu42Sz1LQvpyHbNQPr+B6jehhJj7Flp
 XVvSM3kczoEXEz4dzSqAo7SRMC2QC06luv5KO8J2uxwz3QYQo/1FEDxzM9Y11mZx
 8nEeh4c/bWJ9b1Ob+PkD8P63uzizEYXeaMq7MrBXhNRoZGthga6QbiSlt0bv8B7m
 iYCsEnzueJTz5X/70P5uYGltiQtQ5k2HHvFwA/jf1YrNEM4JIT8=
 =61Bh
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm-dt-for-v5.18-tag3' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt

Renesas ARM DT updates for v5.18 (take three)

  - Pin control support for the R-Car S4-8 SoC on the Spider development
    board.

* tag 'renesas-arm-dt-for-v5.18-tag3' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  arm64: dts: renesas: spider: Complete SCIF3 description
  arm64: dts: renesas: r8a779f0: Add pinctrl device node

Link: https://lore.kernel.org/r/cover.1645795643.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 16:17:05 +01:00
Arnd Bergmann b10e270dc9 Renesas ARM DT updates for v5.18 (take two)
- Document the use of the renesas-soc IRC channel,
   - Watchdog support for the R-Car S4-8, RZ/N1D, and RZ/G2LC SoCs on the
     Spider, RZN1D-DB, and RZ/G2LC SMARC EVK development boards,
   - Miscellaneous fixes and improvements.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYhiomwAKCRCKwlD9ZEnx
 cHPXAQDNxh5Fr/t8POQlZRhXr/qw9vSkP/bslbLBXIxQmtTuiAD/QOwd02UBun5Q
 ei27RcXBOmzpxJBD281LL2fF560h9Ak=
 =gcXB
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY8lYACgkQmmx57+YA
 GNnvkQ/+KA3wN4WIuWG1DfkRh3wOL06EtIlbMTomH7IGvPkPVI6s5lYgPN85pWOb
 Sq50/TRTX+Lo3wU7bHWm6D4uik2i7haeFLXLnMm4p020OggqZlFlIStIg2AcZ4Mb
 Xu4NFHKlBEelNW4r5lgWpVwpfX37NJb5dY/ZX/oW8fNzTGufGGN/QHLKXzyIpw09
 gWTL6d9EIiY6up79mX48RHQ/lLjNLs/8Ae0nnmtHRp3268vGUaUhI1ybzKdAWfsg
 0pgAk2bF5oPxpkMDe4/0cilB/BDHF2TRgt8/yXXJZ34EQTXciKu/Zi3n4CmViAHr
 aPm9pF9SFFuiTS0PyeY9fyj3gjb3/vj0h6Slyr/U7b4YchdVJ+wLduued3hr0tJt
 3LBKtAtxgc0EqOxf772UtWcd8ZPfDH0nJnAbEotZV7y03VRWK/eKgwIQ/j5kc9go
 rSZ6Gc/2YeexK5nPSxir0XDelQjVDSRo/yDQmoSPvduUJrga1N4p1MVLSGvmWimB
 o/oISmNVvl868/kMTmv9RwZlmULMAgjIqQ2yrwE1kCc2x0p04aWFRoYv7e++GG3M
 tK/TvodD4BvjTDVPUMrG7Az5QPjMs8QbLIIGjulGcxwPlRW6tn09Eha+qTcA4X5o
 tpyk5zPZDkw+MdixdjuBCkrD8Y6yFG7foRf6Rmnhqh9oClQmplk=
 =WR66
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm-dt-for-v5.18-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt

Renesas ARM DT updates for v5.18 (take two)

  - Document the use of the renesas-soc IRC channel,
  - Watchdog support for the R-Car S4-8, RZ/N1D, and RZ/G2LC SoCs on the
    Spider, RZN1D-DB, and RZ/G2LC SMARC EVK development boards,
  - Miscellaneous fixes and improvements.

* tag 'renesas-arm-dt-for-v5.18-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  ARM: dts: renesas: Align GPIO hog names with dtschema
  arm64: dts: renesas: Align GPIO hog names with dtschema
  arm64: dts: renesas: rzg2lc-smarc-som: Enable watchdog
  ARM: dts: r9a06g032-rzn1d400-db: Enable watchdog0 with a 60s timeout
  ARM: dts: r9a06g032: Add the watchdog nodes
  dt-bindings: clock: r9a06g032: Add the definition of the watchdog clock
  arm64: dts: renesas: spider-cpu: Enable watchdog timer
  arm64: dts: renesas: r8a779f0: Add RWDT node
  MAINTAINERS: Specify IRC channel for Renesas ARM64 port
  MAINTAINERS: Specify IRC channel for Renesas ARM32 port
  arm64: dts: renesas: ulcb-kf: fix wrong comment

Link: https://lore.kernel.org/r/cover.1645784466.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 16:14:30 +01:00
Arnd Bergmann 84d08b2e54 New boards: Pine64 PineNote ereader tablet and Bananapi-R2-Pro (both rk356x)
New peripherals for the rk356x-family (pdm-audio, gpu, another i2s, usb2)
 
 A lot of additions to Quartz-A (connector-header, gpu, sdmmc1, io-domains,
 usb2) and rk3568-evb1-v10 (rk809-audio, cpu-regulator, gpu, tsadc, led,
 usb2, touchscreen).
 
 Fixes for the pwm-regulators, that used wrong names for their supplies
 as well adapting the cros-ec pwm nodes to a changed binding (going via
 the pwm tree).
 
 And as sort of misc-changes, defined the logic-regulator on rk3399-puma
 as well as enabled the mali-gpu on the rk3399-firefly.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmIX+P8QHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgfZLB/9DUe9pJWRo7zg3GENlp9d3slQBJkBWHF4h
 SiYheGDbQyfWmPeH4PcvwfwsVmTdNewRTgmhEbNKyl64XEIEbIVi7GXEmfCaNipQ
 zEfTN/m1hMl1kn9gey+0yJT9K3oAkA4UqBUbGmgP/UuYcztZvnhjnt9Np60gwBhf
 l7de3OBFcxQUatq2Tfn+HbqiGA5aur/IfJzcrzK9kFXLi6Ox2nMZGN1U2CTmJEcT
 ZLFQH1tKQ0doacaAUtRSSx3IbTVSoOjr2imSzsfPKCM691OwwGC4XeJLVTn3QmVF
 4WhDQsH+ufluG/dFHPA7Nqa1IVp9IX/QhOW1ZAgmODNVR37EkXGp
 =cIwM
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY8fUACgkQmmx57+YA
 GNnjPw/+LYwi3YXP4izmG0u6y/Jfmy1J6T37FCZJEo8C9I92USUU+S6z9pEG5yrn
 LhmXogJj3zB6dGUcq7nFUXIUA5YMVGxofnFRbyxbGPUmRnQSfpOB2/g4aSEYf2U8
 0OwD/4ajxVOP2mSimQ7gXnwpzfeUvNrml81VJ76OHZnVtEqt81l/vIyWpd3Dro00
 EQN+THTAV4G2M6XhshILt5QTLdsWHwPoCaZAg0PwmIJDU/3NeBH92rXIQiWkE33R
 zmPJyOZ2ih3D2ceyVVdNp9uIvLcXeIpsXqIQv2dN0D5iXjviyBqfX787S4PFLlLO
 ibsYyB+JUkciwzHyRrKHRYlOXuZmhYDYcL1M+6STSMtmZfS3Kno6V9kOdPYWpTZ8
 SluJYqdkED0NMggegunGj67qbe902hX9vuL3vISaZUll3Au48YGSEoEcpghf8kuE
 E2Uo4pnEkhN/1sSeZFyINUstKtqpa/XMAS2sK/CJQ09HjQfqvFnifjUxhjqYoAM6
 ylhjDymjH11h3jWDmiJUpYfPxa4u/j598UI4ajvKgwPhd0ZxLug43d9IQBpFxux6
 qXCWQrgUe39L5o8hfgQSXb58g72uGBXMRd8m7F3G52teGkFz+xentxHbJEZlX8oZ
 UQJXCDHhkFpGkD3TNOc4YbQW/ydDZo+OCzWopP3iU6oG2X3FPQY=
 =yqpJ
 -----END PGP SIGNATURE-----

Merge tag 'v5.18-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/dt

New boards: Pine64 PineNote ereader tablet and Bananapi-R2-Pro (both rk356x)

New peripherals for the rk356x-family (pdm-audio, gpu, another i2s, usb2)

A lot of additions to Quartz-A (connector-header, gpu, sdmmc1, io-domains,
usb2) and rk3568-evb1-v10 (rk809-audio, cpu-regulator, gpu, tsadc, led,
usb2, touchscreen).

Fixes for the pwm-regulators, that used wrong names for their supplies
as well adapting the cros-ec pwm nodes to a changed binding (going via
the pwm tree).

And as sort of misc-changes, defined the logic-regulator on rk3399-puma
as well as enabled the mali-gpu on the rk3399-firefly.

* tag 'v5.18-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (28 commits)
  arm64: dts: rockchip: align Google CROS EC PWM node name with dtschema
  arm64: dts: rockchip: enable rk809 audio codec on the rk3568 evb1-v10
  arm64: dts: rockchip: set vdd_gpu regulator on rk3568-evb1-v10 to always on
  arm64: dts: rockchip: add the vdd_cpu regulator to rk3568-evb1-v10
  arm64: dts: rockchip: enable work led on rk3568-evb1-v10
  arm64: dts: rockchip: fix supplies for pwm regulators
  arm64: dts: rockchip: define vdd_log on rk3399-puma
  arm64: dts: rockchip: Add Pine64 PineNote board
  arm64: dts: rockchip: Add pdm node to rk356x
  dt-bindings: arm: rockchip: Add Pine64 PineNote board
  arm64: dts: rockchip: enable the tsadc on rk3568-evb1-v10
  arm64: dts: rockchip: enable the gpu on rk3568-evb1-v10
  arm64: dts: rockchip: enable the gpu on quartz64-a
  arm64: dts: rockchip: add cooling map and trip points for gpu to rk356x
  arm64: dts: rockchip: add gpu node to rk356x
  arm64: dts: rockchip: add usb2 support to rk3568-evb1-v10
  arm64: dts: rockchip: rename and sort the rk356x usb2 phy handles
  arm64: dts: rockchip: add the i2s3_2ch node to rk356x
  arm64: dts: rockchip: Add Bananapi R2 Pro
  dt-bindings: rockchip: Add BananaPi R2 Pro Board
  ...

Link: https://lore.kernel.org/r/6456947.djgVdjDsCv@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 16:12:53 +01:00
Arnd Bergmann 1b29d1c1fa Arm Juno update for v5.18
Just a single update adding long waited support for SCMI firmware variant
 as separate devicetrees. I wanted to deal with this differences in the
 firmware interface within the bootloader for long time. But with variety
 of bootloaders (u-boot, UEFI, ..etc) and need to add SCMI and SCPI
 support for sake of discovery with discrepancies in shared memory layout,
 it turned out difficult.
 
 So, finally we are adding it as separate files so that we don't break
 support for older SCPI firmware interface.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmIVQ7YACgkQAEG6vDF+
 4piUsg/7B/d8NBgfXQ4WSVCDw7D5ekkTVSA8I1jOu084UCUCoQjJ6h9I0sMc8ALo
 ikYRgF34evJP78xl+AGsU7iQfeja4i4j+5frUt9pseiQ3XW7i+kFmp/bjX9XlYFQ
 HsGJ+F7oUp70W5YxfF+Ay1I9avbA6hDWqSE6gsFNVPRnVpphBzF7MvBBsTdl9CE8
 ip/gTg2WEnjzdvCHyCQ9wGV8HozTtcR2Fz1WB3LaIpqToIui7gQ2KEazqTH5cJcS
 xovUdM5eMdvMHsblnLDn/ET6gvFlV1AeRxUQXQTDm8tqk/3cpRzZj0EcWJy2A6OE
 0BQ63bw8bwqR+JW/vbhW01PdaA6uuKhKNINuP/RtCv++/UimDyI4QgRs8MzLFUYH
 2JKptVQpaeracUElKNBkOGZGhzS9p8I9smzhFyZVHucBQA0vDzOX7e2BJpLyhTJV
 tnRMc+mUH6KHr97eEJxFiEVC6aI3UiaVgTjaMnEB7ED8yWa6x0bLbgX9RRhXj9W9
 hNOuCMBuDhQZD86wVwUXAi2yB0UHlCNbmhEoegxaL0h7o1G0GyNB5crLMZwck4sy
 CCaLUZbUaJrsFaVpv5C6/M2xhwUtf/yKDlW65EduBc6KFKiZa4c1mrE+Ft2ZqD79
 bVVLlzW/lz+2YdITrbyCCbzgNyQhwp4aNqHLwlwuDsSzhSD5uZ0=
 =g/zs
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY8SUACgkQmmx57+YA
 GNmySg//WaF+/WTHSYleBvknbsmMQjvYz9LqpQmAXlJkxqnrbORgiBVByQ9SNgKg
 Pkz6j6Ex4se8KfzZUwMmdGhuN+pOWQKi3hd2YZtt4W5koTuVw9pDberafiskC7fV
 IGqdYvJtDBWZdlFfE9RZAYEvFt2cAHQJEBQQiNX3cgRl+RgqZpHC8Umm/1mLAo2a
 MgLRVVRkONxQN6DPtb6KOrLqWGmVo9+wDhDXHLqBQIMyHHj/fMuNOc/c98ePPUPI
 Z/0Rk/z8+Bt+6lc0FtLSjljSuSphkm//5IVle8v1KKAH3Iq0cmnjFAaXRH168naa
 oR4vyRFG7i+2syFHrSt5wRmsqQab99lyqwGUgNsD7+Fl+uxt53T0z2ijIDzP3aZE
 SyaQxwLUMyinPhppGNG7KoK7VEMqBpYJnhrtbDO8knrQK8SjFQY0t378lUvOFGPE
 orAGkNX5P8FH22zq/qsJT/ls8qQ6nC/fe/5g8tNcLqbO88hSmLd2yacRp9U1UOST
 ekVZZjQeDoWukPN11fSwSvKzrzx76xohtrN4NPzH+civuwr+J36PNz6R0nI7FDp4
 ngs06jZztgNs4fItCmUhVgz2cgk96VDr8AZ2Fzt9+A4sPUcZWqy1yr5aip4/vVTE
 LwTvzPIiL4zWBosx0J2XaYMIPwUGtY35bYmHxavYeNPLMEgSS00=
 =D501
 -----END PGP SIGNATURE-----

Merge tag 'juno-update-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into arm/dt

Arm Juno update for v5.18

Just a single update adding long waited support for SCMI firmware variant
as separate devicetrees. I wanted to deal with this differences in the
firmware interface within the bootloader for long time. But with variety
of bootloaders (u-boot, UEFI, ..etc) and need to add SCMI and SCPI
support for sake of discovery with discrepancies in shared memory layout,
it turned out difficult.

So, finally we are adding it as separate files so that we don't break
support for older SCPI firmware interface.

* tag 'juno-update-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  arm64: dts: juno: Add separate SCMI variants
  arm64: dts: juno: Remove GICv2m dma-range

Link: https://lore.kernel.org/r/20220222201812.3338619-1-sudeep.holla@arm.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 16:09:25 +01:00
Arnd Bergmann 52e71a47e8 i.MX arm64 device tree change for 5.18:
- New support for a number of i.MX8M Mini based boards: Protonic PRT8MM,
   emCON-MX8M Mini, Toradex Verdin, Gateworks GW7903.
 - A series from Adam Ford to enable GPC, USB and display support for
   i.MX8M Nano.
 - Enable G1 and G2 video decoder devices for i.MX8MM and i.MX8MQ.
 - Enable PCIe support on imx8mm-beacon, tqma8mqml, imx8mm-evk,
   imx8mq-evk and imx8mm-venice board.
 - A series from Hugo Villeneuve to add PCA6416 interrupt controller
   configuration, GPIO line names and i2C5 support for imx8mp-evk board.
 - Correct I2C3 pad-ctrl and add internal display support for mnt-reform2
   board.
 - Improve fsl-ls1028a-qds overlay support by dropping syntax hard coding
   and using overlay target for build.
 - Add overlay support for serial modes and imx219 rpi v2 camera on
   Gateworks imx8mm-venice devices.
 - A set of patches from Teresa Remmet to update phyCORE-i.MX8MP SoM
   device tree, including drive strength updates of different interfaces
   and PMIC configuration changes.
 - Device additions on various boards and some small random changes.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmIUi64UHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM7s3Qf/TtDGP7UBFb0nnqNgNzkiQfnxsRog
 iGcwwalE/Qn4Tq5ED/Sf34FOJut70fJ8chvbhqvCGkEOQPdgYOrFC8PmZw1VbKeX
 5xNDihh3DAIEcGmJ89dDD5bkCepKOkyahm5c25RLzkUCOcKndoeWkzvU5bbMTs2w
 8AJCrDmJ1+k5zyUXcKZlq3ySNhS4KQFD25dYGMvLy70oYhxCRtY/HLECLEStXVXs
 UJ5tdwPeb4jSLi5EM9oupy4V3IGfgBSSdFCLdpXtlOTmGg5Y5rHeO1E8mFRXvigO
 tCYo70SdzjLZPPxl9SUX6Ql7ShMYNZLtzmIVRn7Be2jRQ4xld9bXE4jFJw==
 =iEe4
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY8JAACgkQmmx57+YA
 GNkUDRAAlwe2qrtugN8jUbnUIN41La5QiXOCAJYOQCosyCgAVb70ZGTIBJvOucyj
 bpwU3n4hN/nppMF47jct+RRE5UcPWNF4oB7LxgEe2SdqrkUmF9/moK5XjfipCTgr
 gvGln28un3mR7KS9cah3YFM/tTf749CeL5GiGx0veew39LxlYZMGA7wXIl1hJ1Tt
 Vl9jzfxsrVh+lzexQBJfAbWQAE4wM5WPwDl3H/o6xZGRZPCJkuNzdmZBvnZaC5WM
 ZT/R7CoeimHOV2936993MXjWkZqqZMaUBvrMGcoLYReq+0Qnht2hcETW/rHUa1+M
 5nsPWSBfN8uN7jGP+qpz71eJbc8BQ/XKyximoJph9m3M1VbTNKjY1Lhq6dX2Fmyt
 cutVy70TGvOEjXJOctnWf973ABBhr+NnF5m0NAJ9XGsKEGI3j3tjgYO8rpcCVnm4
 AdAqSv6/HF6PQkLuT/oJu8SfHzykvZDwkh+lAP2Hfnd+Y8DEkez+c96VkvW0lqzf
 TxrZIWQqrYGFPahB8rWjGzRPoLjJW6pfBEg/1iRmStMb2O+VQKzndf0DcYarrPjY
 1ecrpGssvI701PP3ofwFoiOS4tGU/G955Lq8uKoT2DUVAXMOaaiGKUdxJyaMcfEr
 F4BK4eLvyn/t6XDzM+7Tfj1e054bbi9GO9JZFNbGwFLCOkzHurA=
 =atxP
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt64-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/dt

i.MX arm64 device tree change for 5.18:

- New support for a number of i.MX8M Mini based boards: Protonic PRT8MM,
  emCON-MX8M Mini, Toradex Verdin, Gateworks GW7903.
- A series from Adam Ford to enable GPC, USB and display support for
  i.MX8M Nano.
- Enable G1 and G2 video decoder devices for i.MX8MM and i.MX8MQ.
- Enable PCIe support on imx8mm-beacon, tqma8mqml, imx8mm-evk,
  imx8mq-evk and imx8mm-venice board.
- A series from Hugo Villeneuve to add PCA6416 interrupt controller
  configuration, GPIO line names and i2C5 support for imx8mp-evk board.
- Correct I2C3 pad-ctrl and add internal display support for mnt-reform2
  board.
- Improve fsl-ls1028a-qds overlay support by dropping syntax hard coding
  and using overlay target for build.
- Add overlay support for serial modes and imx219 rpi v2 camera on
  Gateworks imx8mm-venice devices.
- A set of patches from Teresa Remmet to update phyCORE-i.MX8MP SoM
  device tree, including drive strength updates of different interfaces
  and PMIC configuration changes.
- Device additions on various boards and some small random changes.

* tag 'imx-dt64-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (50 commits)
  arm64: dts: imx8mp-phycore-som: Set usdhc root clock for eMMC
  arm64: dts: imx8mp-phycore-som: LDO5 needs to be enabled instead of LDO4
  arm64: dts: imx8mp-phycore-som: Set VDD_ARM run and standby voltage
  arm64: dts: imx8mp-phycore-som: Update WDOG muxing
  arm64: dts: imx8mp-phycore-som: Reduce drive strength for fec tx lines
  arm64: dts: imx8mp-phycore-som: Adapt eMMC drive strength
  arm64: dts: imx8mp-phycore-som: Set minimum output impedance for eth phy
  arm64: dts: imx8mm-venice-gw72xx-0x: add dt overlay for imx219 rpi v2 camera
  arm64: dts: imx8mm-venice-gw73xx-0x: add dt overlay for imx219 rpi v2 camera
  arm64: dts: imx8mm-venice-gw72xx-0x: add dt overlays for serial modes
  arm64: dts: imx8mm-venice-gw73xx-0x: add dt overlays for serial modes
  arm64: dts: imx: Add i.mx8mm Gateworks gw7903 dts support
  arm64: dts: ls1028a: add efuse node
  arm64: dts: imx8mp-evk: add support for I2C5
  arm64: dts: imx8mp-evk: add PCA6416 gpio line names
  arm64: dts: imx8qm: added more serial alias to dts
  arm64: dts: imx8qm: add compatible string for usdhc3
  arm64: dts: imx8mq-evk: Add second PCIe port support
  arm64: dts: imx8mm-beacon: Enable PCIe
  arm64: dts: freescale: add initial support for verdin imx8m mini
  ...

Link: https://lore.kernel.org/r/20220222075226.160187-5-shawnguo@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 16:06:56 +01:00
Arnd Bergmann 3b364358cb Amlogic ARM64 DT changes for v5.18:
- New Boards:
  - Amediatek X96-AIR (Amlogic S905X3)
  - CYX A95XF3-AIR (Amlogic S905X3)
  - Haochuangy H96-Max (Amlogic S905X3)
  - Amlogic AQ222 (Amlogic S4)
  - OSMC Vero 4K+ (Amlogic S905D)
 - Initial support for Amlogic S4
 - Support for uart_ao_b & pwm_f on G12 SoCs
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmITd8cACgkQd9zb2sjI
 SdHmpRAAl2jQspBK/xAfWhPIDTq24N0dv1nM5NfSxQWTkKc81+BkRQ8RBxstOMh/
 8r+t9PTYY6kl7A07F7cACvL28xvITBkIoP/OQa6ycMORz8sd/TIhP+zaXK7VjiXv
 IQ8C+dqcm0Jow/iO2FqWLj1juJPYZ/4W2SfiImIPrpmQc0qmKz0so+KBAZiBYYLt
 hOi7LWGddbk/FnUsXRgbXkIzc5+xbgHDquOJkeO1umO3Xx/70fCRIZ6j4nc8SHBr
 4kuE7mSToqsNkI4XwNQYhcbjfPaqUg7feAvKJfmidWSpKWRSjYdR0oUCks0PAAth
 FIxkvLPHxsd4jA30Q2PKYVowuVh44dBk8gCdhJ0NrHi9YZkpAuCwt2uySXB0iQnT
 AVNgWnb6OdAUjfd/94nu4/d/pDW0H1GHwKc4/wqjcGaLjL1cm/Cv9PKagIfwoDcA
 4HKY23TE9jwXZp0ZRgCgI0pEg/j9XCUvoxzei3oq8FCtNrvP0FvkrTuMk2xhzuIq
 9O5963EBLFFpDYcalds3aJgKNzX+EfsC70bpv+VXTYbv/iHW+1RdMqlIWSWb9twc
 KMrohiiK0hlu+gQEHUQKaWKuC63XF4WYHB1DQb+bdCm1ak+gLCAuzKokj4dL5b69
 zBwnO5RvshX+n3ThqTC2uOFnLx24V10xAL55faMxa66KwnnHdyo=
 =/1MJ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY72sACgkQmmx57+YA
 GNmfhQ/7BpbYlPrAH9/u0xijjsOmqDq9ml2Hj5x85NtG+0qDgVepEEmsGJ2MfMuj
 UZt3sh+YAoxQhSG8rOuwCUCoBJFyVSQlR9JykmUZrVZ/mmJ5oZS8jWL30PJZ7B98
 k3ArlS65lxrtnFljcDRV+HSpBe6cpWQokwPvH14OaKFFkOeGSoXUBvOi6oarTrqo
 PeU+O2dgYAGYnAcgnvv2ITs8Z+32KvhQ0V6VIirwtHQEUxHSDPCCYrxOpBgzeZB/
 /Cb6EaSf6xuKgcWEb05AP6NKzMdmjJVumDuqm53f1jgkPRQsuqwFqOCn2w8Glr/7
 2f+1a85V8Bm2o70r+C4hXuHIjMmpYpgR7t3LdGwvOtJITzld8KFeioZYCkL/OjUe
 lCxf/gOIDM+qItF0hq79u4G5CGRPQ3GqHHixrYbpBgHQB7r3HMA4IB6qL6tqlz8t
 B86baw361P2riYIBFdL+ERMouM2rkI2GOm6lFvIZgfnLNJLprEDhNUXuyWjY303f
 2lUCI2KEW+w7cHBscoUTju/D5frg/JeDjWzM1rwCEByJDde1B4MRPoDPq+v12vBS
 97j+m/nSPmloAe5jiFk7R7xN04DSSDYAseehOuZoStu4ynhoboo1HUIWJ5bQ7Se4
 IRRTdVwmNZPdfC9iRwiOEsLQf5G7jCcRawhXLWneAbR/2pc/xjA=
 =FCVR
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-arm64-dt-for-v5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux into arm/dt

Amlogic ARM64 DT changes for v5.18:
- New Boards:
 - Amediatek X96-AIR (Amlogic S905X3)
 - CYX A95XF3-AIR (Amlogic S905X3)
 - Haochuangy H96-Max (Amlogic S905X3)
 - Amlogic AQ222 (Amlogic S4)
 - OSMC Vero 4K+ (Amlogic S905D)
- Initial support for Amlogic S4
- Support for uart_ao_b & pwm_f on G12 SoCs

* tag 'amlogic-arm64-dt-for-v5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  arm64: dts: meson: add support for OSMC Vero 4K+
  dt-bindings: arm: amlogic: add Vero 4K+ bindings
  dt-bindings: vendor-prefixes: add osmc prefix
  arm64: dts: meson-g12-common: add uart_ao_b pins muxing
  arm64: dts: meson-g12-common: add more pwm_f options
  arm64: dts: add support for S4 based Amlogic AQ222
  arm64: dts: meson: add initial device-tree for H96-Max
  dt-bindings: arm: amlogic: add H96-Max bindings
  dt-bindings: vendor-prefixes: add haochuangyi prefix
  arm64: dts: meson: add initial device-trees for A95XF3-AIR
  dt-bindings: arm: amlogic: add A95XF3-AIR bindings
  dt-bindings: vendor-prefixes: add cyx prefix
  arm64: dts: meson: add initial device-trees for X96-AIR
  dt-bindings: arm: amlogic: add X96-AIR bindings
  arm64: dts: meson: add common SM1 ac2xx dtsi
  arm64: dts: meson-sm1: add spdifin and pdifout nodes
  dt-bindings: arm: amlogic: add S4 based AQ222 bindings

Link: https://lore.kernel.org/r/a7cd9937-d441-3e1f-9709-8e80cc8814f1@baylibre.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 16:02:03 +01:00
Paolo Bonzini ece32a75f0 KVM/arm64 fixes for 5.17, take #4
- Correctly synchronise PMR and co on PSCI CPU_SUSPEND
 
 - Skip tests that depend on GICv3 when the HW isn't available
 -----BEGIN PGP SIGNATURE-----
 
 iQJDBAABCgAtFiEEn9UcU+C1Yxj9lZw9I9DQutE9ekMFAmIY1HMPHG1hekBrZXJu
 ZWwub3JnAAoJECPQ0LrRPXpD4LEP/R2R5nvZwaiJIcVopzJd4ayN16bBL6qCxXWm
 XsuMqdE8g/Rju3sxR/qtomDgB3GJoYpCyY28rrmVli0WBZRt9icFE1cnqUMbv5g0
 Iyd+RS79LcKU6OMakAyjYX0NNwhGHr1mdD+gP8NSMny+2XWQSVcUtTVZOjSprI9L
 zFNtJxPs1wfCp3WOWF668dgrBi8TsPHte2y0110+BcrY1rzJF0HXZm8YimlLakOG
 Pk98dbpGMV1aKog5p9YgE3tP0oMjUcf7h+EZxuQmKF7WeFCfVg1M1xlovxRq/oEg
 6KDUwUnNcDOtjUQ0pmCIPwm+rHJjlkEd+1MjZPf9L6fU0lPXmFN/DEawTh3iAsB+
 xAaijEb5ImtgQgyhnDYwr5g307iXmrgSwGZKue0WOA2CTtryIXqdE02TqwZZHprm
 MmAaUBUKbLGVMxd0sImsnrHUM1nNOHnD0IDEUwRLbAHOjm0u8rRK6ewV/A2O66Zz
 A+AVpBZ3wd4jKkrN509d4TqomegXZQDL7hDHSgWPJDWQvOe0dFdWPJtjtamOg9Bq
 +DVdXfwhQR7pHQIQbufIL+80Pgv7oBdEVSbtOJL+O+xkiSiDwHwkPdJwkB/01QMm
 /f6oytJ/Kkhs+G+W6rn/bo/W1thgCBSnXntUz4qs+Cfpl4QDOIFvqMmwDdOHOzcN
 9WrR6DZg
 =Nyln
 -----END PGP SIGNATURE-----

Merge tag 'kvmarm-fixes-5.17-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD

KVM/arm64 fixes for 5.17, take #4

- Correctly synchronise PMR and co on PSCI CPU_SUSPEND

- Skip tests that depend on GICv3 when the HW isn't available
2022-02-25 09:49:30 -05:00
Mark Brown 766121ba5d arm64/mte: Add userspace interface for enabling asymmetric mode
The architecture provides an asymmetric mode for MTE where tag mismatches
are checked asynchronously for stores but synchronously for loads. Allow
userspace processes to select this and make it available as a default mode
via the existing per-CPU sysfs interface.

Since there PR_MTE_TCF_ values are a bitmask (allowing the kernel to choose
between the multiple modes) and there are no free bits adjacent to the
existing PR_MTE_TCF_ bits the set of bits used to specify the mode becomes
disjoint. Programs using the new interface should be aware of this and
programs that do not use it will not see any change in behaviour.

When userspace requests two possible modes but the system default for the
CPU is the third mode (eg, default is synchronous but userspace requests
either asynchronous or asymmetric) the preference order is:

   ASYMM > ASYNC > SYNC

This situation is not currently possible since there are only two modes and
it is mandatory to have a system default so there could be no ambiguity and
there is no ABI change. The chosen order is basically arbitrary as we do not
have a clear metric for what is better here.

If userspace requests specifically asymmetric mode via the prctl() and the
system does not support it then we will return an error, this mirrors
how we handle the case where userspace enables MTE on a system that does
not support MTE at all and the behaviour that will be seen if running on
an older kernel that does not support userspace use of asymmetric mode.

Attempts to set asymmetric mode as the default mode will result in an error
if the system does not support it.

Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Vincenzo Frascino <Vincenzo.Frascino@arm.com>
Tested-by: Branislav Rankov <branislav.rankov@arm.com>
Link: https://lore.kernel.org/r/20220216173224.2342152-5-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 14:41:05 +00:00
Mark Brown d082a0255f arm64/mte: Add hwcap for asymmetric mode
Allow userspace to detect support for asymmetric mode by providing a hwcap
for it, using the official feature name FEAT_MTE3.

Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Vincenzo Frascino <Vincenzo.Frascino@arm.com>
Tested-by: Branislav Rankov <branislav.rankov@arm.com>
Link: https://lore.kernel.org/r/20220216173224.2342152-4-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 14:41:05 +00:00
Mark Brown cb627397e0 arm64/mte: Add a little bit of documentation for mte_update_sctlr_user()
The code isn't that obscure but it probably won't hurt to have a little
bit more documentation for anyone trying to find out where everything
actually takes effect.

Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Vincenzo Frascino <Vincenzo.Frascino@arm.com>
Tested-by: Branislav Rankov <branislav.rankov@arm.com>
Link: https://lore.kernel.org/r/20220216173224.2342152-3-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 14:41:05 +00:00
Mark Brown 0a2eec83c2 arm64: cpufeature: Always specify and use a field width for capabilities
Since all the fields in the main ID registers are 4 bits wide we have up
until now not bothered specifying the width in the code. Since we now
wish to use this mechanism to enumerate features from the floating point
feature registers which do not follow this pattern add a width to the
table.  This means updating all the existing table entries but makes it
less likely that we run into issues in future due to implicitly assuming
a 4 bit width.

Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220207152109.197566-4-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 14:28:18 +00:00
Mark Brown 3bb72d86d8 arm64: Always use individual bits in CPACR floating point enables
CPACR_EL1 has several bitfields for controlling traps for floating point
features to EL1, each of which has a separate bits for EL0 and EL1. Marc
Zyngier noted that we are not consistent in our use of defines to
manipulate these, sometimes using a define covering the whole field and
sometimes using defines for the individual bits. Make this consistent by
expanding the whole field defines where they are used (currently only in
the KVM code) and deleting them so that no further uses can be
introduced.

Suggested-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220207152109.197566-3-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 14:28:18 +00:00
Mark Brown 879358fc67 arm64: Define CPACR_EL1_FPEN similarly to other floating point controls
The base floating point, SVE and SME all have enable controls for EL0 and
EL1 in CPACR_EL1 which have a similar layout and function. Currently the
basic floating point enable FPEN is defined differently to the SVE control,
specified as a single define in kvm_arm.h rather than in sysreg.h. Move the
define to sysreg.h and provide separate EL0 and EL1 control bits so code
managing the different floating point enables can look consistent.

Signed-off-by: Mark Brown <broonie@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220207152109.197566-2-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 14:28:18 +00:00
Arnd Bergmann 3b34d3a919 Renesas ARM DT updates for v5.18
- External interrupt (INTC-EX) support for the R-Car V3U SoC,
   - Initial support for the RZ/G2LC and RZ/V2L SoCs, and the RZ/G2LC and
     RZ/V2L SMARC EVK development boards,
   - Support for MAX9286 GMSL deserializers and GSML cameras on the Eagle
     and Condor development boards,
   - NAND support for the RZ/N1D SoC,
   - DMA engine (SYS-DMAC) support for the R-Car S4-8 SoC,
   - LVDS support for the R-Car M3-W+ SoC,
   - HDMI output and 9-axis sensor support for the Kingfisher (ULCB
     extension) board,
   - MAX96712 GMSL serializer support for the Falcon development board,
   - MOST network support for the R-Car H3, M3-W, M3-W+, M3-N, E3, and D3
     SoCs,
   - Miscellaneous fixes and improvements.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYgZjowAKCRCKwlD9ZEnx
 cIq5AP4gwBDY8UmVVcKj9CWl+feTrHYxjFCrs/ALVcjS1EphmQEAwpK4TaqElJwb
 pO2PuhfgYlCl0QwkkzYygxKFAlutjQg=
 =24DK
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY5lAACgkQmmx57+YA
 GNnYOg/7BXiOalLktvKGNDMKREiJ9zJXMc55NNeQzw3ne2AN6M4nuOcBiGkQiHHP
 NkvQwGruOXctTJtCnk4fCTd4cu1EhSIWBUyyk4t9sBLTLm+rG9a+tGyeFKj+opjF
 MvdK+EqCAeZfF/zrwvIFBSz0rbhNKje6OT8iDU1Xha2YmabXJy5T0QXerDguF1P0
 jJxrENPlhEVGFyh+9ObqgGCsMdRAnNeHyIgrg+nqdys7k4+PKtwopdyC6sb8cH6t
 ok2zPAJuStGsW8USA5afhLU4qrL9kCEMH0tDWq2RdN27EYVJGAnp0O2Yxa20cxLh
 pMNZ70KfvkbQkv2nf+ZyMEB5z27JR6hk9GJcKit3y4VCa6gIQfBxlVFBHqJD1q4f
 ugQDV/pRH/KSktd/9XHcPf6yD8njpfqpZtBLFY5AlG6xns6oImHmwM+3Dp4Glsh5
 5oAh8fp6BOKiqZt7lc24h1HJZB6G8FyWhhuRaTNYfLdX66GTrAkq5BvclKvLzbsj
 SbW7o8zKNLeYPbNyC4jYt6/e5MWGhg2SFHv3Aa8N919n1MjfRumn1KbjrAeMU1zu
 fYh3EzMclBKKL+cOwVfb14tbE0OnpB8XJ6ipPWiCIQ9E8WeGhEsyDoFUivNt0IPN
 t3dGAuTUqKC0PRF2kJ1ct5pni03G2B0iiQopTQxB8Ca5dMUQ0S8=
 =YRMA
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm-dt-for-v5.18-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt

Renesas ARM DT updates for v5.18

  - External interrupt (INTC-EX) support for the R-Car V3U SoC,
  - Initial support for the RZ/G2LC and RZ/V2L SoCs, and the RZ/G2LC and
    RZ/V2L SMARC EVK development boards,
  - Support for MAX9286 GMSL deserializers and GSML cameras on the Eagle
    and Condor development boards,
  - NAND support for the RZ/N1D SoC,
  - DMA engine (SYS-DMAC) support for the R-Car S4-8 SoC,
  - LVDS support for the R-Car M3-W+ SoC,
  - HDMI output and 9-axis sensor support for the Kingfisher (ULCB
    extension) board,
  - MAX96712 GMSL serializer support for the Falcon development board,
  - MOST network support for the R-Car H3, M3-W, M3-W+, M3-N, E3, and D3
    SoCs,
  - Miscellaneous fixes and improvements.

* tag 'renesas-arm-dt-for-v5.18-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (27 commits)
  arm64: dts: renesas: rzg2lc-smarc: Use SW_SD0_DEV_SEL macro for eMMC/SDHI device selection
  arm64: dts: renesas: rzg2lc-smarc: Enable CANFD channel 1
  arm64: dts: renesas: rzg2lc-smarc: Enable SCIF1 on carrier board
  arm64: dts: renesas: rzg2lc-smarc: Add macros for DIP-Switch settings
  arm64: dts: renesas: rzg2l-smarc: Add common dtsi file
  arm64: dts: renesas: rzg2lc-smarc: Enable microSD on SMARC platform
  arm64: dts: renesas: rzg2lc-smarc-som: Enable eMMC on SMARC platform
  arm64: dts: renesas: Add initial device tree for RZ/V2L SMARC EVK
  arm64: dts: renesas: Add initial DTSI for RZ/V2L SoC
  dt-bindings: clock: Add R9A07G054 CPG Clock and Reset Definitions
  arm64: dts: renesas: ulcb/ulcb-kf: switch to use audio-graph-card2 for sound
  arm64: dts: renesas: rcar-gen3: Add MOST devices
  arm64: dts: renesas: Miscellaneous whitespace fixes
  arm64: dts: renesas: falcon-csi-dsi: Add and connect MAX96712
  arm64: dts: renesas: ulcb-kf: Add 9-asix sensor device
  arm64: dts: renesas: ulcb-kf: Add KF HDMI output
  arm64: dts: renesas: r8a77961: Add lvds0 device node
  arm64: dts: renesas: r8a779f0: Add sys-dmac nodes
  ARM: dts: r9a06g032: Describe the NAND controller
  arm64: dts: renesas: Add GMSL cameras .dtsi
  ...

Link: https://lore.kernel.org/r/cover.1644587200.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 15:23:12 +01:00
Arnd Bergmann 4d9b86eb38 Samsung pinctrl DTS and driver changes for v5.18
Conversion of Samsung pinctrl bindings to dtschema followed up with
 alignment of DTS files to the dtschema.
 
 The entire work consists of three parts but everything should be merged
 at once to avoid dtschema check errors:
 1. Samsung pinctrl driver change necessary to accept new DTS (driver
    depends on node names and this has to be adjusted because of dtschema).
 2. Conversion to dtschema which brings requirement of different naming
    of the GPIO nodes.
 3. DTS commits depending on driver (1) above, which convert all GPIO pin
    bank names to new naming, required by dtschema.
    This also includes few cleanups around DTS which are here to avoid
    any merge conflicts.
 
 The Samsung pinctrl driver changes are backwards compatible.  However
 the DTS changes (renaming nodes) could cause problems in out-of-tree or
 other project implementations of the driver.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmH1KTEQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD11PfD/4tFiY40inEHZIjWSrIB/D3RZhVzslSeT2d
 bABVtync3w0gTQZpT/E06XtSGrxLFh0hEa9ZJp94whiSFQ8xO8ziJONdp7T0zkzM
 cJNufT5bsROGIhlnqX7FjZVyuqTKla1Uch5BwLbC1+0jeNFeic6tUXyWgk+ds0Dh
 mmyKNNNpPW0kU5PTmk2rHxK171JCS7id4mpGCujqvMaBPB4RXHQJ/qjV/3e0QvmY
 eReX+QVeMyeGg0UcFvxaVVT1Nw5TgFRzA9cOaIJ/JXbi/Jp7PagkvB6ZHk7smR7V
 dxnPyQoASx41NPNRifVLUFmsGfrBzMO22JYHEzu0P7effbMLxDZoTU1lsBXWLDad
 q7zWf9OpEK3hEwVM7vSwPZpLH14P7MqKvaDYEW1OdbC2zW3wT5McodUhCAdHsCxx
 0iCmWxoOV8JyP8MbmW2I5o5Nw7lUW8hKg5KGYnUK6DLFDCkn8OP1XA+pnwr50H4t
 FqGjKdLAjddId8KIEI+FO5O59kpPm082B71rpR/97D4nOaPOWfvv9NDRcwXbmkOv
 nUPM/By6XwXo8NfdU/rcwJDGwDv1fe+nNVDU0aKXNLVhpGO3dkR6l14VQsQrsH2E
 Dd4Hmio3HBClLGREkCbl0+5H9+a+ACOQ11XJlXmmHJkwb5SzmM2CYQRNxE6NxArd
 3s63FKVA1w==
 =aFcq
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY5fwACgkQmmx57+YA
 GNn37xAAiwrsEdyqDFerNB/JVUJRLlw93TY6PojPnsj60x98UfeJbcgPeEUjYNPk
 hl3HIOtpyrHom1UmqJXFROKSNq+S/rwfOJS67uwtYBgM7YwU3KCHVIeJbT1Pzwzm
 dE80TSX1nolTFctCsI90mQzN72tRJbQZhvz8vP7FlkOLDe7YFIjy1j5gGify+d4J
 M1YnMRVSCEA4Ba7bggQL7RWfhLzwkT4lEYLRkSGpH0kGmnW/2s+4iCxDMTqfjufF
 NYP+3ctDmXfReDInkvdVHHT/F5f04C0r6JO+S7+Hvo0SJAE1zPAsNcST/dkE9hsQ
 0W8VP3+EviU/k9Gmd3fPBfzX0zWzeEIaQwn3i9XVkIE4QGgXcwNOTksWgBAqyRj7
 Bc6qNLmFK79dLIavRp1jmZzdDpK8yLHrVhcQjppmBBHcjW6BdBf7LN6ZYjr65qlo
 ecITWLzkVLOL7iTGlLvgU1NYKUKpOJ98w2a86DbX3iAg1m1o0i0pABGCQurpUdKJ
 od1y8o+xMT3+zEyK+K/Rx+ugXny1nm08qbkaApJu0yKaS5c0UhTQWPqrqvZfe+Jp
 Am2KPG4EM+dDaUOj5MSItt4DeyBWQqmdLGiPJbxrVK9rmYW7CO3CotwOJU2E3St7
 0dv7wRkfmuwbEt9BF9ITuNjLUXM60eR94IJV345QVxi6lVYg6ho=
 =CjdH
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-pinctrl-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt

Samsung pinctrl DTS and driver changes for v5.18

Conversion of Samsung pinctrl bindings to dtschema followed up with
alignment of DTS files to the dtschema.

The entire work consists of three parts but everything should be merged
at once to avoid dtschema check errors:
1. Samsung pinctrl driver change necessary to accept new DTS (driver
   depends on node names and this has to be adjusted because of dtschema).
2. Conversion to dtschema which brings requirement of different naming
   of the GPIO nodes.
3. DTS commits depending on driver (1) above, which convert all GPIO pin
   bank names to new naming, required by dtschema.
   This also includes few cleanups around DTS which are here to avoid
   any merge conflicts.

The Samsung pinctrl driver changes are backwards compatible.  However
the DTS changes (renaming nodes) could cause problems in out-of-tree or
other project implementations of the driver.

* tag 'samsung-dt-pinctrl-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: (28 commits)
  arm64: dts: exynos: use dedicated wake-up pinctrl compatible in ExynosAutov9
  ARM: dts: s5pv210: align pinctrl with dtschema
  ARM: dts: s3c64xx: align pinctrl with dtschema
  ARM: dts: s3c24xx: align pinctrl with dtschema
  arm64: dts: exynos: align pinctrl with dtschema in ExynosAutov9
  arm64: dts: exynos: align pinctrl with dtschema in Exynos7
  arm64: dts: exynos: align pinctrl with dtschema in Exynos5433
  ARM: dts: exynos: align pinctrl with dtschema in Exynos542x/5800
  ARM: dts: exynos: align pinctrl with dtschema in Exynos5410
  ARM: dts: exynos: align pinctrl with dtschema in Exynos5260
  ARM: dts: exynos: align pinctrl with dtschema in Exynos5250
  ARM: dts: exynos: align pinctrl with dtschema in Exynos4412
  ARM: dts: exynos: align pinctrl with dtschema in Exynos4210
  ARM: dts: exynos: align pinctrl with dtschema in Exynos3250
  ARM: dts: s3c64xx: drop unneeded pinctrl wake-up interrupt mapping
  ARM: dts: exynos: simplify PMIC DVS pin configuration in Peach Pi
  ARM: dts: exynos: override pins by label in Peach Pi
  ARM: dts: exynos: simplify PMIC DVS pin configuration in Peach Pit
  ARM: dts: exynos: override pins by label in Peach Pit
  ARM: dts: exynos: simplify PMIC DVS pin configuration in Odroid XU
  ...

Link: https://lore.kernel.org/r/20220129115352.13274-1-krzysztof.kozlowski@canonical.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 15:21:48 +01:00
Arnd Bergmann ab2dad6f9e SoCFPGA dts updates for v5.18, part 1
- Cleanup of Altera/Intel ARMv7 and ARMv8 DTS and bindings
 -----BEGIN PGP SIGNATURE-----
 
 iQJIBAABCgAyFiEEoHhMeiyk5VmwVMwNGZQEC4GjKPQFAmIGRiYUHGRpbmd1eWVu
 QGtlcm5lbC5vcmcACgkQGZQEC4GjKPT01A//e6fvePZfadfVdK2HUmiHl9vCkykg
 oA6a4RYlRWBMG3Pbi1rRqnz189hSyKsdpupzgppuA+nnDA9sktupgVLGYqpsBKcf
 8kE6cDwxhdv7EuDmXixdqsZFX6DIEkD7smtoKnTPw2UGFMjQ1s0HjdLwoLkPzbgq
 5EnfrrbmL0AnlxoKpmpQsMogiExuy0OZpLDhZ28Zwr1cmFA88RUA1EOLaHQO2rBp
 RWnmtLgl5O8d4gpo+xSu8+FM1b/zPIuttjJt3SIp8lKrtM2xbLDpOJcD1iLC+Qg+
 +VGPkkoZfGAcusnwjIj18dRacXhkpviyUWoFHWtiZXenf8eyn6yUJkZaX4MRkXiF
 y4UzgpR+g7/w0wylJWM7y1J4HxdMousNKmuOtm5SG6FmlEKE7Gjaf7M5Sh7vrrQE
 nY/pp4blzxuYEEK+R8M7nmWQdrMCohWpivLhL95sBQEdMBc0m+m92Dl+D8lLEEE7
 Jb8htcqVlQXNkwI6zCAabEomboisDx8jnLMUoo55f0xw0b5RRIjkFzRvpJrPXfWX
 dGgI1gzxf3e5iKCz964KFN1H/i0Vi13b6pPvfnYmGVi84QGqrxTHhyPTUTtq3bI+
 8zimzOHQH4lOy+pbCukDgyEWh8mjat+PbXc+6DGq5k6DzJh4QlALRQc+v0b9J7zr
 YvMvKOWveS6C+/w=
 =7xfQ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY5VoACgkQmmx57+YA
 GNm6Sw/9Epm+bTbW4d/gAE/HSLFyFnpm7krNi+4Nkw2mY9JBNkJsTw/ne1gWimLU
 TKAppRv5UGCtWCtXwEdi6vNuxWo00HAv+BQ2fNAavA0iRBgYgEKDIqYgYecNbL5v
 WE2FAJDWSIFBBXd0F5IXY5t/og9ezQApBZEMtqma2w/VHlzEYstHyLbvtFNFCqTn
 /mAiSe8TvkYZAeuyOYI8qNkIykpD6Uydh+wFWdYjh08tKD1hcZ5josRcLHBJir6A
 uobX8QrgNVcrEIZDViKxIexA+3ChH70U5No57saqEW5CYNpDIFeysht/UhrK4qAd
 XDmwBmKwFBSKKZ9etoY2mYar0F+FBN8Dzcs4SaRX9bRdNfL5jQS/IUMM186FAUvt
 h/qsr5c+3BUt9ztVDxckFC5O6gAGFxTdF8NvOlGXSI8VAuHpe4IAAtrAWg18nFDj
 CiwaOf6hGVR4WZQWBB1D66/ymfIkHVh635q5bQaqBJKNisI6aBahz9A4Tg6vmLxJ
 TsncdINxYY3DUzOD13EbC/TchK0fh9/KPUNTAMNXo1oHL1AbCiOlf00fm9f8AvTR
 VTO1PTc/9nFfv3E8vNbnCtIik4JgtF+bzatflQNrj4gVZmNwqKY9i6AMPSghv3st
 G6guMFnB+GAht8uWOiKh8xHMWqEVp7Mat0Lukf/P4SOwtDodFqc=
 =01X/
 -----END PGP SIGNATURE-----

Merge tag 'socfpga_dts_update_for_v5.18_part1' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into arm/dt

SoCFPGA dts updates for v5.18, part 1
- Cleanup of Altera/Intel ARMv7 and ARMv8 DTS and bindings

* tag 'socfpga_dts_update_for_v5.18_part1' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux: (22 commits)
  ARM: dts: socfpga: cyclone5: align regulator node with dtschema
  ARM: dts: socfpga: arria10: align regulator node with dtschema
  arm64: dts: agilex: align pl330 node name with dtschema
  arm64: dts: stratix10: align pl330 node name with dtschema
  arm64: dts: intel: socfpga_agilex_socdk: align LED node names with dtschema
  arm64: dts: agilex: align mmc node names with dtschema
  arm64: dts: agilex: add board compatible for N5X DK
  arm64: dts: agilex: add board compatible for SoCFPGA DK
  arm64: dts: stratix10: align regulator node names with dtschema
  arm64: dts: stratix10: align mmc node names with dtschema
  arm64: dts: stratix10: move ARM timer out of SoC node
  arm64: dts: stratix10: add board compatible for SoCFPGA DK
  ARM: dts: arria10: add board compatible for SoCFPGA DK
  ARM: dts: arria10: add board compatible for Mercury AA1
  ARM: dts: arria5: add board compatible for SoCFPGA DK
  dt-bindings: clock: intel,stratix10: convert to dtschema
  dt-bindings: intel: document Agilex based board compatibles
  dt-bindings: altera: document Stratix 10 based board compatibles
  dt-bindings: altera: document VT compatibles
  dt-bindings: altera: document Arria 10 based board compatibles
  ...

Link: https://lore.kernel.org/r/20220211112556.98940-1-dinguyen@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 15:19:06 +01:00
Arnd Bergmann 7e2d8a61c6 Samsung DTS ARM64 changes for v5.18
1. Minor improvements and dtschema fixes (node names, properties).
 2. Fix issues pointed out by DT schema checks:
  - Add necessary clock controller inputs on Exynos7.
  - Add USB DWC3 supplies.
  - Drop old syscon phandle on Exynos5433.
 3. Add initial Exynos850 support and WinLink E850-96 board using it.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmID1JgQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD18iiD/90edW4hfaViW6+PkoBrgFMxJ8uN0d7KfVZ
 RFSYwxgOA2RKFSOOKoipWrVHh9d9/7P5wyaemWnHoJL0zYDl41Of0BJeasBj0A8P
 SsYg0O8RPYBmh8J9VHp4mjNDpqQ8fdDMJhi3GxR4AcocO2/cWqmdeO6Emd1Zn4IL
 R0XViCu5ZC4PEbkocCMDAgsEf4QYQHi7f0QqnMkTWGW5YpPQFGYiup5wX7AWRv3J
 z+WWNBmfeisqXO5uZXC2t87jQ6jRWe0L+uM1edez86M3PbKb+/vwpPqypVfuqIfA
 3G7On4XG1TTTuh8UL56H9UtH34mxvuhXMJMRtktLkx3FRNug9ojD/uaOAGRvnIzi
 TPpNpG5HvHnvrSv/W/aE/nkfKTExbmK9Z0FRMYpYQnbDnJDLJOxlyFATqMgsP6u3
 m2OFU862WZ9hX3pXKq4Mwq51k4Bxq8mV4VvVp5Hk64BMTF7RofI+xFUtIgkK9KCj
 XikYE29OSfB/rWevEw+SgsIaEyyX4JhsiyMz4cSkCiT3NJSFzLXLWxzk5i/DYY4Z
 LE6sUBz3hw8/+CnBGcuVtbbe9tJn4R2YUmr9N//G0cc6IynmQhAV1/FuuCp+C1np
 HXmNl1B+viAfGVXkpmajxlaauqEhQQad2NEgZWvy1b1fjn5zyNB3BtGx5lczv2cI
 QJLGgOefSw==
 =vdIn
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY5GoACgkQmmx57+YA
 GNl7JhAArk28g6n5nIsOXkjbjjVfO2CkDE36IWj6v80BYVphd+0sPEQIBuYLEJqT
 3QUIVfM1/f8YDiSwrhs6MlS1Igor26MRlkwi5Hn/9NMCWjpd3R4THPx2pnIjn2K1
 Ya6ibhNEetD7DwHaOE6Utx+CtMSUZZC7ytT9eS2SZWHkPprMin2m+R+u9yH1DoJl
 ZmHVMsPo2hIvW2IkPDiciql2TyQOpwYb61Y5qP2+5t9ll13DdvKd4z04mU0GOrn2
 9W/mNtKKTjKHEHL+MtgCkt1X0CzOimYTTcQ22oPNwCMkdjXDNTEdnpqFXvMchpoh
 0bFU0ahmiyJiYv4sv/s2vVzOWOQy/n5JEVmeu6znaKEIVm9a/ppquZXdO0Fxn5QV
 4kWFUmETux+rC2TiL5muDdAizzbX9aONmFSNYtzVpx71AYK3SVFN2IxAUhCuzXSt
 OOmw7p2KOZ4ltpzuvYxQNkGY0ti3cX1v57XMQOdr7fN3lfIOO7nRRgjPWlMBVv+P
 jBvoucfawJgLaSPt+83um8O9sbMkT8et8a7EA72w7i2Y9Z0uWAGz5pxuDvLbs6K7
 N1odhDfDzrNe2Iz+ojJLfTo9+aoAX+oNiEHlGa4oTQI10yALvRwGj1su2toFhFbI
 jGKYZ4goKEzZmKA9QYeut9dqsPlLg1kNkgAx7UQZVfdaA8yjTOE=
 =QdZn
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt64-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt

Samsung DTS ARM64 changes for v5.18

1. Minor improvements and dtschema fixes (node names, properties).
2. Fix issues pointed out by DT schema checks:
 - Add necessary clock controller inputs on Exynos7.
 - Add USB DWC3 supplies.
 - Drop old syscon phandle on Exynos5433.
3. Add initial Exynos850 support and WinLink E850-96 board using it.

* tag 'samsung-dt64-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: dts: exynos: adjust USB DRD clocks with dtschema in Exynos7
  arm64: dts: exynos: drop unneeded syscon phandle in Exynos5433 LPASS
  arm64: dts: exynos: align pl330 node name with dtschema
  arm64: dts: exynos: Add initial E850-96 board support
  arm64: dts: exynos: Add initial Exynos850 SoC support
  arm64: dts: exynos: add USB DWC3 supplies to Espresso board
  arm64: dts: exynos: add necessary clock inputs in Exynos7
  arm64: dts: exynos: Align MAX77843 nodes with dtschema on TM2

Link: https://lore.kernel.org/r/20220209145226.184375-2-krzysztof.kozlowski@canonical.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 15:15:06 +01:00
Arnd Bergmann 9d28fe1bec Tesla FSD ARM64 changes for v5.18
Add Tesla FSD SoC ARM64 platform: bindings, DTSI+DTS, maintainer's entry
 and defconfig change.  This brings and enables this new platform.
 
 This includes clock controller bindings (header files with clock IDs)
 which are shared also with Tesla FSD SoC clock controller pull request.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmH9SB0QHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD1zpnD/9xV+X85LiKRWWuYeDtLBOzwuqCKAEVBX+U
 ZVGEuS675Ha4RrskEOWHBqxBePV7dposFaBWv59wGlnTESrz4N5jtdQu8WJYatp0
 WzTTpgdmQBldKHjS1xtEBK7aZ3UOfvGEEGh+dkIX8U+DxdSzfil10XpnLeplOLUs
 pzpb8YdwSKX4VwRTRNuZpthN/VKTcIykANvm+DbKEl8F5kFjHWrlPFgU11XmLzZp
 ngzB2AeNHWqSjDJR/JZjbjlF7SsFCbfVTYBVLVoiiHKDVgpds6rM1LiR9OjY9skp
 W8egM8q2tO7mVNdFnNEK1k/CaioJUgBhEFUdxycR8Q0YoJP2dRnvQ3kEEI30suGY
 EoNULUyLLa61yMIgzQ8RF8RBo/Pb9lJDvr4DyG8InDANr9Y9bLHqi4Rmm4h6BJYb
 Y5cEhorY8qCmxBvllj9PdjCO0e1FanxO+RsVBgzDw3iBo6mrGXdFy1CppZ3BUSI1
 NcNc5D5TRIkSo8JU9gFe+bVCjI2h1QQkZFERraH2f801wKQi7kD7/c8TE2KQR6Ej
 uz7BRA9cIlE2tDqzWVtmSM+ida5c8CsTGknk1aWKM6cwGB5wM6JhHnJfg4mBUGZj
 BCdUmRfqRYX4+2E01YyUjbqjbSGxYkvyPPw9LBr2ii3di4G7FInwfyrvD4O7IBBL
 UUn0MFjD3w==
 =tXfh
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY47wACgkQmmx57+YA
 GNnklg/8CNnZyxSIOo258Bixbpf7ArNIVXuwd2mDUQO5w/dt6/y1HPErk1x/FJO5
 u4x3ugyCOJOPXnZy/We38M1NXJI7+RWfkvnHObGGLqsHf6YPICEUZqAlVuAT0fJn
 eWGTD1XOmf3m7r6xpSn8W6dxZ31tU/ST3WcecSBEcX4URJULdtF5Umqyh7RXTjYL
 HX3QvJwKxeNCnIUbsPJK7Iq0Y77AFgzPpn7iSO4qiP5lAK+YWRuT8jQKaIOGKJxz
 lw5rkYhq8pQD0Amlm/DYxrvfJJZEU83FEzMxx9ZmeeU3LoixVvWgA2H0phjZP03k
 0sbshjOhUSLFIfduk1oZSbkYxQAsDsF8r1Jvrbr5LrVI+2C7vQoqTwG+neaqksnp
 CmNYDvAhugdVGHBGZTeQzeVMq8swV5o+3DJtlnKPp6gXlrJjFOECE63F4f1Pc+Fi
 CE9KRBLqFSrdHyAfi3bwAcS8tTnhRYx6I6NYjCp+qa4wEREw8X8HBLDRemWsoqB2
 T19W864mkGPPbkmxaf5/F9LcJNU8tSd86E3hSIn1fgusEKTkv50KaEZ0GrLV45ou
 GYTAYfIVRG+9RZpQOlmHPMAJ2DIoHB1EXrvPmD73Tyrgo3sZhftClNkikZKbDGDp
 XplUjSnClvsUBe4cbO4zVw/s7wQwIe8x+CEl/3Ry2L6MV/fysMY=
 =l8Oq
 -----END PGP SIGNATURE-----

Merge tag 'tesla-dt64-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt

Tesla FSD ARM64 changes for v5.18

Add Tesla FSD SoC ARM64 platform: bindings, DTSI+DTS, maintainer's entry
and defconfig change.  This brings and enables this new platform.

This includes clock controller bindings (header files with clock IDs)
which are shared also with Tesla FSD SoC clock controller pull request.

* tag 'tesla-dt64-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: dts: fsd: Add SPI device nodes
  arm64: defconfig: Enable Tesla FSD SoC
  arm64: dts: fsd: Add initial pinctrl support
  arm64: dts: fsd: Add initial device tree support
  dt-bindings: clock: Document FSD CMU bindings
  dt-bindings: clock: Add bindings definitions for FSD CMU blocks
  dt-bindings: arm: add Tesla FSD ARM SoC
  dt-bindings: add vendor prefix for Tesla

Link: https://lore.kernel.org/r/20220204154112.133723-2-krzysztof.kozlowski@canonical.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 15:12:12 +01:00
Fangrui Song 4013e26670 arm64: module: remove (NOLOAD) from linker script
On ELF, (NOLOAD) sets the section type to SHT_NOBITS[1]. It is conceptually
inappropriate for .plt and .text.* sections which are always
SHT_PROGBITS.

In GNU ld, if PLT entries are needed, .plt will be SHT_PROGBITS anyway
and (NOLOAD) will be essentially ignored. In ld.lld, since
https://reviews.llvm.org/D118840 ("[ELF] Support (TYPE=<value>) to
customize the output section type"), ld.lld will report a `section type
mismatch` error. Just remove (NOLOAD) to fix the error.

[1] https://lld.llvm.org/ELF/linker_script.html As of today, "The
section should be marked as not loadable" on
https://sourceware.org/binutils/docs/ld/Output-Section-Type.html is
outdated for ELF.

Tested-by: Nathan Chancellor <nathan@kernel.org>
Reported-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Fangrui Song <maskray@google.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20220218081209.354383-1-maskray@google.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 14:06:50 +00:00
Vladimir Murzin 032e6c3379 arm64: cpufeature: Remove cpu_has_fwb() check
cpu_has_fwb() is supposed to warn user is following architectural
requirement is not valid:

LoUU, bits [29:27] - Level of Unification Uniprocessor for the cache
                     hierarchy.

  Note

    When FEAT_S2FWB is implemented, the architecture requires that
    this field is zero so that no levels of data cache need to be
    cleaned in order to manage coherency with instruction fetches.

LoUIS, bits [23:21] - Level of Unification Inner Shareable for the
                      cache hierarchy.

  Note

    When FEAT_S2FWB is implemented, the architecture requires that
    this field is zero so that no levels of data cache need to be
    cleaned in order to manage coherency with instruction fetches.

It is not really clear what user have to do if assertion fires. Having
assertions about the CPU design like this inspire even more assertions
to be added and the kernel definitely is not the right place for that,
so let's remove cpu_has_fwb() altogether.

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Link: https://lore.kernel.org/r/20220224164739.119168-1-vladimir.murzin@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 13:52:23 +00:00
Marc Zyngier 1a48ce9264 Merge branch kvm-arm64/psci-1.1 into kvmarm-master/next
* kvm-arm64/psci-1.1:
  : .
  : Limited PSCI-1.1 support from Will Deacon:
  :
  : This small series exposes the PSCI SYSTEM_RESET2 call to guests, which
  : allows the propagation of a "reset_type" and a "cookie" back to the VMM.
  : Although Linux guests only ever pass 0 for the type ("SYSTEM_WARM_RESET"),
  : the vendor-defined range can be used by a bootloader to provide additional
  : information about the reset, such as an error code.
  : .
  KVM: arm64: Remove unneeded semicolons
  KVM: arm64: Indicate SYSTEM_RESET2 in kvm_run::system_event flags field
  KVM: arm64: Expose PSCI SYSTEM_RESET2 call to the guest
  KVM: arm64: Bump guest PSCI version to 1.1

Signed-off-by: Marc Zyngier <maz@kernel.org>
2022-02-25 13:49:48 +00:00
Changcheng Deng ae82047e97 KVM: arm64: Remove unneeded semicolons
Fix the following coccicheck review:
./arch/arm64/kvm/psci.c: 379: 3-4: Unneeded semicolon

Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Changcheng Deng <deng.changcheng@zte.com.cn>
[maz: squashed another instance of the same issue in the patch]
Signed-off-by: Marc Zyngier <maz@kernel.org>
Acked-by: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20220223092750.1934130-1-deng.changcheng@zte.com.cn
Link: https://lore.kernel.org/r/20220225122922.GA19390@willie-the-truck
2022-02-25 13:46:21 +00:00
Thierry Reding f0a481209d arm64: tegra: Drop arm,armv8-pmuv3 compatible string
The arm,armv8-pmuv3 compatible string is meant to be used only for
software models and not silicon chips. Drop them and use silicon-
specific compatible strings instead.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-25 14:40:39 +01:00
Vladimir Murzin def8c222f0 arm64: Add support of PAuth QARMA3 architected algorithm
QARMA3 is relaxed version of the QARMA5 algorithm which expected to
reduce the latency of calculation while still delivering a suitable
level of security.

Support for QARMA3 can be discovered via ID_AA64ISAR2_EL1

    APA3, bits [15:12] Indicates whether the QARMA3 algorithm is
                       implemented in the PE for address
                       authentication in AArch64 state.

    GPA3, bits [11:8]  Indicates whether the QARMA3 algorithm is
                       implemented in the PE for generic code
                       authentication in AArch64 state.

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Acked-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220224124952.119612-4-vladimir.murzin@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 13:38:52 +00:00
Vladimir Murzin be3256a086 arm64: cpufeature: Mark existing PAuth architected algorithm as QARMA5
In preparation of supporting PAuth QARMA3 architected algorithm mark
existing one as QARMA5, so we can distingwish between two.

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Acked-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220224124952.119612-3-vladimir.murzin@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 13:38:51 +00:00
Vladimir Murzin da844beb6d arm64: cpufeature: Account min_field_value when cheking secondaries for PAuth
In case, both boot_val and sec_val have value below min_field_value we
would wrongly report that address authentication is supported. It is
not a big issue because we enable address authentication based on boot
cpu (and check there is correct).

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Acked-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220224124952.119612-2-vladimir.murzin@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 13:38:51 +00:00
Geert Uytterhoeven 1ef36224ad arm64: dts: renesas: spider: Complete SCIF3 description
Complete the description of the serial console by adding RTS/CTS, the
external clock crystal, and pin control.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/8e5701ca2a5f5925918217ab79e8489535339e7b.1645458249.git.geert+renesas@glider.be
2022-02-25 14:00:39 +01:00
Geert Uytterhoeven cfcccc9126 arm64: dts: renesas: r8a779f0: Add pinctrl device node
Add a device node for the Pin Function Controller on the Renesas R-Car
S4-8 (R8A779F0) SoC.

Note that the register block does not include registers for banks 4-7,
as they can only be accessed from the Control Domain.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/cf4d261ba1253879e117f1598b9f47798cbda635.1645458249.git.geert+renesas@glider.be
2022-02-25 14:00:39 +01:00
Liam Howlett 3a4f7ef4be arm64: Change elfcore for_each_mte_vma() to use VMA iterator
Rework for_each_mte_vma() to use a VMA iterator instead of an explicit
linked-list. This will allow easy integration with the maple tree work
which removes the VMA list altogether.

Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220218023650.672072-1-Liam.Howlett@oracle.com
[will: Folded in fix from Catalin]
Link: https://lore.kernel.org/r/YhUcywqIhmHvX6dG@arm.com
Signed-off--by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will@kernel.org>
2022-02-25 12:40:52 +00:00
Pali Rohár c77a6ac840 arm64: dts: marvell: armada-37xx: add device node for UART clock and use it
Define DT node for UART clock "marvell,armada-3700-uart-clock" and use
this UART clock as a base clock for all UART devices.

Reviewed-by: Marek Behún <kabel@kernel.org>
Acked-by: Gregory CLEMENT <gregory.clement@bootlin.com>
Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Marek Behún <kabel@kernel.org>
Link: https://lore.kernel.org/r/20220219152818.4319-7-kabel@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-02-25 10:27:58 +01:00
Arnd Bergmann 967747bbc0 uaccess: remove CONFIG_SET_FS
There are no remaining callers of set_fs(), so CONFIG_SET_FS
can be removed globally, along with the thread_info field and
any references to it.

This turns access_ok() into a cheaper check against TASK_SIZE_MAX.

As CONFIG_SET_FS is now gone, drop all remaining references to
set_fs()/get_fs(), mm_segment_t, user_addr_max() and uaccess_kernel().

Acked-by: Sam Ravnborg <sam@ravnborg.org> # for sparc32 changes
Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
Tested-by: Sergey Matyukevich <sergey.matyukevich@synopsys.com> # for arc changes
Acked-by: Stafford Horne <shorne@gmail.com> # [openrisc, asm-generic]
Acked-by: Dinh Nguyen <dinguyen@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 09:36:06 +01:00
Arnd Bergmann 12700c17fc uaccess: generalize access_ok()
There are many different ways that access_ok() is defined across
architectures, but in the end, they all just compare against the
user_addr_max() value or they accept anything.

Provide one definition that works for most architectures, checking
against TASK_SIZE_MAX for user processes or skipping the check inside
of uaccess_kernel() sections.

For architectures without CONFIG_SET_FS(), this should be the fastest
check, as it comes down to a single comparison of a pointer against a
compile-time constant, while the architecture specific versions tend to
do something more complex for historic reasons or get something wrong.

Type checking for __user annotations is handled inconsistently across
architectures, but this is easily simplified as well by using an inline
function that takes a 'const void __user *' argument. A handful of
callers need an extra __user annotation for this.

Some architectures had trick to use 33-bit or 65-bit arithmetic on the
addresses to calculate the overflow, however this simpler version uses
fewer registers, which means it can produce better object code in the
end despite needing a second (statically predicted) branch.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-by: Mark Rutland <mark.rutland@arm.com> [arm64, asm-generic]
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Stafford Horne <shorne@gmail.com>
Acked-by: Dinh Nguyen <dinguyen@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 09:36:05 +01:00
Arnd Bergmann 52fe8d125c arm64: simplify access_ok()
arm64 has an inline asm implementation of access_ok() that is derived from
the 32-bit arm version and optimized for the case that both the limit and
the size are variable. With set_fs() gone, the limit is always constant,
and the size usually is as well, so just using the default implementation
reduces the check into a comparison against a constant that can be
scheduled by the compiler.

On a defconfig build, this saves over 28KB of .text.

Acked-by: Robin Murphy <robin.murphy@arm.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 09:36:05 +01:00
Arnd Bergmann 34737e2698 uaccess: add generic __{get,put}_kernel_nofault
Nine architectures are still missing __{get,put}_kernel_nofault:
alpha, ia64, microblaze, nds32, nios2, openrisc, sh, sparc32, xtensa.

Add a generic version that lets everything use the normal
copy_{from,to}_kernel_nofault() code based on these, removing the last
use of get_fs()/set_fs() from architecture-independent code.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25 09:36:05 +01:00
Jakub Kicinski aaa25a2fa7 Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
tools/testing/selftests/net/mptcp/mptcp_join.sh
  34aa6e3bcc ("selftests: mptcp: add ip mptcp wrappers")

  857898eb4b ("selftests: mptcp: add missing join check")
  6ef84b1517 ("selftests: mptcp: more robust signal race test")
https://lore.kernel.org/all/20220221131842.468893-1-broonie@kernel.org/

drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/act.h
drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/ct.c
  fb7e76ea3f ("net/mlx5e: TC, Skip redundant ct clear actions")
  c63741b426 ("net/mlx5e: Fix MPLSoUDP encap to use MPLS action information")

  09bf979232 ("net/mlx5e: TC, Move pedit_headers_action to parse_attr")
  84ba8062e3 ("net/mlx5e: Test CT and SAMPLE on flow attr")
  efe6f961cd ("net/mlx5e: CT, Don't set flow flag CT for ct clear flow")
  3b49a7edec ("net/mlx5e: TC, Reject rules with multiple CT actions")

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2022-02-24 17:54:25 -08:00
Yifeng Zhao 3cc8cd2d25 arm64: dts: rockchip: add naneng combo phy nodes for rk3568
Add the core dt-node for the rk3568's naneng combo phys.

Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Tested-by: Frank Wunderlich <frank-w@public-files.de>
Link: https://lore.kernel.org/r/20220208091326.12495-5-yifeng.zhao@rock-chips.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-02-25 00:25:12 +01:00
Arnd Bergmann 3f96885eb7 i.MX fixes for 5.17, round 2:
- Drop reset signal from i.MX8MM vpumix power domain to fix a system
   hang.
 - Fix a dtbs_check warning caused by #thermal-sensor-cells in i.MX8ULP
   device tree.
 - Fix a clock disabling imbalance in gpcv2 driver.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmITP40UHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM7nFggAgiDRNWaiDNZMbWBEGLWyd+TGWuMi
 JiXF4h3Ic1UwOPzxcuNkpXGlwdiGdEISf5favuJmVuounlphgWDZaiy7odMyIOFV
 /3NXpzSowJJYgZMOLxySiOdIVdCU0R8VsyjzWNqsv7ICCosPKOVNa8FjhjjP1XS7
 eiyGcrqw675GZNS7HqOwuOrY/F9jbx1h2uUpea14iaOulqVHAPawSvg93Y6YjMJ7
 WWcIUELeyOfcx3cDlmyeLEDDMi8gXdx4rvvtjmgn6w+nBAwGwgRjisReEvdJfK7u
 hpyTubCilsrIDC/zsV0iIfrKOVoM66jVjSCSho7KZI2OVVtsneVLmjYXkw==
 =I6Wh
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIX/aQACgkQmmx57+YA
 GNmf0w/9Hptkyce9hHHbGz/kxmBnUmRPZNqUd8mlzeESr7MjTP7XyI7CnHEWj/LR
 /vUgs91/HZDIQWa0U/VZAHidCygJImoNENHuzJekimxJ9hdzM6BC7BY2qGtqAl3w
 WgvbJ0H0zvZTLDQotlz+KwiS8R+m6QEbIeIOuL49CLL4N23jkym+IDU3YlPbhJkr
 91hXDREymLKL26Iv3kb7VXyfpmwU1dZk633uDnMCQUtiSgTV22QRPMxr1bhKVi10
 UuUDYrfoTYv5i7660UFbkwu509uh4zwWgONuDYO+nUocu+NJAFA76Y/Z7QQkiPg8
 3J0Y22b8AK5WVrCpv9YAbQKTjMSYYY+Muwhu4+D9cLORVOD5VVK7ZLxG/iUnItsB
 JGUxx8ZZkDBQnexnmbkjDfJprVXrV7tAQcZfehk7Sf8wNUyYTKDuCnj3+gag7teU
 qVEBXe3M7np+YsdnY70UvNKGcTmUoQzx+rdFHH5S/67kgegR1Zxle6ynn1Cmtrs/
 zOTZI01YGMZZWr8Iaa7rvzila0AKR0c0CgqEnTVg5p4/iLWaRmzDrOJk7pJjFso1
 a3vmjsCvTyVRqYoddB2iqwKRqXdUr7djTvlHkI7hrX25BoKW0NaH36RBW8tUrSJt
 Pe6OjJ68NcqblbK2DNgMUSvSigjcWFk8Y3lAYKeGBHVJUYqP7Uo=
 =i8PD
 -----END PGP SIGNATURE-----

Merge tag 'imx-fixes-5.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes

i.MX fixes for 5.17, round 2:

- Drop reset signal from i.MX8MM vpumix power domain to fix a system
  hang.
- Fix a dtbs_check warning caused by #thermal-sensor-cells in i.MX8ULP
  device tree.
- Fix a clock disabling imbalance in gpcv2 driver.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-24 22:50:26 +01:00
Arnd Bergmann 795a2ab1da Fix the display-port-sound on Gru devices, DDR voltage on the Quartz-A
board, fix emmc signal-integrity and usb OTG mode on rk3399-puma as well
 as a number of dtschema fixes to make the reduce the number of errors.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmIUy+0QHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgR7lB/4yyzzeEiUrQg4ffNVFX8OJ/97ExE2C+7SX
 /dHtlHZ5W7XMRx7gL/6hXne2rXWYW8BTk0nA0Hn0vuvbV96kfwbydb2I76aNrAkB
 eT/wGaTFhnT5v+Cmx3krrk9vxDL2kRli2A5/SefJUvnUGufS294OAgkLspa9hfMf
 QsBd0hGjt4WC/OIZYCukvhmaco9K0wGoUxrcuRRVY0lBuxvUZ4sjpZTiHNfeYhE1
 zRA7OsH4KdW3wd3VvC2GnVfJQLpThKw+FuolHF4XIYpqegXxddYbXZAlysk0zyxS
 Hz2XnO84xP8AnXCBo++VYU4EhjJOwGQO5rjZXpP2Dk5A21/nKux0
 =9LO/
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIX/NQACgkQmmx57+YA
 GNnR4xAAu9BxCqmCpFIiPm3hL6zutuJc0xMm8L3CPkDFBLSNvFBD8xNZbpbAdaGJ
 U3DBtyWZ8nrQ4jQvx54SGPHKOe4vma4CuwYNwSwGX6z4XJxhdP36tjph9xsdwWH4
 QFS07001kIDI/FNreurMunWWrgkkeD2cr+D/jGYLLrkTIuBqZG2OFAuARrChRElI
 f4ZAWowCAOEYgKQqh/ofKber1w6DcyCw0Y3Ze4Ud3Tuk81PISLiSE4enD4DRjtxg
 Lxbin0akbNM38nq6AXzsiZ38LhNjUq1pgSNyVj9ZReGcPbpHAqYMOENTrlGZrJGc
 wjbPzpvDHt0kbG88f63PZcDk9HHnRTyX0I/PjG3heYjb+2xaChOZABypEv7CPPMH
 hxm7Pgq8H6Y8VQymD7WmKssMyQgl81Evj0GHS+DJ6DXSln4AssWH2eKpavAfcuyF
 W1afdoYWzOH2B9aw6MEaUBeUOsZ0DVqYWEnX5kZVfn5fdlcp0gGjWSZzH+VmwgT8
 efUGz9ffapfMmKA6Vt7Ls8B31bSmLzBA/qmCpQ1Sk1MNQxa/md2i8U0d3NU1wqr3
 8MNJkMLAD38fAiVaQ+1sNXzI69Ud5BlVY/+UAfBcv58VyEILFiNH1V9FgcR1HzkF
 j9n8Bdo9X4HY33xfQGgnp8+9g6QwoVxIycpjjbXPBVGTkFoN7tQ=
 =0DE7
 -----END PGP SIGNATURE-----

Merge tag 'v5.17-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/fixes

Fix the display-port-sound on Gru devices, DDR voltage on the Quartz-A
board, fix emmc signal-integrity and usb OTG mode on rk3399-puma as well
as a number of dtschema fixes to make the reduce the number of errors.

* tag 'v5.17-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: fix a typo on rk3288 crypto-controller
  ARM: dts: rockchip: reorder rk322x hmdi clocks
  arm64: dts: rockchip: reorder rk3399 hdmi clocks
  arm64: dts: rockchip: align pl330 node name with dtschema
  arm64: dts: rockchip: fix rk3399-puma eMMC HS400 signal integrity
  arm64: dts: rockchip: fix Quartz64-A ddr regulator voltage
  arm64: dts: rockchip: Switch RK3399-Gru DP to SPDIF output
  arm64: dts: rockchip: fix rk3399-puma-haikou USB OTG mode
  arm64: dts: rockchip: drop pclk_xpcs from gmac0 on rk3568
  arm64: dts: rockchip: fix dma-controller node names on rk356x

Link: https://lore.kernel.org/r/1973741.CViHJPHrxy@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-24 22:46:59 +01:00
Luca Weiss 308b26cddb arm64: dts: qcom: sdm632: Add device tree for Fairphone 3
Add device tree for the Fairphone 3 smartphone which is based on
Snapdragon 632 (sdm632).

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220220201909.445468-11-luca@z3ntu.xyz
2022-02-24 14:08:37 -06:00
Vladimir Lypak 24af02271c arm64: dts: qcom: Add SDM632 device tree
Snapdragon 632 is based on msm8953 with some minor differences, mostly
in the CPUs.

SDM632 is using Kryo 250 instead of ARM Cortex A53 and has some
differences in the thermal zones, mainly there being only one thermal
zones for the first 4 cores (efficiency cores) but keeps one thermal
zone per core for the remaining 4 cores (performance cores).

Co-developed-by: Gabriel David <ultracoolguy@disroot.org>
Signed-off-by: Gabriel David <ultracoolguy@disroot.org>
Signed-off-by: Vladimir Lypak <vladimir.lypak@gmail.com>
Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220220201909.445468-9-luca@z3ntu.xyz
2022-02-24 14:08:37 -06:00
Vladimir Lypak 06ea71e429 arm64: dts: qcom: Add PM8953 PMIC
Add a base DT for PM8953 PMIC, commonly used with MSM8953.

Signed-off-by: Vladimir Lypak <vladimir.lypak@gmail.com>
Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>
Reviewed-by: Rayyan Ansari <rayyan@ansari.sh>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220220201909.445468-8-luca@z3ntu.xyz
2022-02-24 14:08:37 -06:00
Vladimir Lypak 9fb08c8019 arm64: dts: qcom: Add MSM8953 device tree
Add a base DT for MSM8953 SoC.

Signed-off-by: Vladimir Lypak <vladimir.lypak@gmail.com>
Co-developed-by: Luca Weiss <luca@z3ntu.xyz>
Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220220201909.445468-7-luca@z3ntu.xyz
2022-02-24 14:08:36 -06:00
Nikita Travkin 3016af34ef arm64: dts: qcom: msm8916-longcheer-l8150: Add light and proximity sensor
L8150 uses LTR559 as a light and proximity sensor. Add it to the
devicetree.

Reviewed-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Nikita Travkin <nikita@trvn.ru>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220219145140.84712-1-nikita@trvn.ru
2022-02-24 14:05:16 -06:00
Krzysztof Kozlowski 1e49defb86 arm64: dts: qcom: align Google CROS EC PWM node name with dtschema
dtschema expects PWM node name to be a generic "pwm".  This also matches
Devicetree specification requirements about generic node names.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220214081916.162014-4-krzysztof.kozlowski@canonical.com
2022-02-24 14:01:38 -06:00
Wayne Chang c6489c30fc arm64: tegra: Enable Jetson Xavier NX USB device mode
This commit enables USB device mode at J5 micro-B USB port of Jetson
Xavier NX.

Signed-off-by: Wayne Chang <waynec@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
kartik ff578db7b6 arm64: tegra: Enable UART instance on 40-pin header
On P3737 board, UART-A is available on 40-pin header. Enable UART-A for
P3737 and change the compatible string to "nvidia,tegra194-hsuart". This
allows supporting HW flow control and is the preferred choice for higher
baud rates.

Signed-off-by: kartik <kkartik@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
Mohan Kumar 621e12a138 arm64: tegra: Add HDA device tree node for Tegra234
Add HDA device tree node for Tegra234 chip and for Jetson AGX Orin
platform.

Signed-off-by: Mohan Kumar <mkumard@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
Jon Hunter b7e70391a5 arm64: tegra: Enable device-tree overlay support
Add the '-@' DTC option for the Jetson TX1, Jetson Nano, Jetson TX2,
Jetson TX2 NX, Jetson AGX Xavier, Jetson Xavier NX and Jetson AGX Orin
platforms. This option populates the '__symbols__' node that contains
all the necessary symbols for supporting device-tree overlays on these
platforms. These Jetson platforms have various expansion headers,
including a 40-pin GPIO header, that allow various add-on modules to be
connected and this permits users to create device-tree overlays for
these modules.

Please note that this change does increase the size of the resulting DTB
from between 30-50%. For example, with v5.17-rc1 increase in size is as
follows:

 tegra210-p2371-2180.dtb: 79580 -> 105744 bytes
 tegra210-p3450-0000.dtb: 57465 -> 81357 bytes
 tegra186-p2771-0000.dtb: 64763 -> 99553 bytes
 tegra186-p3509-0000+p3636-0001.dtb: 48078 -> 62464 bytes
 tegra194-p2972-0000.dtb: 75303 -> 111545 bytes
 tegra194-p3509-0000+p3668-0000.dtb: 74762 -> 111995 bytes
 tegra194-p3509-0000+p3668-0001.dtb: 74578 -> 111748 bytes
 tegra234-p3737-0000+p3701-0000.dtb: 11229 -> 12917 bytes

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
Sameer Pujar 09614acd87 arm64: tegra: APE sound card for Jetson AGX Orin
Add audio-graph based sound card support on Jetson AGX Orin
platform. The sound card binds following modules:
 * I/O interfaces such as I2S and DMIC (to be specific I2S1,
   I2S2, I2S4, I2S6 and DMIC3 instances).
 * HW accelerators such as MVC, SFC, AMX, ADX and Mixer (all
   the available instances).

Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
Sameer Pujar dc94a94daa arm64: tegra: Add audio devices on Tegra234
Add following devices which are part of APE subsystem
 * ACONNECT, AGIC and ADMA
 * AHUB and children (ADMAIF, I2S, DMIC, DSPK, MVC, SFC,
   AMX, ADX and Mixer)

Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
Thierry Reding cd0c2edf20 arm64: tegra: Move audio IOMMU properties to ADMAIF node
The ADMAIF node represents the device that accesses memory in the Tegra
audio subsystem, so that's where the iommus and interconnects properties
should reside. Move them out of the sound card node and into the ADMAIF
node to properly reflect the memory data path.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
Thierry Reding 5710e16afa arm64: tegra: Add Tegra234 IOMMUs
The NVIDIA Tegra234 SoC comes with one single-instance ARM SMMU used by
isochronous memory clients and two dual-instance ARM SMMUs used by non-
isochronous memory clients.

Add the corresponding device tree nodes and hook up existing memory
clients (SDHCI and BPMP).

Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
Thierry Reding 699349e09b arm64: tegra: Enable gpio-keys on Jetson AGX Orin Developer Kit
Expose power, force-recovery and sleep buttons via a gpio-keys device so
that userspace can receive events from them.

Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:53 +01:00
Akhil R 835553b3c6 arm64: tegra: Add GPCDMA node for tegra186 and tegra194
Add device tree node for GPCDMA controller on Tegra186 target
and Tegra194 target.

Signed-off-by: Rajesh Gumasta <rgumasta@nvidia.com>
Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:52 +01:00
Akhil R 5e69088d70 arm64: tegra: Add Tegra234 PWM devicetree nodes
Add device tree nodes for Tegra234 PWM

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:52 +01:00
Akhil R 156af9de09 arm64: tegra: Add Tegra234 I2C devicetree nodes
Add device tree nodes for Tegra234 I2C controllers

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-02-24 20:06:52 +01:00
James Morse 228a26b912 arm64: Use the clearbhb instruction in mitigations
Future CPUs may implement a clearbhb instruction that is sufficient
to mitigate SpectreBHB. CPUs that implement this instruction, but
not CSV2.3 must be affected by Spectre-BHB.

Add support to use this instruction as the BHB mitigation on CPUs
that support it. The instruction is in the hint space, so it will
be treated by a NOP as older CPUs.

Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
2022-02-24 14:02:44 +00:00
James Morse a5905d6af4 KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated
KVM allows the guest to discover whether the ARCH_WORKAROUND SMCCC are
implemented, and to preserve that state during migration through its
firmware register interface.

Add the necessary boiler plate for SMCCC_ARCH_WORKAROUND_3.

Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
2022-02-24 13:58:52 +00:00
James Morse 558c303c97 arm64: Mitigate spectre style branch history side channels
Speculation attacks against some high-performance processors can
make use of branch history to influence future speculation.
When taking an exception from user-space, a sequence of branches
or a firmware call overwrites or invalidates the branch history.

The sequence of branches is added to the vectors, and should appear
before the first indirect branch. For systems using KPTI the sequence
is added to the kpti trampoline where it has a free register as the exit
from the trampoline is via a 'ret'. For systems not using KPTI, the same
register tricks are used to free up a register in the vectors.

For the firmware call, arch-workaround-3 clobbers 4 registers, so
there is no choice but to save them to the EL1 stack. This only happens
for entry from EL0, so if we take an exception due to the stack access,
it will not become re-entrant.

For KVM, the existing branch-predictor-hardening vectors are used.
When a spectre version of these vectors is in use, the firmware call
is sufficient to mitigate against Spectre-BHB. For the non-spectre
versions, the sequence of branches is added to the indirect vector.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
2022-02-24 13:58:52 +00:00
Geert Uytterhoeven 48d8ee5b83 arm64: dts: renesas: Align GPIO hog names with dtschema
Dtschema expects GPIO hogs to end with a "hog" suffix.
Also, the convention for node names is to use hyphens, not underscores.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/baee4b9980576ffbab24122fce7147c9cbc2ea59.1645705998.git.geert+renesas@glider.be
2022-02-24 13:51:48 +01:00
Biju Das d05e409e4a arm64: dts: renesas: rzg2lc-smarc-som: Enable watchdog
Enable watchdog{0, 1, 2} interfaces on RZ/G2LC SMARC EVK.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Link: https://lore.kernel.org/r/20220223165813.24833-1-biju.das.jz@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
2022-02-24 13:49:21 +01:00
Xilin Wu d4b341269e arm64: dts: qcom: Add support for Samsung Galaxy Book2
Add support for Samsung Galaxy Book2 (W737) tablets.

Currently working features:
- Bootloader preconfigured display at 1280p
- UFS
- Wacom Digitizer
- Two USB 3 ports
- Sound
- Bluetooth
- Wi-Fi

Signed-off-by: Xilin Wu <wuxilin123@gmail.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220223145130.544586-1-wuxilin123@gmail.com
2022-02-23 23:24:16 -06:00
Dmitry Baryshkov 2b8c9c77c2 arm64: dts: qcom: msm8996: convert xo_board to RPM_SMD_BB_CLK1
Convert all device tree xo_board users to the RPM_SMD_BB_CLK1 clock.
Note, that xo_board can not be removed (yet), as clk-smd-rpm uses
xo_board internally as the parent for all the clocks.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220215201539.3970459-6-dmitry.baryshkov@linaro.org
2022-02-23 22:20:11 -06:00
Dmitry Baryshkov 79b9ced565 arm64: dts: qcom: msm8996: add cxo and sleep-clk to gcc node
Supply proper cxo (RPM_SMD_BB_CLK1) and sleep_clk to the gcc clock
controller node.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220215201539.3970459-5-dmitry.baryshkov@linaro.org
2022-02-23 22:20:11 -06:00
Dmitry Baryshkov cfc090a0c9 arm64: dts: qcom: sdm845: add bi_tcxo to camcc
Declare TCXO clock used for the Camera Clock Controller on SDM845.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220215201539.3970459-4-dmitry.baryshkov@linaro.org
2022-02-23 22:20:11 -06:00
Vinod Koul 8f6e20adaa arm64: dts: qcom: sdm845: enable dma for spi
Add dmas property for spi@880000 and pinconf setting so that we can use
dma for this spi device. Also, add iommu properties for qup and spi.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220222041951.1185186-2-vkoul@kernel.org
2022-02-23 21:29:52 -06:00
Vinod Koul 29aed4b4eb arm64: dts: qcom: sdm845: Add gsi dma node
This add the device node for gsi dma0 instances found in sdm845.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220222041951.1185186-1-vkoul@kernel.org
2022-02-23 21:29:52 -06:00
Krzysztof Kozlowski a0024f55eb arm64: dts: rockchip: align Google CROS EC PWM node name with dtschema
dtschema expects PWM node name to be a generic "pwm".  This also matches
Devicetree specification requirements about generic node names.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20220214081916.162014-5-krzysztof.kozlowski@canonical.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-02-24 00:07:56 +01:00