Commit graph

1107633 commits

Author SHA1 Message Date
Arnd Bergmann
87f5bc6dea Amlogic ARM DT changes for v5.19:
- align SPI NOR node name with dtschema
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmJv1lwACgkQd9zb2sjI
 SdFiFA/+IwH74TaYe9mHfMKsGBlACM1B4JVI41KA4LrMebZMQnO9lkqO0KWeikFv
 V5zrR1Go7agAKA6DR/BsHZapHc92RU9DPBDc8iSO/UwnXcWovwLwjmMxrDG1zh8r
 CTvFxZPEoF5AZRwbMLO9fdYs+zfgb1yOY0d3WSkSjNCWaAhyYtCjFpsN7S1njWr8
 Xn2yf5NWkJY1qTKQcjrSSq+Lqp2M1syjACXeL848KvOl1wt6u4PoW7LX+XCjSidS
 Od5f6MRTMn5aYPT3hLCa8x1G8h1I1VVc0K6Pv/kfnGbNmYVOj0P8yezrfgSFI5X/
 FudAlNzd0iHwFgwtFHgnxNobni6VCwHHWOAEDqlOg+TRFXQZ2jhpcvPVSbKIFXPp
 OJPv+XjJzWqUXsCiPT24/1AOxrS6IApwFKMhmQw95HaeBP9RPspj+fi2AR4xgjNO
 HEIU0vZJ7igQeOeZai/4qtCWnvVFTsV2Ig2lSCRJWTllL+2UpRbeIf/JdBp6dlbB
 isqxiqxUv9TiPxCYDN2icrICzbJyQ7Ox88v3pXEM3czMKkSP4/aRyGYAFZxFVvdk
 MW66iBxSt1H1s5xfJfKuQ6NExDyhZLqxMP0jaHcOh9vOXFjTvIWf+yiTYGffUGRI
 XHyllgvkgUNJI37ItqDfnkBaFRXMLgYq9dvty57+h20SsE+LHlE=
 =v8tu
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxLioACgkQmmx57+YA
 GNmYMw/+KX9nVloDRg23GDDPRyM641AQq5XxxwYis1yepD7tXE7RrLr8bzWOn6dp
 U/f+3q5BAJ+8SJaDgVAi2pHqFmVZ8gVv6aj28RP4QhXmheQzOw5RcAl5vX7vNQPf
 dubOtgIoT8IPL+sVysPGp6M1jaX8qDDVuM4keJcalmFM9S96KyBROBEz6TyEDPIX
 bBLAynr/nUlsO7Xsq+aiBvufUNY3VJWVI0T8IW+kln1m012AkQHFwAD/A+RVfwdC
 2ghC15m2ccE9+YCGwt5N916FWfbiD4kQAu1i9WMO0b1kbk3JlSvVuIfZUOFH4Q1/
 wLXCLLebzRVqb1mVgTCWL0dG5cmNxEwOM+4H+TRPFRyEDJW11HinUrxByLfb6l0E
 l7jf9R6aDWFn5aBegc4Jk5a8UcDyZw/2YfA+0qcO0Eb2aq+HOA/1Bnku8CkIWf6y
 6Db7F6k8Ov4Kmb/yjsGa68Tj72LGS7JdO1kAkZqddIt1lLUk0HN5fUppJOeQ3WD4
 vCMziTA2hLXhYMiVAxwgGgwxF/4xsQ8Ey2u1weX/AgyPD2Ky+EIhC1i0Tpg8Ce7Z
 S3gCZYPzLuca+ZlZFsdxbOvu8hqg4RnMTF5PCu+1UXVyinBfA4gRAvtdzX0U3XsR
 20kS2yfSuy+e78lEHLDAdRlgMAheEn1TcqfOJJJ5+iP3Q3bjU64=
 =uGhb
 -----END PGP SIGNATURE-----

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

Amlogic ARM DT changes for v5.19:
- align SPI NOR node name with dtschema

* tag 'amlogic-arm-dt-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  ARM: dts: meson: align SPI NOR node name with dtschema

Link: https://lore.kernel.org/r/fbd7cbe7-1fe9-7009-37d6-c01b15c93032@baylibre.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 15:29:14 +02:00
Arnd Bergmann
8b86fc3343 Amlogic ARM64 DT changes for v5.19:
- DTS makefile alpsa sort
 - align SPI NOR node name with dtschema
 - add support for S4 power domain, gpio_intc, pinctrl
 - updates and fixes for JetHub D1/H1 boards
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmJv1dkACgkQd9zb2sjI
 SdEEihAAhXD6/rsbuaUyxVhNfa+9DXtzvU7Q8hon3+v6eqc1wvsfnLJ5U4hToF8F
 lR2h9NQRB7Kg2yp/k4rozNCpN4CA+KAuZh813rGXkcl30a6MojChmmb8vp5ZOMLo
 ISvEQ+YfVBqF6qPPvCvG9zqafoDlzDlWI/lxA6FaF2gnMRrfN/okhsJBBt8kiXbi
 PadmVha6mnpiQxgTmMb4lwivOcro5mMX3+zCktdde4c+F90dEraTcHRxK2Wzar9r
 f5RedHqro4CqaeQ40ewBxFVTVO34RVFgB9bKme0Bpzqa96rAgufCId/DRJyg4PvA
 AHxpxESmV694ademhf87A24G9M42L7kFJJwdz6Gg41X0IahdSxO+brg1AOUZ0/Tc
 k6pfRzP0KyeKj3eq2xUK9IbAuFYIo+Yq+oP9CtD56uAKWYbMR7XvJagTRgP5KYYb
 hwVmTB37uNsSfyPviSwTd/FwwNKhJax+Waaln0prPsCSHqwzmRfbSh7iwVXxU7XZ
 Fbw6BqOYN1DcUP4+iQ4f6dYlDCN3hRKA8OTarYhWERjs+g+Z3EZPPRwZyz3uDSMA
 hc4B1/VLM12O7Hx8eq+B0x4Y9hMdpGDRHiHFS7nGToevCRdckQcnd9lTrSiBsbz6
 sdbXjlkbd0Oh47iHaZaq8OojBwiwx4uj4SUpJxBocg3PmQpJQVg=
 =f61M
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxLd4ACgkQmmx57+YA
 GNk8Lw/9GodWBolHtaPqg2/85EmM7z32NW3ZnaUwYC/pXINBpHtjNQd4XFHQTBz9
 aDydGwnwIPKnjuQh3at1VtysB+AmkKpx59LXhzK2/IoHGgR/EWWEsuhu7sUrzbrl
 OzP/OItD8zKJmk3/8KXkyvhCeUEM030Y0XDmgTAm1/HnuUThtcVLadzaJ0hxrMvz
 iXOVi+VX+V2SQjNrk944UszHuVevvgf1n4wns1+Kpvb6QtvIjZL5SDQxeRw/oOBE
 R8JYukQf9ffkv79bfVBKf2/bb1nN6bYhsNljWB7u5AVyCad9Q2Bjqvwj6kqwCw5d
 5wFR8WqI9jCEBHMV0Mn468Ummk+53nkoppZSuGbeOGWiuzkkAwxAWI1X7g+r7mzD
 lbZRzit1Are0Vgrz4CAr9igxEOhn0HKkS9Y4wft0yqgw/sKx1JIQHZbDTcSWbJha
 mCrMBvenwyRcY1W3Az18APXLxNrWW98ielPV7OencFDvj8ZM0CDJsQwwe6mNVLQK
 xRYmTqiE0nGGtRdz9mktss5XKQ92gs8q5r20NsbBPy2S37MStpaR6eCO9qGiFo6c
 OdMR+kWHcECHaYASsqxUV/vTWyKMNM2Y1HU4vOZAsv9C/IAWfys6q0c87k3Tjdjs
 I9k5vmqfrQVPvkQfcUOoPCgeOR/v1X2y4xv2sZ3q60twV53/OK0=
 =zZTK
 -----END PGP SIGNATURE-----

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

Amlogic ARM64 DT changes for v5.19:
- DTS makefile alpsa sort
- align SPI NOR node name with dtschema
- add support for S4 power domain, gpio_intc, pinctrl
- updates and fixes for JetHub D1/H1 boards

* tag 'amlogic-arm64-dt-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  arm64: dts: meson: alpa sort the board Makefile
  arm64: dts: meson: align SPI NOR node name with dtschema
  arm64: dts: add support for S4 power domain controller
  arm64: dts: meson-s4: add gpio_intc node
  arm64: dts: meson-s4: add pinctrl node
  arm64: meson: update WiFi SDIO in dts for JetHub D1
  arm64: meson: update SDIO voltage in dts for JetHub D1
  arm64: meson: dts: update serial alias in dts for JetHub D1
  arm64: meson: add dts bluetooth node for JetHub H1

