Add SPI controller node to th1520.dtsi and enable spi0 on the BeagleV
Ahead and LicheePi 4A.
The TH1520 AP_SYS clock driver landed in v6.11 so convert multiple
peripherals like mmc and uart from fixed clocks to the clock controller.
All of these patches have been successfully tested in the latest
linux-next releases.
Signed-off-by: Drew Fustini <drew@pdp7.com>
-----BEGIN PGP SIGNATURE-----
iHUEABYIAB0WIQSy8G7QpEpV9aCf6Lbb7CzD2SixDAUCZsSs8AAKCRDb7CzD2Six
DAAWAQDtP1ptLdtgKZrNi6owuzDh+aJUBcLCb8XobohMhHn/CgEA+9m6uArj0BxA
FG5xrk6uh+/ueFRCRbU8Bx+PAnHgOQI=
=VHfU
-----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmbW4+MACgkQYKtH/8kJ
Uiezfg//QTJLzANaoQou548RBX4aqs1mV7s8YTuyPzg9WTaJ2pgRO4gJZIm9pBxe
SBosoNl2mbEEcpD6+V/W7raCxquliS76HyAaFq+379RfN30bGIe1YX7fDaR9DFuW
HAGVk+skgjZDZBeM2sjFF6ljK6O1ew8lyqNToTIsjwBLELCL/47NcKT/F0HDsCE9
CedTPmtMpFszLRDoenkuK5eI1OHJFWQd/1O87bdl4LhbPKBBrK/HHyY64DwUYkgn
k0lJXLfvE3w1mzF5Q5TCBNy/fbHATD3Akbwnv1YOKbScB1hdzsgdoJibkA9ty2ln
qeubp/H5lTss/vCiU7SQic3b9as6g5pneLM+v2RuN/BLX422HeV1N2DMxx07S4Ah
+9677pL7WZ2g8DM6u34ZPlZyUoj0ThlEO27GApIYTU0wQ2Vei2/Ru6Wd+DssQoyN
qr55/U/6RedD3SFNfnZwmA8UWRgHF7wyPaS0llB2ygSHYFR/Da0c+GbIsMK3xIes
z0x8TKsaxOjqhBrOVi1PmBKANgnq7lkRQ0R2NTF+jCQPQSO4WLsQ0NB9pbCnvnz4
XXGG8OzsdtY13uVvF7SbNxL7HjXgmPIeTp4NdZxsIob9guobc0DMcaFYUYGWtTFU
cHJ9DlSe4wwt0/9kAD8LaBgOHXLB96LYPQlD4u/dTpTyUl8sXPY=
=GXvM
-----END PGP SIGNATURE-----
Merge tag 'thead-dt-for-v6.12' of https://github.com/pdp7/linux into soc/dt
T-HEAD Devicetrees for v6.12
Add SPI controller node to th1520.dtsi and enable spi0 on the BeagleV
Ahead and LicheePi 4A.
The TH1520 AP_SYS clock driver landed in v6.11 so convert multiple
peripherals like mmc and uart from fixed clocks to the clock controller.
All of these patches have been successfully tested in the latest
linux-next releases.
Signed-off-by: Drew Fustini <drew@pdp7.com>
* tag 'thead-dt-for-v6.12' of https://github.com/pdp7/linux:
riscv: dts: thead: change TH1520 SPI node to use clock controller
riscv: dts: thead: add clock to TH1520 gpio nodes
riscv: dts: thead: update TH1520 dma and timer nodes to use clock controller
riscv: dts: thead: change TH1520 mmc nodes to use clock controller
riscv: dts: thead: change TH1520 uart nodes to use clock controller
riscv: dts: thead: Add TH1520 AP_SUBSYS clock controller
riscv: dts: thead: add basic spi node
Link: https://lore.kernel.org/r/ZsWs8QiVruMXjzPc@x1
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
- Enable support for AK4619 codecs and Renesas R-Car Ethernet-TSN
controllers in the ARM64 defconfig,
- Enable slab hardening and kmalloc buckets in the Renesas ARM
defconfig.
-----BEGIN PGP SIGNATURE-----
iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCZsbubAAKCRCKwlD9ZEnx
cOaHAQCizOEU5damvBCBzcAaKbSGKc+psBUJogJ/ic19I5B4NAD/aOihRr4iCJZe
MckRf7P2BebH75TbwTstZMscRkkGAAU=
=Wr7F
-----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmbW4wAACgkQYKtH/8kJ
UifX7xAAvO9EuI8hfOtLUmlXEUFYAZaqLSqNwg4i7s6U7qjn2Zt5dexTHOI90U1K
nZve4C2tp1/1llhWDxipna6FgXXYzdBM9LHPpGyzweQufeXYXCIDG7ECg13/5iCE
ibtvj1FFi9ZVFcneMUhyJo6b5epYw8ZJ50XjaCscH3Wo5FuLaJSZ9CnTUegO8Eff
NXJ43DA7bWh3dZdeuintC4wurooh4DAdDkwAAeWzxu8LDwGxREN0Q0JTod10cEME
pkVHctH0L3RtXrRaX/PTE7so2Cg4gjCR6qJv1FdCnE4NHi3Fs4humaddEc2iL4VQ
aOPIxHRcsJWJlZKG5afTaDUhDq0LuwvoaBmDLT8dlyYSp1k1QF9wRK6vvSEUe71Q
c26IUi5mZk1OWPQ/qvD43jtnkat9ZefDHkFaEvfCKQovBwzNkSBI6TApd+MImcQR
gZ3zb/z412An0yqOPU/q6oyAzMUvXIbzELXyIu+7p8dgk4veE/eq072EYAnS7J/5
fHF250ZXyZqxktUF2FdzLvHkLjux9eeIuruf+9nayHynF73PHpcw9rrWGQM2SaMG
vA/VNpf3Itx1+Ov/T6qo5lRf/2Y67c7gNrPdMt1PLNRiFHY5SmUeTIfe46rtFucE
usi4i2GnlpSliT0Xu44X9p8VxPJ6trSUGIfRApywgLxUhfZMA80=
=VxDt
-----END PGP SIGNATURE-----
Merge tag 'renesas-arm-defconfig-for-v6.12-tag1' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/defconfig
Renesas ARM defconfig updates for v6.12
- Enable support for AK4619 codecs and Renesas R-Car Ethernet-TSN
controllers in the ARM64 defconfig,
- Enable slab hardening and kmalloc buckets in the Renesas ARM
defconfig.
* tag 'renesas-arm-defconfig-for-v6.12-tag1' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
arm64: defconfig: Enable R-Car Ethernet-TSN support
ARM: shmobile: defconfig: Enable slab hardening and kmalloc buckets
arm64: defconfig: Enable AK4619 codec support
Link: https://lore.kernel.org/r/cover.1724316480.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Based on commit d8764d347b ("dt-bindings: firmware: xilinx: Describe
soc-nvmem subnode") soc-nvmem should be used instead of simple nvmem that's
why also update example to have it described correctly everywhere.
Fixes: c7f99cd8fb ("dt-bindings: nvmem: Convert xlnx,zynqmp-nvmem.txt to yaml")
Cc: stable <stable@kernel.org>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20240902142510.71096-4-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Verify data size before trying to parse it to avoid reading out of
buffer. This could happen in case of problems at MTD level or invalid DT
bindings.
Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
Cc: stable <stable@kernel.org>
Fixes: d5542923f2 ("nvmem: add driver handling U-Boot environment variables")
[rmilecki: simplify commit description & rebase]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902142510.71096-2-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
smatch warning:
drivers/misc/fastrpc.c:1926 fastrpc_req_mmap() error: double free of 'buf'
In fastrpc_req_mmap() error path, the fastrpc buffer is freed in
fastrpc_req_munmap_impl() if unmap is successful.
But in the end, there is an unconditional call to fastrpc_buf_free().
So the above case triggers the double free of fastrpc buf.
Fixes: 72fa6f7820 ("misc: fastrpc: Rework fastrpc_req_munmap")
Reviewed-by: Shuah Khan <skhan@linuxfoundation.org>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Sukrut Bellary <sukrut.bellary@linux.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: stable <stable@kernel.org>
Link: https://lore.kernel.org/r/20240902141409.70371-2-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Binder objects are processed and copied individually into the target
buffer during transactions. Any raw data in-between these objects is
copied as well. However, this raw data copy lacks an out-of-bounds
check. If the raw data exceeds the data section size then the copy
overwrites the offsets section. This eventually triggers an error that
attempts to unwind the processed objects. However, at this point the
offsets used to index these objects are now corrupted.
Unwinding with corrupted offsets can result in decrements of arbitrary
nodes and lead to their premature release. Other users of such nodes are
left with a dangling pointer triggering a use-after-free. This issue is
made evident by the following KASAN report (trimmed):
==================================================================
BUG: KASAN: slab-use-after-free in _raw_spin_lock+0xe4/0x19c
Write of size 4 at addr ffff47fc91598f04 by task binder-util/743
CPU: 9 UID: 0 PID: 743 Comm: binder-util Not tainted 6.11.0-rc4 #1
Hardware name: linux,dummy-virt (DT)
Call trace:
_raw_spin_lock+0xe4/0x19c
binder_free_buf+0x128/0x434
binder_thread_write+0x8a4/0x3260
binder_ioctl+0x18f0/0x258c
[...]
Allocated by task 743:
__kmalloc_cache_noprof+0x110/0x270
binder_new_node+0x50/0x700
binder_transaction+0x413c/0x6da8
binder_thread_write+0x978/0x3260
binder_ioctl+0x18f0/0x258c
[...]
Freed by task 745:
kfree+0xbc/0x208
binder_thread_read+0x1c5c/0x37d4
binder_ioctl+0x16d8/0x258c
[...]
==================================================================
To avoid this issue, let's check that the raw data copy is within the
boundaries of the data section.
Fixes: 6d98eb95b4 ("binder: avoid potential data leakage when copying txn")
Cc: Todd Kjos <tkjos@google.com>
Cc: stable@vger.kernel.org
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Link: https://lore.kernel.org/r/20240822182353.2129600-1-cmllamas@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The usual mixed bag of new issues and ancient ones.
The fact so many are ADI is probably due to an uptick in upstreaming
effort from Analog + Baylibre meaning existing code is getting more eyes
on it. Hence it's a good sign not a reflection of inherent high bug
incidence!
Core and helper related
-----------------------
in kernel interfaces
- Fix missing application of scale to the integer part of
IIO_INT_PLUS_XXX value pairs when using the
iio_convert_raw_to_processed*() helper.
buffer-dmaengine
- Make sure to release DMA channel in error path.
Driver related
--------------
adi,ad-sigma-delta library
- Check irq-flags for the correct irq if multiple are provided.
adi,ad7124
- Wait after reset before reading the chip ID register.
- Compare only the relevant field when looking for an existing
config to reuse for a new channel.
- Fix an off by one in which channel config is being filled from
firmware.
adi,ad7173
- Fix missing vendor prefix in compatible strings.
- Fix wrong info for GPIO related bit positions for ad4114,ad4115 and ad4116.
adi,ad7606
- Drop incorrect check on frstdata when in serial mode, it only applies to
parallel mode.
adi,ad9834
- Check userspace input for frequency parameter to avoid div by zero.
invensense,mpu6050
- Avoid reading interrupt status on some older chips as it seems there
is a hardware problem that surfaces as a result of adding wake on
motion support to the driver (which these chips don't support).
ti,ads1119
- Fix incorrect IRQ flag (new driver so no firmware compatibility regression
issues with fixing this now).
-----BEGIN PGP SIGNATURE-----
iQJFBAABCAAvFiEEbilms4eEBlKRJoGxVIU0mcT0FogFAmbCHw0RHGppYzIzQGtl
cm5lbC5vcmcACgkQVIU0mcT0FohWcxAAnqGDiukCxWo4YWERhh5CqXpzleiR0QPG
xf5vN8w+auMDR+jm+Pr9AE8M+jd8Kn1nJAYEr5ii00ebww7pKIRYLr38D4RYLUx4
ta7+gC6QJh6ZG7T7jDyg4C4Kz3FDWUJFOriQ1EuV2GqClCMc8hhkhus5CPNOAhB6
E9akczbuXbsDIcx04sb3vIkuqAq15NxGY69m157WqzvIDItIoy4LuK9c4B0WjNK3
8SzCRxMTCRICB7RvLIs9nFy3SSqnpjQfJAwhaXTUxEtHd5FM2AhlRxFjLFI5Sb+j
WuDmg1HjUEQ8y0xSGcEdKhOsRgkdbBu7GetLn0evxtg9p7qF6KbTHxj3pagSJhB8
WWGpT5c0HG0Wye02gxPL0rOHqOIHjeyzemdiJIPl09uBobqKXv+io6x+uR8WCZW/
kuNubOcAhCtJ/uqIZ7YsXId2444sK7YfBJsFrVQOrqomplZQSrSO46Us92+/lSLL
adU8Hm7r5e5c6NqQbyffJXORpCYCpoNmKtknXF0F4b69kBKbewvs5pR7wa7E37V3
IpwU8GMd9LyTFHq72npPZxpc8SHawPMJyBH+G+4GgXpMQpqV4lKV2m8uCBO0o9Ir
UgUO29bDf15qgskG+EB18nARza1uNQtpdf4ClrGhxIK2G/bWIdAmgiY8dLVU+9QF
PQSPWnuKoq8=
=txr2
-----END PGP SIGNATURE-----
Merge tag 'iio-fixes-for-6.11a' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio into char-misc-linus
Jonathan writes:
IIO: 1st set of fixes for 6.11
The usual mixed bag of new issues and ancient ones.
The fact so many are ADI is probably due to an uptick in upstreaming
effort from Analog + Baylibre meaning existing code is getting more eyes
on it. Hence it's a good sign not a reflection of inherent high bug
incidence!
Core and helper related
-----------------------
in kernel interfaces
- Fix missing application of scale to the integer part of
IIO_INT_PLUS_XXX value pairs when using the
iio_convert_raw_to_processed*() helper.
buffer-dmaengine
- Make sure to release DMA channel in error path.
Driver related
--------------
adi,ad-sigma-delta library
- Check irq-flags for the correct irq if multiple are provided.
adi,ad7124
- Wait after reset before reading the chip ID register.
- Compare only the relevant field when looking for an existing
config to reuse for a new channel.
- Fix an off by one in which channel config is being filled from
firmware.
adi,ad7173
- Fix missing vendor prefix in compatible strings.
- Fix wrong info for GPIO related bit positions for ad4114,ad4115 and ad4116.
adi,ad7606
- Drop incorrect check on frstdata when in serial mode, it only applies to
parallel mode.
adi,ad9834
- Check userspace input for frequency parameter to avoid div by zero.
invensense,mpu6050
- Avoid reading interrupt status on some older chips as it seems there
is a hardware problem that surfaces as a result of adding wake on
motion support to the driver (which these chips don't support).
ti,ads1119
- Fix incorrect IRQ flag (new driver so no firmware compatibility regression
issues with fixing this now).
* tag 'iio-fixes-for-6.11a' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio:
iio: imu: inv_mpu6050: fix interrupt status read for old buggy chips
iio: adc: ad7173: fix GPIO device info
iio: adc: ad7124: fix DT configuration parsing
iio: adc: ad_sigma_delta: fix irq_flags on irq request
iio: adc: ads1119: Fix IRQ flags
iio: fix scale application in iio_convert_raw_to_processed_unlocked
iio: adc: ad7124: fix config comparison
iio: adc: ad7124: fix chip ID mismatch
iio: adc: ad7173: Fix incorrect compatible string
iio: buffer-dmaengine: fix releasing dma channel on error
iio: adc: ad7606: remove frstdata check for serial mode
staging: iio: frequency: ad9834: Validate frequency parameter value
Many tracepoints events have been added to 6.10 and 6.11 kernels. They are
available as an alternative of debug parameter in firewire-ohci module.
The logging messages enabled by the parameter require some cumbersomes in
a point of maintenance; e.g. the code to decode transaction frame.
This commit adds deprecation text to conduct users to them..
Link: https://lore.kernel.org/r/20240903101455.317067-1-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Add ref nvmem-deprecated-cells.yaml to support old style binding.
Fix below CHECK_DTBS warning.
efuse@1e80000: Unevaluated properties are not allowed ('unique-id@1c' was unexpected)
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902142952.71639-10-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
There is no function called kstrbool().
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Marek Vasut <marex@denx.de>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902142952.71639-9-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
platform_get_resource_byname() and devm_ioremap_resource() can be
replaced by devm_platform_ioremap_resource_byname(), which can
simplify the code logic a bit, No functional change here.
Signed-off-by: Zhang Zekun <zhangzekun11@huawei.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902142952.71639-8-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
All nodes need an explicit additionalProperties or unevaluatedProperties
unless a $ref has one that's false. Fixing this for STM32
Factory-programmed data binding needs referencing fixed layout schema
for children. Add reference to the NVMEM deprecated cells for the
schema to be complete.
This fixes dt_binding_check warning:
st,stm32-romem.yaml: ^.*@[0-9a-f]+$: Missing additionalProperties/unevaluatedProperties constraint
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902142952.71639-7-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
U-Boot environment variables can be stored in various data sources. MTD
is just one of available options. Refactor DT binding into a layout so
it can be used with UBI volumes and other NVMEM devices.
Link: https://lore.kernel.org/all/20231221173421.13737-1-zajec5@gmail.com/
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902142952.71639-4-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
i.MX95 OCOTP has same accessing method, so add an entry for i.MX95, but
some fuse has ECC feature, so only read out the lower 16bits for ECC fuses.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902142952.71639-3-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Add "cdsp1" as the new supported label for the CDSP1 fastrpc domain.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902141821.70656-4-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The fastrpc supports 4 remoteproc. There are some products which
support cdsp1 remoteproc. Add changes to support cdsp1 remoteproc.
Signed-off-by: Ling Xu <quic_lxu5@quicinc.com>
[Bartosz: ported to mainline]
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240902141821.70656-3-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The fastrpc components on the SA8775P SoC can require up to 10 IOMMU
entries. Bump the maxItems.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240902141821.70656-2-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Commit 9e663f4811 ("slimbus: core: add support to uevent") added the
MODALIAS=slim:* uevent variable, but modpost does not generate the
corresponding MODULE_ALIAS().
To support automatic module loading, slimbus drivers still need to
manually add MODULE_ALIAS("slim:<manf_id>:<prod_code>:*"), as seen in
sound/soc/codecs/wcd9335.c.
To automate this, make modpost generate the proper MODULE_ALIAS() from
MODULE_DEVICE_TABLE(slim, ).
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20240902141004.70048-5-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
There is a confusing pattern in the kernel to use a variable named 'timeout' to
store the result of wait_for_completion_timeout() causing patterns like:
timeout = wait_for_completion_timeout(...)
if (!timeout) return -ETIMEDOUT;
with all kinds of permutations. Use 'time_left' as a variable to make the code
self explaining.
Fix to the proper variable type 'unsigned long' while here.
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Bjorn Andersson <quic_bjorande@quicinc.com>
Link: https://lore.kernel.org/r/20240902141004.70048-4-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
There is a confusing pattern in the kernel to use a variable named 'timeout' to
store the result of wait_for_completion_timeout() causing patterns like:
timeout = wait_for_completion_timeout(...)
if (!timeout) return -ETIMEDOUT;
with all kinds of permutations. Use 'time_left' as a variable to make the code
self explaining.
Fix to the proper variable type 'unsigned long' while here.
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Bjorn Andersson <quic_bjorande@quicinc.com>
Link: https://lore.kernel.org/r/20240902141004.70048-3-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
There is a confusing pattern in the kernel to use a variable named 'timeout' to
store the result of wait_for_completion_timeout() causing patterns like:
timeout = wait_for_completion_timeout(...)
if (!timeout) return -ETIMEDOUT;
with all kinds of permutations. Use 'time_left' as a variable to make the code
self explaining.
Fix to the proper variable type 'unsigned long' while here.
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Bjorn Andersson <quic_bjorande@quicinc.com>
Link: https://lore.kernel.org/r/20240902141004.70048-2-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit fixes gcc 5 warning "logical not is only applied to the left
hand side of comparison"
Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Fixes: fb0987682c ("dm-integrity: introduce the Inline mode")
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
FPGA unit test:
- Macro's change improves fpga tests using deferred actions
FPGA vendor drivers:
- Wolfram's change renames confusing variables for Altera & Xilinx
drivers.
All patches have been reviewed on the mailing list, and have been in the
last linux-next releases (as part of our for-next branch).
Signed-off-by: Xu Yilun <yilun.xu@intel.com>
-----BEGIN PGP SIGNATURE-----
iIkEABYIADEWIQSgSJpClIeaArXyudb8twOBpKCM2gUCZtM4qhMceWlsdW4ueHVA
aW50ZWwuY29tAAoJEPy3A4GkoIzapVwBANeFGZrunAe5T1Fi8CVRQ8sjxLEG/a0h
incXqjHco5f1AQDGbGCnUpabWIJmoRQv7x4oqzSSOt50bGWucyiMPiqmBA==
=AKK4
-----END PGP SIGNATURE-----
Merge tag 'fpga-for-6.12-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/fpga/linux-fpga into char-misc-next
Xu writes:
FPGA Manager changes for 6.12-rc1
FPGA unit test:
- Macro's change improves fpga tests using deferred actions
FPGA vendor drivers:
- Wolfram's change renames confusing variables for Altera & Xilinx
drivers.
All patches have been reviewed on the mailing list, and have been in the
last linux-next releases (as part of our for-next branch).
Signed-off-by: Xu Yilun <yilun.xu@intel.com>
* tag 'fpga-for-6.12-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/fpga/linux-fpga:
fpga: zynq-fpga: Rename 'timeout' variable as 'time_left'
fpga: socfpga: Rename 'timeout' variable as 'time_left'
fpga: Simplify and improve fpga region test using deferred actions
fpga: Simplify and improve fpga bridge test using deferred actions
fpga: Simplify and improve fpga mgr test using deferred actions
CoreSight/hwtracing subsystem updates targeting Linux v6.12:
- Miscellaneous fixes and cleanups
- TraceID allocation per sink, allowing system with > 110 cores for
perf tracing.
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEuFy0byloRoXZHaWBxcXRZPKyBqEFAmbOJmYACgkQxcXRZPKy
BqFq5g/+I7WpRAHrLn1e995CGmBUc+HVQ2x5xrS7bSQbxSo/VEhCds/ID+DTfduw
fwFjKo6GEo9SazGJ1JmSaPONffcGjjdkCp7z/xfd5U7mJ0Gj1FQKnr8Ppew52cfk
oq7Yi63VPpoX/4mqweBQfCEPX+yikZ+BgxKjkQq+wunGy/3cHQbLTkVyg3mxzePu
tEKuWihZ9+7lk7kXUzWM4Fmagxo98Lkj5zp8SmpdsHOl0+0BUsdywpTYcT8zbbjm
QE3OR2fyVuYonVpGTTb+YDJWzonfKltHcKVPmLrsjFjXiv/7/Uxj7TJVS4z9KEKb
hcDMwKOAoslhtJO+0dG0ZbY6LRvhmRpvy/BKS+Kfz8qwWjZW5YX0GwouRDTo71kq
KxKoWS5cn4fZ1F7MuygGEre68laVq4/HJ369+jTk3oa7a1f9xTHYciZFQWdgc7DU
7XK7FQ1g1D3ndD1tCYEzc9n/XFBiV0PZDELPoeaOo+fz4DGOgRRfrMstordS/RHL
xIS+fD5OQxfn38mUrmReMsQssijZ9ysjqsBmHULVXBHIkz9N4xEsQINTRp7ARykG
yb6RdrxblMswz0xzJBrekf0djr+tgPO0Je5+8BE/rCickrWttETNGWnrmWf+PPCa
LrFaYavr0HpyvmqZRuY9fDIKAAAW+9E86kakMg/swlGj6mR15TA=
=+38+
-----END PGP SIGNATURE-----
Merge tag 'coresight-next-v6.12' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/coresight/linux into char-misc-next
Suzuki writes:
coresight: updates for Linux v6.12
CoreSight/hwtracing subsystem updates targeting Linux v6.12:
- Miscellaneous fixes and cleanups
- TraceID allocation per sink, allowing system with > 110 cores for
perf tracing.
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
* tag 'coresight-next-v6.12' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/coresight/linux:
coresight: Make trace ID map spinlock local to the map
coresight: Emit sink ID in the HW_ID packets
coresight: Remove pending trace ID release mechanism
coresight: Use per-sink trace ID maps for Perf sessions
coresight: Make CPU id map a property of a trace ID map
coresight: Expose map arguments in trace ID API
coresight: Move struct coresight_trace_id_map to common header
coresight: Clarify comments around the PID of the sink owner
coresight: Remove unused ETM Perf stubs
coresight: tmc: sg: Do not leak sg_table
Coresight: Set correct cs_mode for dummy source to fix disable issue
Coresight: Set correct cs_mode for TPDM to fix disable issue
coresight: cti: use device_* to iterate over device child nodes
Use scoped for_each_child_of_node_scoped() when iterating over device
nodes to make code a bit simpler.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
- document a new model from giantec in DT bindings
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEFp3rbAvDxGAT0sefEacuoBRx13IFAmbVsiQACgkQEacuoBRx
13LHXg/+LnwobZihNpyS1G/SN/FeQ2wpgoSNdnOnIqXH2Ogt+76BMZfAmbden0fw
aDmhow0dXg+a9mX5YaXCeNXXWhrL4w2xppZ2j7e0NDKjS3msK7Avl/mBASntGtBv
L5/+XZ3TDpkTd4+PBiTCMJ+QufVNQtxppFknH/Onm0cL9zD7x74vvfYoFDLjJCCX
hsBGK7VW/iJcCjJjKvyGIQ+wvjPWi7yW0Sjz2/un/Gni7IF5AxSrBoPWCugIeNFL
jQcUqrSpVhXLtQRGmqAW1BkJ6LWyr29yloBCHmsidClQ5/EUmxDXIvNJ2ci/qnOM
9cayrqukH8giVaTfEOOOY5gDRaZr+DiTf4Ad4OzEv4g0fzxaOmzAtGMqyZJXvDCL
Iq+0pXHI2tuwcTVzvNEulZ5s1/UGAXMmmYWfifBUkaOmHuxynfWMfr+q4GKo3yf8
J+aKPrcEHrH5pHKmxdPdiUSbYJ00IHUkCc0HR6gNIXbTWGCbf4B7yztzHFgt8NmK
3W6WAG0v6Cqmpeg7Tirbj7HsPXe2Z0sUI8vfDzPJZBug3MhZIwoagKdq68Nf7pRp
E/Ytb5nn213pieJw4/kAIinqMuEMHvPUl1HQ1fqMVm4SCQ/ODdyb3B3u8tWbplfQ
f1VWg3vdgJAUqZRe5WzhFgm6nWbpW4/a3RGKdxD+HbhYtHsFmEw=
=QESl
-----END PGP SIGNATURE-----
Merge tag 'at24-updates-for-v6.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux into i2c/for-mergewindow
at24 updates for v6.12-rc1
- document a new model from giantec in DT bindings
When a channel ctx is assigned to a link, we set the
LINK_CONTEXT_MODIFY_RATES_INFO to indicate that the rate fields are now
valid. But then we always take the rates of 2.4 GHz regardless of actual
used band.
This is because we are getting the band from bss_conf->chanctx_conf, but
this is assigned only after drv_assign_vif_chanctx returns, so we take
the bands of 2.4 GHz.
Fix it by taking the band from the iwl_mvm_link_info::phy_ctxt instead,
as this has already assigned in this point.
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Link: https://patch.msgid.link/20240901071542.11c2d3609609.I8fa59e29b6bb38e5d06f3536d54dfb2c5d5bab11@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
When we de-activate a link because it started a CSA with mode=1, we want
to tell the firmware it can no longer transmit any frame for that link.
The firmware will do that on its own if the CSA indication (beacon /
action frame) was received on that same link, but with MLO, things got
more complex and the firmware can't track cross link CSA.
Tell the firmware if we de-activate a link because of CSA with mode=1 to
prevent it from transmitting, even if it is only an NDP PM=1 frame that
is part of the de-activation flow.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20240901071542.4bef89d438d4.If7147a7a84054e67c05414c753d73f4e2e0e6e37@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
The channel number is at the same position across all versions
of the channel description struct, so move it out of the union
that versions it. Also add __packed annotations to all of the
sub-structs and the union so it's packed correctly, and fully
document the structure.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Reviewed-by: Ilan Peer <ilan.peer@intel.com>
Reviewed-by: Daniel Gabay <daniel.gabay@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20240901071542.e31623ae4201.I1ea69a8ec3d39492f39d84e31fb105b159359c28@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Correct spelling in iw_handler.h.
As reported by codespell.
Also, while the "few shortcomings" line is being updated,
correct its grammar.
Signed-off-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20240903-wifi-spell-v2-1-bfcf7062face@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Since commit 178c0a33c4 ("drm/print: Add generic drm dev printk
function") the output from drm_WARN() includes previously missing
the [drm] tag, so now xe_assert() is printing it twice:
[ ] xe 0000:00:02.0: [drm] [drm] Assertion `false` failed!
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240902190726.1748-1-michal.wajdeczko@intel.com
Alexander Lobakin says:
====================
netdev_features: start cleaning netdev_features_t up
NETDEV_FEATURE_COUNT is currently 64, which means we can't add any new
features as netdev_features_t is u64.
As per several discussions, instead of converting netdev_features_t to
a bitmap, which would mean A LOT of changes, we can try cleaning up
netdev feature bits.
There's a bunch of bits which don't really mean features, rather device
attributes/properties that can't be changed via Ethtool in any of the
drivers. Such attributes can be moved to netdev private flags without
losing any functionality.
Start converting some read-only netdev features to private flags from
the ones that are most obvious, like lockless Tx, inability to change
network namespace etc. I was able to reduce NETDEV_FEATURE_COUNT from
64 to 60, which mean 4 free slots for new features. There are obviously
more read-only features to convert, such as highDMA, "challenged VLAN",
HSR (4 bits) - this will be done in subsequent series.
Please note that currently netdev features are not uAPI/ABI by any means.
Ethtool passes their names and bits to the userspace separately and there
are no hardcoded names/bits in the userspace, so that new Ethtool could
work on older kernels and vice versa.
This, however, isn't true for Ethtools < 3.4. I haven't changed the bit
positions of the already existing features and instead replaced the freed
bits with stubs. But it's anyway theoretically possible that Ethtools
older than 2011 will break. I hope no currently supported distros supply
such an ancient version.
Shell scripts also most likely won't break since the removed bits were
always read-only, meaning nobody would try touching them from a script.
====================
Link: https://patch.msgid.link/20240829123340.789395-1-aleksander.lobakin@intel.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
NETIF_F_ALL_FCOE is used only in vlan_dev.c, 2 times. Now that it's only
2 bits, open-code it and remove the definition from netdev_features.h.
Suggested-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Ability to handle maximum FCoE frames of 2158 bytes can never be changed
and thus more of an attribute, not a toggleable feature.
Move it from netdev_features_t to "cold" priv flags (bitfield bool) and
free yet another feature bit.
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
"Interface can't change network namespaces" is rather an attribute,
not a feature, and it can't be changed via Ethtool.
Make it a "cold" private flag instead of a netdev_feature and free
one more bit.
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
NETIF_F_LLTX can't be changed via Ethtool and is not a feature,
rather an attribute, very similar to IFF_NO_QUEUE (and hot).
Free one netdev_features_t bit and make it a "hot" private flag.
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Make dev->priv_flags `u32` back and define bits higher than 31 as
bitfield booleans as per Jakub's suggestion. This simplifies code
which accesses these bits with no optimization loss (testb both
before/after), allows to not extend &netdev_priv_flags each time,
but also scales better as bits > 63 in the future would only add
a new u64 to the structure with no complications, comparing to
that extending ::priv_flags would require converting it to a bitmap.
Note that I picked `unsigned long :1` to not lose any potential
optimizations comparing to `bool :1` etc.
Suggested-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>