Commit graph

1,399,042 commits

Author SHA1 Message Date
Larisa Grigore
9bf72db233 arm64: dts: s32g: add the eDMA nodes
Add the two eDMA nodes in the device tree in order to enable the probing
of the S32G2/S32G3 eDMA driver.

Signed-off-by: Larisa Grigore <larisa.grigore@oss.nxp.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Matthias Brugger <mbrugger@suse.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Frank Li
1ecc4dbf6a arm64: dts: imx95: add PCIe's msi-map and iommu-map property
Add PCIe's msi-map and iommu-map property because i.MX95 support smmu and
its.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Frank Li
c95fc1e1f6 arm64: dts: imx8q: add PCIe EP overlay file for i.MX8QXP mek board
Add PCIe EP overlay file for i.MX8QXP mek board to let PCI work as endpoint
mode.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Frank Li
d03743c565 arm64: dts: imx8q: add PCIe EP for i.MX8QM and i.MX8QXP
Add PCIe EP support for i.MX8QM and i.MX8QXP.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Frank Li
b09435bc5e arm64: dts: imx8-ss-hsio: fix indentation in pcie node
Fix indentation in pcie node.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Alexander Stein
b458959540 arm64: dts: freescale: tqma8mqnl: Add vcc-supply for spi-nor
(Q)SPI NOR flash is supplied by 1.8V. Add the corresponding supply.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Alexander Stein
ea6bd2e5ec arm64: dts: freescale: tqma8mqml: Add vcc-supply for spi-nor
(Q)SPI NOR flash is supplied by 1.8V. Add the corresponding supply.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Alexander Stein
fd5186372d arm64: dts: freescale: tqma8mq: Add vcc-supply for spi-nor
(Q)SPI NOR flash is supplied by 1.8V. Add the corresponding supply.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Alexander Stein
aabe17aec3 arm64: dts: freescale: tqma8mpql: Add vcc-supply for spi-nor
(Q)SPI NOR flash is supplied by 1.8V. Add the corresponding supply.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:59 +08:00
Stefan Eichenberger
2e662a2c37 arm64: dts: imx8-apalis: add clock configuration for 44.1 kHz hdmi audio
Currently, HDMI audio cannot play sound at a 44.1 kHz sample rate due to
a clock frequency mismatch. This update resolves the issue by allowing
the sai driver to change the clock parent to AUDIO_PLL_1 when the sample
rate is 44.1 kHz. It also ensures that AUDIO_PLL_1 operates at the
correct frequency for this configuration.

Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Ciprian Marian Costea
3a3eefecbf arm64: dts: s32g399a-rdb3: Add INA231 sensor entry over I2C4
Add INA231 current sensor for S32G399A-RDB3 boards.

Signed-off-by: Ciprian Marian Costea <ciprianmarian.costea@oss.nxp.com>
Reviewed-by: Matthias Brugger <mbrugger@suse.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Ciprian Marian Costea
81a97afe7c arm64: dts: s32g: add common 'S32G-EVB' and 'S32G-RDB' board support
Create common part, s32gxxa-evb.dtsi and s32gxxa-rdb.dtsi, for S32G2/S32G3
RDB2\3 and EVB G2/G3 boards to avoid copy duplicate part in boards dts
file. Prepare to add other modules such as FlexCAN, DSPI easily in the
future.

Signed-off-by: Ciprian Marian Costea <ciprianmarian.costea@oss.nxp.com>
Reviewed-by: Matthias Brugger <mbrugger@suse.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Ciprian Marian Costea
b2194a4cf1 arm64: dts: s32g: add I2C[0..2] support for s32g2 and s32g3
Add I2C[0..2] for S32G2 and S32G3 SoCs.

Signed-off-by: Ciprian Marian Costea <ciprianmarian.costea@oss.nxp.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Matthias Brugger <mbrugger@suse.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Chancel Liu
dc5fb736fb arm64: dts: imx8qxp-mek: Complete WM8960 power supplies
WM8960 has the following power supplies:
- AVDD
- DBVDD
- DCVDD
- SPKVDD1
- SPKVDD2