Link: https://lore.kernel.org/r/1e5179ab-2d92-0d64-c57b-e002ec2f0806@baylibre.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 15:27:58 +02:00
Arnd Bergmann
97736c2ef6 Ux500 DTS updates for the v5.19 kernel cycle:
- New devicetree for Codina TMO (SGH-T599).
 
 - Add the Amastaos proximity sensor to the Codina.
 
 - Add line impedance per machine to the Fuel Gauge
   nodes.
 
 - Add GPS to Janice, Skomer and Codina.
 
 - Add NFC to the Codina for GT-I8160P.
 
 - Some janitorial like clock names.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEElDRnuGcz/wPCXQWMQRCzN7AZXXMFAmJtvLAACgkQQRCzN7AZ
 XXMeZQ/+JWI4Vy8/SPdsRijFA3+W/Wz9S0E7f9PZZQjxA5AQnySNlIfi/nTx2/fN
 /el8D1M3GZ1eaaTrhvOeYroPd8yvNz8XnRPb0CPfr2jjFGGURdx1te83E4pM7tdY
 o823XiYMMtazZAdMV5mIj7I80qncxOI5IfqrgxF9dFdOuyi4l6uK9DwKCGPQExc1
 JKBYpxKZm1Jj509wvwvZiJ5rmJ6WS4ZQ2Vbe9k774/ANgbfUwCjSLl7lfY8ZPceJ
 wQjiTeBd1dR2Ry4faI306pjio3dnX9DTZ4pwDela+DMkCU7MHDRADlmXyF+Y3PxJ
 khw892cfY/A7yCriZSpJWityunTM4ZLAbQGZUUyvClDJMe7CXOrl28SndvcFXU1g
 jS0aUVWPRA+5axWT96Z9AaETaelGnREclBRqi7tD4G65S1zBGlelpzZRr7jbJlTO
 /7CQAcmMD8GWdTE+yKItj/kvxbQfs/eQ4ulMsa7SezoSJmBp5X52VO5rAw6R/tN9
 OnO+XBgTZ7JRivjzyWXGeKCBdQSeeoWl3K97v5vAG9YGVsihh317m4hSG0vVQLPV
 JnfoJbCpdNgDeXvV01aKs7UBf3f5wf+8aKe+8Do2OhEa8/TLYn7SIkAEBFeJol3k
 7TRowy3DA6/jeXUtWasdhIQzCRHR0sWKkUXPaS8JWwluXbTkFpc=
 =izAF
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxLcYACgkQmmx57+YA
 GNmIhA/9GeKaixj5SHAQXxLzodG91YggPqSNLUKr9DwtIh9rsh/h58uYcxPDYkMG
 AWF/DGoNj6t3D4eiq1VPvyGPo+u/pFx7TjYavPZqJZFwrAvrrUvpkdb5C4ijlm2Q
 kWSX8uNT7oxazg9UVxF7REEZqlyknCKIAUjK51eM5PiKqco6SwbHuR/qDHyRin4+
 Onlw4Ms7knrQQOG6KdOdu4pckjKgimD+QjBtoMjlMid8UT3uIoZvL21t4yVvOPiJ
 RbOj2WImIRCN5fgVOw8DAE+jiduOuTdkLAE8ctMFnV3cTvrVxXTuTSZS9JmG+4Rk
 oJJMtj4Ybmjto+dLqECQ8v2tv/zb9JS3SKewy+uUwwRMHBuDyYqlS64U38MnWc4t
 FIomttfui6dDB+9obBQu8PeYzKRVCDGQnT2zhQ/LxlGr5Gf6i6gj2kV+RmYFVwHz
 p3f7+HLJCYVypN+8Va8iUmcxg5kZ3g7M06wGbPcZ1v/5LOH1axhzz0/9TXdrMmJB
 axS8+fTlqi6bZXgNVZVQAcAkL+B9qcQPUJ2dmgATHYcv1zge+S02DOJ2DPNfkMPy
 AwMkLVVsCwjv85E8bgqSB5a99AoCyFRc2WgI0Y/WY6EW2wwoQmdwjCL6A2wV8Da3
 d5GMezriY87Z3kaiz5lzGjTDsj7Yy0gdTk8df5sNrmUbIlJrdyU=
 =vs0V
 -----END PGP SIGNATURE-----

Merge tag 'ux500-dts-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik into arm/dt

Ux500 DTS updates for the v5.19 kernel cycle:

- New devicetree for Codina TMO (SGH-T599).

- Add the Amastaos proximity sensor to the Codina.

- Add line impedance per machine to the Fuel Gauge
  nodes.

- Add GPS to Janice, Skomer and Codina.

- Add NFC to the Codina for GT-I8160P.

- Some janitorial like clock names.

* tag 'ux500-dts-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
  ARM: dts: ux500: Add GPS to the Codina
  ARM: dts: ux500: Add NFC to the Codina
  ARM: dts: ux500: Add GPS to Skomer device tree
  ARM: dts: ux500: Add GPS to Janice device tree
  ARM: dts: ux500: Add line impedance to fuel gauge
  ARM: dts: ux500: Register Amstaos proximity sensor
  ARM: dts: ux500: Add Codina TMO device tree
  dt-bindings: arm: ux500: Document Codina-TMO
  ARM: dts: ste-dbx: Update spi clock-names property

Link: https://lore.kernel.org/r/CACRpkdYngWscqak5phKm58O2GF0RmVETgwW4NCKTBiASdaEcyg@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 15:27:34 +02:00
Arnd Bergmann
cbc842c2f2 Devicetree changes for omaps
Devicetree changes for omaps:
 
 - A series of changes to fix devicetree binding check warnings for omaps
   the the use of clock-output-names and clksel bindings
 
 - Update Ethernet node names for omaps
 
 - Pinctrl updates for logicpd-som-lv
 
 - A series of updates for am335x-guardian
 
 - Regulator range update for  am335x-baltos
 
 Note that this branch is based on a upstream IOMMU fix as it's needed for
 booting on some SoCs.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAmJnq9QRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXMdCxAAlxyJuzYBh0WuOcf00+BVOl6YLcCWhHjm
 SnmmnmEvSs8TjtYZ2WIQmwoLo9cNRlCqavPen6LO6DSrOPC09ssVcTJGozTyxib6
 g4CplLi/gOLQkm4q3Y3fqPfc2XL0G7fNfkfFkz3byqIt0NzHBSzhaWg3elpUO38Z
 EkZb6e7KtIkoHVUlsZVgsY99qvSRDms8QUaxNIulKUJNWOzrYKkG+EtNx2FXmWi2
 lQ0hb/VDuWdWaTk+3ink9qQKFsZ8/8koCzVcXDcu0EUsJT++EWgp8NWmBgPknSA5
 kJ+0Olog229UnBZpsCabZqFaM1/LTKclaVn4xtdmtOElQbJRNLQuLafxzr3Mw8c2
 lPw4q/mHsaoPf3NhBZ7GZe8oiWDGV6a7L/Jd0G+p1BiK9Hxql9+b2fH/+J8fDlo9
 V/y5W1RNmmOMSyhST2jB+Onw+UolkGN7OzGkShod9eFZXLJ0IcqM94QUdcEULRQd
 h6LwhZ4jswiywCryzNNSUpq1GoiEVwLROw5CQScGGA52bRyMUQa7Wy7K6hK7d1aA
 JzXIFbDsOWQx+PzODQaF+OWITJ1T7AmQHlKWcuhISBIEkhqEQvZarlqFCF5ga/Hu
 ZQ0RcnOE0fPzbT9XiHMBwvj1SsEVWIgCMnY9B6caDw0r+WTbM/DIR3oVhT+l5PrA
 Nul0Hx6kUpk=
 =SjMo
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxLXYACgkQmmx57+YA
 GNnZ0A/+PKCALJw72BCnvmBqlJEoQoiQ8MkIhV7SO7ayM6BmwchMOsFjr7pZeh4q
 9FID9CuBt+tgtxvwzD49so9mnPNC2aQkNMnyj3dzHJbdvgKiIhp98xs7QvzgNKkv
 /Tl6bl0dpYsLNmIDUab9lFKR6foZNq6WijDTnxWGiUeDt9bVcowuKl/wySKkldqi
 GSw4PXxDFjwlcPYz9PiSFKXAa5HEcnIwJi3+o9FpF5TY8POjkIP7ckE2Op5wyziW
 Gek3PNrAsU7U2tZRYG5hhEoAy87yZb2ryHwsxzeu1v0YunV9OtivSBUNGB0FL2hz
 MGB7j8qECi+Q9op43wTb5cae0NnghNwMzU2dpY5aMZXX6mIpfF8ZgfTnwXd81e2F
 PlmpYKLrdoiAAJ82hVRHvQBl2HNyg9ZP9weXam6zZM5E2D6v7RhUWYyGlIORuZTp
 y1Udkr9vwFkbdwP6rlym2odSboO0+jI1yflpMMUHcsGEePcC9iVK1gMXP4yPELzm
 6d025VXNink+XETSlkN1gWtAYkYKV9wnr47MpEDNLPtLOipm6lXeXA8oj4rzeJmS
 CDA1G0LCFOZpt7JkFViCeWbE+gDwZgKY4DjhhS3QCCSPM5ga8D0qOFAoEsZvzKfQ
 1Y+jotDYZPP0CT/XgOB3+lB1WtFPhbGXhXgjGdckfzvMlP2kZ3U=
 =lEpp
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v5.19/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/dt

Devicetree changes for omaps

Devicetree changes for omaps:

- A series of changes to fix devicetree binding check warnings for omaps
  the the use of clock-output-names and clksel bindings

- Update Ethernet node names for omaps

- Pinctrl updates for logicpd-som-lv

- A series of updates for am335x-guardian

- Regulator range update for  am335x-baltos

Note that this branch is based on a upstream IOMMU fix as it's needed for
booting on some SoCs.

* tag 'omap-for-v5.19/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (29 commits)
  ARM: dts: am335x-baltos: update MPU regulator range
  ARM: dts: am335x: Guardian: Update comments
  ARM: dts: am335x: Guardian: Add gpio line manes
  ARM: dts: am335x: Guardian: Update interface pinmux
  ARM: dts: am335x: Guardian: Disable DMA property of USB1
  ARM: dts: am335x: Guardian: Enable UART port two
  ARM: dts: am335x: Guardian: Update backlight parameter
  ARM: dts: am335x: Guardian: Add lcd port
  ARM: dts: am335x: Guardian: Update regulator node name
  ARM: dts: am335x: Guardian: Update beeper label
  ARM: dts: am335x: Guardian: Update life led
  ARM: dts: am335x: Guardian: Remove mmc status led
  ARM: dts: am335x: Guardian: Disable poweroff support from RTC
  ARM: dts: am335x: Guardian: Add keypad
  ARM: dts: am335x: Guardian: Rename power button label
  ARM: dts: am335x: Guardian: Update NAND partition table
  ARM: dts: logicpd-som-lv: Move pinmuxing to peripheral nodes
  ARM: dts: omap3/4/5: fix ethernet node name for different OMAP boards
  ARM: dts: Drop custom clkctrl compatible and update omap5 l4per
  ARM: dts: Add clock-output-names for omap5
  ...

