Commit graph

1,233,488 commits

Author SHA1 Message Date
Petr Pavlu
442466e04f xen/xenbus: Avoid a lockdep warning when adding a watch
The following lockdep warning appears during boot on a Xen dom0 system:

[   96.388794] ======================================================
[   96.388797] WARNING: possible circular locking dependency detected
[   96.388799] 6.4.0-rc5-default+ #8 Tainted: G            EL
[   96.388803] ------------------------------------------------------
[   96.388804] xenconsoled/1330 is trying to acquire lock:
[   96.388808] ffffffff82acdd10 (xs_watch_rwsem){++++}-{3:3}, at: register_xenbus_watch+0x45/0x140
[   96.388847]
               but task is already holding lock:
[   96.388849] ffff888100c92068 (&u->msgbuffer_mutex){+.+.}-{3:3}, at: xenbus_file_write+0x2c/0x600
[   96.388862]
               which lock already depends on the new lock.

[   96.388864]
               the existing dependency chain (in reverse order) is:
[   96.388866]
               -> #2 (&u->msgbuffer_mutex){+.+.}-{3:3}:
[   96.388874]        __mutex_lock+0x85/0xb30
[   96.388885]        xenbus_dev_queue_reply+0x48/0x2b0
[   96.388890]        xenbus_thread+0x1d7/0x950
[   96.388897]        kthread+0xe7/0x120
[   96.388905]        ret_from_fork+0x2c/0x50
[   96.388914]
               -> #1 (xs_response_mutex){+.+.}-{3:3}:
[   96.388923]        __mutex_lock+0x85/0xb30
[   96.388930]        xenbus_backend_ioctl+0x56/0x1c0
[   96.388935]        __x64_sys_ioctl+0x90/0xd0
[   96.388942]        do_syscall_64+0x5c/0x90
[   96.388950]        entry_SYSCALL_64_after_hwframe+0x72/0xdc
[   96.388957]
               -> #0 (xs_watch_rwsem){++++}-{3:3}:
[   96.388965]        __lock_acquire+0x1538/0x2260
[   96.388972]        lock_acquire+0xc6/0x2b0
[   96.388976]        down_read+0x2d/0x160
[   96.388983]        register_xenbus_watch+0x45/0x140
[   96.388990]        xenbus_file_write+0x53d/0x600
[   96.388994]        vfs_write+0xe4/0x490
[   96.389003]        ksys_write+0xb8/0xf0
[   96.389011]        do_syscall_64+0x5c/0x90
[   96.389017]        entry_SYSCALL_64_after_hwframe+0x72/0xdc
[   96.389023]
               other info that might help us debug this:

[   96.389025] Chain exists of:
                 xs_watch_rwsem --> xs_response_mutex --> &u->msgbuffer_mutex

[   96.413429]  Possible unsafe locking scenario:

[   96.413430]        CPU0                    CPU1
[   96.413430]        ----                    ----
[   96.413431]   lock(&u->msgbuffer_mutex);
[   96.413432]                                lock(xs_response_mutex);
[   96.413433]                                lock(&u->msgbuffer_mutex);
[   96.413434]   rlock(xs_watch_rwsem);
[   96.413436]
                *** DEADLOCK ***

[   96.413436] 1 lock held by xenconsoled/1330:
[   96.413438]  #0: ffff888100c92068 (&u->msgbuffer_mutex){+.+.}-{3:3}, at: xenbus_file_write+0x2c/0x600
[   96.413446]