Add new audio regulators to reflect the schematic and complete missed
power supplies.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Chancel Liu
9bad194613 arm64: dts: imx8qm-mek: Complete WM8960 power supplies
WM8960 has the following power supplies:
- AVDD
- DBVDD
- DCVDD
- SPKVDD1
- SPKVDD2

Add new audio regulators to reflect the schematic and complete missed
power supplies.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Chancel Liu
ca0d7229e4 arm64: dts: imx8dxl-evk: Complete WM8960 power supplies
WM8960 has the following power supplies:
- AVDD
- DBVDD
- DCVDD
- SPKVDD1
- SPKVDD2

Add new audio regulators to reflect the schematic and complete missed
power supplies.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Chancel Liu
0373fa645c arm64: dts: imx8mp-evk: Complete WM8960 power supplies
WM8960 has the following power supplies:
- AVDD
- DBVDD
- DCVDD
- SPKVDD1
- SPKVDD2

Add new audio regulators to reflect the schematic and complete missed
power supplies.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Alexander Stein
a3bfd9e811 arm64: dts: tqma9352-mba93xx[cl]a: swap ethernet aliases
In mainboard schematics ENET1 is eqos and ENET2 is fec.
This is reversed to standard aliases using base addresses for ordering.
Adjust aliases for all mainboards accordingly.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Alexander Stein
db55b909e1 arm64: dts: mba93xxca: Do not assert power-down pins
Change the output to inactive (output-low) for active-low pins, resulting
in high-voltage of power-down pins. Thus this enables the attached
devices.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Alexander Stein
584b427f42 arm64: dts: freescale: imx93-tqma9352-mba93xxca: sort pinctrl nodes
Sort the entries alphabetically.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:58 +08:00
Alexander Stein
c63a0bfd11 arm64: dts: mba8xx: Add PCIe support
Add PCIe support for TQMa8Xx on MBa8Xx board.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Alexander Stein
c58128a8a8 arm64: dts: tqma8xx: Remove GPU TODO
Since commit 6196fe7775 ("arm64: dts: imx8qxp: add GPU nodes") GPUs
are supported.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Alexander Stein
11dcabb083 arm64: dts: tqma8xx: enable jpeg encode and decode
Enable jpeg encode and decode.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Alexander Stein
c3d79d64c0 arm64: dts: tqma8xx: Add vcc-supply for spi-nor
(Q)SPI NOR flash is supplied by 1.8V. Add the corresponding supply.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Alexander Stein
f9893c3460 arm64: dts: imx8-ss-hsio: Wire up DMA IRQ for PCIe
IRQ mapping is already present. Add the missing DMA interrupt.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Fabio Estevam
aadfff7b13 arm64: dts: imx8mn-bsh-smm-s2pro: Remove invalid audio codec clock
According to ti,tlv320dac3100.yaml, 'clocks' is not a valid property.

Remove it to fix the following dt-schema warning:

Unevaluated properties are not allowed ('clocks' was unexpected)

Signed-off-by: Fabio Estevam <festevam@denx.de>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Oleksij Rempel
587098514a arm64: dts: imx8mp-skov: increase I2C clock frequency for RTC
The NXP PCF85063TP RTC is capable of 400 kHz of SCL clock frequency,
so use that instead of the current 100 kHz.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Oleksij Rempel
bce3edf81c arm64: dts: imx8mp-skov: fix phy-mode
Use rgmii-rxid instead of rgmii-txid. It should have no effect here,
because we have a fixed-link, but rxid reflects the board design.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Oleksij Rempel
fc8efdf8fa arm64: dts: imx8mp-skov: describe mains fail detection
The main 24V regulator will toggle GPIO4_IO23 to signal imminent voltage
loss. Reflect this in the DT, so the OS can take appropriate action when
this happens.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Ahmad Fatoum
4252ede53d arm64: dts: imx8mp-skov: configure uart1 for RS485
uart1 TX, RX and RTS signals go off the base board and to a RS485
transceiver. Describe this in the device tree.

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Oleksij Rempel
6e887c950c arm64: dts: imx8mp-skov: describe LVDS display pipeline
The Skov i.MX8MP LT6 device tree so far described the touch screen, but
didn't describe the screen itself. Fill out these missing pieces.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:57 +08:00
Oleksij Rempel
507b6de306 arm64: dts: imx8mp-skov: describe HDMI display pipeline
Back when this device tree was first added, there were no i.MX8MP
HDMI bindings upstream yet. This has changed now, so let's use them
to describe the HDMI on the imx8mp-skov-revb-hdmi board.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:56 +08:00
Ahmad Fatoum
68e008f256 arm64: dts: imx8mp-skov: use I2C5 for DDC
The HDMI DDC pads can be muxed either to an i.MX I2C controller or
to a limited I2C controller within the Designware HDMI bridge.