Link: https://lore.kernel.org/r/pull-1650961799-428630@atomide.com-2
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 15:26:13 +02:00
Arnd Bergmann
3908ca6624 Clock binding updates for omaps
Minor clock binding changes to document clock-output-names usage for omaps
 so we can fix lots of related dt bindings check warnings. The related driver
 changes already got merged for v5.18.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAmJnqgMRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXM5/Q/9Gb09AaXOAW6h5Un3JQqwPx1K1/WkU2ny
 SdGRQveLisH5lTJEzU4QXD6NJI/4LpZiJX8zZSb5tm/4ZbhfySFWvc3m8RSKxGrS
 GWt/pRnQW8d0eygtw+cln8skcXD0OtWSM69E5LOo+/zaL+xCLb5nEburhEPwlwft
 k1H7AeGfIzOvIs9E4SjwzVrn6r1UtF8hjIcPalV+DJJcethLTOod7xemNd0OSqud
 G56XBUQHo94T6aNNmudDFGOe2o7CpgS22lmSjKoHmBLbCOavOusIlWDSLnUpo2PK
 DYmnYOngzDkDlXZnLu149HA6nARAXK8kiHwKUw+G3SHMBmqBFdFcq67nzTogophK
 8whcdetnSDO13kU45Ca++KK9EfpKtOdL1j1S6BvoAZrg5RBuIEuvttR/BE1rZna7
 aUKJSQg2vC2F6pU1/SyzqYXNz4EbqZVVHCh/+jJtYVX4DujZNrHEGkV+OVxy6EIT
 C4RbFroNHdwSmMm6i0WprSol+QLzDTwccgVJsFE/yzTCHXlolmPVVDlcaohZDnup
 ESvZOK4SsuMyY316e9NYO28b4aMEcX5GQAy0kmwwiwbbjIzbYu2P4PR83XgDD0Dj
 2gCPOhW9ExtZBHwE2TB4sOKR+FCmGDFp4DRbZ7xETvzNw8ZPLH0j1/lgbVi4Z4KJ
 cw/pi1xi5kg=
 =JA8M
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxLVEACgkQmmx57+YA
 GNlUJA//ZoZVnFY03cEU0ycQw7MDml1LHIBzsqxZW/N4LQtj41XUD/pWZ54OsFYH
 cqMFFlifwmIV87q4SI8/UHI523Vc/J8KYmuNscqOGE9EbodMaIC8//z+Bw2aUJAn
 I7xAiGHnbyQtWuC24OW5DqrT+po6FEPEN3yWO1vBaR+VdRoRL3DkPKG96o96NPWN
 jUXxNsOJqgko+zofxaEzta5RuU6VKueUNnxXOQNV7+ZjfKSmS/VV0+GFXHwHsOsj
 xl5d7AUPNi6ZYJ4Zk/poVAccsv+FxvQDeHs7B6Bfzc3p/O1cOV3KzEqOujIKYKmt
 S20Ir69OGC/lELcohMk+/uL60Q1/rI+KAjKjCIoS0+HKIRswcaN/QMQA8USqyF6m
 rNOGXCQn7OKkAoyDbfefHLoXh4nXwXPaGXuqZvWkUJ6Pydwj3Yhh2CxBQrGLz2jK
 61IU8wI32SarvvQln3K1/xYZJ9d1U1Yk2CURDbgJRysE4+tu4oMaFV+OYIURfaeu
 6kndS077gWh4DEr15YqcQqsgGH3i4s8OQ4pLEb2Tun5hFU/2WZa83rq6s6GB/eSJ
 vDRZRxQs0OkhivlyJLl8dvx3v9/AtCxRJfIW9x++9wbgyPvJaJrY6Wb5EmUk7abE
 YXlJoaAMvIoBaX7+CHe+zwAkbtcWWx0UBZvLuqN3wR1Teu9obWM=
 =eN9v
 -----END PGP SIGNATURE-----

Merge tag 'bindings-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/dt

Clock binding updates for omaps

Minor clock binding changes to document clock-output-names usage for omaps
so we can fix lots of related dt bindings check warnings. The related driver
changes already got merged for v5.18.

* tag 'bindings-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  dt-bindings: clock: ti: Add clock-output-names for TI composite clocks
  dt-bindings: clock: ti: Add clock-output-names for clockctrl
  dt-bindings: omap: Add clock-output-names and #clock-cells

Link: https://lore.kernel.org/r/pull-1650961799-428630@atomide.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 15:25:37 +02:00
Arnd Bergmann
fafb0343aa Renesas DT binding updates for v5.19
- Document support for the new RZ/G2UL SoC and the RZ/G2UL SMARC EVK
     development board.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYmKABgAKCRCKwlD9ZEnx
 cJJJAP0bOdBXXbvBN0S5TZe4iUZUZ/T7Ye6svHfwvoaZL0T6YwEAiCS8fHXpiS7S
 K9cZiwfuALB64RgIq0lLispJVSTEkQ8=
 =3nej
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxLTAACgkQmmx57+YA
 GNm1Lg/+K2b8ZCOnzuRmxuJocl42JdttnnuN+JdnkdFt+P8Kb9f9aiufmJwwh0lH
 XVExGZrui823ijxK1xueb6mlgxvdxHRXiMvnSgUt1qI8IOVIE6p7k1UfrtjbOdaH
 23sw80T7ODnsZ/j2Nru2VjLozUzB+hgaSVs5jzYXmDXfe1t1pnm8EOGZRm05BITw
 0Q+aOrYty+mk5lMv9sUFCfDo/r/vNp3b4hszZoEJho/WmZsj2SlYNMHgedLmpc/b
 88XmqdTqP617gQQ7ryW8PU36myPfbfU0MdSA3xAA30NYSpFB4Kdz3GjqLh13r+hD
 4CkoYnQcCTLdmlM7TMJkmK3RT0FfqzEwNlrD1ujQJZ71wumElQBn5x9vGUXeS03y
 lwArXB7G5/HTLWsyLHHWL1yraChEr3PPW0kqtvnZjWZgu9t8YFksO9Cae0AMS3g0
 j5XmwMd3bWnxwHnde5yf3vBZQPaI+1EGg3juRnXiTvjHWbpT/hU7lnoxQ9BrL96c
 ku6FDM82NIAuOn4ni4sxXrvGCUtgKjxXyTMsf62rQtHNoZEP1vPE8wpXaa+BhcVK
 cJK/hdFOfpyTkDJc6f7vybqHGoW7txPkcMKsbhdfFX8rklIsXcqyWGkmBwt0oyIi
 PGEndfB063v99w1xH8p7Mpz8wXApr8sz1F2kI3imlZPjX8D9uGM=
 =QQx2
 -----END PGP SIGNATURE-----

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

Renesas DT binding updates for v5.19

  - Document support for the new RZ/G2UL SoC and the RZ/G2UL SMARC EVK
    development board.

* tag 'renesas-dt-bindings-for-v5.19-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  dt-bindings: arm: renesas: Document Renesas RZ/G2UL SMARC EVK
  dt-bindings: power: renesas,rzg2l-sysc: Document RZ/G2UL SoC

Link: https://lore.kernel.org/r/cover.1650638516.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 15:25:04 +02:00
Arnd Bergmann
70a89009f7 Renesas ARM DT updates for v5.19
- ADC, SDHI, CAN-FD, I2C, QSPI, timer, watchdog, sound, USB, SPI, GPU,
     cpufreq, and thermal support for the RZ/V2L SoC, and the RZ/V2L
     SMARC EVK development board,
   - USB, I2C, Audio, NOR Flash, timer, SPI support for RZ/G2LC SMARC EVK
     development board,
   - Can-FD support for the R-Car M30W+ and V3U SoCs, and the Falcon
     development board,
   - I2C and GPIO support for the R-Car S4-8 SoC,
   - I2C EEPROM support for the Falcon development board,
   - SPI Multi I/O Bus Controller (RPC-IF) support for the R-Car H3,
     M3-W(+), M3-N, E3, and D3 SoCs,
   - RPC HyperFlash support for the Draak, Ebisu, Salvator-X(S), and ULCB
     development boards,
   - Initial support (UART, DMAC, pin control, SDHI, eMMC, Ethernet) for
     the RZ/G2UL SoC, and the RZ/G2UL SMARC EVK development board,
   - Miscellaneous fixes and improvements.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYmJ+7gAKCRCKwlD9ZEnx
 cE5hAQDebyQdMMpgRgOC4ES3leIRrMJSmOAjrQcQjrTUJ6WYNgD9Gj8USqudA/By
 Toz6dahFUSI0MDbgqnBjiqMGbEnbNww=
 =xap2
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxLPkACgkQmmx57+YA
 GNmqrBAAhF9gE+g7S+lSKSsf5MOgy8l4llsohMVrZbvMQwIt7wR+uNuZE8i8Cx4s
 f8Mm8h6s9mprEXD7QitV7PKAfDoiJ642OZc2aNns4B82jY2JDLzigJhw+Xx2/La/
 1DycdpnD1UkNgrwVBGpmgfTs4Q455HB5J5X3ypcP4TN0fWxmfkN4yEvaiHxGjuoi
 a0VowBrlWAfYE6gaF5d5QnWS6TMp8YYSrJsl+4+IQKO1kbaiHXUuu/Ipd8AXxe5/
 BaWz0YLLPwI/MU6za9F2IpXq+aT5/e34QF3wjtg45YPNE39RsL+hpZbdoDYLBrfT
 9HCvk5cv4emF4fcr/NSjQCpzN/bn2amJEbDovDIYek3mpiM7rSRFDw15NGbe8E2K
 38gSZugURkufABc/dUHgXy1Ja72mp3xfk++FQ99Tn1JHcXvyooZ+HYDm0LA7F6tZ
 oQtiUUP3SQMvdlCFUP0NezJjR/MMx3G6VRAmLcYcdcQddUbvfmB2RSsi3e34QOgu
 rbOqwa3FImDJi4N42aOKfmoEDz3dMByV1uSv0NfWOAR8h9silszZmMLIm3XNkwi8
 EgwL/cUXPtxIr1S3+A2+IzR2HsTqkbL/smSyIu1gRIMHQBJLVnM5wxmj71U+yA3C
 tc+vqAEuqOEmGuKiGvgaDn4LDXS/2C3yEDvp3x/sv/XLxA5jFZQ=
 =SiTm
 -----END PGP SIGNATURE-----

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

