One-element and zero-length arrays are deprecated [1]. Kernel
code should always use "flexible array members" instead, except
for existing uapi definitions.
The script warns about one-element and zero-length arrays in structs.
[1] commit 68e4cd17e2 ("docs: deprecated.rst: Add zero-length and
one-element arrays")
Cc: Kees Cook <keescook@chromium.org>
Cc: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Denis Efremov <efremov@linux.com>
Signed-off-by: Julia Lawall <julia.lawall@inria.fr>
- add new functionality for writing and reading values to and from addresses
-----BEGIN PGP SIGNATURE-----
iQJLBAABCAA1FiEEUdvKHhzqrUYPB/u8L21+TfbCqH4FAl9uDNIXHG1hdHRoaWFz
LmJnZ0BnbWFpbC5jb20ACgkQL21+TfbCqH777A/5ASiedzS8mRv0zlgx4h+QI/qG
gouDhG6P/1hrDZxIaCrujXn30t5pGBKYJq4FwMdlDLTNCVZp926ibJu+/prvsTFw
KqD9jD3pCa47BBEqURwu6o7Wn4WU5t1vT9A7Dh1v/lIvt9Fg9g77na9E4FIWLwfg
1DOKtrcPUsoStW0oYxDjA9yWIxPYoMiRCV3tu9x2RFn+akL2TsWzvfD+VM2aqAMb
rl0tO5soxbTv1Mx94ZZM58Ls17OqP77WAcsdf+ATBb6lmnrKfNSdXi1zKqn0e8+f
BU8vDuU/KwKkdi2Ql5uzXKAe1dKKHM2rDCxMwMcdx85Rql2MaFtCIkhUx71HMqXW
zxIh4XmCEi3CBk6NK+OgRgJgnue8d3F/N5JEJVUKHKYAq8c/U9MU0ClhrMoEfaK/
Q/lYUH0t4wS8Ts6OfnQLVS+wX4bHLboAr07xGKaU5cgHN1CtuD6YvB2V74JeAGLS
9V91V4pXEvHMpJNeBnHMgJapFXVOQJvDGUFgE+PbAJaBjqgC0QyQpmBXfy+6A1Cl
KRA8vnliFsWXSt1/V5vM2pXQKmI50NrXsFz21VdQ5YhspK9UAMX8V1uQtew1To2k
G1AL20v5rVSVD7HWyj8FZx/ol14xZ5UvGbQCBNhOblDshXjQtOFV4yBk055VhfWp
cOk3axUVVx6+BO7egDE=
=VQGK
-----END PGP SIGNATURE-----
Merge tag 'v5.9-next-soc' of https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux into arm/drivers
cmdq helper:
- add new functionality for writing and reading values to and from addresses
* tag 'v5.9-next-soc' of https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux:
drm/mediatek: reduce clear event
soc: mediatek: cmdq: add clear option in cmdq_pkt_wfe api
soc: mediatek: cmdq: add jump function
soc: mediatek: cmdq: add write_s_mask value function
soc: mediatek: cmdq: add write_s value function
soc: mediatek: cmdq: add read_s function
soc: mediatek: cmdq: add write_s_mask function
soc: mediatek: cmdq: add write_s function
soc: mediatek: cmdq: add address shift in jump
soc: mediatek: mtk-infracfg: Fix kerneldoc
Link: https://lore.kernel.org/r/ac672cc9-059c-b768-3a67-1f674d4a2b7a@gmail.com
Signed-off-by: Olof Johansson <olof@lixom.net>
1. Add support for MT8167 to Mediatek SMI.
2. Compile test fix (omap-gpmc) and duplicate code (tegra).
3. Simplify code with DEFINE_SHOW_ATTRIBUTE.
-----BEGIN PGP SIGNATURE-----
iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAl9uC2cQHGtyemtAa2Vy
bmVsLm9yZwAKCRDBN2bmhouD16HKD/9rruVkVkUpc6HID6455zLVUBvqH0E3s01z
0tvfprEPKr7xmyYsl7Lsu8fV1ZzKfDtrqPQkK/Fs/UVrZgOS/imYeSngNcGgmAuV
w6YNJjpO4356h+p3rCydjsB18zdtjSiXb1nxVaxvo1Wv2dZ0Q4lX3/QhgvuirMMy
MXvo8mNVZU3O7cb0+OiJlSb4HwNfv9lkY4AbH2EkAiw8iCaEjeCiIjOLTSrWoaD5
cQh+meV9v7lwSl23Y6tXabDf0K9OwF3HysEbNcgZL5utdh4NWdNVTNou+AM2PJBo
w/YIC2JIRSxGhJwvgOfGb/47Hsoh0rXUQ/W2Wi8gaZUZ/YWr5FnPP7J3I7JN4Oy8
dPPeN3yxqfPUMWTyVpjN+yzKb+MhBFG2wwVFXwFyE6nZKPOc6J+VzTQTMpAAMRlF
LlNOBfei8TjVVnfZrgmN1lZZYg82jgnvjfgnrFuANrn/oMqIh52PvWMhw1gtchhw
FvtzJioJlgGgxUarjcnFaeDaqv/7y7qMsTMYsda+cK5p0JzFVjqWjuHUQtlFk8Hd
7uEwPLn/bv6u5HcHeWLt6aXTSea+p/Bh6z+D0yACQb+XckhIMRhjgFUZw/w8L6SK
98orgIPwt9FJ8K1Q9jrohbhbqU+eand0JOOosJQ8Hy0mQI+joozu7xbG+U8MKKgB
osIP7TRiwA==
=THqh
-----END PGP SIGNATURE-----
Merge tag 'memory-controller-drv-5.10-2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into arm/drivers
Memory controller drivers for v5.10, part two
1. Add support for MT8167 to Mediatek SMI.
2. Compile test fix (omap-gpmc) and duplicate code (tegra).
3. Simplify code with DEFINE_SHOW_ATTRIBUTE.
* tag 'memory-controller-drv-5.10-2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
memory: emif: Convert to DEFINE_SHOW_ATTRIBUTE
memory: tegra: Convert to DEFINE_SHOW_ATTRIBUTE
memory: omap-gpmc: Fix compile test on SPARC
memory: mtk-smi: add support for MT8167
dt-bindings: memory: mediatek: Add binding for MT8167 SMI
memory: tegra: Delete duplicated argument to '|' in function tegra210_emc_r21021_periodic_compensation
Link: https://lore.kernel.org/r/20200925152523.14608-1-krzk@kernel.org
Signed-off-by: Olof Johansson <olof@lixom.net>
This tag allows to build reset-imx7 as a module, and adds support to
reset the Cortex-M4 processor on i.MX8MQ to it, adds support for the
Versal platform to the reset-zynqmp driver, and fixes some kerneldoc
comments in the core and in sti/reset-syscfg.
-----BEGIN PGP SIGNATURE-----
iI0EABYIADUWIQRRO6F6WdpH1R0vGibVhaclGDdiwAUCX2tCQxcccC56YWJlbEBw
ZW5ndXRyb25peC5kZQAKCRDVhaclGDdiwNnQAQDnOhM1615HbwZ0YZM+jHC8U8+e
DfzXfsANHTffGJ4kZQEA1Z9uELtzsgQrrrtq3PaVVbYXGUcv2enMAO1AUD/0jwQ=
=zNMu
-----END PGP SIGNATURE-----
Merge tag 'reset-for-v5.10' of git://git.pengutronix.de/pza/linux into arm/drivers
Reset controller updates for v5.10
This tag allows to build reset-imx7 as a module, and adds support to
reset the Cortex-M4 processor on i.MX8MQ to it, adds support for the
Versal platform to the reset-zynqmp driver, and fixes some kerneldoc
comments in the core and in sti/reset-syscfg.
* tag 'reset-for-v5.10' of git://git.pengutronix.de/pza/linux:
reset: sti: reset-syscfg: fix struct description warnings
reset: imx7: add the cm4 reset for i.MX8MQ
dt-bindings: reset: imx8mq: add m4 reset
reset: Fix and extend kerneldoc
reset: reset-zynqmp: Added support for Versal platform
dt-bindings: reset: Updated binding for Versal reset driver
reset: imx7: Support module build
Link: https://lore.kernel.org/r/2b77c90d2b970eb8fa09000b9ecb564bffa76374.camel@pengutronix.de
Signed-off-by: Olof Johansson <olof@lixom.net>
Replace the busy wait for free tcs slots in the RPMh driver with a
sleeping wait and use memory barriers when writing the command registers.
Add a bunch of SoC ids to the socinfo driver, fix an erro printin the
apr driver and migrate llcc to devm_platform_ioremap_resource_byname().
-----BEGIN PGP SIGNATURE-----
iQJPBAABCAA5FiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAl9sEdIbHGJqb3JuLmFu
ZGVyc3NvbkBsaW5hcm8ub3JnAAoJEAsfOT8Nma3F4x8P/3EW9en9/ZGeNMAi6c9X
3/OcCtLBQlq6e9xvxyEEV5j0809u0/gTxOr09oupFw8cjKH76hU0Yc6Ag0tYN1tZ
xoDDonCKvxpCuGlMzzG27G9EljbLpia4Nth+U0YaEAswNgYUwarqmFTjTdB4bd7d
bOMrrjU34/uNas8PLKo5MOI3iywtE79XdjYsOLoDOPLib8r7MH2zK/Ux/UJN4I+v
mQheg08LFOvsucFSy+r+haEwikUMvVgVCIGOApKK2+kIFsK31kqUc8udTrvuEi67
SD8hyJaeWR+HfVj/kkudLR+FzX49AauaFaCVxZ9ODO0iWpntSnWRP6q211oOWgwd
eMKmZ7WH6RyaTN8PTKs78yuJ9+MYQUletnGbKt3npOUjfan9WsEnQrsh0JWT9rDb
+d2IZ6USYdnzxOG0qsP5sbbpnVsGFYl+eABQ8/cvRr/W1lmHo+sdArcjAXcI65yc
i6IHBnXmZJh6c5d/fUGyazBHpsmGIcL568PzmQ0EQCnHJcaH4SEgE8CPUnYFQtKG
5qzi/cLonXefQNZgbmb4fc60tqjUAQTjtS7IqsYFHV2rmueCPWFjj5fyuaB6CWQj
e7lmTcHRHJl9EQYzZfEShMMwF5B6CnfNEkCBTZLE72ypodCyU8UNO6aF5FybtVhn
9hVWlAqnJCJfhIutuuKs6WYI
=GI6C
-----END PGP SIGNATURE-----
Merge tag 'qcom-drivers-for-5.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/drivers
Qualcomm driver updates for v5.10
Replace the busy wait for free tcs slots in the RPMh driver with a
sleeping wait and use memory barriers when writing the command registers.
Add a bunch of SoC ids to the socinfo driver, fix an erro printin the
apr driver and migrate llcc to devm_platform_ioremap_resource_byname().
* tag 'qcom-drivers-for-5.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
soc: qcom: llcc: use devm_platform_ioremap_resource_byname()
soc: qcom: apr: Fixup the error displayed on lookup failure
soc: qcom: socinfo: Add msm8992/4 and apq8094 SoC IDs
soc: qcom: rpmh-rsc: Sleep waiting for tcs slots to be free
soc: qcom-geni-se: Don't use relaxed writes when writing commands
soc: qcom: socinfo: add SC7180 entry to soc_id array
soc: qcom: socinfo: add soc id for IPQ6018
Link: https://lore.kernel.org/r/20200924040504.179708-1-bjorn.andersson@linaro.org
Signed-off-by: Olof Johansson <olof@lixom.net>
- Use dev_err_probe() to simplify error handling for i.MX GPCv2 driver.
- Add a check in i.MX SCU power domain driver to ignore the power
domains that are not owned by the current partition.
-----BEGIN PGP SIGNATURE-----
iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAl9qjugUHHNoYXduZ3Vv
QGtlcm5lbC5vcmcACgkQUFdYWoewfM7xwgf+K/yRr+pk2kbfYal+mAVozVPP2vXH
fx4e+voMfHW4g25BrFQM4pV882w58Hh69duB+qoVtPjUZtpTes812gmDJf8N1H7r
fk/ZQQdrq3pDDe2XEKP/RperIBvzhbRPIu1per4gsLzoBx5Jm71Q0i0bEt/7mPSM
rZuS1qAZWPFBKtVRR3+iKrkM8HWLERacpjuXTIEFyav988BjxY27GPwwpG7WFv1v
aaO+nVno7xKo24hCVmY+GUrbTxNkYIKH9415iCf38EQx5gKOvKwvp/Jn061p9Vqb
8+0UNMyA+5YWs8fyOIUhWD0qOkWcGUlJCun7vB/3NDFzvgTnAGyyJCEK7g==
=tfwW
-----END PGP SIGNATURE-----
Merge tag 'imx-drivers-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/drivers
i.MX drivers update for 5.10:
- Use dev_err_probe() to simplify error handling for i.MX GPCv2 driver.
- Add a check in i.MX SCU power domain driver to ignore the power
domains that are not owned by the current partition.
* tag 'imx-drivers-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
firmware: imx: scu-pd: ignore power domain not owned
soc: imx: gpcv2: Use dev_err_probe() to simplify error handling
Link: https://lore.kernel.org/r/20200923073009.23678-1-shawnguo@kernel.org
Signed-off-by: Olof Johansson <olof@lixom.net>
Even though the SP804 binding allows to specify only one clock, the
primecell driver requires a named clock to activate the bus clock.
Specify the one clock three times and provide some clock-names, to
make the DT match the SP804 and primecell binding.
Link: https://lore.kernel.org/r/20200907121831.242281-3-andre.przywara@arm.com
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
Even though the SP804 binding allows to specify only one clock, the
primecell driver requires a named clock to activate the bus clock.
Specify the one clock three times and provide some clock-names, to
make the DT match the SP804 and primecell binding.
Also add the missing arm,primecell compatible string.
Link: https://lore.kernel.org/r/20200907121831.242281-4-andre.przywara@arm.com
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
The SP805 DT binding requires two clocks to be specified, but the two
LG platform DTs currently only specify one clock.
In practice, Linux would pick a clock named "apb_pclk" for the bus
clock, and the Linux (and U-Boot) SP805 driver would use the first clock
to derive the actual watchdog counter frequency.
Since currently both are the very same clock, we can just double the
clock reference, and add the correct clock-names, to match the binding.
Link: https://lore.kernel.org/r/20200907121831.242281-6-andre.przywara@arm.com
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Acked-by: Chanho Min <chanho.min@lge.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
Since the dtsi/dts files have been moved some includes are now
broken so this fixes up the includes so the dtbs build again.
Link: https://lore.kernel.org/r/20201002133418.2250277-6-daniel@0x0f.com
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
Since we now have support for the interrupt controller pm_uart's
interrupt is routed through it make sense to wire up it's interrupt
in the device tree.
The interrupt is the same for all known chips so it goes in the
base dtsi.
Link: https://lore.kernel.org/r/20201002133418.2250277-4-daniel@0x0f.com
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
Add the IRQ and FIQ intc instances to the base MStar/SigmaStar v7
dtsi. All of the known SoCs have both and at the same place with
their common IPs using the same interrupt lines.
Link: https://lore.kernel.org/r/20201002133418.2250277-3-daniel@0x0f.com
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
MediaTek recently introduced support for the MStar interrupt
controller that is also present in some of their chips as well
as the MStar/Sigmastar chips.
Almost all of the peripheral interrupts go through an instance of
this controller in MStar/SigmaStar Arm v7 chips so we want to select
it if CONFIG_ARCH_MSTARV7 is selected.
Link: https://lore.kernel.org/r/20201002133418.2250277-2-daniel@0x0f.com
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
Fix AM33XX_IOPAD macro that broke after recent pinctrl changes
to use #pinctrl-cells = 2. And fix omap_enter_idle_coupled()
for cases where cpu_cluster_pm_enter() returns an error as
otherwise we may end up wrongly idling the MPU domain on the
next WFI.
-----BEGIN PGP SIGNATURE-----
iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAl91oP4RHHRvbnlAYXRv
bWlkZS5jb20ACgkQG9Q+yVyrpXNjyQ/+O5YLq9sOHq4QS5HD8xbopZ6RZsGiodwo
RDuKINgh24kfRsAJGJ/GTN8rq0H1Mf86kviXWl7xE7PElFGRNzk1R9YmiJKfwjDf
xKm7WuEipfxG18CMjp2XFPq+/1ANbnKyRVR/zq/uSInDvIcxuQlz4OrrrkR/MCOv
PL34VVD0k2XaA5cQc62jyZXsWLja7xflG6+wkSmx5GvLoa4kDAfCyPXx+e+21WPH
PvMgO4G2VKsUrzevSCg4B3oqW1HtreBO3uhp71C1UBrUI7xaBqJPifoZ/DusI60s
5MNqVu+cbOOfP3h1VHYfPKfqrduaWqfxWhe81TShEiz6J9HoHHnTg2jt7R854o8Q
nvpNV8Kwbf8huTamIm1//itNHeuex1eGeWPbdjNR3wz4Fv6qYVV3UbKACRgmkAHm
nRrS7KOwBs1a9NGoST2gex05NhfAdw7RInRXoI/7YRsgC1eTwmABaX9lYpueFS7g
BO/IlLI5PFaGDDDz8VYeT1VAzpkEf/nwIfLcIVCOpXpwenXmQHZHgeEYpM91omLs
u2csHQEEhmbDuPX/dJKsPJIUQ7eHZWhlLx8zl4FEYCmLlremVyD4ll1QpXtP/XdD
k8+rJqFn35CuR8nqeMUdLt9cs2+Ch/VK7+83FuiBnm/CdnEwxY/zByv6CSCYyhxI
EnRILdVOEO0=
=sdtl
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v5.9/fixes-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/fixes
Two regression fixes for omaps
Fix AM33XX_IOPAD macro that broke after recent pinctrl changes
to use #pinctrl-cells = 2. And fix omap_enter_idle_coupled()
for cases where cpu_cluster_pm_enter() returns an error as
otherwise we may end up wrongly idling the MPU domain on the
next WFI.
* tag 'omap-for-v5.9/fixes-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: OMAP2+: Restore MPU power domain if cpu_cluster_pm_enter() fails
ARM: dts: am33xx: modify AM33XX_IOPAD for #pinctrl-cells = 2
Link: https://lore.kernel.org/r/pull-1601544624-617679@atomide.com
Signed-off-by: Olof Johansson <olof@lixom.net>
- Fix the system controller compatible for the hi3620 and hip04 SoCs
- Add the basic device tree for the hisilicon SD5203 SoC
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJfdCMMAAoJEAvIV27ZiWZcUxIP/1S7eF+l39oud7SPzX7cvY62
CoYkixPDTm8TvryE7iJD5adSz3ioLQhW5A/lCvglr2nWUOuDOGe06+Oqs5szggHr
QzUc5mQ90c0uHTzHegr0Gjry6M+paMaLnLaPw6xl6y8I77szPrsebmxLzjXMLqIk
78XEo+DogxnDZWDfdALKTcTJYP5mhwCDi7HnT4OvIjXMlmGtbmTc7zXOhBQtKk6P
IEe4h9Qhpjs5MA/kkf9QVWKpwoVP1bVIIaocCNcuqx+2ScGiCb/MibZ4gkRJV5B1
Wre3tN/kDh0Uq10jrjruH2krpy28dUFhx3pma1Yyn9SLhx8LZzB2L66wndLp4cXf
nzMuvwW57Lk3Q9y5ZFy97fGE8hO3mWb1xrkFFvuvxormkq1c07iQJ3LGf3NG8SeH
E/6mq6XQcnO/5UU8sXky3BSWIcxgFO67MT6qaJbTziTRWCDLRZCULR1IufxXCQ5O
ZLfVobjm+okA0Hz6c3jfShziv957qDClVqUn6wUfThlQaP05ekIdNxn7jNQOd/ju
Z2WGLDbh1a0GvheAjDPguxyhmFwDzWl4VgwuOSzvxyJ8O6LcjEeOBMEDVDAWLUFK
3Bs2fqZhVLD8yyJfPPDBfdmn4rBcpmUCP0yaoi0N5YnFDXtOtUJhngnrHVEJY3Ui
W6xY7lrnVF3znkyOaJET
=qsbd
-----END PGP SIGNATURE-----
Merge tag 'hisi-arm32-dt-for-5.10-tag2' of git://github.com/hisilicon/linux-hisi into arm/dt
ARM: DT: Hisilicon ARM32 SoCs DT updates for 5.10 (take two)
- Fix the system controller compatible for the hi3620 and hip04 SoCs
- Add the basic device tree for the hisilicon SD5203 SoC
* tag 'hisi-arm32-dt-for-5.10-tag2' of git://github.com/hisilicon/linux-hisi:
ARM: dts: hisilicon: add SD5203 dts
ARM: dts: hisilicon: fix the system controller compatible nodes
Link: https://lore.kernel.org/r/5F742717.5080405@hisilicon.com
Signed-off-by: Olof Johansson <olof@lixom.net>
Some more dts changes that did not make it to the first set of
dts changes:
- Drop unnessary nokia,nvm-size property
- A series of changes to use "okay" instead of "ok"
- A series of changes to move boards to use new cpsw switch
driver and drop the drop legacy cpsw dt node
- A series of changes to fix issues with the GPIO binding
usage
-----BEGIN PGP SIGNATURE-----
iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAl90Ho0RHHRvbnlAYXRv
bWlkZS5jb20ACgkQG9Q+yVyrpXP0Jw//bnvHcFvmvl19xKDdo/mnoVcbeMnpeIqV
ISRCA/ePr8q13k9f9KYM1pdT3oismQTkpGbBpfNL8hx+yXH1c1aDotqIzlwV6SBa
0dYLtAMx+TuQP7SWDShMaDUiaSiLRU4V1JHZZv+gBLq8IVRHyNCdwdfKirsHO100
/v0YZqLQcu3tfwn5RGQWsM948ddwQrga+SUNmJGU0sapJFDK6/mOY5B2sbwn8/bz
nw32jdd1JrV7i92ibzB5FkXZFMIU1SFhQYk4Hl2r5RfGjAvd9I6mciAhh4T340Q7
AvnGmB0eST7Pd7Wh7j6R8TXNLZfeiRu42Zn1kcRmVMUGZgytBHcSpkI2bu0NkkT+
gZ431N71ck21yI9dlrR9NGDqhcKccZLtHkJiTqiyPsw3NgHXdUwwsVoJaHD7oVgT
9BOQrh15IefNY7rT7WjCsRYqjhKi9XokZoIGr6XVgHtwQfT5+qcJBAovHzYry5XO
5mCMRcxeFML1j23qERemPA9TcftIZ+VdZv/SW5DmjZjmnMhU9vtLSihoozZ9H/xr
zwZtunLheXpCj1rurdqgYeEYo2sfdIWuhc7CiGyR/vW+M0mLPlHqi/ISGQ4lNkp/
9AcleCxrirTWA4Ek+iE8qcAONl5LFpjSryTQGR3Pb5K7erwJ1YVasT/XP6N2ELHI
OuuTTAEuk+8=
=Df2a
-----END PGP SIGNATURE-----
Merge tag 'omap-for-v5.10/dt-part2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/dt
More dts changes for omaps for v5.10 merge window
Some more dts changes that did not make it to the first set of
dts changes:
- Drop unnessary nokia,nvm-size property
- A series of changes to use "okay" instead of "ok"
- A series of changes to move boards to use new cpsw switch
driver and drop the drop legacy cpsw dt node
- A series of changes to fix issues with the GPIO binding
usage
* tag 'omap-for-v5.10/dt-part2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: dts: am3874: iceboard: fix GPIO expander reset GPIOs
ARM: dts: am335x: t335: align GPIO hog names with dtschema
ARM: dts: am335x: lxm: fix PCA9539 GPIO expander properties
ARM: dts: am437x-l4: drop legacy cpsw dt node
ARM: dts: am437x: switch to new cpsw switch drv
ARM: dts: am437x-l4: add dt node for new cpsw switchdev driver
ARM: dts: dra7: drop legacy cpsw dt node
ARM: dts: am57xx-cl-som-am57x: switch to new cpsw switch drv
ARM: dts: dra7x-evm: switch to new cpsw switch drv
ARM: dts: beagle-x15: switch to new cpsw switch drv
ARM: dts: am57xx-idk: switch to new cpsw switch drv
ARM: dts: am5729: beagleboneai: switch to new cpsw switch drv
ARM: dts: am43xx: replace status value "ok" by "okay"
ARM: dts: dra7xx: replace status value "ok" by "okay"
ARM: dts: omap: replace status value "ok" by "okay"
ARM: dts: n9, n950: Remove nokia,nvm-size property
Link: https://lore.kernel.org/r/pull-1601445968-476435@atomide.com-2
Signed-off-by: Olof Johansson <olof@lixom.net>
and the pinecube board
-----BEGIN PGP SIGNATURE-----
iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCX3HKAwAKCRDj7w1vZxhR
xc3bAQCcnys+hZ4XtwA/GIT10zcvpBVkUrjU56zZPG9WiEA9AgD/S9PN5m6J0R7O
F8dU+0Xx8O+3KNwIhuqEw2Mj7WHpcwE=
=6hIV
-----END PGP SIGNATURE-----
Merge tag 'sunxi-dt-for-5.10-2' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/dt
A few more DT patches for 5.10, to support simple-framebuffer on the v3s
and the pinecube board
* tag 'sunxi-dt-for-5.10-2' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
ARM: dts: sun8i: v3s: Add simple-framebuffer
ARM: dts: sun8i: s3l: add support for Pine64 PineCube IP camera
dt-bindings: arm: sunxi: add Pine64 PineCube binding
ARM: dts: sun8i: V3/V3s/S3/S3L: add pinctrl for I2C1 at PE bank
ARM: dts: sun8i: V3/V3s/S3/S3L: add pinctrl for 8-bit parallel CSI
ARM: dts: sun8i: V3/V3s/S3/S3L: add CSI1 device node
ARM: dts: sun8i: V3/V3s/S3/S3L: add pinctrl for UART2 RX/TX
ARM: dts: sun8i: V3/V3s/S3/S3L: add Ethernet support
Link: https://lore.kernel.org/r/e7c12b59-8603-438d-908b-5f0bde2c8697.lettre@localhost
Signed-off-by: Olof Johansson <olof@lixom.net>
This patch adds FMC2 EBI controller support used by STM32MP SOCs.
Link: https://lore.kernel.org/r/20200924101342.4707-1-alexandre.torgue@st.com
Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
Rationale:
Reduces attack surface on kernel devs opening the links for MITM
as HTTPS traffic is much harder to manipulate.
Deterministic algorithm:
For each file:
If not .svg:
For each line:
If doesn't contain `\bxmlns\b`:
For each link, `\bhttp://[^# \t\r\n]*(?:\w|/)`:
If neither `\bgnu\.org/license`, nor `\bmozilla\.org/MPL\b`:
If both the HTTP and HTTPS versions
return 200 OK and serve the same content:
Replace HTTP with HTTPS.
Link: https://lore.kernel.org/r/20200924101113.4528-1-alexandre.torgue@st.com
Signed-off-by: Alexander A. Klimov <grandmaster@al2klimov.de>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
and a spelling for the status property.
-----BEGIN PGP SIGNATURE-----
iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAl9ryJUQHGhlaWtvQHNu
dGVjaC5kZQAKCRDzpnnJnNEdgWLgB/0fWWkgfABOtcqPv30NQwThE5d/zzGtS5vu
IBMdWK6EWgqT7eUcd/rVhfEJo+YuIyOfKU0AEKROyK/XjCaThgp4ERqpf4Obv3yf
T1mhTfqBbGt3fF39NTNBSUWO2kywOnZa32pUDZcckFgQEpSQNHsW8NYM7W0tj9Z7
GB0aMij23ps5ckN8bVd9ZSdwkTIu0hfr1o/GQRLhKbtrs/+CiJERjcfJVyKvKc5w
ieqaGyHvJ9Bjw83muHN2EUL7gJHQvo6WJI7XFiUxqSDOw4WqM/3UgganRVdwDpp6
88gBLRAWw2CUK5WMlQx2oJ8eiUZQL6eckJNM3+0NoP5LA8Owd6bI
=EIWN
-----END PGP SIGNATURE-----
Merge tag 'v5.10-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/dt
cpu-supply fixes (supply for each cpu core not only cpu0)
and a spelling for the status property.
* tag 'v5.10-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
ARM: dts: rockchip: replace status value "ok" by "okay"
ARM: dts: rockchip: update cpu supplies on rk3066a
ARM: dts: rockchip: rk3066a: add label to cpu@1
ARM: dts: rockchip: update cpu supplies on rk3288
Link: https://lore.kernel.org/r/1834049.gShM3QRH0n@diego
Signed-off-by: Olof Johansson <olof@lixom.net>
- Fix the memory region used by pinctrl and sps drivers on the S700 SoC.
The issue is fixed by limiting the address space used by pinctrl driver.
In hardware these two are separate subsystems but the hw engineers somehow
merged the registers space into one. So we now limit the address space with
appropriate offsets for the two drivers.
- Add DMA controller support for S700 SoC. The relevant driver changes are
picked up by DMA Engine mainatainer. The DMA on this SoC can be used for
mem-to-mem and mem-to-peripheral transfers.
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEEZ6VDKoFIy9ikWCeXVZ8R5v6RzvUFAl9psSsACgkQVZ8R5v6R
zvXpIwf/aPOv832RfHqYe+Skq0TujFNno3AocCsZpHiy1BS9JoaKVBw9O4EecZhu
aWTag7hubNF8XcEE4dZWSwxkl0DNlpdWvRZNbbS/X6KUoS3lNwkVq4nuN2RXgw0p
bUoKuHSpVHSj667+/h+VuslqX0Ef6CAy4pmg6qaCpIlWCYzLX1hQ41pLNtDy0tNp
39d8yjCdbA6ye9vtgemzLqY0GvPs8GS7dDQbGdIhKPiGJOVoxMCsLV48yfhE9JQF
6y7ZMYvYU6oadS5SdLa8IhC9MzZ80MK9cxz9ve3r6Svznv2Ue0mqkfLJXRA1j8gs
6Yg1fecxMQvx75dNMcQvB6eM9r4rOw==
=R/29
-----END PGP SIGNATURE-----
Merge tag 'actions-arm64-dt-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mani/linux-actions into arm/dt
Actions Semi ARM64 DT for v5.10:
- Fix the memory region used by pinctrl and sps drivers on the S700 SoC.
The issue is fixed by limiting the address space used by pinctrl driver.
In hardware these two are separate subsystems but the hw engineers somehow
merged the registers space into one. So we now limit the address space with
appropriate offsets for the two drivers.
- Add DMA controller support for S700 SoC. The relevant driver changes are
picked up by DMA Engine mainatainer. The DMA on this SoC can be used for
mem-to-mem and mem-to-peripheral transfers.
* tag 'actions-arm64-dt-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mani/linux-actions:
arm64: dts: actions: Add DMA Controller for S700
arm64: dts: actions: limit address range for pinctrl node
Link: https://lore.kernel.org/r/20200922114030.GC11251@Mani-XPS-13-9360
Signed-off-by: Olof Johansson <olof@lixom.net>
- Add devicetree support for Caninos Loucos Labrador SBC manufactured
by Laboratory of Integrated Technological Systems (LSI-TEC), Brazil.
This board is based on Actions Semi S500 SoC. More information about
this board can be found in their website: https://caninosloucos.org/en/
- Fix PPI interrupt specifiers for peripherals attached to Cortex-A9 CPU
- Add devicetree support for RoseapplePi SBC manufactured by Roseapple Pi
team in Taiwan. This board is based on Actions Semi S500 SoC.
More information about this board can be found in their website:
http://roseapplepi.org/
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEEZ6VDKoFIy9ikWCeXVZ8R5v6RzvUFAl9prhwACgkQVZ8R5v6R
zvVUKwgAp09Kdu17PUNmoqjujUmkAlANgzW30Z12ear1hSJNEoXV8ZgswAYyeerk
exPQWXEvueDYXXgXiLCjaOI8p/Ukae4wc8eaTyYN7i0JMxGQ1wnpdEI8su1VC+ph
+RuL/mH/dc/pibWMBVIf+YP4mfQz+RCX1+VRHbINKHeMuQ3rCecQ6352GZxkt/EU
3BEr2QpNBvIwMLxllUf51k/ng9w2mtEk+7uDEPJmBtUCbRUWxhq5UexAoUJbPvLU
2f8OpYh4Tbnxl/FLuRYCl0Yhk2bB9600HNhx1enK/P2u3wuJkK1tDlmLZoYOuirc
imx3OrzSnqOtAJBg2chcaY2tq+SUtA==
=PNl0
-----END PGP SIGNATURE-----
Merge tag 'actions-arm-dt-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mani/linux-actions into arm/dt
Actions Semi ARM DT for v5.10:
- Add devicetree support for Caninos Loucos Labrador SBC manufactured
by Laboratory of Integrated Technological Systems (LSI-TEC), Brazil.
This board is based on Actions Semi S500 SoC. More information about
this board can be found in their website: https://caninosloucos.org/en/
- Fix PPI interrupt specifiers for peripherals attached to Cortex-A9 CPU
- Add devicetree support for RoseapplePi SBC manufactured by Roseapple Pi
team in Taiwan. This board is based on Actions Semi S500 SoC.
More information about this board can be found in their website:
http://roseapplepi.org/
* tag 'actions-arm-dt-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mani/linux-actions:
ARM: dts: owl-s500: Add RoseapplePi
ARM: dts: owl-s500: Fix incorrect PPI interrupt specifiers
ARM: dts: Add Caninos Loucos Labrador v2
Link: https://lore.kernel.org/r/20200922113712.GB11251@Mani-XPS-13-9360
Signed-off-by: Olof Johansson <olof@lixom.net>
- Add vendor prefix for Roseapple Pi: http://roseapplepi.org/
- Document RoseapplePi SBC manufactured by Roseapple Pi team in Taiwan.
This board is based on Actions Semi S500 SoC. More information about
this board can be found in their website:
http://roseapplepi.org/index.php/spec/
- Add vendor prefix for Caninos Loucos Program:
https://caninosloucos.org/en/program-en/
- Document Caninos Loucos Labrador SBC manufactured by Laboratory of
Integrated Technological Systems (LSI-TEC), Brazil. This board is based
on Actions Semi S500 SoC. More information about this board can be found
in their website: https://caninosloucos.org/en/labrador-32-en/
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEEZ6VDKoFIy9ikWCeXVZ8R5v6RzvUFAl9ptIAACgkQVZ8R5v6R
zvUtBAgAlxNP6fKleQaWm3s0uFCut7WI0hRHgtVvdykFOSXvY6OehZWEDLVRrs4l
+F1gSCr1PY7RaenAYVOQH2uEpLsXOgB/HXRLm40I6bcma4i7uan/b7vTtsHg9ZQy
h2e/rJTEmwjPWw1gyHsEX/h8PW4OI/F2Cr38ZDwNdpTpylv6tBiWhT4ewxGVMt/Y
ejcOLwxw98iIrg7Zjniolju9L7pog1XhgJJDwRhI8kOvo7wvhstsKuc20dq+eIGD
z/ZjVce+TvLYEc0DpRcDkoWvP39PzZ7wHsaDzMHft9y4X0VxWZES/ogsYmKRXstA
Z2WOkcqYKuVPOzS13r5T2A3xNDjzTQ==
=vQTE
-----END PGP SIGNATURE-----
Merge tag 'actions-bindings-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mani/linux-actions into arm/dt
Actions Semi bindings for v5.10
- Add vendor prefix for Roseapple Pi: http://roseapplepi.org/
- Document RoseapplePi SBC manufactured by Roseapple Pi team in Taiwan.
This board is based on Actions Semi S500 SoC. More information about
this board can be found in their website:
http://roseapplepi.org/index.php/spec/
- Add vendor prefix for Caninos Loucos Program:
https://caninosloucos.org/en/program-en/
- Document Caninos Loucos Labrador SBC manufactured by Laboratory of
Integrated Technological Systems (LSI-TEC), Brazil. This board is based
on Actions Semi S500 SoC. More information about this board can be found
in their website: https://caninosloucos.org/en/labrador-32-en/
* tag 'actions-bindings-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mani/linux-actions:
dt-bindings: arm: actions: Document RoseapplePi
dt-bindings: Add vendor prefix for RoseapplePi.org
dt-bindings: arm: actions: Document Caninos Loucos Labrador
dt-bindings: Add vendor prefix for Caninos Loucos
Link: https://lore.kernel.org/r/20200922113408.GA11251@Mani-XPS-13-9360
Signed-off-by: Olof Johansson <olof@lixom.net>
-----BEGIN PGP SIGNATURE-----
iHUEABYIAB0WIQRTLbB6QfY48x44uB6AXGG7T9hjvgUCX3goZAAKCRCAXGG7T9hj
viTvAP9RdCXpqUtMMkOn+EjEuPSassK+o5ErF1XSEUTTXht5mwEAzk01afa5i/vH
7cI2qzy9PuKvuFWmS1guxFnlwZtncgw=
=vnRB
-----END PGP SIGNATURE-----
Merge tag 'for-linus-5.9b-rc8-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip
Pull xen fix from Juergen Gross:
"Fix a regression introduced in 5.9-rc3 which caused a system running
as fully virtualized guest under Xen to crash when using legacy
devices like a floppy"
* tag 'for-linus-5.9b-rc8-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
xen/events: don't use chip_data for legacy IRQs
Here are some small USB and PHY driver fixes for 5.9-rc8
The PHY driver fix resolves an issue found by Dan Carpenter for a memory
leak.
The USB fixes fall into two groups:
- usb gadget fix from Bryan that is a fix for a previous
security fix that showed up in in-the-wild testing
- usb core driver matching bugfixes. This fixes a bug that has
plagued the both the usbip driver and syzbot testing tools
this -rc release cycle. All is now working properly so usbip
connections will work, and syzbot can get back to fuzzing USB
drivers properly.
All have been in linux-next for a while with no reported issues.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-----BEGIN PGP SIGNATURE-----
iG0EABECAC0WIQT0tgzFv3jCIUoxPcsxR9QN2y37KQUCX3iJwg8cZ3JlZ0Brcm9h
aC5jb20ACgkQMUfUDdst+ymhTACfYc818o/wXpEwc6pr3ABAdDy2U1UAnRb0PwZf
FJeW+3sSUbM8wzn+SAc7
=/rl/
-----END PGP SIGNATURE-----
Merge tag 'usb-5.9-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB/PHY fixes from Greg KH:
"Here are some small USB and PHY driver fixes for 5.9-rc8
The PHY driver fix resolves an issue found by Dan Carpenter for a
memory leak.
The USB fixes fall into two groups:
- usb gadget fix from Bryan that is a fix for a previous security fix
that showed up in in-the-wild testing
- usb core driver matching bugfixes. This fixes a bug that has
plagued the both the usbip driver and syzbot testing tools this -rc
release cycle. All is now working properly so usbip connections
will work, and syzbot can get back to fuzzing USB drivers properly.
All have been in linux-next for a while with no reported issues"
* tag 'usb-5.9-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
usbcore/driver: Accommodate usbip
usbcore/driver: Fix incorrect downcast
usbcore/driver: Fix specific driver selection
Revert "usbip: Implement a match function to fix usbip"
USB: gadget: f_ncm: Fix NDP16 datagram validation
phy: ti: am654: Fix a leak in serdes_am654_probe()
Pull i2c fixes from Wolfram Sang:
"Some more driver fixes for i2c"
* 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
i2c: npcm7xx: Clear LAST bit after a failed transaction.
i2c: cpm: Fix i2c_ram structure
i2c: i801: Exclude device from suspend direct complete optimization
Pull input fixes from Dmitry Torokhov:
"A couple more driver quirks, now enabling newer trackpoints from
Synaptics for real"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: i8042 - add nopnp quirk for Acer Aspire 5 A515
Input: trackpoint - enable Synaptics trackpoints
One of the entries has three fields "mistake||correction||correction"
rather than the expected two fields "mistake||correction". Fix it.
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Link: https://lkml.kernel.org/r/20200930234359.255295-1-ebiggers@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
memalloc_nocma_{save/restore} APIs can be used to skip page allocation
on CMA area, but, there is a missing case and the page on CMA area could
be allocated even if APIs are used. This patch handles this case to fix
the potential issue.
For now, these APIs are used to prevent long-term pinning on the CMA
page. When the long-term pinning is requested on the CMA page, it is
migrated to the non-CMA page before pinning. This non-CMA page is
allocated by using memalloc_nocma_{save/restore} APIs. If APIs doesn't
work as intended, the CMA page is allocated and it is pinned for a long
time. This long-term pin for the CMA page causes cma_alloc() failure
and it could result in wrong behaviour on the device driver who uses the
cma_alloc().
Missing case is an allocation from the pcplist. MIGRATE_MOVABLE pcplist
could have the pages on CMA area so we need to skip it if ALLOC_CMA
isn't specified.
Fixes: 8510e69c8e (mm/page_alloc: fix memalloc_nocma_{save/restore} APIs)
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: "Aneesh Kumar K . V" <aneesh.kumar@linux.ibm.com>
Cc: Mel Gorman <mgorman@techsingularity.net>
Link: https://lkml.kernel.org/r/1601429472-12599-1-git-send-email-iamjoonsoo.kim@lge.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
The routine that applies debug flags to the kmem_cache slabs
inadvertantly prevents non-debug flags from being applied to those
same objects. That is, if slub_debug=<flag>,<slab> is specified,
non-debugged slabs will end up having flags of zero, and the slabs
may be unusable.
Fix this by including the input flags for non-matching slabs with the
contents of slub_debug, so that the caches are created as expected
alongside any debugging options that may be requested. With this, we
can remove the check for a NULL slub_debug_string, since it's covered
by the loop itself.
Fixes: e17f1dfba3 ("mm, slub: extend slub_debug syntax for multiple blocks")
Signed-off-by: Eric Farman <farman@linux.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Kees Cook <keescook@chromium.org>
Cc: Christoph Lameter <cl@linux.com>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: David Rientjes <rientjes@google.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Link: https://lkml.kernel.org/r/20200930161931.28575-1-farman@linux.ibm.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
max17048 and max17049 support SOC alerts (interrupts when battery
capacity changes by +/- 1%). At the moment the driver polls for changes
every second. Using the alerts removes the need for polling.
Signed-off-by: Iskren Chernev <iskren.chernev@gmail.com>
Tested-by: Jonathan Bakker <xc-racer2@live.ca>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
The Maxim ModelGauge family supports fine-tuning by setting
a compensation value (named rcomp in the docs). The value is affected by
battery chemistry and ambient temperature.
Add support for reading maxim,rcomp from DT and configuring the device
with the supplied value. Temperature adjustment is not implemented at
the moment, because there is no provision for receiving the ambient
temperature at the moment.
Signed-off-by: Iskren Chernev <iskren.chernev@gmail.com>
Tested-by: Jonathan Bakker <xc-racer2@live.ca>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
To compensate for the battery chemistry and operating conditions the
chips support a compensation value. Specify one or two byte compensation
via the maxim,rcomp byte array.
Signed-off-by: Iskren Chernev <iskren.chernev@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Maxim max17040 is a fuel gauge from a larger family utilising the Model
Gauge technology. Document all different compatible strings that the
max17040 driver recognizes.
Some devices in the wild report double the capacity. The
maxim,double-soc (from State-Of-Charge) property fixes that.
Examples: https://lore.kernel.org/patchwork/patch/1263411/#1468420
Signed-off-by: Iskren Chernev <iskren.chernev@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
An incorrect sizeof is being used, struct attribute ** is not correct,
it should be struct attribute *. Note that since ** is the same size as
* this is not causing any issues. Improve this fix by using sizeof(*attrs)
as this allows us to not even reference the type of the pointer.
Addresses-Coverity: ("Sizeof not portable (SIZEOF_MISMATCH)")
Fixes: 5168654630 ("x86/events/amd/iommu: Fix sysfs perf attribute groups")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20201001113900.58889-1-colin.king@canonical.com
It might be possible that different CPUs have different CPU metrics on a
platform. In this case, writing the GLOBAL_CTRL_EN_PERF_METRICS bit to
the GLOBAL_CTRL register of a CPU, which doesn't support the TopDown
perf metrics feature, causes MSR access error.
Current TopDown perf metrics feature is enumerated using the boot CPU's
PERF_CAPABILITIES MSR. The MSR only indicates the boot CPU supports this
feature.
Check the PERF_CAPABILITIES MSR for each CPU. If any CPU doesn't support
the perf metrics feature, disable the feature globally.
Fixes: 59a854e2f3 ("perf/x86/intel: Support TopDown metrics on Ice Lake")
Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20201001211711.25708-1-kan.liang@linux.intel.com
stress-ng has a test (stress-ng --cyclic) that creates a set of threads
under SCHED_DEADLINE with the following parameters:
dl_runtime = 10000 (10 us)
dl_deadline = 100000 (100 us)
dl_period = 100000 (100 us)
These parameters are very aggressive. When using a system without HRTICK
set, these threads can easily execute longer than the dl_runtime because
the throttling happens with 1/HZ resolution.
During the main part of the test, the system works just fine because
the workload does not try to run over the 10 us. The problem happens at
the end of the test, on the exit() path. During exit(), the threads need
to do some cleanups that require real-time mutex locks, mainly those
related to memory management, resulting in this scenario:
Note: locks are rt_mutexes...
------------------------------------------------------------------------
TASK A: TASK B: TASK C:
activation
activation
activation
lock(a): OK! lock(b): OK!
<overrun runtime>
lock(a)
-> block (task A owns it)
-> self notice/set throttled
+--< -> arm replenished timer
| switch-out
| lock(b)
| -> <C prio > B prio>
| -> boost TASK B
| unlock(a) switch-out
| -> handle lock a to B
| -> wakeup(B)
| -> B is throttled:
| -> do not enqueue
| switch-out
|
|
+---------------------> replenishment timer
-> TASK B is boosted:
-> do not enqueue
------------------------------------------------------------------------
BOOM: TASK B is runnable but !enqueued, holding TASK C: the system
crashes with hung task C.
This problem is avoided by removing the throttle state from the boosted
thread while boosting it (by TASK A in the example above), allowing it to
be queued and run boosted.
The next replenishment will take care of the runtime overrun, pushing
the deadline further away. See the "while (dl_se->runtime <= 0)" on
replenish_dl_entity() for more information.
Reported-by: Mark Simmons <msimmons@redhat.com>
Signed-off-by: Daniel Bristot de Oliveira <bristot@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Juri Lelli <juri.lelli@redhat.com>
Tested-by: Mark Simmons <msimmons@redhat.com>
Link: https://lkml.kernel.org/r/5076e003450835ec74e6fa5917d02c4fa41687e6.1600170294.git.bristot@redhat.com
rq->cpu_capacity is a key element in several scheduler parts, such as EAS
task placement and load balancing. Tracking this value enables testing
and/or debugging by a toolkit.
Signed-off-by: Vincent Donnefort <vincent.donnefort@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/1598605249-72651-1-git-send-email-vincent.donnefort@arm.com