So far, the pads were muxed to the HDMI bridge, but the i.MX I2C controller
is the better choice:

  - The Designware HDMI I2C controller doesn't support multi-byte
    requests and the Linux driver refuses[1] transfers to/from address
    0x37, but these are required for display/brightness configuration,

  - The driver doesn't support I2C bus recovery, but some HDMI panels used
    with the board can be flaky and require it.

As the i.MX I2C controller and driver don't have either of these
limitations, let's make use of it instead.

[1]: https://lore.kernel.org/all/20190722181945.244395-1-mka@chromium.org/

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:56 +08:00
Ahmad Fatoum
3d8ffe5702 arm64: dts: imx8mp-skov: operate CPU at 850 mV by default
The Skov i.MX8MP boards are passively cooled and heatsink is specced for
continuous operation at 1.2 GHz only. Short bouts of 1.6 GHz are ok,
but these should be invoked intentionally, not as part of
suspend/resume cycles.

Therefore, configure RUN frequency as 850 mV and remove the higher
voltage operating points from those permissible for suspend.

Fixes: 6d382d51d9 ("arm64: dts: freescale: Add SKOV IMX8MP CPU revB board")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:56 +08:00
Ahmad Fatoum
d19a6f7996 arm64: dts: imx8mp-skov: correct PMIC board limits
The PMIC voltage constraints in the device tree currently describe the
permissible range of the PMIC. This is unnecessary as this information
already exists in the driver and wrong as it doesn't account for
board-specific constraints, e.g. a 2.1V on VDD_SOC would fry the SoC and
a maximum voltage of 3.4V on the VDD_3V3 rail may be unexpected across
the board.

Fix this by adjusting constraints to reflect the board limits.

Fixes: 6d382d51d9 ("arm64: dts: freescale: Add SKOV IMX8MP CPU revB board")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:56 +08:00
Frieder Schrempf
39e4189d9d arm64: dts: imx8mp-kontron: Add support for reading SD_VSEL signal
This fixes the LDO5 regulator handling of the pca9450 driver by
taking the status of the SD_VSEL into account to determine which
configuration register is used for the voltage setting.

Even without this change there is no functional issue, as the code
for switching the voltage in sdhci.c currently switches both, the
VSELECT/SD_VSEL signal and the regulator voltage at the same time
and doesn't run into an invalid corner case.

We should still make sure, that we always use the correct register
when controlling the regulator. At least in U-Boot this fixes an
actual bug where the wrong IO voltage is used and it makes sure
that the correct voltage can be read from sysfs.

Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:56 +08:00
Frieder Schrempf
427ad6e211 arm64: dts: imx93-kontron: Fix SD card IO voltage control
The OSM-S i.MX93 SoM doesn't have the VSELECT signal of the USDHC
controller connected to the PMICs SD_VSEL input. Instead SD_VSEL
is hardwired to low level. Let the driver know this in order to
use the proper register for reading and writing the voltage level.

This fixes SD card access with the latest hardware revision of
the Kontron OSM-S i.MX93 SoM.

Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:56 +08:00
Frieder Schrempf
8472751c4d arm64: dts: imx8mm-kontron: Add support for reading SD_VSEL signal
This fixes the LDO5 regulator handling of the pca9450 driver by
taking the status of the SD_VSEL into account to determine which
configuration register is used for the voltage setting.

Even without this change there is no functional issue, as the code
for switching the voltage in sdhci.c currently switches both, the
VSELECT/SD_VSEL signal and the regulator voltage at the same time
and doesn't run into an invalid corner case.