Renesas ARM DT updates for v5.19

  - ADC, SDHI, CAN-FD, I2C, QSPI, timer, watchdog, sound, USB, SPI, GPU,
    cpufreq, and thermal support for the RZ/V2L SoC, and the RZ/V2L
    SMARC EVK development board,
  - USB, I2C, Audio, NOR Flash, timer, SPI support for RZ/G2LC SMARC EVK
    development board,
  - Can-FD support for the R-Car M30W+ and V3U SoCs, and the Falcon
    development board,
  - I2C and GPIO support for the R-Car S4-8 SoC,
  - I2C EEPROM support for the Falcon development board,
  - SPI Multi I/O Bus Controller (RPC-IF) support for the R-Car H3,
    M3-W(+), M3-N, E3, and D3 SoCs,
  - RPC HyperFlash support for the Draak, Ebisu, Salvator-X(S), and ULCB
    development boards,
  - Initial support (UART, DMAC, pin control, SDHI, eMMC, Ethernet) for
    the RZ/G2UL SoC, and the RZ/G2UL SMARC EVK development board,
  - Miscellaneous fixes and improvements.

* tag 'renesas-arm-dt-for-v5.19-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (55 commits)
  ARM: dts: r9a06g032: Drop "arm,cortex-a7-timer" from timer node
  arm64: dts: renesas: r8a779f0: Add GPIO nodes
  arm64: dts: renesas: rzg2ul-smarc-som: Enable Ethernet on SMARC platform
  arm64: dts: renesas: rzg2ul-smarc-som: Enable eMMC on SMARC platform
  arm64: dts: renesas: rzg2ul-smarc: Enable microSD on SMARC platform
  arm64: dts: renesas: r9a07g043: Add GbEthernet nodes
  arm64: dts: renesas: r9a07g043: Add SDHI nodes
  arm64: dts: renesas: rzg2ul-smarc: Add scif0 and audio clk pins
  arm64: dts: renesas: r9a07g043: Fillup the pinctrl stub node
  arm64: dts: renesas: Add initial device tree for RZ/G2UL Type-1 SMARC EVK
  arm64: dts: renesas: Add initial DTSI for RZ/G2UL SoC
  arm64: dts: renesas: rzg2l-smarc: Move gpios property of vccq_sdhi1 from common dtsi
  arm64: dts: renesas: rzg2lc-smarc: Enable RSPI1 on carrier board
  arm64: dts: renesas: ulcb: Add RPC HyperFlash device node
  arm64: dts: renesas: salvator-common: Add RPC HyperFlash device node
  arm64: dts: renesas: ebisu: Add RPC HyperFlash device node
  arm64: dts: renesas: draak: Add RPC HyperFlash device node
  arm64: dts: renesas: rcar-gen3: Add RPC device nodes
  arm64: dts: renesas: rcar-gen4: Add interrupt properties to watchdog nodes
  arm64: dts: renesas: rzg2: Add interrupt properties to watchdog nodes
  ...

Link: https://lore.kernel.org/r/cover.1650638505.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 15:24:09 +02:00
Cristian Marussi
c7f8852d42 firmware: arm_scmi: Fix late checks on pointer dereference
A few dereferences could happen before the iterator pointer argument was
checked for NULL, causing the following smatch warnings:

drivers/firmware/arm_scmi/driver.c:1214 scmi_iterator_run() warn: variable
dereferenced before check 'i' (see line 1210)

Fix by moving the checks early and dropping some unneeded local references.

No functional change.

Link: https://lore.kernel.org/r/20220503121047.3590340-1-cristian.marussi@arm.com
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Cristian Marussi <cristian.marussi@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2022-05-03 14:23:02 +01:00
Arnd Bergmann
4d7b3fd9f3 Driver changes for omaps
One patch to remove commas from sentinels for ti-sysc.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAmJnsGURHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXN0RA/+KFGVUjn7zccm2hYO785bCicu+QLWQJJQ
 ytIcr9uMRXMO5Fg3l83KwgxAjfNbOUS43uai0QklSRgk4nIPexg3n3jxAfEa685v
 7Hpbq0UwRjfzQmvvs1x5gV0Zw4V7m/LF0Wn8MJyuIzAmBWTnXEsJ6lXKoDfaEhWN
 lb/4SNNQDCSbgMpRLFTa/2UUjfJ/yScTf88NgtZd/2I2PZ9CUxTG2Oub0CMh6/Vl
 Rb6Hi9DFD6riqWjtGUy9+dR/8kgmw4vp7d/buwO8Xy31CXdF1dpHyPfU8wxDngCE
 PKSptwyCCpKXen5BaV8zX9RQoNjnaQJNQGDdlgaViXqYs5I/TpBA+SZ6+bQkEBKM
 SWnZEkpXjCb0pBvsgaYjYYRL3Z6+DoIFDC5axCRs7J1ta6ar4hok6oiyI0mXtz8s
 iZ48uT+8/G1gRwI3ezIdKWoWHbcqJ/M0SNIwc0nLBW/0pJb48Azja1+M1PfwMyQs
 5bEHJSEfM5GJIDN+NdvMCXYTNChxArRnQrpkvPZre5Z0Rx1yPgEhb8fjSIA7cE/F
 enl7Q+wDbatS/eO6ItWpVI5nE9FcFnzr632Z/poilogmJgUOBm+2pAbh/wGaifJk
 PsOV1J39bT8OxmrjRj3A4FzkymmW+3/SnZHdtcwzD+2YXBfrLIiu/8DQ8z2q0XAE
 6P8bW8qfGRE=
 =lSvh
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v5.19/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/drivers

Driver changes for omaps

One patch to remove commas from sentinels for ti-sysc.

* tag 'omap-for-v5.19/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  bus: ti-sysc: Drop commas after SoC match table sentinels
2022-05-03 15:15:57 +02:00
Christian Borntraeger
a06afe8383 KVM: s390: vsie/gmap: reduce gmap_rmap overhead
there are cases that trigger a 2nd shadow event for the same
vmaddr/raddr combination. (prefix changes, reboots, some known races)
This will increase memory usages and it will result in long latencies
when cleaning up, e.g. on shutdown. To avoid cases with a list that has
hundreds of identical raddrs we check existing entries at insert time.
As this measurably reduces the list length this will be faster than
traversing the list at shutdown time.

In the long run several places will be optimized to create less entries
and a shrinker might be necessary.

Fixes: 4be130a084 ("s390/mm: add shadow gmap support")
Signed-off-by: Christian Borntraeger <borntraeger@linux.ibm.com>
Acked-by: David Hildenbrand <david@redhat.com>
Link: https://lore.kernel.org/r/20220429151526.1560-1-borntraeger@linux.ibm.com
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2022-05-03 15:15:44 +02:00
Bagas Sanjaya
6370b04f24 firmware_loader: describe 'module' parameter of firmware_upload_register()
Stephen Rothwell reported kernel-doc warning:

drivers/base/firmware_loader/sysfs_upload.c:285: warning: Function parameter or member 'module' not described in 'firmware_upload_register'

Fix the warning by describing the 'module' parameter.

Link: https://lore.kernel.org/linux-next/20220502083658.266d55f8@canb.auug.org.au/
Fixes: 97730bbb24 ("firmware_loader: Add firmware-upload support")
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Russ Weight <russell.h.weight@intel.com>
Cc: Luis Chamberlain <mcgrof@kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Cc: Linux Next Mailing List <linux-next@vger.kernel.org>
Reviewed-by: Russ Weight <russell.h.weight@intel.com>
Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
Link: https://lore.kernel.org/r/20220502051456.30741-1-bagasdotme@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-05-03 15:11:34 +02:00
Arnd Bergmann
447455690f Renesas driver updates for v5.19
- Initial support for the new RZ/G2UL SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYmKBcwAKCRCKwlD9ZEnx
 cO03AQDN03R9IxLhvTYb4pRLSgkL5PYhahJhN4pN8qc4L4CkXgD/esbnQ8KObcJ2
 CWYGFEk6A5NGF0E8jp2uyew5I3RqjgU=
 =2nP4
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxKCEACgkQmmx57+YA
 GNlyGBAAknajFJ2ACWeW3EPpHOw+8da5rLUq2XKtonPasurXkbfGvoR0JLe/ZNyE
 B0esdnZt8Lm237aQ+a8De9afa7a5HcWqbhmzgcfKcEDTLOEWkRTYp67L/JHIfpMY
 uSffxLZNfj0gQA95nX5v2brHqIm/JNp3dhZpv9ts2eYgn/wX2W57PzeGr8HjBbVx
 bJDrhB9EMeV750eYlbLV24ELaVFMHEC72NQitYNp95eq8z/HwD4bISKwnvvnk9qc
 6oBhKljUYHZdNfBT5sZwEH02LpUr8eYx3pkmaZmnxCUTLVTQ8R0k8a3M9g8nfPOm
 yupfO3fz0z8+YaGw94RLMxVVMQUv79UlcmNavDB2qKK5vcCbsiUi4+lEWBvBWi26
 QM5e5HQ0TSMmTN4cYO2QgdA2cjs+nJF7uE4NWASsgY2mouB2j+ShPHX226jIhyOn
 +8PfpQYHrQ7Dm030Oag6i3wxe/RkowHyYhZ2V3Jj9r6Ba/Aidm3Cb1zoob5d+oVU
 vGkUUf7kigvR/ziBDUocDJfPrEaQ+/HRSEIGiRUfE6lqk018hcZMYlM3pYE/5egA
 M1VS3/ENxMklrZ8dcUjEa9mspPb+Pg8hcO2fjxFzT3A9XA1yjjAFJ4UkQBgYSQ95
 RjtVeZUjYbjaIxCAW47BNNdO1qlAJ2ye5k2oc+1JADZ5Qo3D0EM=
 =ojIE
 -----END PGP SIGNATURE-----

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