An ioctl call IOCTL_XENBUS_BACKEND_SETUP (record #1 in the report)
results in calling xenbus_alloc() -> xs_suspend() which introduces
ordering xs_watch_rwsem --> xs_response_mutex. The xenbus_thread()
operation (record #2) creates xs_response_mutex --> &u->msgbuffer_mutex.
An XS_WATCH write to the xenbus file then results in a complain about
the opposite lock order &u->msgbuffer_mutex --> xs_watch_rwsem.

The dependency xs_watch_rwsem --> xs_response_mutex is spurious. Avoid
it and the warning by changing the ordering in xs_suspend(), first
acquire xs_response_mutex and then xs_watch_rwsem. Reverse also the
unlocking order in xs_suspend_cancel() for consistency, but keep
xs_resume() as is because it needs to have xs_watch_rwsem unlocked only
after exiting xs suspend and re-adding all watches.

Signed-off-by: Petr Pavlu <petr.pavlu@suse.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Link: https://lore.kernel.org/r/20230607123624.15739-1-petr.pavlu@suse.com
Signed-off-by: Juergen Gross <jgross@suse.com>
2023-08-22 08:04:59 +02:00
Arnd Bergmann
56fdaf48e7 This pull request contains Broadcom platforms updates for 6.6, please
pull the following:
 
 - Rob updates the Broadcom machine level code to use the correct DT
   includes
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmTdOMkACgkQh9CWnEQH
 BwRkjQ/8Dl5BtkCe8xIx8rYbK+aghkbdf+YHYO9XLkfx3zhzORriwr2BvgMT2ZgO
 4jp2FVUI9xKax++FlU6qWmNRLuylMoieOiCFWNpmIMps0xAZYZkJT+4dD8eAOfLI
 bc9gac7MqlqnZjdsP/BXDNrUmVw4DABRDAYl2CDGsnmeW2vU/0HAsLFbsEK798RJ
 WGlaUa+guCLH48JYpNwauwXpUa1mUn+tgwJvgNWje8gYHI6ndVV7+6kTfXqMFNB5
 75y4slth/M+TEj0+IysBCV0yp8ERGmxA0Jggr6fRPHnR4bVCprJ9PDpVdKSkDLGv
 rAmihj1VM46nxMaj7Dugj4Q+1VjpovQuIf1VIvxWMb0OzsVq5YvzQRX5SsJAL4R5
 wP3NosSu8knOAmzQeP5q+apjRTGEYUzHtGgpbb00LjjrE0MNFZhhTD15KqdMiSvP
 N7farfxQtllu9zy2r2bNHwzFNLn4M4PZvmRtV2kuFI0XjaYlpk+kjfswk5pzPyuZ
 i9QAe6WIeGFEJydh8+TqGHQrA+l3NKjRixrLqbMws86wybm2ZuKU6yxSKwWPs9LV
 cbju4Gkj3mxLmjoexmAaJ+NqNi8D2O8+TnouPZTO8EAKxlvobNWarip7SEqMYBT2
 QXtQxA/SW/l639F4Y38jhVl8KCe2Q4uPaVGZqbUUW5aRbR0q4a4=
 =hHHi
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkGz0ACgkQYKtH/8kJ
 UicDBQ//WWTj6dTFup2EjQcTAXweRa6fCNLHPIjIDdR+/ybiUG7bL+NKbAmI9+Nl
 3f2Dt1pq50bzfswDH/GB0CsvIYzsdCVdIo/Ffi719fh/K6pa5m/+4/HILYMHHkkG
 FlZX5dFRL9cfiAHDS8pOffirr8x+bSBBfvkG/RCFWEi47IH9eez20HcgOtLFuIYN
 B7GlMTMrJJatS2pYRf/XokOt74uaz1m7f/BOoJe+Z7GlpJwBTMesJjd9PsPSUgOF
 D/JGpmIJCkWgQWs6fYBHLtoON8jzHpzh1JyGu0/qIW9Mw0vYtKLLe5HoAmCwJl5j
 qdi1Xp2G6kpSdUwGET/8VNW0WhVHO877kMV2GB9KCYv5c6mq73bF/l0G/Fc2aX1P
 IPwtF2CTjYarIYESJcB4+Vga1+KjvVdWq+mruzz7mdJFcW1fuowbKSJAKkBDdbKc
 A4r5CmKyf9J0EYnl10+jBfBLXwmVV7lqGnF0xWPo6h0vUMbIC3p5GFf3JxgdP1PU
 pDuphEw/k8A+cq+fCZIP6twY0u76CtB2hCDXInv/Be7ruV1vO0rSH+6EvuKuLcz1
 N9nNJIHG+cXlEUedb8jhPuHkYI7M7RnTLw3PWo4FFd6uQRBmZ8S9u03XBI91GUG9
 x2WLWK6sEBRfjDj5BCA9l6OUcsovt2kNOJqMiMXXoaX8DooZKHU=
 =bYKS
 -----END PGP SIGNATURE-----

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

This pull request contains Broadcom platforms updates for 6.6, please
pull the following:

- Rob updates the Broadcom machine level code to use the correct DT
  includes

* tag 'arm-soc/for-6.6/soc' of https://github.com/Broadcom/stblinux:
  ARM: bcm: Drop unused includes

Link: https://lore.kernel.org/r/20230818164539.2871539-4-florian.fainelli@broadcom.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 22:19:41 -04:00
Arnd Bergmann
a9d3965f76 This pull request contains Broadcom SoCs drivers changes for 6.6, please
pull the following:
 
 - Rob updates the Broadcom SoC drivers to use the correct DT includes
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmTdOIkACgkQh9CWnEQH
 BwQE8RAAj7lBzrIXudZfyVUSteJeWF6BD1QTV4Mw2RbdtfdwGa2Vf/G/sQbBgMhU
 7AC1NFztHuVdch3L1/N+YAR5omqzASPI4sm34iwRLGBUUIhDO+MP4QfjapBLkqOr
 4cU1t13BA75Cyl6l6Ra8TQr5TW3qfSotHwZKvj/QgXhiLCiF8FvTLlxhRCzZrdnb
 9FdSGp5FTbFW833D0DS5EsTlk4kGV/+1bPJszStJBl5r3gqc/f9/c4Iq0oxWANFJ
 kEO1jNXxcx2wxcqgXUxux3VXdfY3fIhFBYXX6P3aMH0a6ItRcfnGDziizdI1jzuv
 NxdoJmXOCuj5c5z8R6ZFz7CITyd5hf9S4WMaxSd/2gR35PJka1oH7jrTEU3SjNex
 pnCwGNmXH/P61dVEiVKQdmN8Gz89nPSd+JlwGuNlXT8Fwe5ECTO1zNJKyrD5tyYN
 cKnOEsnn5DBWiQxVx7rMwES3Fv0iPNGX0uYU4l7gep6jS0YATA8FQksanr3AG3hX
 Bdd87JYeRiJHKhpaZbQsnm6RFs2MvI9wRJOzvYrDJu8NvwVDRdjfr3XT9T1bMjnm
 PZPdRQOV/PAp0HQP0x3wS35zMHhqQAaJE5zMbFbMrfTrTiwbgJ8mdEpHBP4H/94u
 htsFzGZQ4PcozuJTIU/5DiSDZzoU4ZnyvsPKLzQt+lX8ycS5cu0=
 =7rPB
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkGjIACgkQYKtH/8kJ
 Uids6RAArxRDa/VN0xX8p4xeN9mABu2gcHCPsNnyPMN60GRcm+T3OxEufFULCh4Y
 aA6YXyjcMtxuRRqPj6d1TRFv8UyK6vIlFA2Tdz6Dzts3CVcLVAZB/AS1dCY281MC
 yPDR3PguibOvI2E1r1ZNJ5nYtLRuS6ydHx/+ganYJLTR1rsdiTgc8BmM9RBKQibm
 7ziWTqTY3jrwmelZDIxwRaAE919gbYLT6EurEwH7ncmjHSocGkvvzaLXDOWFH2qI
 5sVbOkCGzD+mCuJk5C9Y2HpUAvsW3KAksSfPdzJ7wdq6Ky/DDsmOVTMB2tp2UVwd
 1zePefNw4fHX2dzlMHJvtHBv/+CIDnLa1shtSyTY5Nmycmj50v3k192m1IBjgV4D
 pbGzbmu+woIikLZHNwU0Oz17nfZ4b4XH/RNqBIDNiIW93pH/zOwkSQaioXHShq5z
 JLPSol54kdGUUOEZU/E+3rzxMZvYhs/PXaIJHH95Fy/tIRrva8WKFwQVjRSJnguL
 CAF8GAo1840JqkVH9kSCPVYcG+eEwyFH7q8tXKkwyNI13asi6N6TqJom3OUUx7hk
 i4AjzHuo47ijT4+H5krviEI8NFj9FfbrQp8RyQreGxxsRpiHA0l/Y8VK318XWvIa
 mYlDv4mstsvZZkmVBu0RwhHd7t4ZYVpSUqxEX3f2KvaKHnZXEHg=
 =m5rK
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-6.6/drivers' of https://github.com/Broadcom/stblinux into soc/drivers

This pull request contains Broadcom SoCs drivers changes for 6.6, please
pull the following:

- Rob updates the Broadcom SoC drivers to use the correct DT includes

* tag 'arm-soc/for-6.6/drivers' of https://github.com/Broadcom/stblinux:
  soc: bcm: Explicitly include correct DT includes

Link: https://lore.kernel.org/r/20230818164539.2871539-3-florian.fainelli@broadcom.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 22:15:14 -04:00
Kees Cook
99b415fe89 tg3: Use slab_build_skb() when needed
The tg3 driver will use kmalloc() under some conditions. Check the
frag_size and use slab_build_skb() when frag_size is 0. Silences
the warning introduced by commit ce098da149 ("skbuff: Introduce
slab_build_skb()"):

	Use slab_build_skb() instead
	...
	tg3_poll_work+0x638/0xf90 [tg3]

Fixes: ce098da149 ("skbuff: Introduce slab_build_skb()")
Reported-by: Fiona Ebner <f.ebner@proxmox.com>
Closes: https://lore.kernel.org/all/1bd4cb9c-4eb8-3bdb-3e05-8689817242d1@proxmox.com
Cc: Siva Reddy Kallam <siva.kallam@broadcom.com>
Cc: Prashant Sreedharan <prashant@broadcom.com>
Cc: Michael Chan <mchan@broadcom.com>
Cc: Bagas Sanjaya <bagasdotme@gmail.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Pavan Chebbi <pavan.chebbi@broadcom.com>
Link: https://lore.kernel.org/r/20230818175417.never.273-kees@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-08-21 19:11:58 -07:00
Daniel Golle
90308679c2 net: pcs: lynxi: implement pcs_disable op
When switching from 10GBase-R/5GBase-R/USXGMII to one of the interface
modes provided by mtk-pcs-lynxi we need to make sure to always perform
a full configuration of the PHYA.

Implement pcs_disable op which resets the stored interface mode to
PHY_INTERFACE_MODE_NA to trigger a full reconfiguration once the LynxI
PCS driver had previously been deselected in favor of another PCS
driver such as the to-be-added driver for the USXGMII PCS found in
MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://lore.kernel.org/r/f23d1a60d2c9d2fb72e32dcb0eaa5f7e867a3d68.1692327891.git.daniel@makrotopia.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-08-21 19:08:57 -07:00
Arnd Bergmann
924832b867 This pull request contains Broadcom ARM64-based Device Tree changes for
6.6, please pull the following:
 
 - Krzysztof adds missing spaces between node names/labels
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmTdOFUACgkQh9CWnEQH
 BwTMSxAAqp53NDlGkR41/2uTc2jKtoVPM4gvvHsN3ZMK87IYKPAB+3zSgO5I5ZLh
 nrFUt9n3tNnm/WmHtLGri7j1HuHuwtvT2P1PbxYbYiu5HzkzkvsrnUDpyJcA+EDA
 n6BiNTlENZCiMkkb9pcRNKVbr1wmbSKvJ7gQCYFpaKM0P16c+lsKPX6DnkoctVK1
 44E/lkY4AbqLbPQhQMoZ/ER6x0aMfM5Foa/3fl5iT62ePsKzLk5Yqq7ioZmymGm/
 jGHC4nc1I8WrNnuJD2pBmmtQArCJEWT3ztrM8R4Wm1QNAfLpjOthh48jh2TorvKF
 Hp4gmxV9IVbu2cIla0rU6Zlq+T67+xHfvs3oq+5xfkZ72dOQixP9UNFHA/Smv/S1
 GsFsX35z1gqo6dBI/YKaB5kaR+cQ/YXMHx7/6rVoH6G3bLPSfVgyAxjVs+irwTYW
 QOk6YKKxaKqVDqi44yL2Y4RLgLSj51zY3n5075j+v3V1LP74et1oaXyqnRQjJoo6
 amQh46VQhv7r05yTT33lPN78vtzahy2nLU/tQd/yTCK63Rfnwlke35wbtlOSden/
 nPF0dCIznrUyF/KksOLId+ByeMfdK/ZjDlPghfy7wbyPQvUkQyf2IFqimaIX+mZs
 RoCM5r3wJ01u9R5RoASdy5OgzhnXc5S9aFhL0ts4OhKEjC3RoR8=
 =Wzyp
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIyBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkGH4ACgkQYKtH/8kJ
 Uid/SA/4q5n4l84xgPfDHjZeinRQuYq+2wwq6n6SiKS7c+6wyGWXGR5IUS6wP8Mv
 WlkrNFZeFp/0Ijw1oKCEbZB7ng/hVud6RHycYdvHU7aDvX1q2axpHH0kNpJl8D2I
 cZgfdWSt90K7kDz2F44lFqQSn8xK92D/Ojl7y7BKdOEIIKsqUPPTuHvWbqHJV12R
 skbhXfYtifmbViyCfTh9PYnECFtmM3WdS4ZLxcHVzIyKVaVcAvyteTJjGCxujdUc
 omCTDu0MCPtRgryvIuxtN8AxSOCW3fRDUpDpy3aPQQuAlfhfCcHrBRXwfOUdQZrh
 Un1HO/0jFBHbH8eHINGDj/MYgLmm8EpbHXw/3ZmlFYDGQoisgN/fRJuQhXoIwPkq
 W3xN7gtOhYibGlrOJf0Ii9LgHNMOPUT7UP8njTT/fmelpwT+MVhIg09vEUP7kZDu
 DVD9c+s7t7sTjk2hNkg1SJeCA9PKL990G5KY2MxnxQms+XoirCFJFypWfBzk7GIi
 IUb2HQkwXZIyqrcs113X5H3PTTkC8Szob22rb3+4bFjJ6TOYzez6g5vCQV3iqr8B
 vb2HCk4TD1FdeWHB84bxS0QKrDHDRiZfAjycomsAH3bMy0hJRKY+qDsab513km59
 Z2EracriKpe/zAEMIGzbMZAddGlTK7En4SrHcUpYeNrRcJehpg==
 =Hi61
 -----END PGP SIGNATURE-----

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

This pull request contains Broadcom ARM64-based Device Tree changes for
6.6, please pull the following:

- Krzysztof adds missing spaces between node names/labels

* tag 'arm-soc/for-6.6/devicetree-arm64' of https://github.com/Broadcom/stblinux:
  arm64: dts: broadcom: add missing space before {

Link: https://lore.kernel.org/r/20230818164539.2871539-2-florian.fainelli@broadcom.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 22:07:57 -04:00
Hangbin Liu
be80942465 selftests: bonding: do not set port down before adding to bond
Before adding a port to bond, it need to be set down first. In the
lacpdu test the author set the port down specifically. But commit
a4abfa627c ("net: rtnetlink: Enslave device before bringing it up")
changed the operation order, the kernel will set the port down _after_
adding to bond. So all the ports will be down at last and the test failed.

In fact, the veth interfaces are already inactive when added. This
means there's no need to set them down again before adding to the bond.
Let's just remove the link down operation.

Fixes: a4abfa627c ("net: rtnetlink: Enslave device before bringing it up")
Reported-by: Zhengchao Shao <shaozhengchao@huawei.com>
Closes: https://lore.kernel.org/netdev/a0ef07c7-91b0-94bd-240d-944a330fcabd@huawei.com/
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://lore.kernel.org/r/20230817082459.1685972-1-liuhangbin@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-08-21 19:05:42 -07:00
GONG, Ruiqi
e332938e6f samples: ftrace: Replace bti assembly with hint for older compiler
When cross-building the arm64 kernel with allmodconfig using GCC 9.4,
the following error occurs on multiple files under samples/ftrace/:

/tmp/ccPC1ODs.s: Assembler messages:
/tmp/ccPC1ODs.s:8: Error: selected processor does not support `bti c'

Fix this issue by replacing `bti c` with `hint 34`, which is compatible
for the older compiler.

Link: https://lore.kernel.org/linux-trace-kernel/20230820111509.1470826-1-gongruiqi@huaweicloud.com

Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Florent Revest <revest@chromium.org>
Fixes: 8c3526fb86 ("arm64: ftrace: Add direct call trampoline samples support")
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: GONG, Ruiqi <gongruiqi1@huawei.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2023-08-21 22:03:58 -04:00
Arnd Bergmann
44762a0c82 This pull request contains Broadcom ARM-based Device Tree changes for
6.6, please pull the following:
 
 - Arinc adds support for the Asus RT-AC3100 router based upon the
   BCM47094 SoC
 
 - Krzysztof splits interrupt properties per cell such that they are mode
   readable and adds missing spaces in front of node names/labels
 
 - Rafal updates the BCM5301X DTS to correct PCIe, SPI over GPIO
   properties. He describes the Ethernet links to internal switch ports
   and then updates the BCM53573 binding and Ethernet properties by
   declaring the BCM53125 external switch on port 5, add Ethernet links
 and
   disables the second Ethernet MAC on Luxul devices.
 
 - Dan describes the Wi-Fi regulatory mappings for Luxul devices
 
 - Stanislav updates the bcm28155 DTS to use node labels
 
 - Linus adds SEAMA compatible properties to MTD partitions
 
 - Aleksey updates the Linksys EA6500 v2 to have the full 256MiB of DRAM
   available
 
 - Stefan updates a number of BCM283x nodes to confirm to DTS schema:
   pinctrl, DMA controllers and PWM cells.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmTdN44ACgkQh9CWnEQH
 BwQJ1w/8CZvX4GxA6avGC24VXYzOJ1jnahnp9Troi9XZ3E+yOIc8s/CXyOQJaEIk
 lAv0M7zc0UXubXmmH3ee8dHOunvs2KAPSin0JVDW/ybEZAAzPJCnz3lGT2Um2MEo
 hofiLXjcTGAIPHnyYif6K4U1UnABC+gXVCNgRZG2jkm9YUBkKWfs4drXzeagqm/k
 wrBuh2igB74zMhf+MihijqXSjJulVyuwUjT5d6siW7qSSw7HdRb0XrOqC2O9T9ou
 /qV2+EZSJuP0t6mB8nDOaMaLW8Xw1N9VsAXF0mY0BYwf9Om9rdqaUlGRs06Y3+VM
 INmp3kamh1Hcebr4U9PNt1I/VHQ7UQfAPJouslR9s/ZBdnCjVtzJ9gTmi3iZGlI7
 N7srjUuRrhfC0ClEX6OTKB6PEutw5MlptKUAQLRCp9o8b8jJASu7k/8WXi/y1P67
 JKbRri4/RdyxxPVSX922SeLj4iwoyibbiHrfs8xpzeqr99CoyXseVTqz+jf7jeE/
 vTv+isOPs+dbCxDmO7811Ky7jBnFjr6G7q7fV1DnsxroAiuzkDCmJGFzZ5kVzD54
 BfPPDyCRUTcJKLHENvJIS1mlXwviyIWpr2yEmvu0QKT0HptwGpBnWzfgT4lkJjDx
 zjGDn6RGKv4dDGqgt8ZZbINEvG4zjrPIE0zOyUU9DVJGWX5Arf0=
 =oQzu
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkFwcACgkQYKtH/8kJ
 Uif9SBAA42uEptTQi30DvBA2wlwm0B+usLO5sbbYNCBWg00q3THQHmdekiPjNIXH
 Vn948vXBtcfAOv73vmcv8j8JVsda8+qqM282FJymfS63BVwWWiDvVBoJS68Werxx
 w7GI8TLojiO3hkyrxQ48xeDLS1G8hEz8KHna7GVOXo9JEMzCpiEIhRAzSpYCpqmc
 y3OuCNsKmOvX7644SAj1v6S/ClRqJ79IluwPemSg8Z9R009chPr2c+wQUpFBUhX6
 CZqdShCuaA+qrFWMtKiBQ8WTZmBbnwJa7/IS1T51YCduuNH+4YxZzuWoYm0IfXp5
 /c4e3sZXuZD5M+cZo+l3u2/bPXyu7f8Nzw5Yioj288SbWP0K1m1j8VoytvWlJUxF
 AMiDc5wpAoCrfHoZTVcieVvYvWZW4y9RHFcmvJCgAEq+ID2J/C+D7tDfJEAr7RA0
 z7gy2Uy3xkXiubl4OIrSwfKD2QUUAqaw02GOywDPRK77xcpmmKDc9FHtZ6UnaxQn
 03i76CclUfdVTy6Az7HvJtuUZeB5JUGTVKyhSd829x80Ul3hy0vA1NNZKh7NN4nX
 PolybnJAHQXLTJswxPntrvu9NAJfBE3wQPk7nx/c+zQHPlDoNCIHpBFV4FqJTOmO
 W0DNY7qb0dmJdvkAJHfpm+jM0MELyoBwIsZq1TuFEr8lET6DeOI=
 =KAWz
 -----END PGP SIGNATURE-----

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

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

- Arinc adds support for the Asus RT-AC3100 router based upon the
  BCM47094 SoC

- Krzysztof splits interrupt properties per cell such that they are mode
  readable and adds missing spaces in front of node names/labels

- Rafal updates the BCM5301X DTS to correct PCIe, SPI over GPIO
  properties. He describes the Ethernet links to internal switch ports
  and then updates the BCM53573 binding and Ethernet properties by
  declaring the BCM53125 external switch on port 5, add Ethernet links
and
  disables the second Ethernet MAC on Luxul devices.

- Dan describes the Wi-Fi regulatory mappings for Luxul devices

- Stanislav updates the bcm28155 DTS to use node labels

- Linus adds SEAMA compatible properties to MTD partitions

- Aleksey updates the Linksys EA6500 v2 to have the full 256MiB of DRAM
  available

- Stefan updates a number of BCM283x nodes to confirm to DTS schema:
  pinctrl, DMA controllers and PWM cells.

* tag 'arm-soc/for-6.6/devicetree' of https://github.com/Broadcom/stblinux: (23 commits)
  ARM: dts: BCM5301X: Add DT for ASUS RT-AC3100
  dt-bindings: arm: bcm: add bindings for ASUS RT-AC3100
  ARM: dts: broadcom: split interrupts per cells
  ARM: dts: BCM53573: Disable second Ethernet on Luxul devices
  ARM: dts: BCM53573: Add Ethernet interfaces links
  ARM: dts: BCM53573: Add BCM53125 switch port 5
  ARM: dts: BCM53573: Describe BCM53125 switch ports in the main DTS
  ARM: dts: BCM53573: Fix Tenda AC9 switch CPU port
  ARM: dts: bcm28155-ap: use node labels
  ARM: dts: bcm5301x: Add SEAMA compatibles
  ARM: dts: BCM53573: Fix Ethernet info for Luxul devices
  ARM: dts: BCM5301X: Extend RAM to full 256MB for Linksys EA6500 V2
  dt-bindings: arm: bcm: add BCM53573 SoCs family binding
  ARM: dts: BCM53573: Use updated "spi-gpio" binding properties
  ARM: dts: BCM53573: Add cells sizes to PCIe node
  ARM: dts: BCM53573: Drop nonexistent #usb-cells
  ARM: dts: BCM53573: Drop nonexistent "default-off" LED trigger
  ARM: dts: BCM5301X: Add Ethernet interfaces links
  ARM: dts: BCM5301X: Add Wi-Fi regulatory mappings for Luxul devices
  ARM: dts: broadcom: add missing space before {
  ...

Link: https://lore.kernel.org/r/20230818164539.2871539-1-florian.fainelli@broadcom.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 22:01:43 -04:00
Arnd Bergmann
c708140e96 SoCFPGA DTS updates for v6.6
- Fix dtbs_check warnings for usbphy, sram, rstmgr, memory, partitions
 - Updated "stmmaceth-ocp" reset-names to "ahb" for stmmac ethernet
 - Add initial support for Agilex5
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEoHhMeiyk5VmwVMwNGZQEC4GjKPQFAmTg5+8ACgkQGZQEC4Gj
 KPRA7Q/8C6ugL9LlR5JEUruaAugaRnYL2BgotdwhMuCbU7d3oj+pFBzHR8PR/MCI
 CZXnLehpmwOkGz0K0QLey6nQuGZS18DK19DxJkL46hr69Rqpu8XHb2yPjiBtbh/o
 0ZwpxuRTKz1QbP9hprw/RIHSbZ/AWaI2O/90xicC0p1qWXmxSz0Kv6YOoQ61o/yO
 On91yS3R+75o1NoHD+FoKiPuwwTfaHc7TrS/UIshPKAuk6yo/Cd3Is5EdYL+5xEz
 kXDRkt2X3g7il/Jm9AOFJvA4Q1VLD9Ke4C9o9ePvj167GklaLnJ9JT8Qw7PGXaoE
 wolse2+bJA4a9acPbkYmYSSyyKtZnIgV5oTXFgeWQ0eo0qmoTNqgx6eMIOyRltxs
 3OTTvNyw9+ZOhW4YRv/lJWwDL3uMlKsMV/2JOSPua5V4kXrPi/A+HhIZGDll1Naf
 y+HYNoJiSrDAiNYwWglz4f4LR+xU3wc3cS4uLrAU+aCE+NHYAj/Jqn8/EC26NDbQ
 wVsPfQMQN9j0wCrMzZZf4LUEYM6C90ZeqUFqwB6mqctfAbT/fQyLdyKL8Gu/QrG0
 lhp2J4vb2UJ9eQ1zBoBtb6flcQegHP/ybmRM4Q5ep3LvVOHhilZT5mO8mj36q84g
 3Co2RqQ8oknTgmxTF93jguAW+JPtmfvwA66x+CetC0fSmSWN2HI=
 =OfJk
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkFA0ACgkQYKtH/8kJ
 UiejLBAAnafzyrMqZnO6nc6hvK/7ONSN2QZqaYoZ0Ho6fSvz5KxqVqPjUq4EshEZ
 HB9kZ42YvJQZYyi8Pvd/7BIQe3WvwLZ6tW4NALoiMsfpL127wzfwJlDj5yOiltLu
 aZtwhRvRV7jHKlh06wh8eax3vd4P3ozR5DUufcCJp59xI8MTS2UYI6enrIoA2h06
 uC0xWhuEvseHdzYQbC2hAZlZA1Z/7BBYCJO5iKq5cdW0zHpy0h7h2k3ba2M2BsZM
 JtaIIyrjjF70nmydNY9UfHt0iU3u5InbZ7GdJEc9kkGsbB4fLiSUdn8ScPXShXaY
 W4qhsLQ9DhyDlkb+xmzkt2FRH9gh98xe2Ej4CmZM/4X3Xc/g+kquGZ4kHllNHJK5
 AWodtDcrio3V7eCmiGerSBdvChr6pB31qVpuaCaiuCr+OpPZGdj/Z2c0qjCDo9h6
 Pn8sH8jVgye3AQ30NmSrpJz12tN/H86BeiW59eFeJ3jRXi8qx7oMyyuLVNDzo+sF
 6EkydHcSNrl0HF2gKQRSFMLvYfaYUZFBA/iSycrn24UjKc86DWd3aGbcofQSbJOV
 WeZAODlghXX9/R6yVKf4Vt/O6m3Lb2xreCilkIKJD5wpdQAu8hz7NXJAMtNJY1ed
 MKASPnHm1jP6Is/6acr5pDYFpbG3HOsyOxpzNQYRVHEFElMxQSk=
 =mFST
 -----END PGP SIGNATURE-----

Merge tag 'socfpga_dts_updates_for_v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into soc/dt

SoCFPGA DTS updates for v6.6
- Fix dtbs_check warnings for usbphy, sram, rstmgr, memory, partitions
- Updated "stmmaceth-ocp" reset-names to "ahb" for stmmac ethernet
- Add initial support for Agilex5

* tag 'socfpga_dts_updates_for_v6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
  arm64: dts: agilex5: add initial support for Intel Agilex5 SoCFPGA
  dt-bindings: clock: add Intel Agilex5 clock manager
  dt-bindings: reset: add reset IDs for Agilex5
  dt-bindings: intel: Add Intel Agilex5 compatible
  arm64: dts: socfpga: change the reset-name of "stmmaceth-ocp" to "ahb"
  arm64: dts: socfpga: n5x/stratix10: fix dtbs_check warning for partitions
  arm64: dts: agilex/stratix10: Updated QSPI Flash layout for UBIFS
  arm64: dts: agilex/stratix10/n5x: fix dtbs_check for rstmgr
  arm64: dts: stratix10/agilex/n5x: fix dtbs_check warning for memory node
  arm64: dts: socfpga: stratix10: fix dtbs_check warning for usbphy
  arm64: dts: socfpga: agilex/stratix10: fix dtbs_check warnings for sram

Link: https://lore.kernel.org/r/20230819161418.931258-1-dinguyen@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:49:00 -04:00
Arnd Bergmann
ecd2dc2f34 RISC-V Devicetrees for v6.6 Part 2
T-Head:
 Add a second minimal devicetree for the second board using the th1520
 SoC, the BeagleV Ahead. As with the Lichee Pi 4a, this is sufficient
 only for booting to a console, with work on the mmc, clocks and ethernet
 sides of things under way. A relicense to a dual licence for the
 existing devicetree files is also done, for good measure.
 RISC-V Devicetrees for v6.6-pt2
 
 StarFive:
 Fix the sort order of some nodes that I resolved incorrectly during a
 merge conflict.
 
 Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQRh246EGq/8RLhDjO14tDGHoIJi0gUCZOCDsgAKCRB4tDGHoIJi
 0mEDAQDc1z032ZsKJSE/WBV0R8hw47RZoP22xHCP3d38vDfP3wEAsF6Kc0U+t8TQ
 6CNGHUNpEkVJIdj/wOL8Zk0gV/GdLAA=
 =F146
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkE8sACgkQYKtH/8kJ
 Uido2A//aml2dM6R2eG3Nz5jX0xtAwE5xGix/pHW0eG4Z3c3YFsb6R0cnjO4DLjg
 MwPrfQl9M7ee2obKsUqOAnD7QgZnP9ewSCOrPqWFn2YKcmA2mZcby4u1qd1m2+Gc
 UZrvXqoI1ixK4gTxfcfBJI//8ui6AOHMtDvkWlRXCbcMCEruF5NCGNHkDPxve44z
 8R/PJUAXEkBUG7mEgnQKTuRgn/Gwgrn0cZKc7YNehAq0SAeihyiRqNNjD/+ftTrl
 xVrU1RLY/P6dxMP1l3wCxhhM7LPqWSzNflNgAu37A7PmzieYu/FExnW/NuQ3m9UA
 tzeMGUS4FWkvJKRVwYmzY+SpT4/9SgswUiRoJ6HKCxC63+TMLH6BBJ0HsTFnctq3
 mvjqx5kcqe9RVdrJBPSbYuH7xdbvWD2I+m7IQnuOvkwPghRuBf2q6HQ2L2ah7WlJ
 ZOcJ82/kUx/Cb5o0hDMvKVfU+ZUGoDPWKfqpqVfftgh5TTOoZpmMfMclwSG2zw3/
 PoXLE+dnYCBtynAYAbX/Z5YPIdV3WL5/TJEAVIgyFBKPcUsi0Hc841gkymur1lCr
 fd+scjRCON1zV3EILI/CDEwXToyVlPqMSznjj+nm3sV05tCUA1GQ8I/RsnwbFSsP
 /gNtPJ9fJRKtfTrU7lLdaaauk+aoRvRud3XQpwYmCfWLCDJ+ciQ=
 =3ypd
 -----END PGP SIGNATURE-----

Merge tag 'riscv-dt-for-v6.6-pt2' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux into soc/dt

RISC-V Devicetrees for v6.6 Part 2

T-Head:
Add a second minimal devicetree for the second board using the th1520
SoC, the BeagleV Ahead. As with the Lichee Pi 4a, this is sufficient
only for booting to a console, with work on the mmc, clocks and ethernet
sides of things under way. A relicense to a dual licence for the
existing devicetree files is also done, for good measure.
RISC-V Devicetrees for v6.6-pt2

StarFive:
Fix the sort order of some nodes that I resolved incorrectly during a
merge conflict.

Signed-off-by: Conor Dooley <conor.dooley@microchip.com>

* tag 'riscv-dt-for-v6.6-pt2' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux:
  riscv: dts: change TH1520 files to dual license
  riscv: dts: thead: add BeagleV Ahead board device tree
  dt-bindings: riscv: Add BeagleV Ahead board compatibles
  riscv: dts: starfive: fix jh7110 qspi sort order

Link: https://lore.kernel.org/r/20230819-unwieldy-railing-9bba2b176aa7@spud
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:47:55 -04:00
Arnd Bergmann
6522fbd48a Qualcomm ARM64 DeviceTree updates for v6.6
Initial support for the SM4450 platform and the QRD device thereon is
 added.
 
 The IPQ5018 platform is introduced, and the RDP432-C2 board thereon.
 
 A shared definition of the IPQ5332 RDP is introduced, as is GPIO-based
 LEDs and buttons.
 
 On the IPQ9574 RDP433 USB, CPU cooling maps and regulators are added.
 
 On MSM8916, the D3 camera mezzanine is improved and refactored out to
 its own dts. The Samsung Galaxy S4 Mini gains support for its PMIC with
 charger, while Samsung Galaxy J5 and E5 gains touchscreen support.
 
 A few fixes for MSM8939 are introduced, and initial support for Samsung
 Galaxy A7 is add.
 
 Support for scaling the cache bus fabric is introduced on MSM8996. A
 missing interrupt for the USB2 controller is added. The touchscreen vio
 supply on Xiaomi Mi 5 is corrected, and a few other cleanups are
 introduces across other devices.
 
 The display controller is introduced for MSM8998, a few clock fixes are
 introduced and missing power domains are added for the multimedia
 subsystem iommu.
 
 Reserved memory-regions and reserved GPIO lists are updated for the
 QDU/QRU1000 IDPs.
 
 USB3 PHY is added to the QCM2290, the RB1 gains regulators and GPU is
 enabled for the RB2.
 
 PCIe and Ethernet support is introduced on SA8775P, and enabled for the
 Ride board.
 
 On SC7180 the PSCI integration is refactored, to allow supporting
 devices with the Qualcomm firmware. BWMON is introduced, alongside the
 CPUfreq-based bus voting.
 
 A number of fixes are added for SC8180X, on the Primus and Lenovo Flex
 5G devices pmic_glink is introduced and wired up, to provide support for
 external display.
 
 Missing SCM interconnect is added to SC8280XP, and the PDC is marked as
 wakeup-parent of TLMM. On the CRD the gpio for vreg_misc_3p3 is
 corrected and a few regulators are renamed to align with schematics. The
 Lenovo Thinkpad X13s gains camera activity LED and a set of previously
 reserved GPIOs are released. The SA8540P Ride platform gains RTC
 support.
 
 For SDM670 CPU and L3 frequency scaling is added, the PDC is introduced
 and wired up as wakeup-parent of the TLMM.
 
 On SDM845 the UFS controller gains interconnect path description,
 power-domain information is added to GCC and minimum frequency of the
 UFS ICE is corrected. On RB3 continuous splash memory region is
 described, and the camera subsystem is enabled. On the Lenovo Yoga C630
 a missing power supply for the display panel is added, and the debug
 UART is introduced.
 
 SDX75 RPMh power-domains and SPMI controller are introduces, the PMX75
 PMIC is described and added to the IDP.
 
 GPU description is added to SM6115, and together with display enabled on
 the Lenovo Tab P11.
 
 On SM635 BWMON is introduced for LLCC and DDR scaling. Display and GPU
 is added, and the PDC is registered as wakeup-parent of TLMM.
 
 L3 cache scaling is introduced on SM6375.
 
 The DSI PHY compatible and an interrupt for I2C7 are corrected for
 SM8150, on the Sony Xperia 1 and 5 the ramoops pmsg size is corrected.
 
 On SM8250 BWMONs are introduced for DDR and LLCC scaling, the UFS node
 gains interconnect paths, SMMU is marked as DMA coherent and dynamic
 power coefficients are updated. On Sony Xperia 1 II and 5 II GPIO line
 names are updated.
 
 On SM8350 missing cluster sleep states and LMH interrupts are added,
 the CPU compatibles are corrected and APR and LPASS pinctrl support is
 introduced. The HDK gains uSD card support and PMK8350 is added.
 
 For SM8450 support for RNG and RPMh stats are added, the ICE handling is
 extracted from the UFS node and the display subsystem gains a missing
 interconnect path. Thermal description is improved for the HDK.
 
 On SM8550 MTP and QRD the pmic_glink is introduced, to provide
 DisplayPort output. A missing regulator supply is also added.
 
 A few platforms that happens to share the RPMH power-domain resource
 identifier constants are migrated to new generic defines. ADC channel
 names are generalized on various PMICs.
 
 A variety of devices gain chassis-type, and the GIC_SPI constant is
 replacing the 0 across a few different platforms.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmTgOtYVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3Fr20P/jDKWelSMYqeVFfa49XGXyvRwWmf
 TaSb8IlD9cqQ3ScFYwmJGf2gVqt7zBfGU2EoxkMbpFeGjyZZYpw86Y3fvU1A5oxy
 TQ++kBQAvuSGEUqdGE7Xv6lIUmKPyVmcayRpI6IgGI5iaU1y5bI6xmh3bjhL//NQ
 mcsH11SLPPvDyZ608Etvw1rNtPImSI8nOucaBSlmnkxT1NuzIjPhNG+rNwgBSBHU
 O8sKi80hYrVw78sR3sXH+cBCCMhkFg377maCo9ZE14TFdAT3Ggn2uXX01PXCvn1z
 cO/wFAZ5vOe4KU1+maWkvOsEOCqjghdFUoVK7e9xtMpeuhoXjAuFf1L26d02mOK3
 I48/apsj8ak/kmC89eo1RrOWniytI+YGPZwd5wYIOh0Q2oS8+IpC0nZhm9V86IIU
 DoWxbdf0TZ++e3D232AftFqKutbL9utJanq9l34zmI50F7QK4BSbBRKT81pRTrml
 y4tR7bukrGYKVRq3Kpf5vyWwPEpYIfZ7o9k6J56IcaLoaMvctW/vcnf8R0Qr5gJb
 3vHUEBsozERKd2NcFw9g1Ay86DbAxC+3wyfHHMWgolA7fYCNVSXN6R6hKXb6d503
 6ORnP4U6NjxpibIXC3jj+zmvbUM/GhSgrw3yErPb83n9P9pJ5Aw2+6J+Xmt75U5z
 9hyHUWkbhyNQqBVA
 =uK0C
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkEYEACgkQYKtH/8kJ
 Uie31xAAvhedx3cixHT570K/qxw8tTM06btXNhEek+/oMiW5eCcGKCRW5ixcpPog
 9sLGI4xt5aMVdJshIYWovCDpCQWCoSYiqFx9N2/2zF+DrXYjeKNCpU6oVcPh1MG7
 Xm5Fy2s99BipT6z6ha5kqeirdgjH+po8Jtkw54AfROzJa2oTD6GBvsPtxxW3CYgJ
 lDoHTvU59gwl1Dk60FIkc2slyA57VqqRuVLAmurgO2nGOFU9FODb/lNuMIh8AeKt
 +scXrEVozQPDeefSCbKTqROBvIuYyMbXmFHLW+VmM9EgXnOcV2IEVOSZCiMYi9Ic
 RWpfOHVAn9xM/zFhHh23onJPUrISwcJv05A1PU92WFNWh7uoly67KD712gPStwmd
 /rKI25DPk3Z7nc7LwzO5VqovOpU9Q0t+/NDOLiRn1A8/hljqVMhq8eTo9AY9sBJN
 EW5AZw1KUzrXH+9RQsNKDAJckpfgDaI8sB+ueXOZMHHhhKaugMILp/PgpN6isQZu
 G7ZkJadpQBliJ3pvsHpK6JlXcJoB4TafIx7pJPDCHbAFOnMhCmEUPW7TX36n0uQ3
 4d/ghMENBmDWkmZGlFLtl7SfKNmuT/HQhcG75QZxqPiw/uhRGepNaswqtkpMMeFD
 Vl+spE5wosXSG8Ra2W/UJfNfEKYL1TKevPwJXZWmT9WUehMSG+U=
 =zUL1
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-for-6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt

Qualcomm ARM64 DeviceTree updates for v6.6

Initial support for the SM4450 platform and the QRD device thereon is
added.

The IPQ5018 platform is introduced, and the RDP432-C2 board thereon.

A shared definition of the IPQ5332 RDP is introduced, as is GPIO-based
LEDs and buttons.

On the IPQ9574 RDP433 USB, CPU cooling maps and regulators are added.

On MSM8916, the D3 camera mezzanine is improved and refactored out to
its own dts. The Samsung Galaxy S4 Mini gains support for its PMIC with
charger, while Samsung Galaxy J5 and E5 gains touchscreen support.

A few fixes for MSM8939 are introduced, and initial support for Samsung
Galaxy A7 is add.

Support for scaling the cache bus fabric is introduced on MSM8996. A
missing interrupt for the USB2 controller is added. The touchscreen vio
supply on Xiaomi Mi 5 is corrected, and a few other cleanups are
introduces across other devices.

The display controller is introduced for MSM8998, a few clock fixes are
introduced and missing power domains are added for the multimedia
subsystem iommu.

Reserved memory-regions and reserved GPIO lists are updated for the
QDU/QRU1000 IDPs.

USB3 PHY is added to the QCM2290, the RB1 gains regulators and GPU is
enabled for the RB2.

PCIe and Ethernet support is introduced on SA8775P, and enabled for the
Ride board.

On SC7180 the PSCI integration is refactored, to allow supporting
devices with the Qualcomm firmware. BWMON is introduced, alongside the
CPUfreq-based bus voting.

A number of fixes are added for SC8180X, on the Primus and Lenovo Flex
5G devices pmic_glink is introduced and wired up, to provide support for
external display.

Missing SCM interconnect is added to SC8280XP, and the PDC is marked as
wakeup-parent of TLMM. On the CRD the gpio for vreg_misc_3p3 is
corrected and a few regulators are renamed to align with schematics. The
Lenovo Thinkpad X13s gains camera activity LED and a set of previously
reserved GPIOs are released. The SA8540P Ride platform gains RTC
support.

For SDM670 CPU and L3 frequency scaling is added, the PDC is introduced
and wired up as wakeup-parent of the TLMM.

On SDM845 the UFS controller gains interconnect path description,
power-domain information is added to GCC and minimum frequency of the
UFS ICE is corrected. On RB3 continuous splash memory region is
described, and the camera subsystem is enabled. On the Lenovo Yoga C630
a missing power supply for the display panel is added, and the debug
UART is introduced.

SDX75 RPMh power-domains and SPMI controller are introduces, the PMX75
PMIC is described and added to the IDP.

GPU description is added to SM6115, and together with display enabled on
the Lenovo Tab P11.

On SM635 BWMON is introduced for LLCC and DDR scaling. Display and GPU
is added, and the PDC is registered as wakeup-parent of TLMM.

L3 cache scaling is introduced on SM6375.

The DSI PHY compatible and an interrupt for I2C7 are corrected for
SM8150, on the Sony Xperia 1 and 5 the ramoops pmsg size is corrected.

On SM8250 BWMONs are introduced for DDR and LLCC scaling, the UFS node
gains interconnect paths, SMMU is marked as DMA coherent and dynamic
power coefficients are updated. On Sony Xperia 1 II and 5 II GPIO line
names are updated.

On SM8350 missing cluster sleep states and LMH interrupts are added,
the CPU compatibles are corrected and APR and LPASS pinctrl support is
introduced. The HDK gains uSD card support and PMK8350 is added.

For SM8450 support for RNG and RPMh stats are added, the ICE handling is
extracted from the UFS node and the display subsystem gains a missing
interconnect path. Thermal description is improved for the HDK.

On SM8550 MTP and QRD the pmic_glink is introduced, to provide
DisplayPort output. A missing regulator supply is also added.

A few platforms that happens to share the RPMH power-domain resource
identifier constants are migrated to new generic defines. ADC channel
names are generalized on various PMICs.

A variety of devices gain chassis-type, and the GIC_SPI constant is
replacing the 0 across a few different platforms.

* tag 'qcom-arm64-for-6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (215 commits)
  arm64: dts: qcom: sdm845-db845c: Mark cont splash memory region as reserved
  arm64: dts: qcom: sm6350: Hook up PDC as wakeup-parent of TLMM
  arm64: dts: qcom: sdm670: Hook up PDC as wakeup-parent of TLMM
  arm64: dts: qcom: sa8775p: Hook up PDC as wakeup-parent of TLMM
  arm64: dts: qcom: sc8280xp: Hook up PDC as wakeup-parent of TLMM
  arm64: dts: qcom: sdm670: Add PDC
  arm64: dts: qcom: msm8916-samsung-e5: Add touchscreen
  arm64: dts: qcom: sc7180: Split up TF-A related PSCI configuration
  arm64: dts: qcom: sc8280xp-x13s: Add camera activity LED
  arm64: dts: qcom: sc8280xp-x13s: Unreserve NC pins
  arm64: dts: qcom: msm8998: Add DPU1 nodes
  arm64: dts: qcom: msm8996: Fix dsi1 interrupts
  arm64: dts: qcom: sdx75-idp: Add regulator nodes
  arm64: dts: qcom: sdx75: Add rpmhpd node
  arm64: dts: qcom: sdx75-idp: Add pmics supported in SDX75
  arm64: dts: qcom: Add pmx75 PMIC dtsi
  arm64: dts: qcom: Add pm7550ba PMIC dtsi
  arm64: dts: qcom: Add pinctrl gpio support for pm7250b
  arm64: dts: qcom: sdx75: Add spmi node
  arm64: dts: qcom: msm8998: Add missing power domain to MMSS SMMU
  ...

Link: https://lore.kernel.org/r/20230819034551.2537866-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:38:09 -04:00
Arnd Bergmann
3b6d013cd0 Qualcomm ARM32 DeviceTree updates for v6.6
GCC and LCC clock controller parent clocks are introduced on MDM9615.
 
 The newly introduced RPM representation is introduced across multiple
 platforms.
 
 Voltage ADC channel names are corrected across multiple platforms.
 
 APQ8064 gains a definition for GSBI4.
 
 The XO clock for SDHCI is corrected, as is the USB node name, on
 IPQ4019. USB node name is also corrected for SDX55.
 
 The correct PMIC is included on SDX65 MTP.
 
 The incorrect spi-max-frequency property is removed from controllers on
 IPQ8064 and MSM8960.
 
 OCMEM and the display subsystem are added to MSM8226.
 
 Reset line is added to the PM8941 and the APQ8074 Dragonboard, while a
 few properties of the Sony Xperia Z2 Tablet touchscreen are corrected.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmTe3BoVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3F5EYP/28mGUDkCDNV+b9Hbu5OodcA1ODm
 gzwj101TWeIRN/i3xQsNP5xvbg+93j7T0Qp5kgXda2F0v2/THM+/NI2A/KpMLl8k
 lMz9f9PK3w4aXrtzRekHGiVp29ibkluqD659eCTd4AwLXy02vDkdUqm8ESteWFwd
 bl6bmdEmZCvAHiWCHUaydF32hLUUwsuU21/P52LYgYeOg84tf4gRh8Y8DNwcUPvs
 J7lsEmwhHesdWplLOB1d0KJfaNQsbsxT3cUYNXPF8ypVoDKGhccPkWdD2wlKVSAw
 ROSJntqXsnfAgHzg9E01V+Ibyb1AFo0dk6TlSgxoN9oY+PD0ngYtgKOkAyKo29sR
 qIQ/XlgBRI/br9QsmCNCIAMILyZDc31BsI4/TzsGpnjDKzVeMLkEDOJpHlepjXg+
 GAUOiFQjwGsXqaLSrLDfwJghJCS2z01zClZvZA+F/GRIgf6nK5rpqwP8gU9LIhgz
 exrM3SJdynG7Pk5XVd5Z5kpU5ylcMj3UQpScsY7R7BN9FlAdj5PNEgbNheiYDYqv
 k0A1NTZ32bWebSWFIo48+MBTykk2Vvq/RwnT61M8mDnTApMW+qgDlhHkYjoCiJtL
 6Sfqqx/bsZ5SG8iFmIOQ2MVgIf+plguo+Vgw9LnpmbpJW7jUqT1ToqWCfk8WCgHN
 WjebHkq4Hn+K6iNW
 =uBzp
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkERwACgkQYKtH/8kJ
 Uic+LRAAppiZeEIMyI3oSpgVZktP8EAAqsgKA3XqEkRFdWvShCZTrVN6yhiV2F8K
 JsqKIU50kkBDS5qjkSVlaiP1tXyn+JMTukG76pBCkdglfIeLY4MiYglHD7w1fwn2
 3fduLmkD3aK3q1XkRYWQ70AgK2ES9yYzyWR3r3KpOwvz38lJ59cA/2OfO/9WXJnI
 i2vhzwtPIMsgCm1aujZHBYykNpWCjJUlsFeJTeMk4t1oRT5kt5TkL0JYyVEl563X
 yhF3zDgwbvxOoYtvQHFBmIMdWSpVgw966YmR7dMDp6c+D+X9H3COXhnIaF80HHmc
 LUMIZHRVw5zrXm4f/PTyxlYN8Ma1BoqVYtf38GnHQ+95TLmFbfOg5tnuk0uMgq3O
 hddN7ovAGiWWbMHFD7k+25P9suvqgumB4SMStlZx3KZFuG6fO1OVsQVwaHvz2oWx
 XndLZKi62Yisclq3VnGEva8iCvBnMb59PiCVh2vTNFUizETZt62n9k4sNPt0xDPZ
 IeObqYb1PxmLmbz9o41A2pulUIHRk9Yp5vt1fQFiTWSk0vVMeTicyhWIf3rCjUNy
 hiPQl7SNZhxIsX5rV+yKNFQN4JHiwGyeIXSstO2BjgmZoPbSZbw0s8tr0bZoVp6T
 ap5tgRgp0gCTBJAxCb+dzQrY2Ahuy5+AJ1GLABhzZsp3Qx3mquk=
 =38r2
 -----END PGP SIGNATURE-----

Merge tag 'qcom-dts-for-6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt

Qualcomm ARM32 DeviceTree updates for v6.6

GCC and LCC clock controller parent clocks are introduced on MDM9615.

The newly introduced RPM representation is introduced across multiple
platforms.

Voltage ADC channel names are corrected across multiple platforms.

APQ8064 gains a definition for GSBI4.

The XO clock for SDHCI is corrected, as is the USB node name, on
IPQ4019. USB node name is also corrected for SDX55.

The correct PMIC is included on SDX65 MTP.

The incorrect spi-max-frequency property is removed from controllers on
IPQ8064 and MSM8960.

OCMEM and the display subsystem are added to MSM8226.

Reset line is added to the PM8941 and the APQ8074 Dragonboard, while a
few properties of the Sony Xperia Z2 Tablet touchscreen are corrected.

* tag 'qcom-dts-for-6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  ARM: dts: qcom: apq8064: add support to gsbi4 uart
  ARM: dts: qcom: sdx65-mtp: Update the pmic used in sdx65
  ARM: dts: qcom: ipq4019: correct SDHCI XO clock
  ARM: dts: qcom: Use labels with generic node names for ADC channels
  ARM: dts: qcom-mdm9615: specify gcc clocks
  ARM: dts: qcom-mdm9615: specify clocks for the lcc device
  ARM: dts: qcom: msm8974pro-castor: correct touchscreen syna,nosleep-mode
  ARM: dts: qcom: msm8974pro-castor: correct touchscreen function names
  ARM: dts: qcom: msm8974pro-castor: correct inverted X of touchscreen
  ARM: dts: qcom: apq8064: Drop redundant /smd node
  ARM: dts: qcom: Add rpm-proc node for SMD platforms
  ARM: dts: qcom: apq8074-dragonboard: add resin
  ARM: dts: qcom-pm8941: add resin support
  ARM: dts: qcom: minor whitespace cleanup around '='
  ARM: dts: qcom: msm8960: drop spi-max-frequency from controller
  ARM: dts: qcom: ipq8064: drop spi-max-frequency from controller
  ARM: dts: qcom: sdx55: use generic node names for USB
  ARM: dts: qcom: ipq4019: use generic node names for USB
  ARM: dts: qcom: msm8226: Add ocmem
  ARM: dts: qcom: msm8226: Add mdss nodes

Link: https://lore.kernel.org/r/20230818024928.2485173-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:36:28 -04:00
Arnd Bergmann
59486969f4 Basic graphics support for rv1126, some more new peripherals for it as well
and some improvements for the edgeble-neu2 board based on this soc.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmTdQ7IQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgcRZCACtZP2dByueGP0I1NA607XfCTXTDsdq1hjM
 We/+nIMGLXjaG+SWuVvCcvXyE6MW7cg0UIquNCowhCzyKjhAhNXGjkCskAekAx3c
 XIuW6VkZ7Qmfp1OWKqiI34xx5NOUNVZl3llAe8wZFjZZd+fVjv5Ao11p5IRDNzOt
 iFCO4SSU9KqeZYFF04VQFZb35p0WSaCWdY4iDPGRqvD/lMtlrL+3lx09uZ0B+yUz
 pVErjD0MWO/pmfN9JCwFlWg7TISfxl5nOqT+PKsp1WshUkema21+in18Uh0An1l9
 eYE+bvdwliw6rqBu2587vo3OpU/VygArEPBroaBwboHdpBKCbzHS
 =VMKL
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkEGMACgkQYKtH/8kJ
 UiejtQ/+LZzxmRuuRTqdO1hXpuK5rSkJsdS3j+YYuqVRDo1mp+2bBxERsVK4JU2g
 zLbw4LtcfKL0RU3TdEm2p6G2MiU2IV2Aqo/bIyJLSMe92N1jM86Fj9N3NG9uRkHd
 jLxxcvWsBeHTQA1goGSGeXK8iZ9wE08C+K1OC3FLyS5TzD+lnWnVadeGY3wOKTG3
 CkX/Zu3q7n7Qk2jlduoG4ac7iJPM1Jj76LX2H/7Rkwg+ckIMWwK5nuvX74lDHqMK
 SvjvM6V3a6j9PTb1ihckVA/3BHZ93Wd7jj4pWysm63uCpIMPFTqoy/3nHI/oeIMy
 7ryfAS+Zdra9FUPuY51tbF7ulpFZ3OUh0b59/QYW1T6AXoWqsHkgPShv/6tYYqI7
 aJxvIqoCffrTEYhjkt8ZyP6H5Nx+bq4xSf3MSGwgynoMJtaGgsd2It83q8cuQOM8
 DV6Oq2DVOKl84D288I7evD9aB9V2cKFikGp1h387hIsMpSusMdDKNRAnnGhP3sTW
 jRgVohL6Lh8Jb264C8Ss7B9Jq0nsENSutprqhAnh0XknfV3XKUwjo03gS/YukpWs
 jCz8hhGp3XBxdOhJbfVwLxbK958J8el1Omu909fOInN23TeWNmLzBVhj+W+Hn3Vk
 XXo9LNs+3IiQbBhDZT9qU2lvXrteFi+BKpZHPhRy3uP8UCyGqxo=
 =1u7+
 -----END PGP SIGNATURE-----

Merge tag 'v6.6-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt

Basic graphics support for rv1126, some more new peripherals for it as well
and some improvements for the edgeble-neu2 board based on this soc.

* tag 'v6.6-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: Add rv1126 VOP_LITE support
  ARM: dts: rockchip: Add rv1126 PD_VO entry
  ARM: dts: rockchip: Add 12V main supply for edgeble-neu2
  ARM: dts: rockchip: Add 3V3_SYS regulator for edgeble-neu2
  ARM: dts: rockchip: Enable SFC for edgeble-neu2
  ARM: dts: rockchip: Drop EMMC_RSTN for edgeble-neu2
  ARM: dts: rockchip: Add rv1126 uart5m2_xfer pins
  ARM: dts: rockchip: Add rv1126 FSPI pins
  ARM: dts: rockchip: Add SFC node to rv1126

Link: https://lore.kernel.org/r/6299163.hdfAi7Kttb@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:33:22 -04:00
Arnd Bergmann
b89c940f2a New boards are the NanoPC T6, Firefly Station P2, Radxa Rock 4SE.
Many new peripherals for the still only basic supported rk3588 soc
 (PCIe2, PCIe3, USB2, SATA, Combo-Phys).
 
 Improvements to the Rock-5a development board based on this soc (saradc,
 i2c on dsi and csi, fan, eeprom, analog audio, leds, sd-card,
 some regulators, pmic).
 
 Improvements for the edgeble-neu6b (rs485, rs232, pwm-fan, rtc, sata,
 sata, sd-card, pmic)
 
 RK3399 got the PCIe endpoint node when used as a PCIe-client.
 
 And some minor changes for some boards: spi-flash for RockPi 4,
 SATA and fixed PCIe regulators for Radxa E25 and using enable-gpios
 on engicam and gru boards.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmTdRnwQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgcffB/4sR8h7IBNMN/0yUyn1ALlAZWt6K9mNQbIq
 0mRMJHllMeefLL952Gsnpw3uj6mz/GKIa0H0g88giWMJOOknH/zIKyYE/9Li0WwO
 KFoF2KA76JQlN+Dv7qHfhv38Q996/AI6Bc1dGcU1x611/jZlbZojXqnBKvT4RyFJ
 rbRvD6nF8LeW6yQP1u+4wA2UnHonYJstU6bEbAf1KXofQIzcspDBzKHuQtza152F
 3YVR5+yCIG4zFVSksvX5+DkJvvYYP/dkLftrh69dgYNHDcXonHYLNkR9E05kWL+/
 xhH58h20b/tBonJoh2ZSNKdZSvv2w8BdCQP/SGn54YQ+8nclsnFI
 =g1qK
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkEAAACgkQYKtH/8kJ
 UifOyw/+MnuyOqhjWQrDUsxsxULVsBUn71RsYXz9jPcrZSkeD4RgyqxIlBtJkMxf
 xBclgRHMVr6AAnz8UNjpdSSlJFH9Kr6inoNwdpWZB9UqEfZIQb5RJnDkvgyR1CA5
 BmE0Xt6usuPsDEsgvUXQVdbmQIKB7H3ZxW9Jx+gTbPcR0Ktm5EIZ0tI6B6Hq2i42
 if+Bw9JrKCucsb8NAuyClslXRXHKxOZLEVuatlOpUf+tMaDF1vAmWhtc7QMQ8OWV
 Io7OVCQIiFo8+b8gHg6qWx5zqrjVUY55VpP/R5+5tj+vYU/+bLbmUAMbGDNi8utM
 WbGoXCZBBX9SBQFSQ5mp5sDwXFZR13nN4vqwkGEBdHWIeZDBvVf+og/V4KTxhpQB
 muQLS4OizirbOZV0mU1t/Ds5ZlrllKA3jI5fDM6HIL/tspEIxHqLgJd3Z5Og9Rn5
 mzIgP+gjqc7Pl1g5KGmyu8Y5btEj/WSKNY4CBOPDCTW1TCshgP26pecp8cV+bKhe
 e1z7hqXL2romDinDeBVJFrNQhX2Ki/xoh6DwE7Tkf9o00aNftIBbHqeXYaJmK4Z+
 jpA6ycOY4LHBfrT7Y1XWLVGPYHq/2yaYZmdWuSHmNIGVgXJEVtv0q35KPabFGQSq
 XkleG8IPC3XCX5OZ9xVfVwUmVVhRW9f5X9VEM4leICY1xJ0tFoY=
 =XITG
 -----END PGP SIGNATURE-----

Merge tag 'v6.6-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt

New boards are the NanoPC T6, Firefly Station P2, Radxa Rock 4SE.

Many new peripherals for the still only basic supported rk3588 soc
(PCIe2, PCIe3, USB2, SATA, Combo-Phys).

Improvements to the Rock-5a development board based on this soc (saradc,
i2c on dsi and csi, fan, eeprom, analog audio, leds, sd-card,
some regulators, pmic).

Improvements for the edgeble-neu6b (rs485, rs232, pwm-fan, rtc, sata,
sata, sd-card, pmic)

RK3399 got the PCIe endpoint node when used as a PCIe-client.

And some minor changes for some boards: spi-flash for RockPi 4,
SATA and fixed PCIe regulators for Radxa E25 and using enable-gpios
on engicam and gru boards.

* tag 'v6.6-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (46 commits)
  arm64: dts: rockchip: Add NanoPC T6 PCIe Ethernet support
  arm64: dts: rockchip: add rk3588 PCIe2 support
  arm64: dts: rockchip: Enable internal SPI flash for ROCK Pi 4A/B/C
  arm64: dts: rockchip: Add NanoPC T6
  dt-bindings: arm: rockchip: Add NanoPC T6
  arm64: dts: rockchip: Enable SATA on Radxa E25
  arm64: dts: rockchip: Fix PCIe regulators on Radxa E25
  arm64: dts: rockchip: switch px30-engicam to enable-gpios
  arm64: dts: rockchip: switch rk3399-gru boards to enable-gpios
  arm64: dts: rockchip: add PCIe3 support for rk3588
  arm64: dts: rockchip: fix/update sdmmc properties for rock-5a and -5b
  arm64: dts: rockchip: add USB2 to rk3588s-rock5a
  arm64: dts: rockchip: add USB2 to rk3588-rock5b
  arm64: dts: rockchip: add USB2 to rk3588-evb1
  arm64: dts: rockchip: add USB2 support for rk3588
  arm64: dts: rockchip: Enable RS485 for edgeble-neu6b
  arm64: dts: rockchip: Enable RS232 for edgeble-neu6b
  arm64: dts: rockchip: Enable PWM FAN for edgeble-neu6b
  arm64: dts: rockchip: Enable RTC for edgeble-neu6b
  arm64: dts: rockchip: Enable SATA for edgeble-neu6b
  ...

Link: https://lore.kernel.org/r/7414564.rnE6jSC6OK@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:31:44 -04:00
Arnd Bergmann
aa2951a8fa STM32 DT for v6.6, round 1
Highlights:
 ----------
 
 - MCU:
   - Add CAN support on stm32f746.
   - Add touchscreen support (edt-ft5306) on stm32f746-disco.
   - Add support to Rocktech RK043FN48H display on stm32f746-disco
     board.
   - Add gpio-ranges for stm32f7 to fix boot issue.
 
 - MPU:
   - STM32MP13:
     - Remove shmem for scmi-optee to match with OP-TEE configuration.
     - Enable OP-TEE asynchronous notification by using PPI#15.
     - Expose and use SCMI regulators on stm32mp135f-dk.
 
   - STMP32MP15:
     - Remove shmem for scmi-optee to match with OPTEE configuration
     - Deduplicate DSI node to fix  #address-cells/#size-cells issue on
       boards using it.
 
   - ST:
     - Fix dts check warnings on stm32mp15-scmi boards.
 
   - DH:
     - Add missing detach mailbox for DHCOM and DHCOR SoM.
 
   - Odyssey:
     - Add missing detach mailbox for Odyssey SoM.
 
   - OCTAVO:
     - Add Linux Automation Test Automation Controller (LXA TAC) based
       on Octavo Systems OSD32MP15x SiP. It contains: eMMC,
       DSA-capable ETH switch (2 ports), dual CAN...
       It adds two boards support: lxa-tac-gen1 and lxa-tac-gen2 based
       on STM32MP157.
 
   - PROTONIC:
     - Add Power over Data Line (PoDL) Power Source Equipment (PSE)
       regulator nodes on PRTT1C board. It allows power delivery and
       data transmission over a single twisted pair.
 -----BEGIN PGP SIGNATURE-----
 
 iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAmTcvuwdHGFsZXhhbmRy
 ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIX3PBAArwKHu/t6Usb2odz2
 D0oWgN4sxsfBa65L5+VnPg590Abzt0qhzFDwnNo53vyxzl1LRAYDqowrQyaKi38o
 5T8I+AKRtOtRd1tPBNt8/VooVWShLOI9FhtLyACv1YHaqRfhd3EG4rujIEiCfkS+
 K9kBvEJO/WWbQmxU2s4kZxP61itiOyiLmv8wMcUecW6mL3fGwuTh2QND2hdYLHU9
 bjmDBHEovyOLMa5A7Lzuu3ALDX4h1GdMdVEnr7HNM5bunzGV5Ao4e8mVkszFlheB
 8JBCodKXxzBVWkZAF6vPq0ne8rcPpgdjdZgSinWNE8CrTXZDuOXADrvtiCPcavJP
 Mq0NaOyDxglaCQlk4D3yv1iia82KXubMKtZ3QgE8yQzidCAFU1XlNyTywIr+aFBI
 ggIlcXxyRWjsqBwTYo6PRo6fSKin3toUjSdMnTLAp3Eha0JqD/QCKaVXfuzeV2WV
 gbEH5BDAtBnj7EW9zWoTGyqOLwwPBr2kBHca2ZykPK61/Gyn8gi8nW1QsW4ZpUVA
 DMH2ljRIZOvkCdndwCOfkHS07rNDgyDi7e1UhAL17sCVp+kl0hJ+apcDRZp16csc
 8/8Dk+dn8TVmb10e/DTDtUey65yyqJ5/uGyxM3ABJI0ZghKqEifU+oMhTzkMuZJW
 I6tXAwAwgA53t4qdEvOqZ6I6uxE=
 =oGBN
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkDoMACgkQYKtH/8kJ
 UifXZxAAsKv/CVDDEvDvKxdnwRlsf0OzMV2RkgRwo0h0bzyMx5B57UaR7lUg/e/Y
 nDK/rNvTr4L+ABJZh/1DkNE6pI406vK1BUwD2KPbbYAqcSzT3u3EztEsPmG7AvBJ
 T2mkaa8d1SVHcjmRLhPt/wVOf7otpKsrOgYMPvaErAA42yvdcJrAndtUFITwW3QQ
 6X89pudY1kDw56d8yTaP6U3BcDHFYxr8ZA9iy+Ll+qUk9UfNe/5HP3xh/mbC/SA/
 NpEB9Dl14gwDEkhV56Y02nSIQxvf+UqJ6c/HZgb/472SYxKCQsQluDe0UWoPi09L
 9NKTVQEsB76HXgNsYo+PhyT0tfzduClVil6FCzMdr+VyV131mJQ4K82KO3NW7MIh
 bQsywD3VBB96dq+IDBj+xXFzwZS6QcvOICQnCwd+e9NnDmHzfTbU8KdELChbHbbg
 Cpy6NjQPV3YSF1bXlXGo0Pa2dy4XCuPKe7/eOabcVr7te6Qdo5PcAaAtfTaWwz0D
 7sX8WHVNzvqpf4yCkpuwTh875Svsu/5xlxv8yZJ1lIFlA0K5n8UhHjgXS8YnehCt
 7SA6pC2NoE68quNk6WZNh5czsmlG0r0eNSx1jr/Pv4SJB1d3d07tKuGqHIcA80oH
 N81pTRkOK66Afw2EIH1DAMxNs0xbAWRSZ4H1hdxlL5LAnF5gODk=
 =fz66
 -----END PGP SIGNATURE-----

Merge tag 'stm32-dt-for-v6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/dt

STM32 DT for v6.6, round 1

Highlights:
----------

- MCU:
  - Add CAN support on stm32f746.
  - Add touchscreen support (edt-ft5306) on stm32f746-disco.
  - Add support to Rocktech RK043FN48H display on stm32f746-disco
    board.
  - Add gpio-ranges for stm32f7 to fix boot issue.

- MPU:
  - STM32MP13:
    - Remove shmem for scmi-optee to match with OP-TEE configuration.
    - Enable OP-TEE asynchronous notification by using PPI#15.
    - Expose and use SCMI regulators on stm32mp135f-dk.

  - STMP32MP15:
    - Remove shmem for scmi-optee to match with OPTEE configuration
    - Deduplicate DSI node to fix  #address-cells/#size-cells issue on
      boards using it.

  - ST:
    - Fix dts check warnings on stm32mp15-scmi boards.

  - DH:
    - Add missing detach mailbox for DHCOM and DHCOR SoM.

  - Odyssey:
    - Add missing detach mailbox for Odyssey SoM.

  - OCTAVO:
    - Add Linux Automation Test Automation Controller (LXA TAC) based
      on Octavo Systems OSD32MP15x SiP. It contains: eMMC,
      DSA-capable ETH switch (2 ports), dual CAN...
      It adds two boards support: lxa-tac-gen1 and lxa-tac-gen2 based
      on STM32MP157.

  - PROTONIC:
    - Add Power over Data Line (PoDL) Power Source Equipment (PSE)
      regulator nodes on PRTT1C board. It allows power delivery and
      data transmission over a single twisted pair.

* tag 'stm32-dt-for-v6.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32: (29 commits)
  ARM: dts: stm32: add SCMI PMIC regulators on stm32mp135f-dk board
  ARM: dts: stm32: STM32MP13x SoC exposes SCMI regulators
  dt-bindings: rcc: stm32: add STM32MP13 SCMI regulators IDs
  ARM: dts: stm32: support display on stm32f746-disco board
  ARM: dts: stm32: rename mmc_vcard to vcc-3v3 on stm32f746-disco
  ARM: dts: stm32: add pin map for LTDC on stm32f7
  ARM: dts: stm32: add ltdc support on stm32f746 MCU
  ARM: dts: st: Add gpio-ranges for stm32f769-pinctrl
  ARM: dts: st: Add gpio-ranges for stm32f746-pinctrl
  ARM: dts: st: stm32mp157c-emstamp: correct regulator-active-discharge
  ARM: dts: st: stm32mp157c-emstamp: drop incorrect vref_ddr property
  ARM: dts: stm32: fix dts check warnings on stm32mp15-scmi
  ARM: dts: stm32: Add missing detach mailbox for DHCOR SoM
  ARM: dts: stm32: Add missing detach mailbox for DHCOM SoM
  ARM: dts: stm32: Add missing detach mailbox for Odyssey SoM
  ARM: dts: stm32: Add missing detach mailbox for emtrion emSBC-Argon
  ARM: dts: stm32: prtt1c: Add PoDL PSE regulator nodes
  ARM: dts: stm32: add touchscreen on stm32f746-disco board
  ARM: dts: stm32: add pin map for i2c3 controller on stm32f7
  ARM: dts: stm32: re-add CAN support on stm32f746
  ...

Link: https://lore.kernel.org/r/c0524a16-ab27-0cb5-8e7b-c12f7bde7e0d@foss.st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:25:23 -04:00
Arnd Bergmann
d2dff8d84d Qualcomm ARM64 defconfig updates for v6.6
This marks the MSM8996 global clock controller as buildin, to avoid boot
 issues. The SC8280XP GPU clock controller is enabled, to enable GPU
 support. A series of drivers needed to boot the IPQ5018 platform is
 enabled, and the ethernet PHY to enable Ethernet on SA8775P is enabled.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmTe2ScVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FccQP/1G+Cq12q0QziyKiDr7bb8uKPuUV
 XPauw4hfsBXN6VXzftfJGxBtihf/WVTS93i/NdhWYP7x6ylLU9AIVihjN9Bls/nT
 2zEoWfzA0g8HtEctHUanI97ZvJi18MBzaVuXKzlh1rfISDVqo5aqyK3e+FXFKoBO
 Np7Y3dHmpDxW6okEHOZlVDsU7JVnYc5XnX68KEU6Mu0+VbZWGyTZ9mqFiAagkc9X
 vmLbCiZwOMRJ9FTZnvn3wvIM+GHWfyhr3ouLyDKEhrYTGC/hM8ODp0kR7No9ecnu
 AjSfIt+F5dnodL8U1WpwHSKK2uiranuzTQieI4wGyjc2nknEjPY+fnVWiunNI3wr
 HVFzsD+u6p6nDJR/py945WdUNo6cL6Yp1+sUZqFyyj/Q1UwvAkOkVo0HSP0ig2b4
 iTHFePjZ6aLDiDVh9t7zqfCmx8nckgEqwNJCSNW9B8FSxinuc852K6OIwGDPrS7o
 ZthGlFVgE0ss28XHnlfbNNjMu41Md4LJITPzGLlf9XUfoLfbCr/g0Zp2PzN/4TYD
 Isr1csI7GoaG6eMRGeLx15r8vZ5b9Lr8uMf3G8iZ+mgXfaf8UADoqzBNda5vT6hY
 hGwgrTbCv/qMqXTZnC67bLEymoLjulAFRZR+l1aKm3lYQs5BNdYr27/A5KR2EgHZ
 Dv1eA2/BHTD6yiMl
 =Fk9Y
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkDZ4ACgkQYKtH/8kJ
 Uic0IQ/+JJ8vGyJQBHJWimvx9Fsmts2NlGMMEpb13t9RHui7WvhL4LEd60sUsDW/
 e0dioMLPKFUqtobfLixgiz4oVuIjUqWd+mjeUqGNaaK232WCh+MhncHw+HStFwhX
 ntpv+4sI1XU0Bf3toNdAoWKZI5Mm6VNTMFwwNHy+dSA5XqhUHtmUwBS2+vYJjngW
 STRU6xRpS9e5SEEuUT5CcRUptqXSxI/cbO6RwPDGxeCfMplRI/aM7WIcVoqVdtRR
 5SBu3x84blfBprol81rLC1ijO4DJzyGfCUamm393Q/GRCp6/+vRys+fde+10xZan
 +XBIR66jeALEFzPzx2+jBCiEVCKc8ekF4f065eeY5yyazfjofGzK/uB2YTizm221
 i98amtFmX/pwNkg5LVH1JFydNJOEZQYU2w5G9UKtm6lo3sznYqsgq+6uwEuxRu0e
 WeVutfGdddLN4GS4rlKDgOFvWZ6PM+JUBANkvyv9Z7soW2CWH3slGcg++95LMd5E
 pHRoaFu1FqNuPSbPBjpcifb6B94z0yZuDMRH6mnlv9+ierHeglYkCnm07tPmMtHG
 rM664C1ScRqjryXmKscHAP3C1wAn8k/s7IoXPVEXaNiWn/RYdIW4kDoq6+kg0LQ9
 YJ51X5F/9u79/DIvqbiUACLeWeeQX5idJSUQKx+bj552impIaAg=
 =2aFg
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-defconfig-for-6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/defconfig

Qualcomm ARM64 defconfig updates for v6.6

This marks the MSM8996 global clock controller as buildin, to avoid boot
issues. The SC8280XP GPU clock controller is enabled, to enable GPU
support. A series of drivers needed to boot the IPQ5018 platform is
enabled, and the ethernet PHY to enable Ethernet on SA8775P is enabled.

* tag 'qcom-arm64-defconfig-for-6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  arm64: defconfig: Enable IPQ5018 SoC base configs
  arm64: defconfig: enable the SerDes PHY for Qualcomm DWMAC
  arm64: defconfig: enable Qualcomm MSM8996 Global Clock Controller as built-in
  arm64: defconfig: Enable Qualcomm SC8280XP GPUCC

Link: https://lore.kernel.org/r/20230818023651.2484774-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:21:34 -04:00
Arnd Bergmann
da6212d0ae Enable some options needed for Rockchip boards in the main defconfig.
-----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmTdQjEQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgf8AB/4uOtpthHHRXdGEwT21/ADv81kPermebGoQ
 XBY/cq8CekFaZOin1XssgPsDEO2h85usp9YEDdZOP5esSTchkrJH+DKxhk1iOQyC
 Yre1PJ2BEV2qIV+QHJ5ehz5GFeLeLzmQZj7MC4FgVYncX8inFkPC6ucgSB3/ptdJ
 0z4PyxV6EhInydWLLaoYcAoERmIF9X99I8bKgiTSonwikCMUHw4MF7+Y/5yQIC4Y
 0srjN/LxhjLczWNcnMjHmkDmWDnAkNsXyzyGz93jvvTrDvhBSygXdPv0YyTswzd8
 l0/0FFBElMbTwWyMjcK6MrPGBq14HVl5rtzgABvNK8pyVoihsvof
 =pPN4
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkDV0ACgkQYKtH/8kJ
 UifFKxAApJVZ14INeYK4yeiRaTH5bdvJ5XW9YUDGGOsqBpB+/9RS28AD+x5FH2qa
 usHlpyUk2GhdUwQ4zFtK0st2hnOPAzlM4h96cD3/cJ8XEd3WP0B7imKvdKw+7qYa
 WCxSNsCefA1UFlCXwSB3ZlkwyZSHqVlpm/85f5rU8O0QkjLwvUD8k4y06bjb94MT
 fDaQ2MHAYW+di1MCL7TIIuxcFjuzlB8GFrpjcQpXC5CFsp87NHw7P2qjeqnoVQwW
 K2CelF5n9mVF0Ar0EgYVtSG2nsRK0FEI0RS6grhudcfXezee/A7Sj5+bKl/f4m2y
 HmC9ehoLPUAG4c5akjZvCPfrderrY6kHav2ScVddB5b2vfARfBezHURO4uP49W+X
 RQ2rIT1WozN6sgNTKkCOhSOFLGEepVGttjcPNpyKvHVOzZ4EO8r5WTyFVD+0PRH+
 To/Xz7cSxeJEyaL2DFnqBV4EdmwfbQJRSPdudTttoR4MPPgym77zXPEWuLqP+lFi
 f3MYIjnDOzl01xOSQCkxh+wFQI62NH8oRMSzx0az/ps6Rs/H2aodMiNHhA0MYsEo
 CXe37OhdkU1+4f5KYNmnS8Es1V6grhY+136215mRMMDoBd2rJx6NlaG94GXB6ukM
 0XersScNd/xv5XpSk8BNhN6HAPZ/BBkJBQeuZBnCWbjaYSystqc=
 =gfZf
 -----END PGP SIGNATURE-----

Merge tag 'v6.6-rockchip-defconfig64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/defconfig

Enable some options needed for Rockchip boards in the main defconfig.

* tag 'v6.6-rockchip-defconfig64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: defconfig: Enable drivers for the Odroid-M1 board
  arm64: defconfig: Enable GPIO_SYSCON
  arm64: defconfig: Enable Rockchip OTP memory driver
  arm64: defconfig: Enable PHY_ROCKCHIP_NANENG_COMBO_PHY

Link: https://lore.kernel.org/r/5353918.Isy0gbHreE@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:20:28 -04:00
Pascal Paillet
8d6b492793
ARM: multi_v7_defconfig: Add SCMI regulator support
SCMI regulators are used in the ARMv7 STMicrolectronics stm32mp boards:
- for STM32MP13: stm32mp135f-dk
- for STM32MP15 boards with SCMI variant, introduced by commit 5b7e58313a
  ("ARM: dts: stm32: Add SCMI version of STM32 boards (DK1/DK2/ED1/EV1)")
  * stm32mp157c-ev1-scmi
  * stm32mp157c-ed1-scmi
  * stm32mp157c-dk2-scmi
  * stm32mp157a-dk1-scmi

Signed-off-by: Pascal Paillet <p.paillet@foss.st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Link: https://lore.kernel.org/r/20230816123055.12636-1-alexandre.torgue@foss.st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:19:51 -04:00
Saurabh Sengar
bb9b0e46b8 hv: hyperv.h: Replace one-element array with flexible-array member
One-element and zero-length arrays are deprecated. Replace one-element
array in struct vmtransfer_page_packet_header with flexible-array
member. This change fixes below warning:

[    2.593788] ================================================================================
[    2.593908] UBSAN: array-index-out-of-bounds in drivers/net/hyperv/netvsc.c:1445:41
[    2.593989] index 1 is out of range for type 'vmtransfer_page_range [1]'
[    2.594049] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 6.5.0-rc4-next-20230803+ #1
[    2.594114] Hardware name: Microsoft Corporation Virtual Machine/Virtual Machine, BIOS Hyper-V UEFI Release v4.1 04/20/2023
[    2.594121] Call Trace:
[    2.594126]  <IRQ>
[    2.594133]  dump_stack_lvl+0x4c/0x70
[    2.594154]  dump_stack+0x14/0x20
[    2.594162]  __ubsan_handle_out_of_bounds+0xa6/0xf0
[    2.594224]  netvsc_poll+0xc01/0xc90 [hv_netvsc]
[    2.594258]  __napi_poll+0x30/0x1e0
[    2.594320]  net_rx_action+0x194/0x2f0
[    2.594333]  __do_softirq+0xde/0x31e
[    2.594345]  __irq_exit_rcu+0x6b/0x90
[    2.594357]  irq_exit_rcu+0x12/0x20
[    2.594366]  sysvec_hyperv_callback+0x84/0x90
[    2.594376]  </IRQ>
[    2.594379]  <TASK>
[    2.594383]  asm_sysvec_hyperv_callback+0x1f/0x30
[    2.594394] RIP: 0010:pv_native_safe_halt+0xf/0x20
[    2.594452] Code: 0b 66 2e 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 66 90 0f 00 2d 05 35 3f 00 fb f4 <c3> cc cc cc cc 66 2e 0f 1f 84 00 00 00 00 00 66 90 90 90 90 90 90
[    2.594459] RSP: 0018:ffffb841c00d3e88 EFLAGS: 00000256
[    2.594469] RAX: ffff9d18c326f4a0 RBX: ffff9d18c031df40 RCX: 4000000000000000
[    2.594475] RDX: 0000000000000001 RSI: 0000000000000082 RDI: 00000000000268dc
[    2.594481] RBP: ffffb841c00d3e90 R08: 00000066a171109b R09: 00000000d33d2600
[    2.594486] R10: 000000009a41bf00 R11: 0000000000000000 R12: 0000000000000001
[    2.594491] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
[    2.594501]  ? ct_kernel_exit.constprop.0+0x7d/0x90
[    2.594513]  ? default_idle+0xd/0x20
[    2.594523]  arch_cpu_idle+0xd/0x20
[    2.594532]  default_idle_call+0x30/0xe0
[    2.594542]  do_idle+0x200/0x240
[    2.594553]  ? complete+0x71/0x80
[    2.594613]  cpu_startup_entry+0x24/0x30
[    2.594624]  start_secondary+0x12d/0x160
[    2.594634]  secondary_startup_64_no_verify+0x17e/0x18b
[    2.594649]  </TASK>
[    2.594656] ================================================================================

With this change the structure size is reduced by 8 bytes, below is the
pahole output.

struct vmtransfer_page_packet_header {
	struct vmpacket_descriptor d;                    /*     0    16 */
	u16                        xfer_pageset_id;      /*    16     2 */
	u8                         sender_owns_set;      /*    18     1 */
	u8                         reserved;             /*    19     1 */
	u32                        range_cnt;            /*    20     4 */
	struct vmtransfer_page_range ranges[];           /*    24     0 */

	/* size: 24, cachelines: 1, members: 6 */
	/* last cacheline: 24 bytes */
};

The validation code in the netvsc driver is affected by changing the
struct size, but the effects have been examined and have been determined
to be appropriate.

Signed-off-by: Saurabh Sengar <ssengar@linux.microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/1692160478-18469-1-git-send-email-ssengar@linux.microsoft.com
2023-08-22 01:19:47 +00:00
Maciej S. Szmigiero
78e04bbff8 Drivers: hv: vmbus: Don't dereference ACPI root object handle
Since the commit referenced in the Fixes: tag below the VMBus client driver
is walking the ACPI namespace up from the VMBus ACPI device to the ACPI
namespace root object trying to find Hyper-V MMIO ranges.

However, if it is not able to find them it ends trying to walk resources of
the ACPI namespace root object itself.
This object has all-ones handle, which causes a NULL pointer dereference
in the ACPI code (from dereferencing this pointer with an offset).

This in turn causes an oops on boot with VMBus host implementations that do
not provide Hyper-V MMIO ranges in their VMBus ACPI device or its
ancestors.
The QEMU VMBus implementation is an example of such implementation.

I guess providing these ranges is optional, since all tested Windows
versions seem to be able to use VMBus devices without them.

Fix this by explicitly terminating the lookup at the ACPI namespace root
object.

Note that Linux guests under KVM/QEMU do not use the Hyper-V PV interface
by default - they only do so if the KVM PV interface is missing or
disabled.

Example stack trace of such oops:
[ 3.710827] ? __die+0x1f/0x60
[ 3.715030] ? page_fault_oops+0x159/0x460
[ 3.716008] ? exc_page_fault+0x73/0x170
[ 3.716959] ? asm_exc_page_fault+0x22/0x30
[ 3.717957] ? acpi_ns_lookup+0x7a/0x4b0
[ 3.718898] ? acpi_ns_internalize_name+0x79/0xc0
[ 3.720018] acpi_ns_get_node_unlocked+0xb5/0xe0
[ 3.721120] ? acpi_ns_check_object_type+0xfe/0x200
[ 3.722285] ? acpi_rs_convert_aml_to_resource+0x37/0x6e0
[ 3.723559] ? down_timeout+0x3a/0x60
[ 3.724455] ? acpi_ns_get_node+0x3a/0x60
[ 3.725412] acpi_ns_get_node+0x3a/0x60
[ 3.726335] acpi_ns_evaluate+0x1c3/0x2c0
[ 3.727295] acpi_ut_evaluate_object+0x64/0x1b0
[ 3.728400] acpi_rs_get_method_data+0x2b/0x70
[ 3.729476] ? vmbus_platform_driver_probe+0x1d0/0x1d0 [hv_vmbus]
[ 3.730940] ? vmbus_platform_driver_probe+0x1d0/0x1d0 [hv_vmbus]
[ 3.732411] acpi_walk_resources+0x78/0xd0
[ 3.733398] vmbus_platform_driver_probe+0x9f/0x1d0 [hv_vmbus]
[ 3.734802] platform_probe+0x3d/0x90
[ 3.735684] really_probe+0x19b/0x400
[ 3.736570] ? __device_attach_driver+0x100/0x100
[ 3.737697] __driver_probe_device+0x78/0x160
[ 3.738746] driver_probe_device+0x1f/0x90
[ 3.739743] __driver_attach+0xc2/0x1b0
[ 3.740671] bus_for_each_dev+0x70/0xc0
[ 3.741601] bus_add_driver+0x10e/0x210
[ 3.742527] driver_register+0x55/0xf0
[ 3.744412] ? 0xffffffffc039a000
[ 3.745207] hv_acpi_init+0x3c/0x1000 [hv_vmbus]

Fixes: 7f163a6fd9 ("drivers:hv: Modify hv_vmbus to search for all MMIO ranges available.")
Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/fd8e64ceeecfd1d95ff49021080cf699e88dbbde.1691606267.git.maciej.szmigiero@oracle.com
2023-08-22 01:18:32 +00:00
Arnd Bergmann
6681618814 Driver changes for omaps for v6.6
Driver changes for ti-sysc interconnect target module driver and for
 l3 interconnect error handler. The ti-sysc driver changes just enable
 using it for 64-bit systems like TI am62 that have wake-up capability
 for the wkup domain devices. The l3 error handling improves the code
 to show the error source if an unrecoverable timeout error occurs.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAmTcS0cRHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXOtdA/+KwjCGqOpG3FDvgrLuLtL3ELKAat/LO1O
 eIWUvpLWX4b067AaYaEk6KRngTYGdj+KM99k88cydBY2JvFXXD3ivg5QVZoJ3aKm
 jiQfuouVcy6ea4ymOOfW81N9ugpTafBcSdtZomEEPF8HSCRkPD2FnzmK60BKLN/j
 7s6UMGrwwwL3+2xqitsLUDlcD5dJ2a2tSf2NXy2PFrtQbx3DqR65HYwEGvncyFxR
 YvPKFKeT0yzt/wyZ7CGhuJPVqzAWeCWsjFnqcGscmjc7e4v6a14iR+vUo5qkaKo8
 TvHWcFRsBlmvERcLGjSH5wnZnhqm46uc+9AVucpSVIOIDcljQX5D2/vuwZ2P7Zay
 jnaeCfrrGpFOXi5JaeFRM99ihvv1VrvQKOamsz5/XZjNCEri/f9TM4M28AmkB3FB
 vFZaJBbQfgYIahrE8pmXN2A6LB0QyubHkBDoYD6BKQRN/sz0t+WEEl7BS/qakO5K
 lzj5m/sXDPdb6ORzo5S/hFoOyOBA+EuheXuMRI96XkRK2aF/3jPW5t7IRh1dc9pa
 uv0NVeBc7Jf3vtRA60pO8ecc8YKZmO8hEK9cmhUyXDsgFfG7awXIEJyGc31NDWRz
 er26bjGjR0ELbZRlpJMpD1mYdkwfWFhnxQ5jFDIzcCMv5P2p5iJdZpryFZfCbt8t
 jscs2HgPX6Y=
 =//Xy
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkDGcACgkQYKtH/8kJ
 UifhxBAAzjHmDaL0JgVuAi0l9W9W8CYUnZre4S6qAu6349oEaRdpzChE6KWxCCvd
 xDginfnU93vXuxvsvTRauW9E63jLQ8vh6XyTpHV+yhbJj8x+NlkK6smp0cGCqClE
 cC0w/lg6HrJpkbxcK/PgSlAAFbyCmdsW5T/g+UC5Ip5Ts1pBn8xbdGBMAtzu7Clp
 oxqxC6RDDObeUJ5/kUI9ryIG0cH8CtSnrvz0eDLckCt1mhO6Ofw1URxzyTUc79jc
 rX69r9v1nPHU++5XuPXAPWc5nWXvwfKJAOXxyHIHO3kMUsEPum+Dd04vTRTD7SzS
 j1oiNVqEWocd7DLh8CTNx73hwJyxfjDLv9U2avg5lts6TG5eloAyf/CzCxEC29jo
 TSQn8W6yw4rueemzoNUypIKH5t1lkvpkbGZhIiEQf7iBCOx3b7pRJZAkWOniC/Xj
 Uw/w1aICfxPPXAfsxGpMC8hIZLhu8aS+He+4tUghWD1HFfxshnSYOcKpw2Cqp8P2
 aTgEVTLUzaEw086S/fSKM6+fsT9Fl5vMjH5KxMmRP9k7jhu96SuHX8UV0zKVvYom
 U0IvQ2E8rtgoB2zQ3MeaNh0bmyA6PZL3QDpNg4ymWVkvITh6RXFpjXB8XIQh4unA
 ivXP4YSJnPFOM4cXlSYykx5nysOKvHkgy3OjfBMSMcqdCMP2avI=
 =QAxs
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v6.6/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into soc/drivers

Driver changes for omaps for v6.6

Driver changes for ti-sysc interconnect target module driver and for
l3 interconnect error handler. The ti-sysc driver changes just enable
using it for 64-bit systems like TI am62 that have wake-up capability
for the wkup domain devices. The l3 error handling improves the code
to show the error source if an unrecoverable timeout error occurs.

* tag 'omap-for-v6.6/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  bus: ti-sysc: Fix cast to enum warning
  bus: ti-sysc: Fix a build warning with W=1 for sysconfig
  bus: ti-sysc: Configure uart quirks for k3 SoC
  bus: ti-sysc: Build driver for TI K3 SoCs
  bus: ti-sysc: Fix build warning for 64-bit build
  bus: omap_l3_smx: identify timeout cause before rebooting

Link: https://lore.kernel.org/r/pull-1692158857-597450@atomide.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:16:23 -04:00
Arnd Bergmann
9eb33ddedd Qualcomm driver updates for v6.6
Compatible and clock handling in the Qualcomm SCM driver is cleaned up,
 together with a couple stylistic cleanups and transition to mark
 exported symbols GPL only.
 
 An abstraction for the RPM subsystem is introduced, to make align the
 structure of the SMD and GLINK nodes thereof with the structure when a
 remoteproc is involved. This is done to facilitate associating
 additional entities with the RPM subsystem.
 
 The qmp_send() API is modified to not expose hardware requirements onto
 the client drivers, and then further extended to allow command
 formatting directly in the API, to facilitate this typical use case.
 
 In the Qualcomm Command DB driver, NUL characters previously included in
 identifiers are dropped from the debugfs, to facilitate scripting.
 
 The thresholds of the BWMON driver are simplified to avoid hard coded
 starting values.
 
 The OCMEM driver is updated with some cleanups and fixes, and addition
 of MSM8226 support.
 
 PMIC_GLINK gains support for retimer switches, safe mode is selected
 when the cable is disconnected from altmode and the same is enabled for
 SM8550.
 
 An off-by-one string length check is corrected in the QMI encoder
 decoder library.
 
 The RPMh tracepoints are extended to include the state of the request,
 to provide needed context in the traced events.
 
 The series from Ulf creating a genpd framework is integrated, to
 facilitate the other changes to the cpr, rpmpd and rpmhpd driver.
 SDX75 support is added to the rpmhpd driver, and the rpmpd driver is
 extended with the same sync_state logic found in the rpmhpd driver.
 
 The socinfo driver gains knowledge about SM4450 and SM7125, the IPQ5019
 platform is dropped.
 
 Clock handling in the GSBI driver is cleaned up with the use of
 devm_clk_get_enabled().
 
 The list of VMIDs defined for the SCM assign memory interface is
 extended.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmTe2FIVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FPaYP/0j7dGziE/KQaTccT/arpgiU6wH/
 fzu7j76r/JY90Jw61vxWsTfuR94Irr8/NzzvLXMO1cKfzJXxsPKqYuuWBe/hFu3u
 Bva/4XtHspitKQCvBYOhX2dxj3BtYzsrVNmh3sOeEKhXcUaVuCQXkpeE3fqNBwYB
 li70t/dHVPPr2mDY30QhD9nn8XgWG8DlSzyuvIp+zI8kpNX04Cdqg2BEidB8GO4f
 ZgcAtnCIssIojBhRwVO7ei8RnGu6i2+69Vwtrx8nNT85Wcyx7NLxjZfp7+5PrZnv
 Xyu/JO4yYZooEVMAOtXJcxbZRs3FmGovg5RnR5w1CIz87Kmw5Wq0g9wZHMuLxC/G
 u4SzwjCqwEhAVWSzsVmicLOs4y2Ndwju3ojX3kLPh02yw5xo6BpxXdZIptTvVIQn
 DicTCaHU3QxxqkH7elLxNxyRYvmJbDbwKJ/hZjSRWSsJUhI4fvWoyrL6wNZ9+rTW
 1zCkfEH3XikjMGHweeZc+VYu03XyohIYYn+jxpdwOjajF+3BsQSiqN1tKwj71ci/
 Nk6sn+TRsq/jY6x33ULfbQCjeQ3BOGEngHTQ8N1i5D1vM2BUY/jrH6Dt1tIUdRjh
 avR2KvZzzPs7Cp/094aQDX42GcQKeVOit6pF+NhE0c2uVqQCB5c6ynZwcvt0YNS9
 Ty0mqIn99wgbHxVw
 =SEyF
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkC1sACgkQYKtH/8kJ
 UifjiBAAnIlToZQERPaKlX1zQTYVfrMiyNQ8fyUGLnAj0bNFWFzYgS6p5NXerxdT
 /sk2tipNqJyym3h797r2aAjAXpyTnKYIwZqGjvWGBbhaViv6ovuDYkJUBk0ffybB
 a0Ve4M1JnVZATiwqeoZwi6/1/M2JC3+20O+LRL4lWzZAm61NsU4ULAcX4sHeUYYA
 02wMfzkME0Ye7sthv9GBtbm8Szr+GEuDvUTXx0DI74QrZuj6+wl3rjZ2uRrT97ZX
 DuPtmhl2ZVjCigCsfxdj2J8eq8dpkROAzAeGa9d/NctkCV+dHhSEWZ0LraauLCJk
 iXA2ZXOACHWF4tn8TC/eDx0Pv6CS+gRVjyYYLNkWreDSPfk7Vqaua3iNc7AfhIJV
 hfJV1QhDmRt+pXi8pJQSSbTtjfzaURzD78N7JLMRZdZPozRwD/kl1+m/r5OMT4C+
 NI4cLB544Zb34WEUgjZYNUjk18vkZmEQnvWwAGIzOQgHq5m/m6o2QQOnTgiTwaXh
 Neh8k+KKt85IwkjFarwmKsLhajHezHIEqgHrGdfiIFr9+hAMPBIgUP3/eo6PFDNk
 XP+IVMeucEtn7Og6d6rQmJ0kPvL32ucdXWdqOwLijoDablFwX1Giif77LjN5LRYj
 IxReK7C8CwZKqLf2k0pv8dLE4g8On6OThveedXbLNuMx+EgcB2w=
 =RpyB
 -----END PGP SIGNATURE-----

Merge tag 'qcom-drivers-for-6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/drivers

Qualcomm driver updates for v6.6

Compatible and clock handling in the Qualcomm SCM driver is cleaned up,
together with a couple stylistic cleanups and transition to mark
exported symbols GPL only.

An abstraction for the RPM subsystem is introduced, to make align the
structure of the SMD and GLINK nodes thereof with the structure when a
remoteproc is involved. This is done to facilitate associating
additional entities with the RPM subsystem.

The qmp_send() API is modified to not expose hardware requirements onto
the client drivers, and then further extended to allow command
formatting directly in the API, to facilitate this typical use case.

In the Qualcomm Command DB driver, NUL characters previously included in
identifiers are dropped from the debugfs, to facilitate scripting.

The thresholds of the BWMON driver are simplified to avoid hard coded
starting values.

The OCMEM driver is updated with some cleanups and fixes, and addition
of MSM8226 support.

PMIC_GLINK gains support for retimer switches, safe mode is selected
when the cable is disconnected from altmode and the same is enabled for
SM8550.

An off-by-one string length check is corrected in the QMI encoder
decoder library.

The RPMh tracepoints are extended to include the state of the request,
to provide needed context in the traced events.

The series from Ulf creating a genpd framework is integrated, to
facilitate the other changes to the cpr, rpmpd and rpmhpd driver.
SDX75 support is added to the rpmhpd driver, and the rpmpd driver is
extended with the same sync_state logic found in the rpmhpd driver.

The socinfo driver gains knowledge about SM4450 and SM7125, the IPQ5019
platform is dropped.

Clock handling in the GSBI driver is cleaned up with the use of
devm_clk_get_enabled().

The list of VMIDs defined for the SCM assign memory interface is
extended.

* tag 'qcom-drivers-for-6.6' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (52 commits)
  soc: qcom: aoss: Tidy up qmp_send() callers
  soc: qcom: aoss: Format string in qmp_send()
  soc: qcom: aoss: Move length requirements from caller
  dt-bindings: firmware: qcom: scm: Updating VMID list
  dt-bindings: qcom: Update RPMHPD entries for some SoCs
  soc: qcom: qmi_encdec: Restrict string length in decode
  soc: qcom: smem: Fix incompatible types in comparison
  soc: qcom: ocmem: add missing clk_disable_unprepare() in ocmem_dev_probe()
  soc: qcom: socinfo: Add SoC ID for SM7125
  dt-bindings: arm: qcom,ids: Add SoC ID for SM7125
  dt-bindings: arm: qcom,ids: drop the IPQ5019 SoC ID
  soc: qcom: socinfo: drop the IPQ5019 SoC ID
  soc: qcom: socinfo: add SM4450 ID
  dt-bindings: arm: qcom,ids: add SoC ID for SM4450
  soc: qcom: pmic_glink: enable altmode for SM8550
  soc: qcom: pmic_glink_altmode: add retimer-switch support
  soc: qcom: pmic_glink_altmode: handle safe mode when disconnect
  soc: qcom: rpmhpd: Add SDX75 power domains
  dt-bindings: power: qcom,rpmpd: Add compatible for sdx75
  genpd: Makefile: build imx
  ...

Link: https://lore.kernel.org/r/20230818023338.2484467-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:11:55 -04:00
Arnd Bergmann
d4692f6c27 PD_VO powerdomain for rv1126 and disabling of the automatic switch between
sdmmc and jtag for rk3588 (makes sdmmc unreliable).
 
 This includes the shared genpd-v6.5-rc1-1 tag from Ulf Hansson, which moves
 the powerdomain drivers into a new genpd subsystem.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmTdQxUQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgaRgB/41U/lA1H0hIfXBKKBXFEDYkQMC1qEEtDnU
 pi8L6Bp44Gb5JbrD4wrNMc9AUJokxC1zGEVmwpySXNOy3ma0DQRPPKNQMNo8gcae
 R8bZPbpdvkBBY6HMeFI0/c0+B3qU0G/RBfaMMe0edPlaeLFz8j8TUotUJo4rGh20
 RoA2Dir7/YWN1S0EIOwJVRzYnr9vG7rGJsceabyYH/liDFs7neEgCDi9LWwNIBbL
 5ANWM7UytIOsZOrPOegLHLgsPyYvccHgKCgctCPt6k04/9ZBTwp6pFyBtUtd91GW
 oAL7SgF5tbkDYysj3nwZGOzCUIUVlxMTs6szTge4WuzGVOhXOZrn
 =5C7a
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmTkCj0ACgkQYKtH/8kJ
 UifB/RAAsf5wuB1Jp+cbaVVTLgMUzMCOGJCJwjSk9FVfR4qJlnIdGwKUJUGaVkP1
 SUvPAVd/abJ+sySLBbLzDb22zmOK2NQ8lfSr8I4wDPTrcfxtNO3OY2eWyx1Zcqv9
 ojHQOW8ri9/YhUlyFJ3ZwWNiF42IwiB+DRgtLGDla/QeUV7YXaQK0zWsrapbNHEz
 W3qlOn7h57EXnZe7MIPc/JsiivRMR3SmMLWOMKi0u+d6K3SDm/N+TD+Pko3SW0vO
 SaRMmE6tfHrU1ClpQIZmNFORvWIZondEiskhCOb+hvQSBYGbWrA60J5obLZ8Rc1K
 xtpMrTDe7JBlesi92leM3GN8T1a+Y12nlh+6nJDli8OFdVCBk1zzNbyS2Uhts90S
 RPjh5UR7RtDNfsx2ROiddUV6DzDA8Wm507ioSAuqbEkex5x8eg6AkEhRQOB7L5WP
 OGYh9acjPOweSzNbNoepcbtOmnGRwJSh5WFzo0dSqKeHB5ayuKMR2Wjm+5qOMa8A
 ww1FBkZaSWYX0y2/kGjTIUfAJsOsa1tDEViUnOw/GafXrJY5tGghQCtqmzpps39A
 BmjhHApylaroPR1hT5HdEumrQe6YD5ROS/+JltKWyV8Mv1dnbbid58RKG6zmuwNz
 1N3Dhpe53N2ZuU500d+xA9WyqUb1q6gZI443PcJOFWc129Y+W7A=
 =Nt2J
 -----END PGP SIGNATURE-----

Merge tag 'v6.6-rockchip-drivers1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/drivers

PD_VO powerdomain for rv1126 and disabling of the automatic switch between
sdmmc and jtag for rk3588 (makes sdmmc unreliable).

This includes the shared genpd-v6.5-rc1-1 tag from Ulf Hansson, which moves
the powerdomain drivers into a new genpd subsystem.

* tag 'v6.6-rockchip-drivers1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  soc: rockchip: grf: Fix SDMMC not working on RK3588 with bus-width > 1
  genpd: rockchip: Add PD_VO entry for rv1126

Link: https://lore.kernel.org/r/40318909.XM6RcZxFsP@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:07:09 -04:00
Huisong Li
7d6612834d
soc: kunpeng_hccs: fix some sparse warnings about incorrect type
This patch fixes some sparse warnings about incorrect type.
The address about PCC communication space should use '__iomem' tag.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202308151142.dH5Muhva-lkp@intel.com/
Fixes: 886bdf9c88 ("soc: hisilicon: Support HCCS driver on Kunpeng SoC")
Signed-off-by: Huisong Li <lihuisong@huawei.com>
Link: https://lore.kernel.org/r/20230816073706.33297-1-lihuisong@huawei.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 21:05:11 -04:00
Yinbo Zhu
67694c076b
soc: loongson2_pm: add power management support
The Loongson-2's power management controller was ACPI, supports ACPI
S2Idle (Suspend To Idle), ACPI S3 (Suspend To RAM), ACPI S4 (Suspend To
Disk), ACPI S5 (Soft Shutdown) and supports multiple wake-up methods
(USB, GMAC, PWRBTN, etc.). This driver was to add power management
controller support that base on dts for Loongson-2 series SoCs.

Co-developed-by: Liu Yun <liuyun@loongson.cn>
Signed-off-by: Liu Yun <liuyun@loongson.cn>
Co-developed-by: Liu Peibao <liupeibao@loongson.cn>
Signed-off-by: Liu Peibao <liupeibao@loongson.cn>
Cc: soc@kernel.org
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Yinbo Zhu <zhuyinbo@loongson.cn>
Link: https://lore.kernel.org/r/20230803063703.5659-3-zhuyinbo@loongson.cn
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 20:52:46 -04:00
Yinbo Zhu
6054a676e9
soc: dt-bindings: add loongson-2 pm
Add the Loongson-2 SoC Power Management Controller binding with DT
schema format using json-schema.

Signed-off-by: Yinbo Zhu <zhuyinbo@loongson.cn>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230803063703.5659-2-zhuyinbo@loongson.cn
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-08-21 20:52:46 -04:00
Tianyu Lan
4754ec7f20 x86/hyperv: Add hyperv-specific handling for VMMCALL under SEV-ES
Add Hyperv-specific handling for faults caused by VMMCALL
instructions.

Reviewed-by: Dexuan Cui <decui@microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Tianyu Lan <tiala@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230818102919.1318039-9-ltykernel@gmail.com
2023-08-22 00:38:20 +00:00
Tianyu Lan
44676bb9d5 x86/hyperv: Add smp support for SEV-SNP guest
In the AMD SEV-SNP guest, AP needs to be started up via sev es
save area and Hyper-V requires to call HVCALL_START_VP hypercall
to pass the gpa of sev es save area with AP's vp index and VTL(Virtual
trust level) parameters. Override wakeup_secondary_cpu_64 callback
with hv_snp_boot_ap.

Reviewed-by: Dexuan Cui <decui@microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Tianyu Lan <tiala@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230818102919.1318039-8-ltykernel@gmail.com
2023-08-22 00:38:20 +00:00
Tianyu Lan
45f46b1ac9 clocksource: hyper-v: Mark hyperv tsc page unencrypted in sev-snp enlightened guest
Hyper-V tsc page is shared with hypervisor and mark the page
unencrypted in sev-snp enlightened guest when it's used.

Reviewed-by: Dexuan Cui <decui@microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Tianyu Lan <tiala@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230818102919.1318039-7-ltykernel@gmail.com
2023-08-22 00:38:20 +00:00
Tianyu Lan
48b1f68372 x86/hyperv: Use vmmcall to implement Hyper-V hypercall in sev-snp enlightened guest
In sev-snp enlightened guest, Hyper-V hypercall needs
to use vmmcall to trigger vmexit and notify hypervisor
to handle hypercall request.

Signed-off-by: Tianyu Lan <tiala@microsoft.com>
Reviewed-by: Dexuan Cui <decui@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230818102919.1318039-6-ltykernel@gmail.com
2023-08-22 00:38:20 +00:00
Tianyu Lan
193061ea0a drivers: hv: Mark percpu hvcall input arg page unencrypted in SEV-SNP enlightened guest
Hypervisor needs to access input arg, VMBus synic event and
message pages. Mark these pages unencrypted in the SEV-SNP
guest and free them only if they have been marked encrypted
successfully.

Reviewed-by: Dexuan Cui <decui@microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Tianyu Lan <tiala@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230818102919.1318039-5-ltykernel@gmail.com
2023-08-22 00:38:20 +00:00
Tianyu Lan
b13103559d x86/hyperv: Mark Hyper-V vp assist page unencrypted in SEV-SNP enlightened guest
hv vp assist page needs to be shared between SEV-SNP guest and Hyper-V.
So mark the page unencrypted in the SEV-SNP guest.

Reviewed-by: Dexuan Cui <decui@microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Tianyu Lan <tiala@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230818102919.1318039-4-ltykernel@gmail.com
2023-08-22 00:38:20 +00:00
Tianyu Lan
8387ce06d7 x86/hyperv: Set Virtual Trust Level in VMBus init message
SEV-SNP guests on Hyper-V can run at multiple Virtual Trust
Levels (VTL).  During boot, get the VTL at which we're running
using the GET_VP_REGISTERs hypercall, and save the value
for future use.  Then during VMBus initialization, set the VTL
with the saved value as required in the VMBus init message.

Reviewed-by: Dexuan Cui <decui@microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Tianyu Lan <tiala@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230818102919.1318039-3-ltykernel@gmail.com
2023-08-22 00:38:20 +00:00
Tianyu Lan
d6e2d65244 x86/hyperv: Add sev-snp enlightened guest static key
Introduce static key isolation_type_en_snp for enlightened
sev-snp guest check.

Reviewed-by: Dexuan Cui <decui@microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Tianyu Lan <tiala@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Link: https://lore.kernel.org/r/20230818102919.1318039-2-ltykernel@gmail.com
2023-08-22 00:38:20 +00:00
Matt Roper
e388ae97e2 drm/i915/display: Eliminate IS_METEORLAKE checks
Most of the IS_METEORLAKE checks in the display code shouldn't actually
be tied to MTL as a platform, but rather to the Xe_LPD+ display IP
(which is used in MTL, but may show up again in future platforms).  In
cases where we're trying to match that specific IP, use a version check
against IP_VER(14, 0).  For cases where we're just handling new behavior
introduced by this IP (but which may also be inherited by future IP as
well), use a ver >= 14 check.

The one exception here is the stolen memory workaround Wa_13010847436
(which is mislabelled as "Wa_22018444074" in the code).  That's truly a
MTL-specific issue rather than being tied to any of the IP blocks, so
leaving the condition as IS_METEORLAKE is correct there.

v2:
 - cdclk check should be >=, not >.  (Gustavo)

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-19-matthew.d.roper@intel.com
2023-08-21 17:13:11 -07:00
Matt Roper
213454b3af drm/i915: Eliminate IS_MTL_DISPLAY_STEP
Stepping-specific display behavior shouldn't be tied to MTL as a
platform, but rather specifically to the Xe_LPD+ IP.  Future non-MTL
platforms may re-use this IP and will need to follow the exact same
logic and apply the same workarounds.  IS_MTL_DISPLAY_STEP() is dropped
in favor of a new macro IS_DISPLAY_IP_STEP() that only checks the
display IP version.

v2:
 - Rename macro to IS_DISPLAY_IP_STEP for consistency with the
   corresponding GT macro and handle steppings the same way.
v3:
 - Drop the automatic "STEP_" pasting.
v4:
 - Implement IS_DISPLAY_IP_STEP on top of IS_DISPLAY_IP_RANGE /
   IS_DISPLAY_STEP building blocks and make the parameters from/until
   instead of begin/fixed.  (Jani)
 - Fix usage details in comment.
v5:
 - Tweak macro comment.  (Gustavo)

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-17-matthew.d.roper@intel.com
2023-08-21 17:12:45 -07:00
Matt Roper
14128d6409 drm/i915: Replace several IS_METEORLAKE with proper IP version checks
Many of the IS_METEORLAKE conditions throughout the driver are supposed
to be checks for Xe_LPG and/or Xe_LPM+ IP, not for the MTL platform
specifically.  Update those checks to ensure that the code will still
operate properly if/when these IP versions show up on future platforms.

v2:
 - Update two more conditions (one for pg_enable, one for MTL HuC
   compatibility).
v3:
 - Don't change GuC/HuC compatibility check, which sounds like it truly
   is specific to the MTL platform.  (Gustavo)
 - Drop a non-lineage workaround number for the OA timestamp frequency
   workaround.  (Gustavo)

Cc: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-20-matthew.d.roper@intel.com
2023-08-21 16:57:36 -07:00
Matt Roper
2e3c369f23 drm/i915/mtl: Eliminate subplatforms
Now that we properly match the Xe_LPG IP versions associated with
various workarounds, there's no longer any need to define separate MTL
subplatform in the driver.  Nothing in the code is conditional on MTL-M
or MTL-P base platforms.  Furthermore, I'm not sure the "M" and "P"
designations are even an accurate representation of which specific
platforms would have which IP versions; those were mostly just
placeholders from a long time ago.  The reality is that the IP version
present on a platform gets read from a fuse register at driver init; we
shouldn't be trying to guess which IP is present based on PCI ID
anymore.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Nemesa Garg <nemesa.garg@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-18-matthew.d.roper@intel.com
2023-08-21 16:56:14 -07:00
Matt Roper
81af8abe65 drm/i915: Eliminate IS_MTL_MEDIA_STEP
Stepping-specific media behavior shouldn't be tied to MTL as a platform,
but rather specifically to the Xe_LPM+ IP.  Future non-MTL platforms may
re-use this IP and will need to follow the exact same logic and apply
the same workarounds.  IS_MTL_MEDIA_STEP() is dropped in favor of
IS_MEDIA_GT_IP_STEP, which checks the media IP version associated with a
specific IP and also ensures that we're operating on the media GT, not
the primary GT.

v2:
 - Switch to the IS_GT_IP_STEP macro.
v3:
 - Switch back to long-form IS_MEDIA_GT_IP_STEP.  (Jani)
v4:
 - Build IS_MEDIA_GT_IP_STEP on top of IS_MEDIA_GT_IP_RANGE and
   IS_MEDIA_STEP building blocks and name the parameters from/until
   rather than begin/fixed..  (Jani)
v5:
 - Tweak macro comment wording.  (Gustavo)
 - Add a check to catch NULL gt in IS_MEDIA_GT_IP_RANGE; this allows it
   to be used safely on i915->media_gt, which may be NULL on some
   platforms.  (Gustavo)

Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-16-matthew.d.roper@intel.com
2023-08-21 16:55:42 -07:00
Matt Roper
5a213086a0 drm/i915: Eliminate IS_MTL_GRAPHICS_STEP
Several workarounds are guarded by IS_MTL_GRAPHICS_STEP.  However none
of these workarounds are actually tied to MTL as a platform; they only
relate to the Xe_LPG graphics IP, regardless of what platform it appears
in.  At the moment MTL is the only platform that uses Xe_LPG with IP
versions 12.70 and 12.71, but we can't count on this being true in the
future.  Switch these to use a new IS_GFX_GT_IP_STEP() macro instead
that is purely based on IP version.  IS_GFX_GT_IP_STEP() is also
GT-based rather than device-based, which will help prevent mistakes
where we accidentally try to apply Xe_LPG graphics workarounds to the
Xe_LPM+ media GT and vice-versa.

v2:
 - Switch to a more generic and shorter IS_GT_IP_STEP macro that can be
   used for both graphics and media IP (and any other kind of GTs that
   show up in the future).
v3:
 - Switch back to long-form IS_GFX_GT_IP_STEP macro.  (Jani)
 - Move macro to intel_gt.h.  (Andi)
v4:
 - Build IS_GFX_GT_IP_STEP on top of IS_GFX_GT_IP_RANGE and
   IS_GRAPHICS_STEP building blocks and name the parameters from/until
   rather than begin/fixed.  (Jani)
 - Fix usage examples in comment.
v5:
 - Tweak comment on macro.  (Gustavo)

Cc: Gustavo Sousa <gustavo.sousa@intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Cc: Andi Shyti <andi.shyti@linux.intel.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-15-matthew.d.roper@intel.com
2023-08-21 16:46:29 -07:00
Matt Roper
f7696ded7c drm/i915/xelpg: Call Xe_LPG workaround functions based on IP version
Although some of our Xe_LPG workarounds were already being applied based
on IP version correctly, others were matching on MTL as a base platform,
which is incorrect.  Although MTL is the only platform right now that
uses Xe_LPG IP, this may not always be the case.  If a future platform
re-uses this graphics IP, the same workarounds should be applied, even
if it isn't a "MTL" platform.

We were also incorrectly applying Xe_LPG workarounds/tuning to the
Xe_LPM+ media IP in one or two places; we should make sure that we don't
try to apply graphics workarounds to the media GT and vice versa where
they don't belong.  A new helper macro IS_GT_IP_RANGE() is added to help
ensure this is handled properly -- it checks that the GT matches the IP
type being tested as well as the IP version falling in the proper range.

Note that many of the stepping-based workarounds are still incorrectly
checking for a MTL base platform; that will be remedied in a later
patch.

v2:
 - Rework macro into a slightly more generic IS_GT_IP_RANGE() that can
   be used for either GFX or MEDIA checks.

v3:
 - Switch back to separate macros for gfx and media.  (Jani)
 - Move macro to intel_gt.h.  (Andi)

Cc: Gustavo Sousa <gustavo.sousa@intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Andi Shyti <andi.shyti@linux.intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-14-matthew.d.roper@intel.com
2023-08-21 16:46:10 -07:00
Matt Roper
ea2f15565d drm/i915/xelpmp: Don't assume workarounds extend to future platforms
The currently implemented Xe_LPM+ workarounds are specific to media
version 13.00.  When new IP versions show up in the future, they'll need
their own workaround lists.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-13-matthew.d.roper@intel.com
2023-08-21 16:45:59 -07:00
Matt Roper
28c46feec7 drm/i915: Consolidate condition for Wa_22011802037
The workaround bounds for Wa_22011802037 are somewhat complex and are
replicated in several places throughout the code.  Pull the condition
out to a helper function to prevent mistakes if this condition needs to
change again in the future.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230821180619.650007-12-matthew.d.roper@intel.com
2023-08-21 16:45:44 -07:00
Mark Brown
1c351c236a
spi: switch to use modern name (part4)
Merge series from Yang Yingliang <yangyingliang@huawei.com>:

I'm trying to rename the legacy name to modern name used in SPI drivers,
this is part4 patchset.

After introducing devm_spi_alloc_host/spi_alloc_host(), the legacy
named function devm_spi_alloc_master/spi_alloc_master() can be replaced.
And also change other legacy name master/slave to modern name host/target
or controller. Each patch compile test passed.
2023-08-22 00:06:26 +01:00
Mark Brown
31eedc155c
regulator: aw37503: add regulator driver for Awinic
Merge series from like@awinic.com:

Add regulator driver for the device Awinic AW37503 which is
single inductor - dual output power supply device. AW37503
device is designed to support general positive/negative
driven applications like TFT display panels.
2023-08-22 00:06:00 +01:00
Alexei Starovoitov
d565183800 Merge branch 'bpf-add-multi-uprobe-link'
Jiri Olsa says:

====================
bpf: Add multi uprobe link

hi,
this patchset is adding support to attach multiple uprobes and usdt probes
through new uprobe_multi link.

The current uprobe is attached through the perf event and attaching many
uprobes takes a lot of time because of that.

The main reason is that we need to install perf event for each probed function
and profile shows perf event installation (perf_install_in_context) as culprit.

The new uprobe_multi link just creates raw uprobes and attaches the bpf
program to them without perf event being involved.

In addition to being faster we also save file descriptors. For the current
uprobe attach we use extra perf event fd for each probed function. The new
link just need one fd that covers all the functions we are attaching to.

v7 changes:
  - fixed task release on error path and re-org the error
    path to be more straightforward [Yonghong]
  - re-organized uprobe_prog_run locking to follow general pattern
    and removed might_fault check as it's not needed in uprobe/task
    context [Yonghong]

There's support for bpftrace [2] and tetragon [1].

Also available at:
  https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
  uprobe_multi

thanks,
jirka

[1] https://github.com/cilium/tetragon/pull/936
[2] https://github.com/iovisor/bpftrace/compare/master...olsajiri:bpftrace:uprobe_multi
[3] https://lore.kernel.org/bpf/20230628115329.248450-1-laoar.shao@gmail.com/
---
====================

Link: https://lore.kernel.org/r/20230809083440.3209381-1-jolsa@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2023-08-21 15:51:28 -07:00
Jiri Olsa
8909a9392b selftests/bpf: Add extra link to uprobe_multi tests
Attaching extra program to same functions system wide for api
and link tests.

This way we can test the pid filter works properly when there's
extra system wide consumer on the same uprobe that will trigger
the original uprobe handler.

We expect to have the same counts as before.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Link: https://lore.kernel.org/r/20230809083440.3209381-29-jolsa@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2023-08-21 15:51:27 -07:00
Jiri Olsa
d571efae0f selftests/bpf: Add uprobe_multi pid filter tests
Running api and link tests also with pid filter and checking
the probe gets executed only for specific pid.

Spawning extra process to trigger attached uprobes and checking
we get correct counts from executed programs.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Link: https://lore.kernel.org/r/20230809083440.3209381-28-jolsa@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2023-08-21 15:51:27 -07:00
Jiri Olsa
e7cf9a48f8 selftests/bpf: Add uprobe_multi cookie test
Adding test for cookies setup/retrieval in uprobe_link uprobes
and making sure bpf_get_attach_cookie works properly.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Link: https://lore.kernel.org/r/20230809083440.3209381-27-jolsa@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2023-08-21 15:51:27 -07:00