We should still make sure, that we always use the correct register
when controlling the regulator. At least in U-Boot this fixes an
actual bug where the wrong IO voltage is used and it makes sure
that the correct voltage can be read from sysfs.

Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:32:56 +08:00
Chancel Liu
6a69b494c6 ARM: dts: imx7d-sdb: Complete WM8960 power supplies
WM8960 has the following power supplies:
- AVDD
- DBVDD
- DCVDD
- SPKVDD1
- SPKVDD2

Add new audio regulators to reflect the schematic and complete missed
power supplies.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:31:40 +08:00
Chancel Liu
e34ba2a343 ARM: dts: imx6ul-14x14-evk: Complete WM8960 power supplies
WM8960 has the following power supplies:
- AVDD
- DBVDD
- DCVDD
- SPKVDD1
- SPKVDD2

Add new audio regulators to reflect the schematic and complete missed
power supplies.

Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-02-25 08:31:36 +08:00
Linus Torvalds
2c24478e5f - dm-vdo: add missing spin_lock_init
- dm-integrity: divide-by-zero fix
 
 - dm-integrity: do not report unused entries in the table line
 -----BEGIN PGP SIGNATURE-----
 
 iIoEABYIADIWIQRnH8MwLyZDhyYfesYTAyx9YGnhbQUCZ7xnCRQcbXBhdG9ja2FA
 cmVkaGF0LmNvbQAKCRATAyx9YGnhbVueAP47A+AczQa868MpFc2p8w5AmqqF6jyW
 s303VCS9wUCtBwD/TkFcYz5AtIRvIIdZiwtOKALPekjeLeOZaOSnrdJVkw0=
 =x00V
 -----END PGP SIGNATURE-----

Merge tag 'for-6.14/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm

Pull device mapper fixes from Mikulas Patocka:

 - dm-vdo: add missing spin_lock_init

 - dm-integrity: divide-by-zero fix

 - dm-integrity: do not report unused entries in the table line

* tag 'for-6.14/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
  dm vdo: add missing spin_lock_init
  dm-integrity: Do not emit journal configuration in DM table for Inline mode
  dm-integrity: Avoid divide by zero in table status in Inline mode
2025-02-24 16:29:48 -08:00
Martin K. Petersen
42273e8931 Merge patch series "scsi: scsi_debug: Add more tape support"
Kai Mäkisara <Kai.Makisara@kolumbus.fi> says:

Currently, the scsi_debug driver can create tape devices and the st
driver attaches to those. Nothing much can be done with the tape devices
because scsi_debug does not have support for the tape-specific commands
and features. These patches add some more tape support to the scsi_debug
driver. The end result is simulated drives with a tape having one or two
partitions (one partition is created initially).

The tape is implemented as fixed number (10 000) of 8-byte units.
The first four bytes of a unit contain the type of the unit (data
block, filemark or end-of-data mark). If the units is a data block,
the first four bytes also contain the block length and the remaining
four bytes the first bytes of written data. This allows the user
to use tags to see that the read block is what it was supposed to be.

The following SCSI operations are added or modified:
FORMAT MEDIUM
- added
LOCATE
- added
MODE SELECT
- modified to allow use without page(s) (just header and block descriptor)
  - store density and block size
- partition page added
MODE SENSE
- modified to allow use without page(s) (just header and block descriptor)
  - set density and block size
- partition page added
READ BLOCK LIMITS
- added
READ POSITION
- added
READ
- added tape support for READ (6)
REWIND
- modified to set the tape position
SPACE
- added
START STOP (LOAD)
- modified to return New Medium Unit Attention if tape loaded (not
  according to the standard, but enables testing this UA)
WRITE
- added tape support for WRITE (6)
WRITE FILEMARKS
- added

Link: https://lore.kernel.org/r/20250213092636.2510-1-Kai.Makisara@kolumbus.fi
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2025-02-24 19:24:54 -05:00
Martin K. Petersen
adc4fb9c81 Merge patch series "Initial support for RK3576 UFS controller"
Shawn Lin <shawn.lin@rock-chips.com> says:

This patchset adds initial UFS controller supprt for RK3576 SoC.
Patch 1 is the dt-bindings. Patch 2-4 deal with rpm and spm support
in advanced suggested by Ulf. Patch 5 exports two new APIs for host
driver. Patch 6 and 7 are the host driver and dtsi support.

Link: https://lore.kernel.org/r/1738736156-119203-1-git-send-email-shawn.lin@rock-chips.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2025-02-24 19:24:14 -05:00
Icenowy Zheng
56cf7ef0d4 nvme-pci: skip CMB blocks incompatible with PCI P2P DMA
The PCI P2PDMA code will register the CMB block to the memory
hot-plugging subsystem, which have an alignment requirement. Memory
blocks that do not satisfy this alignment requirement (usually 2MB) will
lead to a WARNING from memory hotplugging.

Verify the CMB block's address and size against the alignment and only
try to send CMB blocks compatible with it to prevent this warning.

Tested on Intel DC D4502 SSD, which has a 512K CMB block that is too
small for memory hotplugging (thus PCI P2PDMA).

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
Signed-off-by: Keith Busch <kbusch@kernel.org>
2025-02-24 16:23:57 -08:00
Uwe Kleine-König
ed531feda7 drm/bridge: ti-sn65dsi86: Check for CONFIG_PWM using IS_REACHABLE()
Currently CONFIG_PWM is a bool but I intend to change it to tristate. If
CONFIG_PWM=m in the configuration, the cpp symbol CONFIG_PWM isn't
defined and so the PWM code paths in the ti-sn65dsi86 driver are not
used.

The correct way to check for CONFIG_PWM is using IS_REACHABLE which does
the right thing for all cases
CONFIG_DRM_TI_SN65DSI86 ∈ { y, m } x CONFIG_PWM ∈ { y, m, n }.

There is no change until CONFIG_PWM actually becomes tristate.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Reviewed-by: Louis Chauvet <louis.chauvet@bootlin.com>
Reviewed-by: Robert Foss <rfoss@kernel.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20250217174936.758420-2-u.kleine-koenig@baylibre.com
2025-02-24 16:23:50 -08:00
Icenowy Zheng
6a3572e10f nvme-pci: clean up CMBMSC when registering CMB fails
CMB decoding should get disabled when the CMB block isn't successfully
registered to P2P DMA subsystem.

Clean up the CMBMSC register in this error handling codepath to disable
CMB decoding (and CMBLOC/CMBSZ registers).

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Keith Busch <kbusch@kernel.org>
2025-02-24 16:21:24 -08:00
Shawn Lin
c75e5e010f scsi: arm64: dts: rockchip: Add UFS support for RK3576 SoC
Add ufshc node to rk3576.dtsi, so the board using UFS could enable it.

Acked-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Link: https://lore.kernel.org/r/1738736156-119203-8-git-send-email-shawn.lin@rock-chips.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2025-02-24 19:18:44 -05:00
Shawn Lin
d3cbe455d6 scsi: ufs: rockchip: Initial support for UFS
RK3576 SoC contains a UFS controller, add initial support for it.
The features are:

  1. support UFS 2.0 features
  2. High speed up to HS-G3
  3. 2RX-2TX lanes
  4. auto H8 entry and exit

Software limitation:

  1. HCE procedure: enable controller->enable intr->dme_reset->dme_enable
  2. disable unipro timeout values before power mode change

[mkp: fix build errors]

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Link: https://lore.kernel.org/r/1738736156-119203-7-git-send-email-shawn.lin@rock-chips.com
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2025-02-24 19:18:44 -05:00
Shawn Lin
6b070711b7 scsi: ufs: core: Export ufshcd_dme_reset() and ufshcd_dme_enable()
These two APIs will be used by glue driver if they need a different HCE
process.

Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Link: https://lore.kernel.org/r/1738736156-119203-6-git-send-email-shawn.lin@rock-chips.com
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2025-02-24 19:18:44 -05:00
Shawn Lin
d90e920237 scsi: ufs: dt-bindings: Document Rockchip UFS host controller
Document Rockchip UFS host controller for RK3576 SoC.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Link: https://lore.kernel.org/r/1738736156-119203-2-git-send-email-shawn.lin@rock-chips.com
Acked-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2025-02-24 19:18:44 -05:00