Renesas driver updates for v5.19

  - Initial support for the new RZ/G2UL SoC.

* tag 'renesas-drivers-for-v5.19-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  soc: renesas: Identify RZ/G2UL SoC

Link: https://lore.kernel.org/r/cover.1650638515.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 15:03:28 +02:00
Dave Gerlach
2a21f9e6d9 soc: ti: wkup_m3_ipc: Add debug option to halt m3 in suspend
Add a debugfs option to allow configurable halting of the wkup_m3
during suspend at the last possible point before low power mode entry.
This condition can only be resolved through JTAG and advancing beyond
the while loop in a8_lp_ds0_handler [1]. Although this hangs the system
it forces the system to remain active once it has been entirely
configured for low power mode entry, allowing for register inspection
through JTAG to help in debugging transition errors.

Halt mode can be set using the enable_off_mode entry under wkup_m3_ipc
in the debugfs.

[1] https://git.ti.com/cgit/processor-firmware/ti-amx3-cm3-pm-firmware/tree/src/pm_services/pm_handlers.c?h=08.02.00.006#n141

Suggested-by: Brad Griffis <bgriffis@ti.com>
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
[dfustini: add link for a8_lp_ds0_handler() in ti-amx3-cm3-pm-firmware]
Signed-off-by: Drew Fustini <dfustini@baylibre.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Link: https://lore.kernel.org/r/20220502033211.1383158-1-dfustini@baylibre.com
2022-05-03 08:02:09 -05:00
Dave Gerlach
ea082040fe soc: ti: wkup_m3_ipc: Add support for i2c voltage scaling
Allow loading of a binary containing i2c scaling sequences to be
provided to the wkup_m3 firmware in order to properly scale voltage
rails on the PMIC during low power modes like DeepSleep0. Proper binary
format is determined by the FW in use.

Code expects firmware to have 0x0C57 present as the first two bytes
followed by one byte defining offset to sleep sequence followed by one
byte defining offset to wake sequence and then lastly both sequences.
Each sequence is a series of I2C transfers in the form:

u8 length | u8 chip address | u8 byte0/reg address | u8 byte1 | u8 byteN
..

The length indicates the number of bytes to transfer, including the
register address. The length of each transfer is limited by the I2C
buffer size of 32 bytes.

Based on previous work by Russ Dill.

[dfustini: replace FW_ACTION_HOTPLUG with FW_ACTION_UEVENT]

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Signed-off-by: Keerthy <j-keerthy@ti.com>
[dfustini: add NULL argument to rproc_da_to_va() call]
Signed-off-by: Drew Fustini <dfustini@baylibre.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Link: https://lore.kernel.org/r/20220426200741.712842-3-dfustini@baylibre.com
2022-05-03 08:02:09 -05:00
Dave Gerlach
1dcbae86ee soc: ti: wkup_m3_ipc: Add support for IO Isolation
AM43xx support isolation of the IOs so that control is taken
from the peripheral they are connected to and overridden by values
present in the CTRL_CONF_* registers for the pad in the control module.

The actual toggling happens from the wkup_m3, so use a DT property from
the wkup_m3_ipc node to allow the PM code to communicate the necessity
for placing the IOs into isolation to the firmware.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Signed-off-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Drew Fustini <dfustini@baylibre.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Link: https://lore.kernel.org/r/20220414192722.2978837-3-dfustini@baylibre.com
2022-05-03 08:02:09 -05:00
Haowen Bai
d4c41d32cf soc: ti: knav_qmss_queue: Use IS_ERR instead of IS_ERR_OR_NULL when checking knav_queue_open() result
As the usage of knav_queue_open():

* Returns a handle to the open hardware queue if successful. Use IS_ERR()
* to check the returned value for error codes.

It will only return error codes, not null.

Signed-off-by: Haowen Bai <baihaowen@meizu.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Link: https://lore.kernel.org/r/1650765944-20170-1-git-send-email-baihaowen@meizu.com
2022-05-03 08:02:05 -05:00
Biju Das
dfc6597eb1
spi: dt-bindings: renesas,rspi: Document RZ/G2UL SoC
Add RSPI binding documentation for Renesas RZ/G2UL SoC.

RSPI block is identical to one found on RZ/A, so no driver changes are
required. The fallback compatible string "renesas,rspi-rz" will be used
on RZ/G2UL.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20220501082150.24662-1-biju.das.jz@bp.renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 14:00:47 +01:00
Dan Carpenter
73c1a5153e
spi: mtk-snfi: preserve dma_mapping_error() error codes
Return -ENOMEM of there is a dma mapping error.  Do not return success.

Fixes: 764f1b7481 ("spi: add driver for MTK SPI NAND Flash Interface")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Chuanhong Guo <gch981213@gmail.com>
Link: https://lore.kernel.org/r/YmwjUcTKyQNrrn2g@kili
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 14:00:38 +01:00
Arnd Bergmann
efad535480 Defconfig changes for omaps
Changes to add tlv320aic3x and is176x drivers as loadable modules
 to omap2plus_defconfig.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAmJnrqMRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXPkZA/8D0GOnBM76JrP/EPo48PB1gK5HKTn0yXP
 ITZlS4h+G1LUWkUnQ0h1OzUMfEOv6MhorxOD9mEM039nVNCxxlgSjgY1XnpFUswN
 RB7DYB8lSGm7VFOznVGek+8I2loq2QrFfIVlj+wenQJaQ4HyvGZIaJdZC1EHvHTE
 t8/ue8Ppx01prJDyr+Ly1Dhh9GOZhGW++fW5bwWP/TQGCjVTo2EiFCk4HkMB3SBm
 K5f+OXpPpMUfecVfXAcoVSpbzjiXi8i56I8EfF7LlPGtdrjejUMAms5rmoer/EnM
 oIbe8Fruft5dLq5JKJ0o9l8IdLtb6fdwQHc5YGrSOoswpYLD4K1eZt+mSbuNjwfu
 kXmWfQ7RcafCgFNMyOKEck8FckEjg5G90r4RJNs2OyBsXabxWT+J3RD+0sv9yi/0
 TuibbQ1luInKw+2dkq3Co10nr1K0dvR+GQVgLP6rKqf738uI0qSfGDysmFwR3akK
 zmuDjP47OOwNVLS6HE172n4/2vGW+zBJwFLKpw9FVbmyLFCOIa4TWaMyNeIlsOxV
 XOyoJ03YQw4hIzjgeTpmyI4EUNTKdBqMuIx/lgEKgv4JyM801KxTrSLMAsYcT1pK
 GFLFUISQl/ZQGpg4kjqYc3FfhkbTNQZUH1nVnBJ8jHz6BEnpL3iTSYHdNiKkqWu/
 30b+0eby04Q=
 =8hXa
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxJfoACgkQmmx57+YA
 GNnKCQ/8DfRnEeiMbH0gjqXhgEydD6j2ZOqLVj7YOY4pDjVX1bVLuUh/zt7juX+y
 qvPwzXVS4Ha5eLtwzIbnkz07POLUkzSVyuH+dW2qtEVdHY1Cwdj9lyqk8+G1xAyu
 gUlQ75dRtUISgkkCB+oL3SRoUq3nJv1pw/NcIyMb8DiEE/ozI7XLT05X7T0vPp1Q
 8sg2AGZkCJ5wunjysB8XlgBkxIKvWTMfQTyjw6av8d/QxMrJ5+z+JX1QcCzDV21m
 K8RDi8lwn4+mua3jrXnznxaylXOG37AGs+g1hmI1RZCHW1viNhleRJxGAwOT/gA/
 5w61fng9eYDJVOs8h2IUgJ12GpOVLrhraK5qo3oO131N4VBUrlscb7bL+JQ0sJHm
 azacMY6Fryzkh1z1wmAfxgtAy/msaF7lP07VEq9F3c28xW4s8/uh9I72F8tPjIjg
 GID6QUEJHT39k0rrcUVd6bSksxVO8UaNpNgtZaZqCbz7WEMr0WYiRk8iRfnhC75W
 SG4SoCVTlkkdSAHsKN9SspGApG77ZInNz2Xu1LNFbRNYesvEccxYcXgznJZw+y6m
 21oaf0qPQNBq+zqpImtrRevyEKdCGX1GDZQpyZttYsYdfo7I8Gi/0pXgt2ts0LzE
 Q3hvthi4z8zFzITqSiiiZoMxTD5J5jl8R2omNKEuMHD4lsdWOiY=
 =1eXP
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v5.19/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/defconfig

Defconfig changes for omaps

Changes to add tlv320aic3x and is176x drivers as loadable modules
to omap2plus_defconfig.

* tag 'omap-for-v5.19/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: omap2plus_defconfig: Enable ISP176x USB driver
  ARM: omap2plus_defconfig: enable TLV320AIC3X

Link: https://lore.kernel.org/r/pull-1651061256-836848@atomide.com-2
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 14:54:18 +02:00
Arnd Bergmann
65462ba7e1 Renesas ARM defconfig updates for v5.19
- Enable support for the Renesas RZ/V2L SoC and the Maxim MAX96712
     Quad GMSL2 Deserializer in the arm64 defconfig,
   - Refresh shmobile_defconfig for v5.18-rc1.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCYmJ3AwAKCRCKwlD9ZEnx
 cNa0APwJIXP3GulpMvVC07l9MISB0TuMIKJr7hpix4FWR3UgdAD/Qb4uzseyOt7P
 OR1bifu1lIXrha/ABr3dhZr77B2DYwQ=
 =9bw+
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxJeEACgkQmmx57+YA
 GNn0phAAwWQANXNwMdx0+yZp3rfqZzN13b/QIQS0qyRL9e3Rzf6rIxgzb3rkIaz5
 4oqWQeBSOfMmVyN4Q2Cznw+MWT16/xMZycJO8HicE075ivlnkxGlswAASQ2h1PMo
 E3vXSeVADVW4Vhwly4XUMClU11jmyplJzLtrI55GpsRGRcR5RARGf9CL4nBuscwD
 5zLIQGa0mbI/3vQFo4yvdQhtktmZA/KBoL9c4zJmGMtE/xJoFz+nC2mL/971PzFD
 E8FEYUukAiDsp86NvSxWE5flJV+5tCkBG1ZvHxbvfb68mwmB2G5qeEJgXCAktc1y
 CnftEDUpRQTLZkvNs8yc12ZcehP8xx4YFscVafs64YGlnvdpyPyQuYc/8+Ra47la
 RWrbEhkTDOTc6XEN2rW/gMB206cWbj2zVFCE/FmFu11HH5l4zlJpo4QI1PfotfHx
 opC7/69uttDWtnhEjrVmHfSr/lYGKJzzkc1TXgdFgMR9HPcYsP9CQa1QuFHPjBgL
 5Z2Qt93bxzGmqHIQNoM5AN7qXpkJDtkGDOFX4mhdz+S4f0NeFj/ZGRoPqDvOXEqS
 D4o8h96Ep+x7aAXy1EtRnt25g4rgEwzLxSbxbXcruWZqutnsu4STV4AYqcVu73YQ
 Yn89GECxUgxix7QsSIauqxAILb65pL2oLakpYnm8EYOZzGZJbS8=
 =W1C7
 -----END PGP SIGNATURE-----

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

Renesas ARM defconfig updates for v5.19

  - Enable support for the Renesas RZ/V2L SoC and the Maxim MAX96712
    Quad GMSL2 Deserializer in the arm64 defconfig,
  - Refresh shmobile_defconfig for v5.18-rc1.

* tag 'renesas-arm-defconfig-for-v5.19-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  ARM: shmobile: defconfig: Refresh for v5.18-rc1
  arm64: defconfig: Enable Maxim MAX96712 Quad GMSL2 Deserializer support
  arm64: defconfig: Enable ARCH_R9A07G054

Link: https://lore.kernel.org/r/cover.1650638503.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 14:53:53 +02:00
carsten.haitzler@foss.arm.com
16a5b26d27
arm64: defconfig: Enable modules for arm displays
Key devices that support displays on SoCs like the Komeda DRM driver, the
older HDLCD were not enabled by default and should be so displays can work
out of the box on defconfig. Also Candence I2C support should be enabled so
the PHY and thus displays can work too.

Signed-off-by: Carsten Haitzler <carsten.haitzler@arm.com>
Link: https://lore.kernel.org/r/20220427114200.111904-1-carsten.haitzler@foss.arm.com'
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 14:53:30 +02:00
Rickard x Andersson
20078e3bbe
regulator: pca9450: Enable DVS control via PMIC_STBY_REQ
When DVS is enabled via the devicetree properties
"nxp,dvs-run-voltage" and "nxp,dvs-standby-voltage" then
also the bit that enables DVS control via PMIC_STBY_REQ pin
should be set.

Signed-off-by: Rickard x Andersson <rickaran@axis.com>
Link: https://lore.kernel.org/r/20220429072211.24957-5-rickaran@axis.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:47:44 +01:00
Rickard x Andersson
2364a64d06
regulator: pca9450: Make warm reset on WDOG_B assertion
The default configuration of the PMIC behavior makes the PMIC
power cycle most regulators on WDOG_B assertion. This power
cycling causes the memory contents of OCRAM to be lost.
Some systems neeeds some memory that survives reset and
reboot, therefore this patch is created.

Signed-off-by: Rickard x Andersson <rickaran@axis.com>
Link: https://lore.kernel.org/r/20220429072211.24957-4-rickaran@axis.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:47:43 +01:00
Rickard x Andersson
bd2f5e7145
regulator: Add property for WDOG_B warm reset
Make it possible to do warm reset on WDOG_B assertion.

Signed-off-by: Rickard x Andersson <rickaran@axis.com>
Link: https://lore.kernel.org/r/20220429072211.24957-3-rickaran@axis.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:47:37 +01:00
Per-Daniel Olsson
62139f52b7
regulator: pca9450: Make I2C Level Translator configurable
Make the I2C Level Translator included in PCA9450 configurable from
devicetree. The reset state is off. By setting nxp,i2c-lt-enable, the
I2C Level Translator will be enabled while in STANDBY or RUN state.

Signed-off-by: Per-Daniel Olsson <perdo@axis.com>
Signed-off-by: Rickard x Andersson <rickaran@axis.com>
Link: https://lore.kernel.org/r/20220429072211.24957-2-rickaran@axis.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:47:36 +01:00
Per-Daniel Olsson
e721b16139
regulator: Add property for I2C level shifter
By setting nxp,i2c-lt-enable the I2C level translator is
enabled.

Signed-off-by: Per-Daniel Olsson <perdo@axis.com>
Signed-off-by: Rickard x Andersson <rickaran@axis.com>
Link: https://lore.kernel.org/r/20220429072211.24957-1-rickaran@axis.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:47:32 +01:00
Ian Abbott
f724c296f2
spi: cadence-quadspi: fix Direct Access Mode disable for SoCFPGA
The Cadence QSPI compatible string required for the SoCFPGA platform
changed from the default "cdns,qspi-nor" to "intel,socfpga-qspi" with
the introduction of an additional quirk in
commit 98d948eb83 ("spi: cadence-quadspi: fix write completion support").
However, that change did not preserve the previously used
quirk for this platform.  Reinstate the `CQSPI_DISABLE_DAC_MODE` quirk
for the SoCFPGA platform.

Fixes: 98d948eb83 ("spi: cadence-quadspi: fix write completion support")
Cc: Dinh Nguyen <dinguyen@kernel.org>
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Link: https://lore.kernel.org/r/20220427153446.10113-1-abbotti@mev.co.uk
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:47:11 +01:00
Stephen Kitt
55d2a66cfe
ASoC: tpa6130: use i2c_match_id and simple i2c probe
As part of the ongoing i2c transition to the simple probe
("probe_new"), this patch uses i2c_match_id to retrieve the
driver_data for the probed device. The id parameter is thus no longer
necessary and the simple probe can be used instead.

The i2c id table is moved up before the probe function, as suggested
by Wolfram Sang.

Signed-off-by: Stephen Kitt <steve@sk2.org>
Link: https://lore.kernel.org/r/20220501171009.45060-1-steve@sk2.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:45:55 +01:00
Lukas Bulwahn
2b65c1162a
arm: nomadik: drop selecting obsolete CLKSRC_NOMADIK_MTU_SCHED_CLOCK
Commit 85b6fcadcf ("clocksource/drivers/ux500: Drop Ux500 custom
SCHED_CLOCK") removes a sched_clock workaround and its corresponding
config CLKSRC_NOMADIK_MTU_SCHED_CLOCK. Since then, selecting
CLKSRC_NOMADIK_MTU_SCHED_CLOCK in ./arch/arm/mach-nomadik/Kconfig has no
effect and ./scripts/checkkconfigsymbols.py warns:

CLKSRC_NOMADIK_MTU_SCHED_CLOCK
Referencing files: arch/arm/mach-nomadik/Kconfig

Simply drop selecting the obsolete CLKSRC_NOMADIK_MTU_SCHED_CLOCK.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20220410145623.2620380-1-linus.walleij@linaro.org'
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 14:44:21 +02:00
Linus Walleij
0af2de76a2
ARM: config: Refresh IXP4xx config after multiplatform
After converting to multiplatform the old IXP4xx defconfig
doesn't even activate the ethernet driver anymore, we need
to refresh this thoroughly.

- Drop options that ARCH_MULTI_V5 selects for us.
- Some options moved around because of multiplatform and
  because generic Kconfig movements.
- Drop all MACH_* that do not exist anymore.
- Compress the kernel and initramfs with XZ as the memory
  is often limited for these machines.
- Make sure IXP4XX_QMGR and IXP4XX_NPE is selected.
- Make sure the MTD_PHYSMAP_IXP4XX is selected and not
  the old MTD_IXP4XX (will be deleted).
- Activate CRYPTO_DEV_IXP4XX
- Add some very basic default drivers such as AT24 EEPROMs
  used in many routers.
- Add some kernel configs needed to bring up OpenWrt
  which is the only userspace for these devices:
  CGROUPS, DEVTMPFS, INOTIFY_USER, SIGNALFD, TIMERFD,
  EPOLL, OVERLAY_FS and SQUASHFS.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Cc: Arnd Bergmann <arnd@kernel.org>
Cc: Krzysztof Halasa <khalasa@piap.pl>
Cc: Imre Kaloz <kaloz@openwrt.org>
Link: https://lore.kernel.org/r/20220407204502.2470560-1-linus.walleij@linaro.org'
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 14:43:42 +02:00
Nicolas Frattaroli
35a9b000b2
ASoC: rk3328: fix disabling mclk on pclk probe failure
If preparing/enabling the pclk fails, the probe function should
unprepare and disable the previously prepared and enabled mclk,
which it doesn't do. This commit rectifies this.

Fixes: c32759035a ("ASoC: rockchip: support ACODEC for rk3328")
Signed-off-by: Nicolas Frattaroli <frattaroli.nicolas@gmail.com>
Reviewed-by: Katsuhiro Suzuki <katsuhiro@katsuster.net>
Link: https://lore.kernel.org/r/20220427172310.138638-1-frattaroli.nicolas@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:43:36 +01:00
Ricard Wanderlof
c7b9239583
ASoC: adau1761: Add ADAU1761-as-ADAU1361 compatibility mode
During probe, determine if the chip is in fact an ADAU1761
even though an ADAU1361 is specified, and perform additional
operations to enable the ADAU1761 to behave as an ADAU1361,
i.e. disregarding the DSP and setting up routing and PM
transparently.

This enables either chip to be mounted when an ADAU1361 is specified.

Signed-off-by: Ricard Wanderlof <ricardw@axis.com>
Link: https://lore.kernel.org/r/alpine.DEB.2.21.2204281841290.5574@lnxricardw1.se.axis.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:43:35 +01:00
Peter Ujfalusi
a962890a5a
ASoC: SOF: ipc3-topology: Correct get_control_data for non bytes payload
It is possible to craft a topology where sof_get_control_data() would do
out of bounds access because it expects that it is only called when the
payload is bytes type.
Confusingly it also handles other types of controls, but the payload
parsing implementation is only valid for bytes.

Fix the code to count the non bytes controls and instead of storing a
pointer to sof_abi_hdr in sof_widget_data (which is only valid for bytes),
store the pointer to the data itself and add a new member to save the size
of the data.

In case of non bytes controls we store the pointer to the chanv itself,
which is just an array of values at the end.

In case of bytes control, drop the wrong cdata->data (wdata[i].pdata) check
against NULL since it is incorrect and invalid in this context.
The data is pointing to the end of cdata struct, so it should never be
null.

Reported-by: Sergey Senozhatsky <senozhatsky@chromium.org>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Sergey Senozhatsky <senozhatsky@chromium.org>
Tested-by: Sergey Senozhatsky <senozhatsky@chromium.org>
Link: https://lore.kernel.org/r/20220427185221.28928-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:42:29 +01:00
Mark Brown
4213ff5567
ASoC: rt5514: Fix event generation for "DSP Voice Wake Up" control
The driver has a custom put function for "DSP Voice Wake Up" which does
not generate event notifications on change, instead returning 0. Since we
already exit early in the case that there is no change this can be fixed
by unconditionally returning 1 at the end of the function.

Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20220428162444.3883147-1-broonie@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:42:27 +01:00
Mark Brown
ad68598046
ASoC: dapm: Don't fold register value changes into notifications
DAPM tracks and reports the value presented to the user from DAPM controls
separately to the register value, these may diverge during initialisation
or when an autodisable control is in use.

When writing DAPM controls we currently report that a change has occurred
if either the DAPM value or the value stored in the register has changed,
meaning that if the two are out of sync we may appear to report a spurious
event to userspace. Since we use this folded in value for nothing other
than the value reported to userspace simply drop the folding in of the
register change.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20220428161833.3690050-1-broonie@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:42:26 +01:00
Mark Brown
a0746cbd0b
ASoC: max98090: Fix event generation for custom controls
The previous fix for event generation for custom controls compared the
value already in the register with the value being written, missing the
logic that only applies the value to the register when the control is
already enabled. Fix this, compare the value cached in the driver data
rather than the register.

This should really be an autodisable control rather than open coded.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20220428113221.15326-1-broonie@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-05-03 13:42:25 +01:00
Arnd Bergmann
b8e3d15e73 Memory controller drivers for v5.19, part two
1. Cleanup: simplify platform_get_resource() calls by using
    devm_platform_get_and_ioremap_resource() helper.
 2. OMAP: allow building omap-gpmc as module and make it visible (it is
    not selected by platform anymore).
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmJw1CsQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD1/UCD/9qNCeanmRu+iBPViPhjf4rXNV2cgzPXDIv
 k00pcdn2BJwpiqP/Wn1JJYaHOo1V7O7axd+Tw1Hhz3AgXYWLWnqwA2Q+BH+YYg8H
 nM2VeGC7TYpd3PVB04t0V24mN2gVo0BkBURzk9ekJDsj8RgVu+Kt4k7pc0vQSWZ2
 4vRMkImzCbTvH9rXH75UmKFQC1QjNbnreM8M3ulNFWMKBetf2pwOtXB/0hKeMmPv
 fwLViJzJwv2g9C9SRjOEDOTKsVDc4tGykhi5aXXJ5vZCGJttNusnyn9acVIhhiq3
 kLYRzTNbK4BIcXdcbFoG7NMSqESkNRyWNn2rEqJbhYu3hx6SAYqhlaJdegQj9BXy
 RiBCZKzDdomw3ObbtwpsigOPeNl7LiOLnwj/HoNxd4orUy9RE900DyLVMryHgaLo
 jfgAsy+mN+pzWrzqOKeNB71XMhrnaYLuYrLX+WuJ7CvwnWdCZYS32iq+DnhMRe2O
 zuPf9IXhBeveV3WcbbFc4LQJVx9YUyX5uRA42tMP6ys5n6Zoh0i4ePcMaVbba/IR
 nrUqK3ni7QorNGvzXthACMOAjcw42frcFfUs2CDRWJYLk/PUHk1C+N4s5CiygaYo
 M2N1UTGyT5+mQ/axz2YGSblemcCZQmfwGn1VfOGEpObdoJtuRNUMV5j5C6XnTgK1
 F/zrMF/TvQ==
 =u7Y+
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmJxH7UACgkQmmx57+YA
 GNlzTQ/+I2DaRUG1A/m/7wmbywFjv8zTEacLbCUwE7iSVMCMbxlNmjLTCup9haYH
 /Lzt0Yaazs1gDf1EGxq9DT2KVoxTlwN7pt2rWYRHCzpwJXVqNiea2Chk1Ns/hULX
 m5pNUhOgZ7pJtHdot7NbTjd9q7DHOrLo51In5uT1yGeHmQFDgkrwIwBswAAvjDuS
 1GPa47WiCMiT89f0qEv1kFAUCD4b15qus8+4HeVUyVg5u7OEWQcGeK6bpJu6z1R8
 Hg6Z7G0Faz0fR3wUTg7OiFnKrSpIzggFgyriv8wLZXzk6tzy19ZGTx0UmMF0b0lZ
 78BXL0lTu9XJfrfxO8sIYFqvrcdjYIroE0EYTzzNCqtl+SjZMo41n6AQfeM8N52o
 Fb1ISjewG31f3P/7eYQwUCw06O8QBsK001ADsOFJOGvWzIoT+Ak5OXvSwRb6tSGT
 ZSXoBGNg4Ws7UVh4pey4U+vCIrbzm/XJ8PUNCy2sDdnMqoY61cq/8AP6P7nE+B/+
 ch/Vww/DL34t5Tpno+jG7R3I14yvmS2YH7nGAyL+Kr8rhTLv08M663QtsIb0QlCt
 cFrBY4h3hb6G+xL6WpKMULhL5d7ZmXWAmu+cjkgYb9Cxv/NDFWJ1sBuwl4FWrOO/
 h2u12pWV0wQgDcsHXQC2LMyad75CBEj4KsfnuSWGdrjOeTGkT58=
 =c7xR
 -----END PGP SIGNATURE-----

Merge tag 'memory-controller-drv-5.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into arm/drivers

Memory controller drivers for v5.19, part two

1. Cleanup: simplify platform_get_resource() calls by using
   devm_platform_get_and_ioremap_resource() helper.
2. OMAP: allow building omap-gpmc as module and make it visible (it is
   not selected by platform anymore).

* tag 'memory-controller-drv-5.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
  memory: omap-gpmc: Allow building as a module
  memory: omap-gpmc: Make OMAP_GPMC config visible and selectable
  memory: renesas-rpc-if: simplify platform_get_resource_byname()
  memory: brcmstb_dpfe: simplify platform_get_resource_byname()
  memory: tegra: mc: simplify platform_get_resource()
  memory: ti-emif-pm: simplify platform_get_resource()
  memory: ti-emif: simplify platform_get_resource()
  memory: emif: simplify platform_get_resource()
  memory: da8xx-ddrctl: simplify platform_get_resource()

Link: https://lore.kernel.org/r/20220503070652.54091-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-05-03 14:27:33 +02:00
Dipen Patel
6406ac633d Documentation: Add HTE subsystem guide
Adding hte document which can help understand various APIs implemented
in HTE framework for the HTE producers and the consumers.

Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2022-05-03 14:22:56 +02:00
Paolo Bonzini
9913288318 Merge branch 'kvm-amd-pmu-fixes' into HEAD 2022-05-03 08:09:13 -04:00
Paolo Bonzini
04144108a1 Merge branch 'kvm-amd-pmu-fixes' into HEAD 2022-05-03 08:07:54 -04:00
Sandipan Das
5a1bde46f9 kvm: x86/cpuid: Only provide CPUID leaf 0xA if host has architectural PMU
On some x86 processors, CPUID leaf 0xA provides information
on Architectural Performance Monitoring features. It
advertises a PMU version which Qemu uses to determine the
availability of additional MSRs to manage the PMCs.

Upon receiving a KVM_GET_SUPPORTED_CPUID ioctl request for
the same, the kernel constructs return values based on the
x86_pmu_capability irrespective of the vendor.

This leaf and the additional MSRs are not supported on AMD
and Hygon processors. If AMD PerfMonV2 is detected, the PMU
version is set to 2 and guest startup breaks because of an
attempt to access a non-existent MSR. Return zeros to avoid
this.

Fixes: a6c06ed1a6 ("KVM: Expose the architectural performance monitoring CPUID leaf")
Reported-by: Vasant Hegde <vasant.hegde@amd.com>
Signed-off-by: Sandipan Das <sandipan.das@amd.com>
Message-Id: <3fef83d9c2b2f7516e8ff50d60851f29a4bcb716.1651058600.git.sandipan.das@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-05-03 08:05:08 -04:00
Minghao Chi
2b7042500c soc: ti: pm33xx: using pm_runtime_resume_and_get instead of pm_runtime_get_sync
Using pm_runtime_resume_and_get is more appropriate
for simplifing code

Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Minghao Chi <chi.minghao@zte.com.cn>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tony Lindgren <tony@aotmide.com>
Link: https://lore.kernel.org/r/20220418063059.2558074-1-chi.minghao@zte.com.cn
2022-05-03 06:58:10 -05:00
Kyle Huey
5eb849322d KVM: x86/svm: Account for family 17h event renumberings in amd_pmc_perf_hw_id
Zen renumbered some of the performance counters that correspond to the
well known events in perf_hw_id. This code in KVM was never updated for
that, so guest that attempt to use counters on Zen that correspond to the
pre-Zen perf_hw_id values will silently receive the wrong values.

This has been observed in the wild with rr[0] when running in Zen 3
guests. rr uses the retired conditional branch counter 00d1 which is
incorrectly recognized by KVM as PERF_COUNT_HW_STALLED_CYCLES_BACKEND.

[0] https://rr-project.org/

Signed-off-by: Kyle Huey <me@kylehuey.com>
Message-Id: <20220503050136.86298-1-khuey@kylehuey.com>
Cc: stable@vger.kernel.org
[Check guest family, not host. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-05-03 07:56:53 -04:00
Dave Gerlach
b9e8a7d950 firmware: ti_sci: Switch transport to polled mode during system suspend
During system suspend it is completely valid for devices to invoke TISCI
commands during the noirq phase of the suspend path. Specifically this
will always be seen for devices that define a power-domains DT property
and make use of the ti_sci_pm_domains genpd implementation.
The genpd_finish_suspend call will power off devices during the noirq
phase, which will invoke TISCI.

In order to support this, the ti_sci driver must switch to not use
wait_for_completion_timeout during suspend, but instead rely on a manual
check for if the completion is not yet done, and proceed only if this is
the case.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Link: https://lore.kernel.org/r/20220412192138.31189-1-d-gerlach@ti.com
2022-05-03 06:52:11 -05:00
Paolo Bonzini
6ea6581f12 Merge branch 'kvm-tdp-mmu-atomicity-fix' into HEAD
We are dropping A/D bits (and W bits) in the TDP MMU.  Even if mmu_lock
is held for write, as volatile SPTEs can be written by other tasks/vCPUs
outside of mmu_lock.

Attempting to prove that bug exposed another notable goof, which has been
lurking for a decade, give or take: KVM treats _all_ MMU-writable SPTEs
as volatile, even though KVM never clears WRITABLE outside of MMU lock.
As a result, the legacy MMU (and the TDP MMU if not fixed) uses XCHG to
update writable SPTEs.

The fix does not seem to have an easily-measurable affect on performance;
page faults are so slow that wasting even a few hundred cycles is dwarfed
by the base cost.
2022-05-03 07:29:30 -04:00
Paolo Bonzini
4f510c8bb1 Merge branch 'kvm-tdp-mmu-atomicity-fix' into HEAD
We are dropping A/D bits (and W bits) in the TDP MMU.  Even if mmu_lock
is held for write, as volatile SPTEs can be written by other tasks/vCPUs
outside of mmu_lock.

Attempting to prove that bug exposed another notable goof, which has been
lurking for a decade, give or take: KVM treats _all_ MMU-writable SPTEs
as volatile, even though KVM never clears WRITABLE outside of MMU lock.
As a result, the legacy MMU (and the TDP MMU if not fixed) uses XCHG to
update writable SPTEs.

The fix does not seem to have an easily-measurable affect on performance;
page faults are so slow that wasting even a few hundred cycles is dwarfed
by the base cost.
2022-05-03 07:23:08 -04:00
Tetsuo Handa
3a58f13a88 net: rds: acquire refcount on TCP sockets
syzbot is reporting use-after-free read in tcp_retransmit_timer() [1],
for TCP socket used by RDS is accessing sock_net() without acquiring a
refcount on net namespace. Since TCP's retransmission can happen after
a process which created net namespace terminated, we need to explicitly
acquire a refcount.

Link: https://syzkaller.appspot.com/bug?extid=694120e1002c117747ed [1]
Reported-by: syzbot <syzbot+694120e1002c117747ed@syzkaller.appspotmail.com>
Fixes: 26abe14379 ("net: Modify sk_alloc to not reference count the netns of kernel sockets.")
Fixes: 8a68173691 ("net: sk_clone_lock() should only do get_net() if the parent is not a kernel socket")
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Tested-by: syzbot <syzbot+694120e1002c117747ed@syzkaller.appspotmail.com>
Link: https://lore.kernel.org/r/a5fb1fc4-2284-3359-f6a0-e4e390239d7b@I-love.SAKURA.ne.jp
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2022-05-03 13:22:50 +02:00
Sean Christopherson
ba3a6120a4 KVM: x86/mmu: Use atomic XCHG to write TDP MMU SPTEs with volatile bits
Use an atomic XCHG to write TDP MMU SPTEs that have volatile bits, even
if mmu_lock is held for write, as volatile SPTEs can be written by other
tasks/vCPUs outside of mmu_lock.  If a vCPU uses the to-be-modified SPTE
to write a page, the CPU can cache the translation as WRITABLE in the TLB
despite it being seen by KVM as !WRITABLE, and/or KVM can clobber the
Accessed/Dirty bits and not properly tag the backing page.

Exempt non-leaf SPTEs from atomic updates as KVM itself doesn't modify
non-leaf SPTEs without holding mmu_lock, they do not have Dirty bits, and
KVM doesn't consume the Accessed bit of non-leaf SPTEs.

Dropping the Dirty and/or Writable bits is most problematic for dirty
logging, as doing so can result in a missed TLB flush and eventually a
missed dirty page.  In the unlikely event that the only dirty page(s) is
a clobbered SPTE, clear_dirty_gfn_range() will see the SPTE as not dirty
(based on the Dirty or Writable bit depending on the method) and so not
update the SPTE and ultimately not flush.  If the SPTE is cached in the
TLB as writable before it is clobbered, the guest can continue writing
the associated page without ever taking a write-protect fault.

For most (all?) file back memory, dropping the Dirty bit is a non-issue.
The primary MMU write-protects its PTEs on writeback, i.e. KVM's dirty
bit is effectively ignored because the primary MMU will mark that page
dirty when the write-protection is lifted, e.g. when KVM faults the page
back in for write.

The Accessed bit is a complete non-issue.  Aside from being unused for
non-leaf SPTEs, KVM doesn't do a TLB flush when aging SPTEs, i.e. the
Accessed bit may be dropped anyways.

Lastly, the Writable bit is also problematic as an extension of the Dirty
bit, as KVM (correctly) treats the Dirty bit as volatile iff the SPTE is
!DIRTY && WRITABLE.  If KVM fixes an MMU-writable, but !WRITABLE, SPTE
out of mmu_lock, then it can allow the CPU to set the Dirty bit despite
the SPTE being !WRITABLE when it is checked by KVM.  But that all depends
on the Dirty bit being problematic in the first place.

Fixes: 2f2fad0897 ("kvm: x86/mmu: Add functions to handle changed TDP SPTEs")
Cc: stable@vger.kernel.org
Cc: Ben Gardon <bgardon@google.com>
Cc: David Matlack <dmatlack@google.com>
Cc: Venkatesh Srinivas <venkateshs@google.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20220423034752.1161007-4-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-05-03 07:22:32 -04:00
Sean Christopherson
54eb3ef56f KVM: x86/mmu: Move shadow-present check out of spte_has_volatile_bits()
Move the is_shadow_present_pte() check out of spte_has_volatile_bits()
and into its callers.  Well, caller, since only one of its two callers
doesn't already do the shadow-present check.

Opportunistically move the helper to spte.c/h so that it can be used by
the TDP MMU, which is also the primary motivation for the shadow-present
change.  Unlike the legacy MMU, the TDP MMU uses a single path for clear
leaf and non-leaf SPTEs, and to avoid unnecessary atomic updates, the TDP
MMU will need to check is_last_spte() prior to calling
spte_has_volatile_bits(), and calling is_last_spte() without first
calling is_shadow_present_spte() is at best odd, and at worst a violation
of KVM's loosely defines SPTE rules.

Note, mmu_spte_clear_track_bits() could likely skip the write entirely
for SPTEs that are not shadow-present.  Leave that cleanup for a future
patch to avoid introducing a functional change, and because the
shadow-present check can likely be moved further up the stack, e.g.
drop_large_spte() appears to be the only path that doesn't already
explicitly check for a shadow-present SPTE.

No functional change intended.

Cc: stable@vger.kernel.org
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20220423034752.1161007-3-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-05-03 07:22:32 -04:00
Sean Christopherson
706c9c55e5 KVM: x86/mmu: Don't treat fully writable SPTEs as volatile (modulo A/D)
Don't treat SPTEs that are truly writable, i.e. writable in hardware, as
being volatile (unless they're volatile for other reasons, e.g. A/D bits).
KVM _sets_ the WRITABLE bit out of mmu_lock, but never _clears_ the bit
out of mmu_lock, so if the WRITABLE bit is set, it cannot magically get
cleared just because the SPTE is MMU-writable.

Rename the wrapper of MMU-writable to be more literal, the previous name
of spte_can_locklessly_be_made_writable() is wrong and misleading.

Fixes: c7ba5b48cc ("KVM: MMU: fast path of handling guest page fault")
Cc: stable@vger.kernel.org
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20220423034752.1161007-2-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-05-03 07:22:31 -04:00