]> Git Repo - linux.git/commitdiff
Merge tag 'phy-for-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy
authorLinus Torvalds <[email protected]>
Sat, 16 Mar 2024 18:24:51 +0000 (11:24 -0700)
committerLinus Torvalds <[email protected]>
Sat, 16 Mar 2024 18:24:51 +0000 (11:24 -0700)
Pull phy updates from Vinod Koul:
 "New hardware support:

   - Qualcomm X1E80100 PCIe phy support, SM8550 PCIe1 PHY, SC7180 UFS
     PHY and SDM630 USBC support

   - Rockchip HDMI/eDP Combo PHY driver

   - Mediatek MT8365 CSI phy driver

  Updates:

   - Rework on Qualcomm phy PCS registers and type-c handling

   - Cadence torrent phy updates for multilink configuration

   - TI gmii resume support"

* tag 'phy-for-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy: (41 commits)
  phy: constify of_phandle_args in xlate
  phy: ti: tusb1210: Define device IDs
  phy: ti: tusb1210: Use temporary variable for struct device
  phy: rockchip: Add Samsung HDMI/eDP Combo PHY driver
  dt-bindings: phy: Add Rockchip HDMI/eDP Combo PHY schema
  phy: ti: gmii-sel: add resume support
  phy: mtk-mipi-csi: add driver for CSI phy
  dt-bindings: phy: add mediatek MIPI CD-PHY module v0.5
  phy: cadence-torrent: Add USXGMII(156.25MHz) + SGMII/QSGMII(100MHz) multilink config for TI J7200
  dt-bindings: phy: cadence-torrent: Add a separate compatible for TI J7200
  phy: cadence-torrent: Add USXGMII(156.25MHz) + SGMII/QSGMII(100MHz) multilink configuration
  phy: cadence-torrent: Add PCIe(100MHz) + USXGMII(156.25MHz) multilink configuration
  dt-bindings: phy: cadence-torrent: Add optional input reference clock for PLL1
  phy: qcom-qmp-ufs: Switch to devm_clk_bulk_get_all() API
  dt-bindings: phy: qmp-ufs: Fix PHY clocks
  phy: qcom: sgmii-eth: move PCS registers to separate header
  phy: qcom: sgmii-eth: use existing register definitions
  phy: qcom: qmp-usbc: drop has_pwrdn_delay handling
  phy: qcom: qmp: move common bits definitions to common header
  phy: qcom: qmp: split DP PHY registers to separate headers
  ...

1  2 
MAINTAINERS
drivers/phy/microchip/lan966x_serdes.c
drivers/phy/qualcomm/phy-qcom-qmp-combo.c
drivers/phy/qualcomm/phy-qcom-qmp-usb.c
drivers/phy/renesas/phy-rcar-gen3-usb2.c

diff --combined MAINTAINERS
index be59443034d0eed30a67564692883c80a84314c2,2214330853adc285e6fcfc62ca9e2dd012a2e724..d4300cab7062440dfbccd6b6a0b4e7c65d39236e
@@@ -24,7 -24,7 +24,7 @@@ Descriptions of section entries and pre
           filing info, a direct bug tracker link, or a mailto: URI.
        C: URI for *chat* protocol, server and channel where developers
           usually hang out, for example irc://server/channel.
 -      P: Subsystem Profile document for more details submitting
 +      P: *Subsystem Profile* document for more details submitting
           patches to the given subsystem. This is either an in-tree file,
           or a URI. See Documentation/maintainer/maintainer-entry-profile.rst
           for details.
@@@ -614,7 -614,7 +614,7 @@@ AGPGART DRIVE
  M:    David Airlie <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://anongit.freedesktop.org/drm/drm
 +T:    git https://gitlab.freedesktop.org/drm/kernel.git
  F:    drivers/char/agp/
  F:    include/linux/agp*
  F:    include/uapi/linux/agp*
@@@ -897,12 -897,6 +897,12 @@@ Q:       https://patchwork.kernel.org/project
  F:    drivers/infiniband/hw/efa/
  F:    include/uapi/rdma/efa-abi.h
  
 +AMD ADDRESS TRANSLATION LIBRARY (ATL)
 +M:    Yazen Ghannam <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/ras/amd/atl/*
 +
  AMD AXI W1 DRIVER
  M:    Kris Chaplin <[email protected]>
  R:    Thomas Delev <[email protected]>
@@@ -1064,7 -1058,7 +1064,7 @@@ F:      include/linux/amd-pstate.
  F:    tools/power/x86/amd_pstate_tracer/amd_pstate_trace.py
  
  AMD PTDMA DRIVER
 -M:    Sanjay R Mehta <sanju.mehta@amd.com>
 +M:    Basavaraj Natikar <Basavaraj.Natikar@amd.com>
  L:    [email protected]
  S:    Maintained
  F:    drivers/dma/ptdma/
@@@ -1104,14 -1098,6 +1104,14 @@@ F:    Documentation/devicetree/bindings/pe
  F:    drivers/perf/amlogic/
  F:    include/soc/amlogic/
  
 +AMPHENOL CHIPCAP 2 HUMIDITY-TEMPERATURE IIO DRIVER
 +M:    Javier Carrasco <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/hwmon/amphenol,chipcap2.yaml
 +F:    Documentation/hwmon/chipcap2.rst
 +F:    drivers/hwmon/chipcap2.c
 +
  AMPHION VPU CODEC V4L2 DRIVER
  M:    Ming Qian <[email protected]>
  M:    Zhou Peng <[email protected]>
@@@ -1398,9 -1384,17 +1398,9 @@@ F:     drivers/iio/amplifiers/hmc425a.
  F:    drivers/staging/iio/*/ad*
  X:    drivers/iio/*/adjd*
  
 -ANALOG DEVICES INC MAX31760 DRIVER
 -M:    Ibrahim Tilki <[email protected]>
 -S:    Maintained
 -W:    http://wiki.analog.com/
 -W:    https://ez.analog.com/linux-software-drivers
 -F:    Documentation/devicetree/bindings/hwmon/adi,max31760.yaml
 -F:    Documentation/hwmon/max31760.rst
 -F:    drivers/hwmon/max31760.c
 -
  ANALOGBITS PLL LIBRARIES
  M:    Paul Walmsley <[email protected]>
 +M:    Samuel Holland <[email protected]>
  S:    Supported
  F:    drivers/clk/analogbits/*
  F:    include/linux/clk/analogbits*
@@@ -2162,7 -2156,7 +2162,7 @@@ M:      Shawn Guo <[email protected]
  M:    Sascha Hauer <[email protected]>
  R:    Pengutronix Kernel Team <[email protected]>
  R:    Fabio Estevam <[email protected]>
 -R:    NXP Linux Team <[email protected]>
 +L:    [email protected]
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git
@@@ -2471,7 -2465,6 +2471,7 @@@ T:      git git://git.kernel.org/pub/scm/lin
  F:    Documentation/devicetree/bindings/arm/ste-*
  F:    Documentation/devicetree/bindings/arm/ux500.yaml
  F:    Documentation/devicetree/bindings/arm/ux500/
 +F:    Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml
  F:    Documentation/devicetree/bindings/i2c/st,nomadik-i2c.yaml
  F:    arch/arm/boot/dts/st/ste-*
  F:    arch/arm/mach-nomadik/
@@@ -2480,7 -2473,6 +2480,7 @@@ F:      drivers/clk/clk-nomadik.
  F:    drivers/clocksource/clksrc-dbx500-prcmu.c
  F:    drivers/dma/ste_dma40*
  F:    drivers/pmdomain/st/ste-ux500-pm-domain.c
 +F:    drivers/gpio/gpio-nomadik.c
  F:    drivers/hwspinlock/u8500_hsem.c
  F:    drivers/i2c/busses/i2c-nomadik.c
  F:    drivers/iio/adc/ab8500-gpadc.c
@@@ -2550,14 -2542,13 +2550,14 @@@ F:   drivers/*/*/*wpcm
  F:    drivers/*/*wpcm*
  
  ARM/NXP S32G ARCHITECTURE
 -M:    Chester Lin <[email protected]>
 -R:    Andreas Färber <[email protected]>
 +R:    Chester Lin <[email protected]>
  R:    Matthias Brugger <[email protected]>
 -R:    NXP S32 Linux Team <[email protected]>
 +R:    Ghennadi Procopciuc <[email protected]>
 +L:    NXP S32 Linux Team <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  F:    arch/arm64/boot/dts/freescale/s32g*.dts*
 +F:    drivers/pinctrl/nxp/
  
  ARM/Orion SoC/Technologic Systems TS-78xx platform support
  M:    Alexander Clouter <[email protected]>
@@@ -2761,7 -2752,6 +2761,7 @@@ M:      Andrzej Hajda <[email protected]
  L:    [email protected] (moderated for non-subscribers)
  L:    [email protected]
  S:    Maintained
 +F:    Documentation/devicetree/bindings/media/samsung,s5p-mfc.yaml
  F:    drivers/media/platform/samsung/s5p-mfc/
  
  ARM/SOCFPGA ARCHITECTURE
@@@ -3178,10 -3168,10 +3178,10 @@@ F:   drivers/hwmon/asus-ec-sensors.
  
  ASUS NOTEBOOKS AND EEEPC ACPI/WMI EXTRAS DRIVERS
  M:    Corentin Chary <[email protected]>
 -L:    [email protected]
 +M:    Luke D. Jones <[email protected]>
  L:    [email protected]
  S:    Maintained
 -W:    http://acpi4asus.sf.net
 +W:    https://asus-linux.org/
  F:    drivers/platform/x86/asus*.c
  F:    drivers/platform/x86/eeepc*.c
  
@@@ -3192,12 -3182,6 +3192,12 @@@ S:    Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
  F:    drivers/platform/x86/asus-tf103c-dock.c
  
 +ASUS ROG RYUJIN AIO HARDWARE MONITOR DRIVER
 +M:    Aleksa Savic <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/hwmon/asus_rog_ryujin.c
 +
  ASUS WIRELESS RADIO CONTROL DRIVER
  M:    João Paulo Rechi Vita <[email protected]>
  L:    [email protected]
@@@ -3392,15 -3376,11 +3392,15 @@@ F:   drivers/base/auxiliary.
  F:    include/linux/auxiliary_bus.h
  
  AUXILIARY DISPLAY DRIVERS
 -M:    Miguel Ojeda <[email protected]>
 -S:    Maintained
 +M:    Andy Shevchenko <[email protected]>
 +R:    Geert Uytterhoeven <[email protected]>
 +S:    Odd Fixes
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-auxdisplay.git
  F:    Documentation/devicetree/bindings/auxdisplay/
  F:    drivers/auxdisplay/
  F:    include/linux/cfag12864b.h
 +F:    include/uapi/linux/map_to_14segment.h
 +F:    include/uapi/linux/map_to_7segment.h
  
  AVIA HX711 ANALOG DIGITAL CONVERTER IIO DRIVER
  M:    Andreas Klinger <[email protected]>
@@@ -3556,7 -3536,6 +3556,7 @@@ R:      Brian Foster <[email protected]
  L:    [email protected]
  S:    Supported
  C:    irc://irc.oftc.net/bcache
 +T:    git https://evilpiepirate.org/git/bcachefs.git
  F:    fs/bcachefs/
  
  BDISP ST MEDIA DRIVER
@@@ -3820,7 -3799,6 +3820,7 @@@ M:      Alexei Starovoitov <[email protected]
  M:    Daniel Borkmann <[email protected]>
  M:    Andrii Nakryiko <[email protected]>
  R:    Martin KaFai Lau <[email protected]>
 +R:    Eduard Zingerman <[email protected]>
  R:    Song Liu <[email protected]>
  R:    Yonghong Song <[email protected]>
  R:    John Fastabend <[email protected]>
@@@ -3881,7 -3859,6 +3881,7 @@@ F:      net/unix/unix_bpf.
  
  BPF [LIBRARY] (libbpf)
  M:    Andrii Nakryiko <[email protected]>
 +M:    Eduard Zingerman <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    tools/lib/bpf/
@@@ -3939,7 -3916,6 +3939,7 @@@ F:      security/bpf
  
  BPF [SELFTESTS] (Test Runners & Infrastructure)
  M:    Andrii Nakryiko <[email protected]>
 +M:    Eduard Zingerman <[email protected]>
  R:    Mykola Lysenko <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -4193,14 -4169,14 +4193,14 @@@ F:   drivers/firmware/broadcom/tee_bnxt_f
  F:    drivers/net/ethernet/broadcom/bnxt/
  F:    include/linux/firmware/broadcom/tee_bnxt_fw.h
  
 -BROADCOM BRCM80211 IEEE802.11n WIRELESS DRIVER
 -M:    Arend van Spriel <[email protected]>
 -M:    Franky Lin <[email protected]>
 -M:    Hante Meuleman <[email protected]>
 +BROADCOM BRCM80211 IEEE802.11 WIRELESS DRIVERS
 +M:    Arend van Spriel <[email protected]>
  L:    [email protected]
 +L:    [email protected]
  L:    [email protected]
  S:    Supported
  F:    drivers/net/wireless/broadcom/brcm80211/
 +F:    include/linux/platform_data/brcmfmac.h
  
  BROADCOM BRCMSTB GPIO DRIVER
  M:    Doug Berger <[email protected]>
@@@ -4571,7 -4547,7 +4571,7 @@@ F:      drivers/net/ieee802154/ca8210.
  
  CACHEFILES: FS-CACHE BACKEND FOR CACHING ON MOUNTED FILESYSTEMS
  M:    David Howells <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 +L:    [email protected]
  S:    Supported
  F:    Documentation/filesystems/caching/cachefiles.rst
  F:    fs/cachefiles/
@@@ -4653,8 -4629,8 +4653,8 @@@ S:      Maintaine
  F:    net/sched/sch_cake.c
  
  CAN NETWORK DRIVERS
 -M:    Wolfgang Grandegger <[email protected]>
  M:    Marc Kleine-Budde <[email protected]>
 +M:    Vincent Mailhol <[email protected]>
  L:    [email protected]
  S:    Maintained
  W:    https://github.com/linux-can
@@@ -5014,12 -4990,6 +5014,12 @@@ R:    Sami Kyöstilä <[email protected]
  S:    Maintained
  F:    drivers/platform/chrome/cros_hps_i2c.c
  
 +CHROMEOS EC WATCHDOG
 +M:    Lukasz Majczak <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/watchdog/cros_ec_wdt.c
 +
  CHRONTEL CH7322 CEC DRIVER
  M:    Joe Tessler <[email protected]>
  L:    [email protected]
@@@ -5044,7 -5014,6 +5044,7 @@@ F:      include/linux/mfd/cs42l43
  F:    include/sound/cs*
  F:    sound/pci/hda/cirrus*
  F:    sound/pci/hda/cs*
 +F:    sound/pci/hda/hda_component*
  F:    sound/pci/hda/hda_cs_dsp_ctl.*
  F:    sound/soc/codecs/cs*
  
@@@ -5270,7 -5239,6 +5270,7 @@@ R:      Paulo Alcantara <[email protected]> (
  R:    Ronnie Sahlberg <[email protected]> (directory leases, sparse files)
  R:    Shyam Prasad N <[email protected]> (multichannel)
  R:    Tom Talpey <[email protected]> (RDMA, smbdirect)
 +R:    Bharath SM <[email protected]> (deferred close, directory leases)
  L:    [email protected]
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
@@@ -5321,7 -5289,6 +5321,7 @@@ M:      Dan Williams <[email protected]
  L:    [email protected]
  S:    Maintained
  F:    drivers/cxl/
 +F:    include/linux/cxl-einj.h
  F:    include/linux/cxl-event.h
  F:    include/uapi/linux/cxl_mem.h
  F:    tools/testing/cxl/
@@@ -5411,12 -5378,11 +5411,12 @@@ CONTROL GROUP - MEMORY RESOURCE CONTROL
  M:    Johannes Weiner <[email protected]>
  M:    Michal Hocko <[email protected]>
  M:    Roman Gushchin <[email protected]>
 -M:    Shakeel Butt <shakeel[email protected]>
 +M:    Shakeel Butt <shakeel[email protected]>
  R:    Muchun Song <[email protected]>
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
 +F:    include/linux/memcontrol.h
  F:    mm/memcontrol.c
  F:    mm/swap_cgroup.c
  F:    samples/cgroup/*
@@@ -5644,11 -5610,6 +5644,11 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/net/can/ctu,ctucanfd.yaml
  F:    drivers/net/can/ctucanfd/
  
 +CVE ASSIGNMENT CONTACT
 +M:    CVE Assignment Team <[email protected]>
 +S:    Maintained
 +F:    Documentation/process/cve.rst
 +
  CW1200 WLAN driver
  S:    Orphan
  F:    drivers/net/wireless/st/cw1200/
@@@ -5997,6 -5958,7 +5997,6 @@@ S:      Maintaine
  F:    drivers/platform/x86/dell/dell-wmi-descriptor.c
  
  DELL WMI HARDWARE PRIVACY SUPPORT
 -M:    Perry Yuan <[email protected]>
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
@@@ -6157,14 -6119,6 +6157,14 @@@ F:    include/linux/device-mapper.
  F:    include/linux/dm-*.h
  F:    include/uapi/linux/dm-*.h
  
 +DEVICE-MAPPER VDO TARGET
 +M:    Matthew Sakai <[email protected]>
 +M:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/admin-guide/device-mapper/vdo*.rst
 +F:    drivers/md/dm-vdo/
 +
  DEVLINK
  M:    Jiri Pirko <[email protected]>
  L:    [email protected]
@@@ -6192,16 -6146,16 +6192,16 @@@ DIALOG SEMICONDUCTOR DRIVER
  M:    Support Opensource <[email protected]>
  S:    Supported
  W:    http://www.dialog-semiconductor.com/products
 -F:    Documentation/devicetree/bindings/input/da90??-onkey.txt
  F:    Documentation/devicetree/bindings/input/dlg,da72??.txt
 +F:    Documentation/devicetree/bindings/input/dlg,da9062-onkey.yaml
  F:    Documentation/devicetree/bindings/mfd/da90*.txt
  F:    Documentation/devicetree/bindings/mfd/dlg,da90*.yaml
  F:    Documentation/devicetree/bindings/regulator/da92*.txt
  F:    Documentation/devicetree/bindings/regulator/dlg,da9*.yaml
  F:    Documentation/devicetree/bindings/regulator/dlg,slg51000.yaml
  F:    Documentation/devicetree/bindings/sound/da[79]*.txt
 -F:    Documentation/devicetree/bindings/thermal/da90??-thermal.txt
 -F:    Documentation/devicetree/bindings/watchdog/dlg,da90??-watchdog.yaml
 +F:    Documentation/devicetree/bindings/thermal/dlg,da9062-thermal.yaml
 +F:    Documentation/devicetree/bindings/watchdog/dlg,da9062-watchdog.yaml
  F:    Documentation/hwmon/da90??.rst
  F:    drivers/gpio/gpio-da90??.c
  F:    drivers/hwmon/da90??-hwmon.c
@@@ -6419,7 -6373,6 +6419,7 @@@ L:      [email protected]
  S:    Maintained
  F:    Documentation/admin-guide/quickly-build-trimmed-linux.rst
  F:    Documentation/admin-guide/reporting-issues.rst
 +F:    Documentation/admin-guide/verify-bugs-and-bisect-regressions.rst
  
  DOCUMENTATION SCRIPTS
  M:    Mauro Carvalho Chehab <[email protected]>
@@@ -7039,7 -6992,7 +7039,7 @@@ L:      [email protected]
  S:    Maintained
  B:    https://gitlab.freedesktop.org/drm
  C:    irc://irc.oftc.net/dri-devel
 -T:    git git://anongit.freedesktop.org/drm/drm
 +T:    git https://gitlab.freedesktop.org/drm/kernel.git
  F:    Documentation/devicetree/bindings/display/
  F:    Documentation/devicetree/bindings/gpu/
  F:    Documentation/gpu/
@@@ -7073,7 -7026,7 +7073,7 @@@ X:      drivers/gpu/drm/mediatek
  X:    drivers/gpu/drm/msm/
  X:    drivers/gpu/drm/nouveau/
  X:    drivers/gpu/drm/radeon/
 -X:    drivers/gpu/drm/renesas/
 +X:    drivers/gpu/drm/renesas/rcar-du/
  X:    drivers/gpu/drm/tegra/
  
  DRM DRIVERS FOR ALLWINNER A10
@@@ -7241,22 -7194,12 +7241,22 @@@ F:   Documentation/devicetree/bindings/di
  F:    Documentation/devicetree/bindings/display/renesas,du.yaml
  F:    drivers/gpu/drm/renesas/rcar-du/
  
 +DRM DRIVERS FOR RENESAS RZ
 +M:    Biju Das <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    Documentation/devicetree/bindings/display/renesas,rzg2l-du.yaml
 +F:    drivers/gpu/drm/renesas/rz-du/
 +
  DRM DRIVERS FOR RENESAS SHMOBILE
  M:    Laurent Pinchart <[email protected]>
  M:    Geert Uytterhoeven <[email protected]>
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
  F:    Documentation/devicetree/bindings/display/renesas,shmobile-lcdc.yaml
  F:    drivers/gpu/drm/renesas/shmobile/
  F:    include/linux/platform_data/shmob_drm.h
@@@ -7366,7 -7309,6 +7366,7 @@@ F:      drivers/gpu/drm/xlnx
  
  DRM GPU SCHEDULER
  M:    Luben Tuikov <[email protected]>
 +M:    Matthew Brost <[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://anongit.freedesktop.org/drm/drm-misc
@@@ -7636,6 -7578,7 +7636,6 @@@ R:      Robert Richter <[email protected]
  L:    [email protected]
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras.git edac-for-next
 -F:    Documentation/admin-guide/ras.rst
  F:    Documentation/driver-api/edac.rst
  F:    drivers/edac/
  F:    include/linux/edac.h
@@@ -7843,8 -7786,8 +7843,8 @@@ F:      drivers/media/usb/em28xx
  
  EMMC CMDQ HOST CONTROLLER INTERFACE (CQHCI) DRIVER
  M:    Adrian Hunter <[email protected]>
 -M:    Ritesh Harjani <[email protected]>
 -M:    Asutosh Das <[email protected]>
 +M:    Asutosh Das <[email protected]>
 +R:    Ritesh Harjani <[email protected]>
  L:    [email protected]
  S:    Supported
  F:    drivers/mmc/host/cqhci*
@@@ -7942,13 -7885,6 +7942,13 @@@ S:    Maintaine
  F:    include/linux/errseq.h
  F:    lib/errseq.c
  
 +ESD CAN NETWORK DRIVERS
 +M:    Stefan Mätje <[email protected]>
 +R:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/net/can/esd/
 +
  ESD CAN/USB DRIVERS
  M:    Frank Jungclaus <[email protected]>
  R:    [email protected]
  S:    Maintained
  F:    rust/kernel/net/phy.rs
  
 -EXEC & BINFMT API
 +EXEC & BINFMT API, ELF
  R:    Eric Biederman <[email protected]>
  R:    Kees Cook <[email protected]>
  L:    [email protected]
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/execve
 +F:    Documentation/userspace-api/ELF.rst
  F:    fs/*binfmt_*.c
  F:    fs/exec.c
  F:    include/linux/binfmts.h
@@@ -8044,19 -7979,11 +8044,19 @@@ S:   Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat.git
  F:    fs/exfat/
  
 +EXPRESSWIRE PROTOCOL LIBRARY
 +M:    Duje Mihanović <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/leds/leds-expresswire.c
 +F:    include/linux/leds-expresswire.h
 +
  EXT2 FILE SYSTEM
  M:    Jan Kara <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/filesystems/ext2.rst
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs.git
  F:    fs/ext2/
  F:    include/linux/ext2*
  
@@@ -8233,7 -8160,6 +8233,7 @@@ F:      include/uapi/scsi/fc
  FILE LOCKING (flock() and fcntl()/lockf())
  M:    Jeff Layton <[email protected]>
  M:    Chuck Lever <[email protected]>
 +R:    Alexander Aring <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    fs/fcntl.c
@@@ -8297,8 -8223,7 +8297,8 @@@ F:      include/linux/iomap.
  
  FILESYSTEMS [NETFS LIBRARY]
  M:    David Howells <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 +R:    Jeff Layton <[email protected]>
 +L:    [email protected]
  L:    [email protected]
  S:    Supported
  F:    Documentation/filesystems/caching/
@@@ -8564,7 -8489,7 +8564,7 @@@ FREESCALE IMX / MXC FEC DRIVE
  M:    Wei Fang <[email protected]>
  R:    Shenwei Wang <[email protected]>
  R:    Clark Wang <[email protected]>
 -R:    NXP Linux Team <[email protected]>
 +L:    [email protected]
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/fsl,fec.yaml
@@@ -8599,7 -8524,7 +8599,7 @@@ F:      drivers/i2c/busses/i2c-imx.
  FREESCALE IMX LPI2C DRIVER
  M:    Dong Aisheng <[email protected]>
  L:    [email protected]
 -L:    [email protected]
 +L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/i2c/i2c-imx-lpi2c.yaml
  F:    drivers/i2c/busses/i2c-imx-lpi2c.c
@@@ -8659,13 -8584,6 +8659,13 @@@ F:    Documentation/devicetree/bindings/so
  F:    drivers/soc/fsl/qe/qmc.c
  F:    include/soc/fsl/qe/qmc.h
  
 +FREESCALE QUICC ENGINE QMC HDLC DRIVER
 +M:    Herve Codina <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/net/wan/fsl_qmc_hdlc.c
 +
  FREESCALE QUICC ENGINE TSA DRIVER
  M:    Herve Codina <[email protected]>
  L:    [email protected]
@@@ -9057,10 -8975,9 +9057,10 @@@ F:    include/linux/string.
  F:    include/linux/string_choices.h
  F:    include/linux/string_helpers.h
  F:    lib/string.c
 +F:    lib/string_kunit.c
  F:    lib/string_helpers.c
 -F:    lib/test-string_helpers.c
 -F:    lib/test_string.c
 +F:    lib/string_helpers_kunit.c
 +F:    scripts/coccinelle/api/string_choices.cocci
  
  GENERIC UIO DRIVER FOR PCI DEVICES
  M:    "Michael S. Tsirkin" <[email protected]>
@@@ -9162,7 -9079,6 +9162,7 @@@ F:      Documentation/devicetree/bindings/cl
  F:    arch/arm64/boot/dts/exynos/google/
  F:    drivers/clk/samsung/clk-gs101.c
  F:    include/dt-bindings/clock/google,gs101.h
 +K:    [gG]oogle.?[tT]ensor
  
  GPD POCKET FAN DRIVER
  M:    Hans de Goede <[email protected]>
@@@ -9232,7 -9148,6 +9232,7 @@@ S:      Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git
  F:    Documentation/ABI/obsolete/sysfs-gpio
  F:    Documentation/ABI/testing/gpio-cdev
 +F:    Documentation/userspace-api/gpio/
  F:    drivers/gpio/gpiolib-cdev.c
  F:    include/uapi/linux/gpio.h
  F:    tools/gpio/
@@@ -10159,6 -10074,7 +10159,6 @@@ S:   Maintaine
  W:    https://i2c.wiki.kernel.org/
  Q:    https://patchwork.ozlabs.org/project/linux-i2c/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git
 -F:    Documentation/devicetree/bindings/i2c/i2c.txt
  F:    Documentation/i2c/
  F:    drivers/i2c/*
  F:    include/dt-bindings/i2c/i2c.h
  S:    Maintained
  W:    https://i2c.wiki.kernel.org/
  Q:    https://patchwork.ozlabs.org/project/linux-i2c/list/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux.git
  F:    Documentation/devicetree/bindings/i2c/
  F:    drivers/i2c/algos/
  F:    drivers/i2c/busses/
@@@ -10366,7 -10282,7 +10366,7 @@@ F:   drivers/scsi/ibmvscsi/ibmvscsi
  F:    include/scsi/viosrp.h
  
  IBM Power Virtual SCSI Device Target Driver
 -M:    Michael Cyr <mikecyr@linux.ibm.com>
 +M:    Tyrel Datwyler <tyreld@linux.ibm.com>
  L:    [email protected]
  L:    [email protected]
  S:    Supported
@@@ -10378,17 -10294,12 +10378,17 @@@ M:        Nayna Jain <[email protected]
  M:    Paulo Flabiano Smorigo <[email protected]>
  L:    [email protected]
  S:    Supported
 -F:    drivers/crypto/vmx/Kconfig
 -F:    drivers/crypto/vmx/Makefile
 -F:    drivers/crypto/vmx/aes*
 -F:    drivers/crypto/vmx/ghash*
 -F:    drivers/crypto/vmx/ppc-xlate.pl
 -F:    drivers/crypto/vmx/vmx.c
 +F:    arch/powerpc/crypto/Kconfig
 +F:    arch/powerpc/crypto/Makefile
 +F:    arch/powerpc/crypto/aes.c
 +F:    arch/powerpc/crypto/aes_cbc.c
 +F:    arch/powerpc/crypto/aes_ctr.c
 +F:    arch/powerpc/crypto/aes_xts.c
 +F:    arch/powerpc/crypto/aesp8-ppc.*
 +F:    arch/powerpc/crypto/ghash.c
 +F:    arch/powerpc/crypto/ghashp8-ppc.pl
 +F:    arch/powerpc/crypto/ppc-xlate.pl
 +F:    arch/powerpc/crypto/vmx.c
  
  IBM ServeRAID RAID DRIVER
  S:    Orphan
@@@ -10555,11 -10466,11 +10555,11 @@@ F:        drivers/media/rc/img-ir
  
  IMGTEC POWERVR DRM DRIVER
  M:    Frank Binns <[email protected]>
 -M:    Donald Robson <[email protected]>
  M:    Matt Coster <[email protected]>
  S:    Supported
  T:    git git://anongit.freedesktop.org/drm/drm-misc
 -F:    Documentation/devicetree/bindings/gpu/img,powervr.yaml
 +F:    Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
 +F:    Documentation/devicetree/bindings/gpu/img,powervr-sgx.yaml
  F:    Documentation/gpu/imagination/
  F:    drivers/gpu/drm/imagination/
  F:    include/uapi/drm/pvr_drm.h
  S:    Orphan
  F:    drivers/video/fbdev/imsttfb.c
  
 -INA209 HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/hwmon/ti,ina2xx.yaml
 -F:    Documentation/hwmon/ina209.rst
 -F:    drivers/hwmon/ina209.c
 -
 -INA2XX HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/hwmon/ina2xx.rst
 -F:    drivers/hwmon/ina2xx.c
 -F:    include/linux/platform_data/ina2xx.h
 -
  INDEX OF FURTHER KERNEL DOCUMENTATION
  M:    Carlos Bilbao <[email protected]>
  S:    Maintained
@@@ -10801,7 -10728,7 +10801,7 @@@ INTEL DRM I915 DRIVER (Meteor Lake, DG
  M:    Jani Nikula <[email protected]>
  M:    Joonas Lahtinen <[email protected]>
  M:    Rodrigo Vivi <[email protected]>
 -M:    Tvrtko Ursulin <t[email protected]>
 +M:    Tvrtko Ursulin <t[email protected]>
  L:    [email protected]
  S:    Supported
  W:    https://drm.pages.freedesktop.org/intel-docs/
@@@ -10873,11 -10800,11 +10873,11 @@@ F:        drivers/gpio/gpio-tangier.
  
  INTEL GVT-g DRIVERS (Intel GPU Virtualization)
  M:    Zhenyu Wang <[email protected]>
 -M:    Zhi Wang <zhi.a.wang@intel.com>
 +M:    Zhi Wang <zhi.wang.linux@gmail.com>
  L:    [email protected]
  L:    [email protected]
  S:    Supported
 -W:    https://01.org/igvt-g
 +W:    https://github.com/intel/gvt-linux/wiki
  T:    git https://github.com/intel/gvt-linux.git
  F:    drivers/gpu/drm/i915/gvt/
  
@@@ -11199,6 -11126,7 +11199,6 @@@ S:   Supporte
  F:    drivers/net/wireless/intel/iwlegacy/
  
  INTEL WIRELESS WIFI LINK (iwlwifi)
 -M:    Gregory Greenman <[email protected]>
  M:    Miri Korenblit <[email protected]>
  L:    [email protected]
  S:    Supported
  S:    Maintained
  F:    drivers/net/wwan/iosm/
  
 +INTEL(R) FLEXIBLE RETURN AND EVENT DELIVERY
 +M:    Xin Li <[email protected]>
 +M:    "H. Peter Anvin" <[email protected]>
 +S:    Supported
 +F:    Documentation/arch/x86/x86_64/fred.rst
 +F:    arch/x86/entry/entry_64_fred.S
 +F:    arch/x86/entry/entry_fred.c
 +F:    arch/x86/include/asm/fred.h
 +F:    arch/x86/kernel/fred.c
 +
  INTEL(R) TRACE HUB
  M:    Alexander Shishkin <[email protected]>
  S:    Supported
@@@ -11321,6 -11239,7 +11321,6 @@@ F:   drivers/iommu
  F:    include/linux/iommu.h
  F:    include/linux/iova.h
  F:    include/linux/of_iommu.h
 -F:    include/uapi/linux/iommu.h
  
  IOMMUFD
  M:    Jason Gunthorpe <[email protected]>
@@@ -11560,6 -11479,14 +11560,6 @@@ S:  Maintaine
  F:    arch/x86/include/asm/jailhouse_para.h
  F:    arch/x86/kernel/jailhouse.c
  
 -JC42.4 TEMPERATURE SENSOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/hwmon/jedec,jc42.yaml
 -F:    Documentation/hwmon/jc42.rst
 -F:    drivers/hwmon/jc42.c
 -
  JFS FILESYSTEM
  M:    Dave Kleikamp <[email protected]>
  L:    [email protected]
@@@ -11797,7 -11724,6 +11797,7 @@@ F:   fs/smb/server
  KERNEL UNIT TESTING FRAMEWORK (KUnit)
  M:    Brendan Higgins <[email protected]>
  M:    David Gow <[email protected]>
 +R:    Rae Moar <[email protected]>
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
@@@ -12119,12 -12045,6 +12119,12 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/leds/backlight/kinetic,ktd253.yaml
  F:    drivers/video/backlight/ktd253-backlight.c
  
 +KTD2801 BACKLIGHT DRIVER
 +M:    Duje Mihanović <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/leds/backlight/kinetic,ktd2801.yaml
 +F:    drivers/video/backlight/ktd2801-backlight.c
 +
  KTEST
  M:    Steven Rostedt <[email protected]>
  M:    John Hawley <[email protected]>
@@@ -12232,11 -12152,11 +12232,11 @@@ F:        Documentation/scsi/53c700.rs
  F:    drivers/scsi/53c700*
  
  LEAKING_ADDRESSES
 -M:    Tobin C. Harding <[email protected]>
  M:    Tycho Andersen <[email protected]>
 +R:    Kees Cook <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tobin/leaks.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
  F:    scripts/leaking_addresses.pl
  
  LED SUBSYSTEM
@@@ -12462,6 -12382,7 +12462,6 @@@ F:   drivers/*/*/*pasemi
  F:    drivers/*/*pasemi*
  F:    drivers/char/tpm/tpm_ibmvtpm*
  F:    drivers/crypto/nx/
 -F:    drivers/crypto/vmx/
  F:    drivers/i2c/busses/i2c-opal.c
  F:    drivers/net/ethernet/ibm/ibmveth.*
  F:    drivers/net/ethernet/ibm/ibmvnic.*
@@@ -12589,6 -12510,7 +12589,6 @@@ F:   arch/powerpc/include/asm/livepatch.
  F:    include/linux/livepatch.h
  F:    kernel/livepatch/
  F:    kernel/module/livepatch.c
 -F:    lib/livepatch/
  F:    samples/livepatch/
  F:    tools/testing/selftests/livepatch/
  
@@@ -12629,6 -12551,13 +12629,6 @@@ F:  Documentation/hwmon/lm90.rs
  F:    drivers/hwmon/lm90.c
  F:    include/dt-bindings/thermal/lm90.h
  
 -LM95234 HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/hwmon/lm95234.rst
 -F:    drivers/hwmon/lm95234.c
 -
  LME2510 MEDIA DRIVER
  M:    Malcolm Priestley <[email protected]>
  L:    [email protected]
@@@ -12832,13 -12761,12 +12832,13 @@@ W:        https://ez.analog.com/linux-software
  F:    Documentation/devicetree/bindings/iio/temperature/adi,ltc2983.yaml
  F:    drivers/iio/temperature/ltc2983.c
  
 -LTC4261 HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 +LTC4282 HARDWARE MONITOR DRIVER
 +M:    Nuno Sa <[email protected]>
  L:    [email protected]
 -S:    Maintained
 -F:    Documentation/hwmon/ltc4261.rst
 -F:    drivers/hwmon/ltc4261.c
 +S:    Supported
 +F:    Documentation/devicetree/bindings/hwmon/adi,ltc4282.yaml
 +F:    Documentation/hwmon/ltc4282.rst
 +F:    drivers/hwmon/ltc4282.c
  
  LTC4286 HARDWARE MONITOR DRIVER
  M:    Delphine CC Chiu <[email protected]>
@@@ -12974,8 -12902,6 +12974,8 @@@ M:   Alejandro Colomar <[email protected]
  L:    [email protected]
  S:    Maintained
  W:    http://www.kernel.org/doc/man-pages
 +T:    git git://git.kernel.org/pub/scm/docs/man-pages/man-pages.git
 +T:    git git://www.alejandro-colomar.es/src/alx/linux/man-pages/man-pages.git
  
  MANAGEMENT COMPONENT TRANSPORT PROTOCOL (MCTP)
  M:    Jeremy Kerr <[email protected]>
  S:    Supported
  F:    drivers/net/ethernet/marvell/octeon_ep
  
 +MARVELL OCTEON ENDPOINT VF DRIVER
 +M:    Veerasenareddy Burru <[email protected]>
 +M:    Sathesh Edara <[email protected]>
 +M:    Shinas Rasheed <[email protected]>
 +M:    Satananda Burla <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/net/ethernet/marvell/octeon_ep_vf
 +
  MARVELL OCTEONTX2 PHYSICAL FUNCTION DRIVER
  M:    Sunil Goutham <[email protected]>
  M:    Geetha sowjanya <[email protected]>
@@@ -13196,6 -13113,13 +13196,6 @@@ S:  Maintaine
  F:    Documentation/hwmon/max15301.rst
  F:    drivers/hwmon/pmbus/max15301.c
  
 -MAX16065 HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/hwmon/max16065.rst
 -F:    drivers/hwmon/max16065.c
 -
  MAX2175 SDR TUNER DRIVER
  M:    Ramesh Shanmugasundaram <[email protected]>
  L:    [email protected]
@@@ -13206,6 -13130,15 +13206,6 @@@ F:  Documentation/userspace-api/media/dr
  F:    drivers/media/i2c/max2175*
  F:    include/uapi/linux/max2175.h
  
 -MAX31827 TEMPERATURE SWITCH DRIVER
 -M:    Daniel Matyas <[email protected]>
 -L:    [email protected]
 -S:    Supported
 -W:    https://ez.analog.com/linux-software-drivers
 -F:    Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
 -F:    Documentation/hwmon/max31827.rst
 -F:    drivers/hwmon/max31827.c
 -
  MAX31335 RTC DRIVER
  M:    Antoniu Miclaus <[email protected]>
  L:    [email protected]
@@@ -13220,6 -13153,15 +13220,6 @@@ S:  Orpha
  F:    Documentation/hwmon/max6650.rst
  F:    drivers/hwmon/max6650.c
  
 -MAX6697 HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/hwmon/max6697.txt
 -F:    Documentation/hwmon/max6697.rst
 -F:    drivers/hwmon/max6697.c
 -F:    include/linux/platform_data/max6697.h
 -
  MAX9286 QUAD GMSL DESERIALIZER DRIVER
  M:    Jacopo Mondi <[email protected]>
  M:    Kieran Bingham <[email protected]>
@@@ -13635,7 -13577,6 +13635,7 @@@ T:   git git://linuxtv.org/media_tree.gi
  F:    Documentation/devicetree/bindings/media/renesas,csi2.yaml
  F:    Documentation/devicetree/bindings/media/renesas,isp.yaml
  F:    Documentation/devicetree/bindings/media/renesas,vin.yaml
 +F:    drivers/media/platform/renesas/rcar-csi2.c
  F:    drivers/media/platform/renesas/rcar-isp.c
  F:    drivers/media/platform/renesas/rcar-vin/
  
  L:    [email protected] (moderated for non-subscribers)
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
 -F:    Documentation/devicetree/bindings/dma/mtk-*
 +F:    Documentation/devicetree/bindings/dma/mediatek,*
  F:    drivers/dma/mediatek/
  
  MEDIATEK ETHERNET DRIVER
@@@ -13800,6 -13741,13 +13800,13 @@@ F: Documentation/devicetree/bindings/me
  F:    drivers/media/platform/mediatek/vcodec/
  F:    drivers/media/platform/mediatek/vpu/
  
+ MEDIATEK MIPI-CSI CDPHY DRIVER
+ M:    Julien Stephan <[email protected]>
+ M:    Andy Hsieh <[email protected]>
+ S:    Supported
+ F:    Documentation/devicetree/bindings/phy/mediatek,mt8365-csi-rx.yaml
+ F:    drivers/phy/mediatek/phy-mtk-mipi-csi-0-5*
  MEDIATEK MMC/SD/SDIO DRIVER
  M:    Chaotian Jing <[email protected]>
  S:    Maintained
@@@ -14066,7 -14014,7 +14073,7 @@@ F:   include/uapi/rdma/mlx5-abi.
  
  MELLANOX MLX5 VDPA DRIVER
  M:    Dragos Tatulea <[email protected]>
 -L:    [email protected]-foundation.org
 +L:    [email protected].dev
  S:    Supported
  F:    drivers/vdpa/mlx5/
  
@@@ -14152,35 -14100,15 +14159,35 @@@ T:        git git://git.kernel.org/pub/scm/lin
  T:    quilt git://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new
  F:    include/linux/gfp.h
  F:    include/linux/gfp_types.h
 +F:    include/linux/memfd.h
 +F:    include/linux/memory.h
  F:    include/linux/memory_hotplug.h
 +F:    include/linux/memory-tiers.h
 +F:    include/linux/mempolicy.h
 +F:    include/linux/mempool.h
 +F:    include/linux/memremap.h
  F:    include/linux/mm.h
 +F:    include/linux/mm_*.h
  F:    include/linux/mmzone.h
 +F:    include/linux/mmu_notifier.h
  F:    include/linux/pagewalk.h
  F:    include/linux/rmap.h
  F:    include/trace/events/ksm.h
  F:    mm/
  F:    tools/mm/
  F:    tools/testing/selftests/mm/
 +N:    include/linux/page[-_]*
 +
 +MEMORY MAPPING
 +M:    Andrew Morton <[email protected]>
 +R:    Liam R. Howlett <[email protected]>
 +R:    Vlastimil Babka <[email protected]>
 +R:    Lorenzo Stoakes <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +W:    http://www.linux-mm.org
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
 +F:    mm/mmap.c
  
  MEMORY TECHNOLOGY DEVICES (MTD)
  M:    Miquel Raynal <[email protected]>
@@@ -14309,6 -14237,7 +14316,6 @@@ F:   drivers/misc/xilinx_tmr_manager.
  
  MICROCHIP AT91 DMA DRIVERS
  M:    Ludovic Desroches <[email protected]>
 -M:    Tudor Ambarus <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  L:    [email protected]
  S:    Supported
@@@ -14357,8 -14286,9 +14364,8 @@@ F:   Documentation/devicetree/bindings/me
  F:    drivers/media/platform/microchip/microchip-csi2dc.c
  
  MICROCHIP ECC DRIVER
 -M:    Tudor Ambarus <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Orphan
  F:    drivers/crypto/atmel-ecc.*
  
  MICROCHIP EIC DRIVER
@@@ -14438,7 -14368,7 +14445,7 @@@ MICROCHIP MCP16502 PMIC DRIVE
  M:    Claudiu Beznea <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
 -F:    Documentation/devicetree/bindings/regulator/mcp16502-regulator.txt
 +F:    Documentation/devicetree/bindings/regulator/microchip,mcp16502.yaml
  F:    drivers/regulator/mcp16502.c
  
  MICROCHIP MCP3564 ADC DRIVER
@@@ -14463,8 -14393,9 +14470,8 @@@ S:   Maintaine
  F:    drivers/mmc/host/atmel-mci.c
  
  MICROCHIP NAND DRIVER
 -M:    Tudor Ambarus <[email protected]>
  L:    [email protected]
 -S:    Supported
 +S:    Orphan
  F:    Documentation/devicetree/bindings/mtd/atmel-nand.txt
  F:    drivers/mtd/nand/raw/atmel/*
  
@@@ -14632,14 -14563,6 +14639,14 @@@ F: Documentation/driver-api/surface_agg
  F:    drivers/platform/surface/surface_dtx.c
  F:    include/uapi/linux/surface_aggregator/dtx.h
  
 +MICROSOFT SURFACE SENSOR FAN DRIVER
 +M:    Maximilian Luz <[email protected]>
 +M:    Ivor Wanders <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/hwmon/surface_fan.rst
 +F:    drivers/hwmon/surface_fan.c
 +
  MICROSOFT SURFACE GPE LID SUPPORT DRIVER
  M:    Maximilian Luz <[email protected]>
  L:    [email protected]
@@@ -14743,17 -14666,6 +14750,17 @@@ F: arch/mips
  F:    drivers/platform/mips/
  F:    include/dt-bindings/mips/
  
 +MIPS BAIKAL-T1 PLATFORM
 +M:    Serge Semin <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/devicetree/bindings/bus/baikal,bt1-*.yaml
 +F:    Documentation/devicetree/bindings/clock/baikal,bt1-*.yaml
 +F:    drivers/bus/bt1-*.c
 +F:    drivers/clk/baikal-t1/
 +F:    drivers/memory/bt1-l2-ctl.c
 +F:    drivers/mtd/maps/physmap-bt1-rom.[ch]
 +
  MIPS BOSTON DEVELOPMENT BOARD
  M:    Paul Burton <[email protected]>
  L:    [email protected]
@@@ -14874,17 -14786,6 +14881,17 @@@ W: https://linuxtv.or
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  F:    drivers/media/dvb-frontends/mn88473*
  
 +MOBILEYE MIPS SOCS
 +M:    Vladimir Kondratiev <[email protected]>
 +M:    Gregory CLEMENT <[email protected]>
 +M:    Théo Lebrun <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/mips/mobileye.yaml
 +F:    arch/mips/boot/dts/mobileye/
 +F:    arch/mips/configs/eyeq5_defconfig
 +F:    arch/mips/mobileye/board-epm5.its.S
 +
  MODULE SUPPORT
  M:    Luis Chamberlain <[email protected]>
  L:    [email protected]
@@@ -15166,6 -15067,15 +15173,6 @@@ M:  Samuel Mendoza-Jonas <sam@mendozajon
  S:    Maintained
  F:    net/ncsi/
  
 -NCT6775 HARDWARE MONITOR DRIVER - CORE & PLATFORM DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/hwmon/nct6775.rst
 -F:    drivers/hwmon/nct6775-core.c
 -F:    drivers/hwmon/nct6775-platform.c
 -F:    drivers/hwmon/nct6775.h
 -
  NCT6775 HARDWARE MONITOR DRIVER - I2C DRIVER
  M:    Zev Weiss <[email protected]>
  L:    [email protected]
@@@ -15177,7 -15087,6 +15184,7 @@@ NETDEVSI
  M:    Jakub Kicinski <[email protected]>
  S:    Maintained
  F:    drivers/net/netdevsim/*
 +F:    tools/testing/selftests/drivers/net/netdevsim/*
  
  NETEM NETWORK EMULATOR
  M:    Stephen Hemminger <[email protected]>
@@@ -15275,7 -15184,6 +15282,7 @@@ F:   Documentation/networking/net_cacheli
  F:    drivers/connector/
  F:    drivers/net/
  F:    include/dt-bindings/net/
 +F:    include/linux/cn_proc.h
  F:    include/linux/etherdevice.h
  F:    include/linux/fcdevice.h
  F:    include/linux/fddidevice.h
@@@ -15283,7 -15191,6 +15290,7 @@@ F:   include/linux/hippidevice.
  F:    include/linux/if_*
  F:    include/linux/inetdevice.h
  F:    include/linux/netdevice.h
 +F:    include/uapi/linux/cn_proc.h
  F:    include/uapi/linux/if_*
  F:    include/uapi/linux/netdevice.h
  X:    drivers/net/wireless/
@@@ -15332,8 -15239,6 +15339,8 @@@ F:   Documentation/networking
  F:    Documentation/networking/net_cachelines/
  F:    Documentation/process/maintainer-netdev.rst
  F:    Documentation/userspace-api/netlink/
 +F:    include/linux/framer/framer-provider.h
 +F:    include/linux/framer/framer.h
  F:    include/linux/in.h
  F:    include/linux/indirect_call_wrapper.h
  F:    include/linux/net.h
@@@ -15421,7 -15326,7 +15428,7 @@@ K:   \bmdo
  NETWORKING [MPTCP]
  M:    Matthieu Baerts <[email protected]>
  M:    Mat Martineau <[email protected]>
 -R:    Geliang Tang <geliang[email protected]>
 +R:    Geliang Tang <geliang@kernel.org>
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
@@@ -15527,6 -15432,7 +15534,6 @@@ M:   Ryusuke Konishi <konishi.ryusuke@gma
  L:    [email protected]
  S:    Supported
  W:    https://nilfs.sourceforge.io/
 -W:    https://nilfs.osdn.jp/
  T:    git https://github.com/konis/nilfs2.git
  F:    Documentation/filesystems/nilfs2.rst
  F:    fs/nilfs2/
@@@ -15667,6 -15573,16 +15674,6 @@@ W:  https://github.com/davejiang/linux/w
  T:    git https://github.com/davejiang/linux.git
  F:    drivers/ntb/hw/intel/
  
 -NTFS FILESYSTEM
 -M:    Anton Altaparmakov <[email protected]>
 -R:    Namjae Jeon <[email protected]>
 -L:    [email protected]
 -S:    Supported
 -W:    http://www.tuxera.com/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/aia21/ntfs.git
 -F:    Documentation/filesystems/ntfs.rst
 -F:    fs/ntfs/
 -
  NTFS3 FILESYSTEM
  M:    Konstantin Komarov <[email protected]>
  L:    [email protected]
@@@ -15795,7 -15711,7 +15802,7 @@@ F:   drivers/iio/gyro/fxas21002c_spi.
  NXP i.MX 7D/6SX/6UL/93 AND VF610 ADC DRIVER
  M:    Haibo Chen <[email protected]>
  L:    [email protected]
 -L:    [email protected]
 +L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/iio/adc/fsl,imx7d-adc.yaml
  F:    Documentation/devicetree/bindings/iio/adc/fsl,vf610-adc.yaml
@@@ -15832,7 -15748,7 +15839,7 @@@ F:   drivers/gpu/drm/imx/dcss
  NXP i.MX 8QXP ADC DRIVER
  M:    Cai Huoqing <[email protected]>
  M:    Haibo Chen <[email protected]>
 -L:    [email protected]
 +L:    [email protected]
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/iio/adc/nxp,imx8qxp-adc.yaml
@@@ -15840,7 -15756,7 +15847,7 @@@ F:   drivers/iio/adc/imx8qxp-adc.
  
  NXP i.MX 8QXP/8QM JPEG V4L2 DRIVER
  M:    Mirela Rabulea <[email protected]>
 -R:    NXP Linux Team <[email protected]>
 +L:    [email protected]
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/nxp,imx8-jpeg.yaml
@@@ -15850,7 -15766,7 +15857,7 @@@ NXP i.MX CLOCK DRIVER
  M:    Abel Vesa <[email protected]>
  R:    Peng Fan <[email protected]>
  L:    [email protected]
 -L:    [email protected]
 +L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/abelvesa/linux.git clk/imx
  F:    Documentation/devicetree/bindings/clock/imx*
@@@ -15920,14 -15836,6 +15927,14 @@@ S: Maintaine
  F:    Documentation/hwmon/nzxt-kraken2.rst
  F:    drivers/hwmon/nzxt-kraken2.c
  
 +NZXT-KRAKEN3 HARDWARE MONITORING DRIVER
 +M:    Jonas Malaco <[email protected]>
 +M:    Aleksa Savic <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/hwmon/nzxt-kraken3.rst
 +F:    drivers/hwmon/nzxt-kraken3.c
 +
  NZXT-SMART2 HARDWARE MONITORING DRIVER
  M:    Aleksandr Mezin <[email protected]>
  L:    [email protected]
@@@ -16457,8 -16365,8 +16464,8 @@@ S:   Supporte
  F:    drivers/infiniband/ulp/opa_vnic
  
  OPEN FIRMWARE AND FLATTENED DEVICE TREE
 -M:    Rob Herring <robh+dt@kernel.org>
 -M:    Frank Rowand <frowand.list@gmail.com>
 +M:    Rob Herring <[email protected]>
 +M:    Saravana Kannan <saravanak@google.com>
  L:    [email protected]
  S:    Maintained
  W:    http://www.devicetree.org/
@@@ -16474,7 -16382,7 +16481,7 @@@ K:   of_overlay_fdt_appl
  K:    of_overlay_remove
  
  OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS
 -M:    Rob Herring <robh+dt@kernel.org>
 +M:    Rob Herring <[email protected]>
  M:    Krzysztof Kozlowski <[email protected]>
  M:    Conor Dooley <[email protected]>
  L:    [email protected]
@@@ -16819,7 -16727,6 +16826,7 @@@ F:   drivers/pci/controller/dwc/*layersca
  PCI DRIVER FOR FU740
  M:    Paul Walmsley <[email protected]>
  M:    Greentime Hu <[email protected]>
 +M:    Samuel Holland <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/pci/sifive,fu740-pcie.yaml
@@@ -16932,7 -16839,6 +16939,7 @@@ F:   drivers/pci/controller/dwc/*designwa
  
  PCI DRIVER FOR TI DRA7XX/J721E
  M:    Vignesh Raghavendra <[email protected]>
 +R:    Siddharth Vadapalli <[email protected]>
  L:    [email protected]
  L:    [email protected]
  L:    [email protected] (moderated for non-subscribers)
@@@ -16957,8 -16863,9 +16964,8 @@@ F:   Documentation/devicetree/bindings/pc
  F:    drivers/pci/controller/pcie-xilinx-cpm.c
  
  PCI ENDPOINT SUBSYSTEM
 -M:    Lorenzo Pieralisi <lpieralisi@kernel.org>
 +M:    Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
  M:    Krzysztof Wilczyński <[email protected]>
 -R:    Manivannan Sadhasivam <[email protected]>
  R:    Kishon Vijay Abraham I <[email protected]>
  L:    [email protected]
  S:    Supported
@@@ -17054,6 -16961,7 +17061,6 @@@ F:   include/asm-generic/pci
  F:    include/linux/of_pci.h
  F:    include/linux/pci*
  F:    include/uapi/linux/pci*
 -F:    lib/pci*
  
  PCIE DRIVER FOR AMAZON ANNAPURNA LABS
  M:    Jonathan Chocron <[email protected]>
@@@ -17277,7 -17185,7 +17284,7 @@@ R:   John Garry <[email protected]
  R:    Will Deacon <[email protected]>
  R:    James Clark <[email protected]>
  R:    Mike Leach <[email protected]>
 -R:    Leo Yan <leo.yan@linaro.org>
 +R:    Leo Yan <leo.yan@linux.dev>
  L:    [email protected] (moderated for non-subscribers)
  S:    Supported
  F:    tools/build/feature/test-libopencsd.c
  M:    Jacky Bai <[email protected]>
  R:    Pengutronix Kernel Team <[email protected]>
  L:    [email protected]
 +L:    NXP S32 Linux Team <[email protected]>
  S:    Maintained
  F:    Documentation/devicetree/bindings/pinctrl/fsl,*
 +F:    Documentation/devicetree/bindings/pinctrl/nxp,s32*
  F:    drivers/pinctrl/freescale/
 +F:    drivers/pinctrl/nxp/
  
  PIN CONTROLLER - INTEL
  M:    Mika Westerberg <[email protected]>
@@@ -17417,6 -17322,14 +17424,6 @@@ S:  Supporte
  F:    drivers/gpio/gpio-sama5d2-piobu.c
  F:    drivers/pinctrl/pinctrl-at91*
  
 -PIN CONTROLLER - NXP S32
 -M:    Chester Lin <[email protected]>
 -R:    NXP S32 Linux Team <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/pinctrl/nxp,s32*
 -F:    drivers/pinctrl/nxp/
 -
  PIN CONTROLLER - QUALCOMM
  M:    Bjorn Andersson <[email protected]>
  L:    [email protected]
@@@ -17433,6 -17346,7 +17440,6 @@@ F:   Documentation/devicetree/bindings/pi
  F:    drivers/pinctrl/renesas/
  
  PIN CONTROLLER - SAMSUNG
 -M:    Tomasz Figa <[email protected]>
  M:    Krzysztof Kozlowski <[email protected]>
  M:    Sylwester Nawrocki <[email protected]>
  R:    Alim Akhtar <[email protected]>
@@@ -17519,6 -17433,35 +17526,6 @@@ S:  Maintaine
  F:    Documentation/hwmon/pm6764tr.rst
  F:    drivers/hwmon/pmbus/pm6764tr.c
  
 -PMBUS HARDWARE MONITORING DRIVERS
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -W:    http://hwmon.wiki.kernel.org/
 -W:    http://www.roeck-us.net/linux/drivers/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git
 -F:    Documentation/devicetree/bindings/hwmon/ltc2978.txt
 -F:    Documentation/devicetree/bindings/hwmon/max31785.txt
 -F:    Documentation/hwmon/adm1275.rst
 -F:    Documentation/hwmon/ibm-cffps.rst
 -F:    Documentation/hwmon/ir35221.rst
 -F:    Documentation/hwmon/lm25066.rst
 -F:    Documentation/hwmon/ltc2978.rst
 -F:    Documentation/hwmon/ltc3815.rst
 -F:    Documentation/hwmon/max16064.rst
 -F:    Documentation/hwmon/max20751.rst
 -F:    Documentation/hwmon/max31785.rst
 -F:    Documentation/hwmon/max34440.rst
 -F:    Documentation/hwmon/max8688.rst
 -F:    Documentation/hwmon/pmbus-core.rst
 -F:    Documentation/hwmon/pmbus.rst
 -F:    Documentation/hwmon/tps40422.rst
 -F:    Documentation/hwmon/ucd9000.rst
 -F:    Documentation/hwmon/ucd9200.rst
 -F:    Documentation/hwmon/zl6100.rst
 -F:    drivers/hwmon/pmbus/
 -F:    include/linux/pmbus.h
 -
  PMC SIERRA MaxRAID DRIVER
  L:    [email protected]
  S:    Orphan
@@@ -17553,7 -17496,6 +17560,7 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    fs/timerfd.c
  F:    include/linux/time_namespace.h
  F:    include/linux/timer*
 +F:    include/trace/events/timer*
  F:    kernel/time/*timer*
  F:    kernel/time/namespace.c
  
@@@ -17590,7 -17532,6 +17597,7 @@@ F:   Documentation/devicetree/bindings/po
  F:    drivers/power/supply/
  F:    include/linux/power/
  F:    include/linux/power_supply.h
 +F:    tools/testing/selftests/power_supply/
  
  POWERNV OPERATOR PANEL LCD DISPLAY DRIVER
  M:    Suraj Jitindar Singh <[email protected]>
@@@ -17740,13 -17681,6 +17747,13 @@@ F: fs/pstore
  F:    include/linux/pstore*
  K:    \b(pstore|ramoops)
  
 +PT5161L HARDWARE MONITOR DRIVER
 +M:    Cosmo Chou <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/hwmon/pt5161l.rst
 +F:    drivers/hwmon/pt5161l.c
 +
  PTP HARDWARE CLOCK SUPPORT
  M:    Richard Cochran <[email protected]>
  L:    [email protected]
@@@ -18045,34 -17979,33 +18052,34 @@@ F:        drivers/media/tuners/qt1010
  
  QUALCOMM ATH12K WIRELESS DRIVER
  M:    Kalle Valo <[email protected]>
 -M:    Jeff Johnson <[email protected]>
 +M:    Jeff Johnson <[email protected]>
  L:    [email protected]
  S:    Supported
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/ath12k
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
  F:    drivers/net/wireless/ath/ath12k/
 +N:    ath12k
  
  QUALCOMM ATHEROS ATH10K WIRELESS DRIVER
  M:    Kalle Valo <[email protected]>
 -M:    Jeff Johnson <[email protected]>
 +M:    Jeff Johnson <[email protected]>
  L:    [email protected]
  S:    Supported
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/ath10k
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
 -F:    Documentation/devicetree/bindings/net/wireless/qcom,ath10k.yaml
  F:    drivers/net/wireless/ath/ath10k/
 +N:    ath10k
  
  QUALCOMM ATHEROS ATH11K WIRELESS DRIVER
  M:    Kalle Valo <[email protected]>
 -M:    Jeff Johnson <[email protected]>
 +M:    Jeff Johnson <[email protected]>
  L:    [email protected]
  S:    Supported
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/ath11k
  B:    https://wireless.wiki.kernel.org/en/users/Drivers/ath11k/bugreport
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
 -F:    Documentation/devicetree/bindings/net/wireless/qcom,ath11k.yaml
  F:    drivers/net/wireless/ath/ath11k/
 +N:    ath11k
  
  QUALCOMM ATHEROS ATH9K WIRELESS DRIVER
  M:    Toke Høiland-Jørgensen <[email protected]>
@@@ -18083,13 -18016,6 +18090,13 @@@ T: git git://git.kernel.org/pub/scm/lin
  F:    Documentation/devicetree/bindings/net/wireless/qca,ath9k.yaml
  F:    drivers/net/wireless/ath/ath9k/
  
 +QUALCOMM ATHEROS QCA7K ETHERNET DRIVER
 +M:    Stefan Wahren <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/net/qca,qca7000.txt
 +F:    drivers/net/ethernet/qualcomm/qca*
 +
  QUALCOMM BAM-DMUX WWAN NETWORK DRIVER
  M:    Stephan Gerhold <[email protected]>
  L:    [email protected]
@@@ -18162,6 -18088,7 +18169,6 @@@ F:   drivers/net/ethernet/qualcomm/emac
  
  QUALCOMM ETHQOS ETHERNET DRIVER
  M:    Vinod Koul <[email protected]>
 -R:    Bhupesh Sharma <[email protected]>
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
@@@ -18433,17 -18360,11 +18440,17 @@@ M:        Tony Luck <[email protected]
  M:    Borislav Petkov <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/admin-guide/ras.rst
 +F:    Documentation/admin-guide/RAS
  F:    drivers/ras/
  F:    include/linux/ras.h
  F:    include/ras/ras_event.h
  
 +RAS FRU MEMORY POISON MANAGER (FMPM)
 +M:    Yazen Ghannam <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/ras/amd/fmpm.c
 +
  RC-CORE / LIRC FRAMEWORK
  M:    Sean Young <[email protected]>
  L:    [email protected]
@@@ -18514,7 -18435,7 +18521,7 @@@ S:   Supporte
  F:    drivers/infiniband/sw/rdmavt
  
  RDS - RELIABLE DATAGRAM SOCKETS
 -M:    Santosh Shilimkar <santosh.shilimkar@oracle.com>
 +M:    Allison Henderson <allison.henderson@oracle.com>
  L:    [email protected]
  L:    [email protected]
  L:    [email protected] (moderated for non-subscribers)
@@@ -18933,7 -18854,6 +18940,7 @@@ F:   Documentation/devicetree/bindings/ri
  F:    arch/riscv/boot/dts/
  X:    arch/riscv/boot/dts/allwinner/
  X:    arch/riscv/boot/dts/renesas/
 +X:    arch/riscv/boot/dts/sophgo/
  
  RISC-V PMU DRIVERS
  M:    Atish Patra <[email protected]>
@@@ -19182,7 -19102,6 +19189,7 @@@ F:   Documentation/rust
  F:    rust/
  F:    samples/rust/
  F:    scripts/*rust*
 +F:    tools/testing/selftests/rust/
  K:    \b(?i:rust)\b
  
  RXRPC SOCKETS (AF_RXRPC)
@@@ -19476,6 -19395,7 +19483,6 @@@ F:   drivers/media/platform/samsung/exyno
  SAMSUNG SOC CLOCK DRIVERS
  M:    Krzysztof Kozlowski <[email protected]>
  M:    Sylwester Nawrocki <[email protected]>
 -M:    Tomasz Figa <[email protected]>
  M:    Chanwoo Choi <[email protected]>
  R:    Alim Akhtar <[email protected]>
  L:    [email protected]
@@@ -19717,7 -19637,7 +19724,7 @@@ F:   drivers/mmc/host/sdhci-of-at91.
  
  SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) NXP i.MX DRIVER
  M:    Haibo Chen <[email protected]>
 -L:    [email protected]
 +L:    [email protected]
  L:    [email protected]
  S:    Maintained
  F:    drivers/mmc/host/sdhci-esdhc-imx.c
@@@ -20052,15 -19972,36 +20059,15 @@@ S:        Maintaine
  F:    drivers/watchdog/simatic-ipc-wdt.c
  
  SIFIVE DRIVERS
 -M:    Palmer Dabbelt <[email protected]>
  M:    Paul Walmsley <[email protected]>
 +M:    Samuel Holland <[email protected]>
  L:    [email protected]
  S:    Supported
 +F:    drivers/dma/sf-pdma/
  N:    sifive
 +K:    fu[57]40
  K:    [^@]sifive
  
 -SIFIVE CACHE DRIVER
 -M:    Conor Dooley <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/cache/sifive,ccache0.yaml
 -F:    drivers/cache/sifive_ccache.c
 -
 -SIFIVE FU540 SYSTEM-ON-CHIP
 -M:    Paul Walmsley <[email protected]>
 -M:    Palmer Dabbelt <[email protected]>
 -L:    [email protected]
 -S:    Supported
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pjw/sifive.git
 -N:    fu540
 -K:    fu540
 -
 -SIFIVE PDMA DRIVER
 -M:    Green Wan <[email protected]>
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
 -F:    drivers/dma/sf-pdma/
 -
 -
  SILEAD TOUCHSCREEN DRIVER
  M:    Hans de Goede <[email protected]>
  L:    [email protected]
@@@ -20269,8 -20210,8 +20276,8 @@@ F:   Documentation/devicetree/bindings/ne
  F:    drivers/net/ethernet/socionext/sni_ave.c
  
  SOCIONEXT (SNI) NETSEC NETWORK DRIVER
 -M:    Jassi Brar <[email protected]>
  M:    Ilias Apalodimas <[email protected]>
 +M:    Masahisa Kojima <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/socionext,synquacer-netsec.yaml
@@@ -20511,13 -20452,12 +20518,13 @@@ F:        drivers/char/sonypi.
  F:    drivers/platform/x86/sony-laptop.c
  F:    include/linux/sony-laptop.h
  
 -SOPHGO DEVICETREES
 -M:    Chao Wei <[email protected]>
 +SOPHGO DEVICETREES and DRIVERS
  M:    Chen Wang <[email protected]>
 +M:    Inochi Amaoto <[email protected]>
 +T:    git https://github.com/sophgo/linux.git
  S:    Maintained
 -F:    arch/riscv/boot/dts/sophgo/
 -F:    Documentation/devicetree/bindings/riscv/sophgo.yaml
 +N:    sophgo
 +K:    sophgo
  
  SOUND
  M:    Jaroslav Kysela <[email protected]>
@@@ -20551,12 -20491,6 +20558,12 @@@ F: include/uapi/sound/compress_
  F:    sound/core/compress_offload.c
  F:    sound/soc/soc-compress.c
  
 +SOUND - CORE KUNIT TEST
 +M:    Ivan Orlov <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +F:    sound/core/sound_kunit.c
 +
  SOUND - DMAENGINE HELPERS
  M:    Lars-Peter Clausen <[email protected]>
  S:    Supported
@@@ -20622,7 -20556,6 +20629,7 @@@ F:   Documentation/translations/sp_SP
  
  SPARC + UltraSPARC (sparc/sparc64)
  M:    "David S. Miller" <[email protected]>
 +M:    Andreas Larsson <[email protected]>
  L:    [email protected]
  S:    Maintained
  Q:    http://patchwork.ozlabs.org/project/sparclinux/list/
@@@ -21009,13 -20942,6 +21016,13 @@@ S: Maintaine
  T:    git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
  F:    Documentation/devicetree/bindings/soc/starfive/
  
 +STARFIVE STARLINK PMU DRIVER
 +M:    Ji Sheng Teoh <[email protected]>
 +S:    Maintained
 +F:    Documentation/admin-guide/perf/starfive_starlink_pmu.rst
 +F:    Documentation/devicetree/bindings/perf/starfive,jh8100-starlink-pmu.yaml
 +F:    drivers/perf/starfive_starlink_pmu.c
 +
  STARFIVE TRNG DRIVER
  M:    Jia Jie Ho <[email protected]>
  S:    Supported
@@@ -21037,12 -20963,6 +21044,12 @@@ F: Documentation/devicetree/bindings/ph
  F:    drivers/phy/starfive/phy-jh7110-pcie.c
  F:    drivers/phy/starfive/phy-jh7110-usb.c
  
 +STARFIVE JH8100 EXTERNAL INTERRUPT CONTROLLER DRIVER
 +M:    Changhuang Liang <[email protected]>
 +S:    Supported
 +F:    Documentation/devicetree/bindings/interrupt-controller/starfive,jh8100-intc.yaml
 +F:    drivers/irqchip/irq-starfive-jh8100-intc.c
 +
  STATIC BRANCH/CALL
  M:    Peter Zijlstra <[email protected]>
  M:    Josh Poimboeuf <[email protected]>
@@@ -21408,7 -21328,6 +21415,7 @@@ F:   drivers/clk/clk-sc[mp]i.
  F:    drivers/cpufreq/sc[mp]i-cpufreq.c
  F:    drivers/firmware/arm_scmi/
  F:    drivers/firmware/arm_scpi.c
 +F:    drivers/hwmon/scmi-hwmon.c
  F:    drivers/pmdomain/arm/
  F:    drivers/powercap/arm_scmi_powercap.c
  F:    drivers/regulator/scmi-regulator.c
@@@ -21603,7 -21522,7 +21610,7 @@@ F:   tools/testing/selftests/drivers/net/
  TECHNICAL ADVISORY BOARD PROCESS DOCS
  M:    "Theodore Ts'o" <[email protected]>
  M:    Greg Kroah-Hartman <[email protected]>
 -L:    [email protected]-foundation.org
 +L:    [email protected].dev
  S:    Maintained
  F:    Documentation/process/contribution-maturity-model.rst
  F:    Documentation/process/researcher-guidelines.rst
@@@ -22028,6 -21947,7 +22035,6 @@@ F:   drivers/i2c/busses/i2c-davinci.
  
  TI DAVINCI SERIES CLOCK DRIVER
  M:    David Lechner <[email protected]>
 -R:    Sekhar Nori <[email protected]>
  S:    Maintained
  F:    Documentation/devicetree/bindings/clock/ti/davinci/
  F:    drivers/clk/davinci/
@@@ -22092,14 -22012,6 +22099,14 @@@ F: Documentation/devicetree/bindings/me
  F:    drivers/media/i2c/ds90*
  F:    include/media/i2c/ds90*
  
 +TI HDC302X HUMIDITY DRIVER
 +M:    Javier Carrasco <[email protected]>
 +M:    Li peiyu <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/iio/humidity/ti,hdc3020.yaml
 +F:    drivers/iio/humidity/hdc3020.c
 +
  TI ICSSG ETHERNET DRIVER (ICSSG)
  R:    MD Danish Anwar <[email protected]>
  R:    Roger Quadros <[email protected]>
@@@ -22246,6 -22158,22 +22253,6 @@@ F:  drivers/mmc/host/renesas_sdhi
  F:    drivers/mmc/host/tmio_mmc*
  F:    include/linux/mfd/tmio.h
  
 -TMP401 HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/hwmon/ti,tmp401.yaml
 -F:    Documentation/hwmon/tmp401.rst
 -F:    drivers/hwmon/tmp401.c
 -
 -TMP464 HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml
 -F:    Documentation/hwmon/tmp464.rst
 -F:    drivers/hwmon/tmp464.c
 -
  TMP513 HARDWARE MONITOR DRIVER
  M:    Eric Tremblay <[email protected]>
  L:    [email protected]
@@@ -22550,23 -22478,6 +22557,23 @@@ F: Documentation/block/ublk.rs
  F:    drivers/block/ublk_drv.c
  F:    include/uapi/linux/ublk_cmd.h
  
 +UBSAN
 +M:    Kees Cook <[email protected]>
 +R:    Marco Elver <[email protected]>
 +R:    Andrey Konovalov <[email protected]>
 +R:    Andrey Ryabinin <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
 +F:    Documentation/dev-tools/ubsan.rst
 +F:    include/linux/ubsan.h
 +F:    lib/Kconfig.ubsan
 +F:    lib/test_ubsan.c
 +F:    lib/ubsan.c
 +F:    scripts/Makefile.ubsan
 +K:    \bARCH_HAS_UBSAN\b
 +
  UCLINUX (M68KNOMMU AND COLDFIRE)
  M:    Greg Ungerer <[email protected]>
  L:    [email protected]
@@@ -22956,8 -22867,9 +22963,8 @@@ S:   Maintaine
  F:    drivers/usb/typec/mux/pi3usb30532.c
  
  USB TYPEC PORT CONTROLLER DRIVERS
 -M:    Guenter Roeck <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Orphan
  F:    drivers/usb/typec/tcpm/
  
  USB UHCI DRIVER
@@@ -23166,11 -23078,12 +23173,11 @@@ L:        [email protected]
  S:    Maintained
  F:    drivers/vfio/pci/mlx5/
  
 -VFIO VIRTIO PCI DRIVER
 -M:    Yishai Hadas <yishaih@nvidia.com>
 +VFIO NVIDIA GRACE GPU DRIVER
 +M:    Ankit Agrawal <ankita@nvidia.com>
  L:    [email protected]
 -L:    [email protected]
 -S:    Maintained
 -F:    drivers/vfio/pci/virtio
 +S:    Supported
 +F:    drivers/vfio/pci/nvgrace-gpu/
  
  VFIO PCI DEVICE SPECIFIC DRIVERS
  R:    Jason Gunthorpe <[email protected]>
  S:    Maintained
  F:    drivers/vfio/platform/
  
 +VFIO VIRTIO PCI DRIVER
 +M:    Yishai Hadas <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/vfio/pci/virtio
 +
  VGA_SWITCHEROO
  R:    Lukas Wunner <[email protected]>
  S:    Maintained
@@@ -24219,13 -24125,14 +24226,13 @@@ F:        drivers/net/ethernet/xilinx/xilinx_a
  
  XILINX CAN DRIVER
  M:    Appana Durga Kedareswara rao <[email protected]>
 -R:    Naga Sureshkumar Relli <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/can/xilinx,can.yaml
  F:    drivers/net/can/xilinx_can.c
  
  XILINX EVENT MANAGEMENT DRIVER
 -M:    Abhyuday Godhasara <abhyuday.godhasara@xilinx.com>
 +M:    Michal Simek <michal.simek@amd.com>
  S:    Maintained
  F:    drivers/soc/xilinx/xlnx_event_manager.c
  F:    include/linux/firmware/xlnx-event-manager.h
@@@ -24255,7 -24162,7 +24262,7 @@@ XILINX SD-FEC IP CORE
  M:    Derek Kiernan <[email protected]>
  M:    Dragan Cvetic <[email protected]>
  S:    Maintained
 -F:    Documentation/devicetree/bindings/misc/xlnx,sd-fec.txt
 +F:    Documentation/devicetree/bindings/misc/xlnx,sd-fec.yaml
  F:    Documentation/misc-devices/xilinx_sdfec.rst
  F:    drivers/misc/Kconfig
  F:    drivers/misc/Makefile
@@@ -24439,6 -24346,13 +24446,6 @@@ T:  git git://git.kernel.org/pub/scm/lin
  F:    Documentation/filesystems/zonefs.rst
  F:    fs/zonefs/
  
 -ZPOOL COMPRESSED PAGE STORAGE API
 -M:    Dan Streetman <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    include/linux/zpool.h
 -F:    mm/zpool.c
 -
  ZR36067 VIDEO FOR LINUX DRIVER
  M:    Corentin Labbe <[email protected]>
  L:    [email protected]
@@@ -24487,15 -24401,11 +24494,15 @@@ ZSWAP COMPRESSED SWAP CACHIN
  M:    Johannes Weiner <[email protected]>
  M:    Yosry Ahmed <[email protected]>
  M:    Nhat Pham <[email protected]>
 +R:    Chengming Zhou <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/admin-guide/mm/zswap.rst
 +F:    include/linux/zpool.h
  F:    include/linux/zswap.h
 +F:    mm/zpool.c
  F:    mm/zswap.c
 +F:    tools/testing/selftests/cgroup/test_zswap.c
  
  THE REST
  M:    Linus Torvalds <[email protected]>
index b5ac2b7995e7156b73e348814ce4e29b6f71a874,0188b0f01a8d3661d659b3bd29bff6f0c033db53..835e369cdfc5fe6f56162fee4d9437e035b857d6
@@@ -96,8 -96,6 +96,8 @@@ static const struct serdes_mux lan966x_
        SERDES_MUX_SGMII(SERDES6G(1), 3, HSIO_HW_CFG_SD6G_1_CFG,
                         HSIO_HW_CFG_SD6G_1_CFG_SET(1)),
  
 +      SERDES_MUX_SGMII(SERDES6G(2), 4, 0, 0),
 +
        SERDES_MUX_RGMII(RGMII(0), 2, HSIO_HW_CFG_RGMII_0_CFG |
                         HSIO_HW_CFG_RGMII_ENA |
                         HSIO_HW_CFG_GMII_ENA,
@@@ -518,7 -516,7 +518,7 @@@ static const struct phy_ops serdes_ops 
  };
  
  static struct phy *serdes_simple_xlate(struct device *dev,
-                                      struct of_phandle_args *args)
+                                      const struct of_phandle_args *args)
  {
        struct serdes_ctrl *ctrl = dev_get_drvdata(dev);
        unsigned int port, idx, i;
index 17c4ad7553a5edd0960e8ff7e64e97dd7f22b5f5,546d3c6bee320678f0d29615624998fa04705538..7d585a4bbbba950c803412d829bed4140d57d898
  
  #include <dt-bindings/phy/phy-qcom-qmp.h>
  
+ #include "phy-qcom-qmp-common.h"
  #include "phy-qcom-qmp.h"
  #include "phy-qcom-qmp-pcs-misc-v3.h"
  #include "phy-qcom-qmp-pcs-usb-v4.h"
  #include "phy-qcom-qmp-pcs-usb-v5.h"
  #include "phy-qcom-qmp-pcs-usb-v6.h"
  
- /* QPHY_SW_RESET bit */
- #define SW_RESET                              BIT(0)
- /* QPHY_POWER_DOWN_CONTROL */
- #define SW_PWRDN                              BIT(0)
- /* QPHY_START_CONTROL bits */
- #define SERDES_START                          BIT(0)
- #define PCS_START                             BIT(1)
- /* QPHY_PCS_STATUS bit */
- #define PHYSTATUS                             BIT(6)
+ #include "phy-qcom-qmp-dp-com-v3.h"
+ #include "phy-qcom-qmp-dp-phy.h"
+ #include "phy-qcom-qmp-dp-phy-v3.h"
+ #include "phy-qcom-qmp-dp-phy-v4.h"
+ #include "phy-qcom-qmp-dp-phy-v5.h"
+ #include "phy-qcom-qmp-dp-phy-v6.h"
  
  /* QPHY_V3_DP_COM_RESET_OVRD_CTRL register bits */
  /* DP PHY soft reset */
  #define USB3_MODE                             BIT(0) /* enables USB3 mode */
  #define DP_MODE                                       BIT(1) /* enables DP mode */
  
- /* QPHY_PCS_AUTONOMOUS_MODE_CTRL register bits */
- #define ARCVR_DTCT_EN                         BIT(0)
- #define ALFPS_DTCT_EN                         BIT(1)
- #define ARCVR_DTCT_EVENT_SEL                  BIT(4)
- /* QPHY_PCS_LFPS_RXTERM_IRQ_CLEAR register bits */
- #define IRQ_CLEAR                             BIT(0)
- /* QPHY_V3_PCS_MISC_CLAMP_ENABLE register bits */
- #define CLAMP_EN                              BIT(0) /* enables i/o clamp_n */
  /* QPHY_V3_DP_COM_TYPEC_CTRL register bits */
  #define SW_PORTSELECT_VAL                     BIT(0)
  #define SW_PORTSELECT_MUX                     BIT(1)
  
  #define PHY_INIT_COMPLETE_TIMEOUT             10000
  
- struct qmp_phy_init_tbl {
-       unsigned int offset;
-       unsigned int val;
-       /*
-        * mask of lanes for which this register is written
-        * for cases when second lane needs different values
-        */
-       u8 lane_mask;
- };
- #define QMP_PHY_INIT_CFG(o, v)                \
-       {                               \
-               .offset = o,            \
-               .val = v,               \
-               .lane_mask = 0xff,      \
-       }
- #define QMP_PHY_INIT_CFG_LANE(o, v, l)        \
-       {                               \
-               .offset = o,            \
-               .val = v,               \
-               .lane_mask = l,         \
-       }
  /* set of registers with offsets different per-PHY */
  enum qphy_reg_layout {
        /* PCS registers */
@@@ -2031,55 -1996,29 +1996,29 @@@ static const struct qmp_phy_cfg sm8550_
        .num_vregs              = ARRAY_SIZE(qmp_phy_vreg_l),
  };
  
- static void qmp_combo_configure_lane(void __iomem *base,
-                                       const struct qmp_phy_init_tbl tbl[],
-                                       int num,
-                                       u8 lane_mask)
- {
-       int i;
-       const struct qmp_phy_init_tbl *t = tbl;
-       if (!t)
-               return;
-       for (i = 0; i < num; i++, t++) {
-               if (!(t->lane_mask & lane_mask))
-                       continue;
-               writel(t->val, base + t->offset);
-       }
- }
- static void qmp_combo_configure(void __iomem *base,
-                                  const struct qmp_phy_init_tbl tbl[],
-                                  int num)
- {
-       qmp_combo_configure_lane(base, tbl, num, 0xff);
- }
  static int qmp_combo_dp_serdes_init(struct qmp_combo *qmp)
  {
        const struct qmp_phy_cfg *cfg = qmp->cfg;
        void __iomem *serdes = qmp->dp_serdes;
        const struct phy_configure_opts_dp *dp_opts = &qmp->dp_opts;
  
-       qmp_combo_configure(serdes, cfg->dp_serdes_tbl, cfg->dp_serdes_tbl_num);
+       qmp_configure(serdes, cfg->dp_serdes_tbl, cfg->dp_serdes_tbl_num);
  
        switch (dp_opts->link_rate) {
        case 1620:
-               qmp_combo_configure(serdes, cfg->serdes_tbl_rbr,
+               qmp_configure(serdes, cfg->serdes_tbl_rbr,
                                cfg->serdes_tbl_rbr_num);
                break;
        case 2700:
-               qmp_combo_configure(serdes, cfg->serdes_tbl_hbr,
+               qmp_configure(serdes, cfg->serdes_tbl_hbr,
                                cfg->serdes_tbl_hbr_num);
                break;
        case 5400:
-               qmp_combo_configure(serdes, cfg->serdes_tbl_hbr2,
+               qmp_configure(serdes, cfg->serdes_tbl_hbr2,
                                cfg->serdes_tbl_hbr2_num);
                break;
        case 8100:
-               qmp_combo_configure(serdes, cfg->serdes_tbl_hbr3,
+               qmp_configure(serdes, cfg->serdes_tbl_hbr3,
                                cfg->serdes_tbl_hbr3_num);
                break;
        default:
@@@ -2370,7 -2309,7 +2309,7 @@@ static int qmp_v456_configure_dp_phy(st
        u32 status;
        int ret;
  
-       writel(0x0f, qmp->dp_dp_phy + QSERDES_V4_DP_PHY_CFG_1);
+       writel(0x0f, qmp->dp_dp_phy + QSERDES_DP_PHY_CFG_1);
  
        qmp_combo_configure_dp_mode(qmp);
  
@@@ -2681,8 -2620,8 +2620,8 @@@ static int qmp_combo_dp_power_on(struc
  
        qmp_combo_dp_serdes_init(qmp);
  
-       qmp_combo_configure_lane(tx, cfg->dp_tx_tbl, cfg->dp_tx_tbl_num, 1);
-       qmp_combo_configure_lane(tx2, cfg->dp_tx_tbl, cfg->dp_tx_tbl_num, 2);
+       qmp_configure_lane(tx, cfg->dp_tx_tbl, cfg->dp_tx_tbl_num, 1);
+       qmp_configure_lane(tx2, cfg->dp_tx_tbl, cfg->dp_tx_tbl_num, 2);
  
        /* Configure special DP tx tunings */
        cfg->configure_dp_tx(qmp);
@@@ -2724,7 -2663,7 +2663,7 @@@ static int qmp_combo_usb_power_on(struc
        unsigned int val;
        int ret;
  
-       qmp_combo_configure(serdes, cfg->serdes_tbl, cfg->serdes_tbl_num);
+       qmp_configure(serdes, cfg->serdes_tbl, cfg->serdes_tbl_num);
  
        ret = clk_prepare_enable(qmp->pipe_clk);
        if (ret) {
        }
  
        /* Tx, Rx, and PCS configurations */
-       qmp_combo_configure_lane(tx, cfg->tx_tbl, cfg->tx_tbl_num, 1);
-       qmp_combo_configure_lane(tx2, cfg->tx_tbl, cfg->tx_tbl_num, 2);
+       qmp_configure_lane(tx, cfg->tx_tbl, cfg->tx_tbl_num, 1);
+       qmp_configure_lane(tx2, cfg->tx_tbl, cfg->tx_tbl_num, 2);
  
-       qmp_combo_configure_lane(rx, cfg->rx_tbl, cfg->rx_tbl_num, 1);
-       qmp_combo_configure_lane(rx2, cfg->rx_tbl, cfg->rx_tbl_num, 2);
+       qmp_configure_lane(rx, cfg->rx_tbl, cfg->rx_tbl_num, 1);
+       qmp_configure_lane(rx2, cfg->rx_tbl, cfg->rx_tbl_num, 2);
  
-       qmp_combo_configure(pcs, cfg->pcs_tbl, cfg->pcs_tbl_num);
+       qmp_configure(pcs, cfg->pcs_tbl, cfg->pcs_tbl_num);
  
        if (pcs_usb)
-               qmp_combo_configure(pcs_usb, cfg->pcs_usb_tbl, cfg->pcs_usb_tbl_num);
+               qmp_configure(pcs_usb, cfg->pcs_usb_tbl, cfg->pcs_usb_tbl_num);
  
        if (cfg->has_pwrdn_delay)
                usleep_range(10, 20);
@@@ -3515,7 -3454,7 +3454,7 @@@ static int qmp_combo_parse_dt(struct qm
        return 0;
  }
  
- static struct phy *qmp_combo_phy_xlate(struct device *dev, struct of_phandle_args *args)
+ static struct phy *qmp_combo_phy_xlate(struct device *dev, const struct of_phandle_args *args)
  {
        struct qmp_combo *qmp = dev_get_drvdata(dev);
  
@@@ -3562,6 -3501,14 +3501,6 @@@ static int qmp_combo_probe(struct platf
        if (ret)
                return ret;
  
 -      ret = qmp_combo_typec_switch_register(qmp);
 -      if (ret)
 -              return ret;
 -
 -      ret = drm_aux_bridge_register(dev);
 -      if (ret)
 -              return ret;
 -
        /* Check for legacy binding with child nodes. */
        usb_np = of_get_child_by_name(dev->of_node, "usb3-phy");
        if (usb_np) {
        if (ret)
                goto err_node_put;
  
 +      ret = qmp_combo_typec_switch_register(qmp);
 +      if (ret)
 +              goto err_node_put;
 +
 +      ret = drm_aux_bridge_register(dev);
 +      if (ret)
 +              goto err_node_put;
 +
        pm_runtime_set_active(dev);
        ret = devm_pm_runtime_enable(dev);
        if (ret)
index 5c003988c35d38cead7cc6b3e1e2af04a07bdb28,6b6994cb77d73f334fbb531850e260a60b6697ba..85253936fac352a5189d7b5fa89535ba264b5686
@@@ -19,6 -19,8 +19,8 @@@
  #include <linux/reset.h>
  #include <linux/slab.h>
  
+ #include "phy-qcom-qmp-common.h"
  #include "phy-qcom-qmp.h"
  #include "phy-qcom-qmp-pcs-misc-v3.h"
  #include "phy-qcom-qmp-pcs-misc-v4.h"
  #include "phy-qcom-qmp-pcs-usb-v6.h"
  #include "phy-qcom-qmp-pcs-usb-v7.h"
  
- /* QPHY_SW_RESET bit */
- #define SW_RESET                              BIT(0)
- /* QPHY_POWER_DOWN_CONTROL */
- #define SW_PWRDN                              BIT(0)
- /* QPHY_START_CONTROL bits */
- #define SERDES_START                          BIT(0)
- #define PCS_START                             BIT(1)
- /* QPHY_PCS_STATUS bit */
- #define PHYSTATUS                             BIT(6)
- /* QPHY_V3_DP_COM_RESET_OVRD_CTRL register bits */
- /* DP PHY soft reset */
- #define SW_DPPHY_RESET                                BIT(0)
- /* mux to select DP PHY reset control, 0:HW control, 1: software reset */
- #define SW_DPPHY_RESET_MUX                    BIT(1)
- /* USB3 PHY soft reset */
- #define SW_USB3PHY_RESET                      BIT(2)
- /* mux to select USB3 PHY reset control, 0:HW control, 1: software reset */
- #define SW_USB3PHY_RESET_MUX                  BIT(3)
- /* QPHY_V3_DP_COM_PHY_MODE_CTRL register bits */
- #define USB3_MODE                             BIT(0) /* enables USB3 mode */
- #define DP_MODE                                       BIT(1) /* enables DP mode */
- /* QPHY_PCS_AUTONOMOUS_MODE_CTRL register bits */
- #define ARCVR_DTCT_EN                         BIT(0)
- #define ALFPS_DTCT_EN                         BIT(1)
- #define ARCVR_DTCT_EVENT_SEL                  BIT(4)
- /* QPHY_PCS_LFPS_RXTERM_IRQ_CLEAR register bits */
- #define IRQ_CLEAR                             BIT(0)
- /* QPHY_V3_PCS_MISC_CLAMP_ENABLE register bits */
- #define CLAMP_EN                              BIT(0) /* enables i/o clamp_n */
  #define PHY_INIT_COMPLETE_TIMEOUT             10000
  
- struct qmp_phy_init_tbl {
-       unsigned int offset;
-       unsigned int val;
-       /*
-        * mask of lanes for which this register is written
-        * for cases when second lane needs different values
-        */
-       u8 lane_mask;
- };
- #define QMP_PHY_INIT_CFG(o, v)                \
-       {                               \
-               .offset = o,            \
-               .val = v,               \
-               .lane_mask = 0xff,      \
-       }
- #define QMP_PHY_INIT_CFG_LANE(o, v, l)        \
-       {                               \
-               .offset = o,            \
-               .val = v,               \
-               .lane_mask = l,         \
-       }
  /* set of registers with offsets different per-PHY */
  enum qphy_reg_layout {
        /* PCS registers */
@@@ -121,15 -64,6 +64,6 @@@ static const unsigned int qmp_v3_usb3ph
        [QPHY_PCS_MISC_CLAMP_ENABLE]    = QPHY_V3_PCS_MISC_CLAMP_ENABLE,
  };
  
- static const unsigned int qmp_v3_usb3phy_regs_layout_qcm2290[QPHY_LAYOUT_SIZE] = {
-       [QPHY_SW_RESET]                 = QPHY_V3_PCS_SW_RESET,
-       [QPHY_START_CTRL]               = QPHY_V3_PCS_START_CONTROL,
-       [QPHY_PCS_STATUS]               = QPHY_V3_PCS_PCS_STATUS,
-       [QPHY_PCS_AUTONOMOUS_MODE_CTRL] = QPHY_V3_PCS_AUTONOMOUS_MODE_CTRL,
-       [QPHY_PCS_LFPS_RXTERM_IRQ_CLEAR] = QPHY_V3_PCS_LFPS_RXTERM_IRQ_CLEAR,
-       [QPHY_PCS_POWER_DOWN_CONTROL]   = QPHY_V3_PCS_POWER_DOWN_CONTROL,
- };
  static const unsigned int qmp_v4_usb3phy_regs_layout[QPHY_LAYOUT_SIZE] = {
        [QPHY_SW_RESET]                 = QPHY_V4_PCS_SW_RESET,
        [QPHY_START_CTRL]               = QPHY_V4_PCS_START_CONTROL,
@@@ -514,115 -448,6 +448,6 @@@ static const struct qmp_phy_init_tbl qm
        QMP_PHY_INIT_CFG(QPHY_V3_PCS_REFGEN_REQ_CONFIG2, 0x60),
  };
  
- static const struct qmp_phy_init_tbl msm8998_usb3_serdes_tbl[] = {
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_CLK_SELECT, 0x30),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_BIAS_EN_CLKBUFLR_EN, 0x04),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SYSCLK_EN_SEL, 0x14),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SYS_CLK_CTRL, 0x06),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_RESETSM_CNTRL2, 0x08),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_CMN_CONFIG, 0x06),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SVS_MODE_CLK_SEL, 0x01),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_HSCLK_SEL, 0x80),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_DEC_START_MODE0, 0x82),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_DIV_FRAC_START1_MODE0, 0xab),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_DIV_FRAC_START2_MODE0, 0xea),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_DIV_FRAC_START3_MODE0, 0x02),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_CP_CTRL_MODE0, 0x06),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_PLL_RCTRL_MODE0, 0x16),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_PLL_CCTRL_MODE0, 0x36),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_INTEGLOOP_GAIN1_MODE0, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_INTEGLOOP_GAIN0_MODE0, 0x3f),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_VCO_TUNE2_MODE0, 0x01),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_VCO_TUNE1_MODE0, 0xc9),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_CORECLK_DIV_MODE0, 0x0a),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_LOCK_CMP3_MODE0, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_LOCK_CMP2_MODE0, 0x34),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_LOCK_CMP1_MODE0, 0x15),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_LOCK_CMP_EN, 0x04),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_CORE_CLK_EN, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_LOCK_CMP_CFG, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_VCO_TUNE_MAP, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_BG_TIMER, 0x0a),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_PLL_IVCO, 0x07),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_INTEGLOOP_INITVAL, 0x80),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_CMN_MODE, 0x01),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SSC_EN_CENTER, 0x01),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SSC_PER1, 0x31),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SSC_PER2, 0x01),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SSC_ADJ_PER1, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SSC_ADJ_PER2, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SSC_STEP_SIZE1, 0x85),
-       QMP_PHY_INIT_CFG(QSERDES_V3_COM_SSC_STEP_SIZE2, 0x07),
- };
- static const struct qmp_phy_init_tbl msm8998_usb3_tx_tbl[] = {
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_HIGHZ_DRVR_EN, 0x10),
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_RCV_DETECT_LVL_2, 0x12),
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_LANE_MODE_1, 0x16),
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_RES_CODE_LANE_OFFSET_TX, 0x00),
- };
- static const struct qmp_phy_init_tbl msm8998_usb3_rx_tbl[] = {
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_FASTLOCK_FO_GAIN, 0x0b),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_EQU_ADAPTOR_CNTRL2, 0x0f),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_EQU_ADAPTOR_CNTRL3, 0x4e),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_EQU_ADAPTOR_CNTRL4, 0x18),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_EQ_OFFSET_ADAPTOR_CNTRL1, 0x07),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_OFFSET_ADAPTOR_CNTRL2, 0x80),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_SIGDET_CNTRL, 0x43),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_SIGDET_DEGLITCH_CNTRL, 0x1c),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_SO_SATURATION_AND_ENABLE, 0x75),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_FASTLOCK_COUNT_LOW, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_FASTLOCK_COUNT_HIGH, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_PI_CONTROLS, 0x80),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_FO_GAIN, 0x0a),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_SO_GAIN, 0x06),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_SIGDET_ENABLES, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_VGA_CAL_CNTRL2, 0x03),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_MODE_00, 0x05),
- };
- static const struct qmp_phy_init_tbl msm8998_usb3_pcs_tbl[] = {
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_CNTRL2, 0x83),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_CNT_VAL_L, 0x09),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_CNT_VAL_H_TOL, 0xa2),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_MAN_CODE, 0x40),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_CNTRL1, 0x02),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_LOCK_DETECT_CONFIG1, 0xd1),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_LOCK_DETECT_CONFIG2, 0x1f),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_LOCK_DETECT_CONFIG3, 0x47),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_POWER_STATE_CONFIG2, 0x1b),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXMGN_V0, 0x9f),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXMGN_V1, 0x9f),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXMGN_V2, 0xb7),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXMGN_V3, 0x4e),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXMGN_V4, 0x65),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXMGN_LS, 0x6b),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M6DB_V0, 0x15),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M3P5DB_V0, 0x0d),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M6DB_V1, 0x15),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M3P5DB_V1, 0x0d),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M6DB_V2, 0x15),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M3P5DB_V2, 0x0d),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M6DB_V3, 0x15),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M3P5DB_V3, 0x0d),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M6DB_V4, 0x15),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M3P5DB_V4, 0x0d),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M6DB_LS, 0x15),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M3P5DB_LS, 0x0d),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RATE_SLEW_CNTRL, 0x02),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_PWRUP_RESET_DLY_TIME_AUXCLK, 0x04),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TSYNC_RSYNC_TIME, 0x44),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RCVR_DTCT_DLY_P1U2_L, 0xe7),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RCVR_DTCT_DLY_P1U2_H, 0x03),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RCVR_DTCT_DLY_U3_L, 0x40),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RCVR_DTCT_DLY_U3_H, 0x00),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RX_SIGDET_LVL, 0x8a),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RXEQTRAINING_WAIT_TIME, 0x75),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_LFPS_TX_ECSTART_EQTLOCK, 0x86),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RXEQTRAINING_RUN_TIME, 0x13),
- };
  static const struct qmp_phy_init_tbl sm8150_usb3_uniphy_serdes_tbl[] = {
        QMP_PHY_INIT_CFG(QSERDES_V4_COM_SYSCLK_EN_SEL, 0x1a),
        QMP_PHY_INIT_CFG(QSERDES_V4_COM_BIN_VCOCAL_HSCLK_SEL, 0x11),
@@@ -1089,99 -914,6 +914,6 @@@ static const struct qmp_phy_init_tbl sm
        QMP_PHY_INIT_CFG(QPHY_V5_PCS_USB3_LFPS_DET_HIGH_COUNT_VAL, 0xf8),
  };
  
- static const struct qmp_phy_init_tbl qcm2290_usb3_serdes_tbl[] = {
-       QMP_PHY_INIT_CFG(QSERDES_COM_SYSCLK_EN_SEL, 0x14),
-       QMP_PHY_INIT_CFG(QSERDES_COM_BIAS_EN_CLKBUFLR_EN, 0x08),
-       QMP_PHY_INIT_CFG(QSERDES_COM_CLK_SELECT, 0x30),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SYS_CLK_CTRL, 0x06),
-       QMP_PHY_INIT_CFG(QSERDES_COM_RESETSM_CNTRL, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_RESETSM_CNTRL2, 0x08),
-       QMP_PHY_INIT_CFG(QSERDES_COM_BG_TRIM, 0x0f),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SVS_MODE_CLK_SEL, 0x01),
-       QMP_PHY_INIT_CFG(QSERDES_COM_HSCLK_SEL, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_DEC_START_MODE0, 0x82),
-       QMP_PHY_INIT_CFG(QSERDES_COM_DIV_FRAC_START1_MODE0, 0x55),
-       QMP_PHY_INIT_CFG(QSERDES_COM_DIV_FRAC_START2_MODE0, 0x55),
-       QMP_PHY_INIT_CFG(QSERDES_COM_DIV_FRAC_START3_MODE0, 0x03),
-       QMP_PHY_INIT_CFG(QSERDES_COM_CP_CTRL_MODE0, 0x0b),
-       QMP_PHY_INIT_CFG(QSERDES_COM_PLL_RCTRL_MODE0, 0x16),
-       QMP_PHY_INIT_CFG(QSERDES_COM_PLL_CCTRL_MODE0, 0x28),
-       QMP_PHY_INIT_CFG(QSERDES_COM_INTEGLOOP_GAIN0_MODE0, 0x80),
-       QMP_PHY_INIT_CFG(QSERDES_COM_INTEGLOOP_GAIN1_MODE0, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_CORECLK_DIV, 0x0a),
-       QMP_PHY_INIT_CFG(QSERDES_COM_LOCK_CMP1_MODE0, 0x15),
-       QMP_PHY_INIT_CFG(QSERDES_COM_LOCK_CMP2_MODE0, 0x34),
-       QMP_PHY_INIT_CFG(QSERDES_COM_LOCK_CMP3_MODE0, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_LOCK_CMP_EN, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_CORE_CLK_EN, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_LOCK_CMP_CFG, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_VCO_TUNE_MAP, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_BG_TIMER, 0x0a),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SSC_EN_CENTER, 0x01),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SSC_PER1, 0x31),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SSC_PER2, 0x01),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SSC_ADJ_PER1, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SSC_ADJ_PER2, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SSC_STEP_SIZE1, 0xde),
-       QMP_PHY_INIT_CFG(QSERDES_COM_SSC_STEP_SIZE2, 0x07),
-       QMP_PHY_INIT_CFG(QSERDES_COM_PLL_IVCO, 0x0f),
-       QMP_PHY_INIT_CFG(QSERDES_COM_CMN_CONFIG, 0x06),
-       QMP_PHY_INIT_CFG(QSERDES_COM_INTEGLOOP_INITVAL, 0x80),
-       QMP_PHY_INIT_CFG(QSERDES_COM_BIAS_EN_CTRL_BY_PSM, 0x01),
- };
- static const struct qmp_phy_init_tbl qcm2290_usb3_tx_tbl[] = {
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_HIGHZ_DRVR_EN, 0x10),
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_RCV_DETECT_LVL_2, 0x12),
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_LANE_MODE_1, 0xc6),
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_RES_CODE_LANE_OFFSET_TX, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_TX_RES_CODE_LANE_OFFSET_RX, 0x00),
- };
- static const struct qmp_phy_init_tbl qcm2290_usb3_rx_tbl[] = {
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_FASTLOCK_FO_GAIN, 0x0b),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_PI_CONTROLS, 0x80),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_FASTLOCK_COUNT_LOW, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_FASTLOCK_COUNT_HIGH, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_FO_GAIN, 0x0a),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_SO_GAIN, 0x06),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_UCDR_SO_SATURATION_AND_ENABLE, 0x75),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_EQU_ADAPTOR_CNTRL2, 0x02),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_EQU_ADAPTOR_CNTRL3, 0x4e),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_EQU_ADAPTOR_CNTRL4, 0x18),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_EQ_OFFSET_ADAPTOR_CNTRL1, 0x77),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_OFFSET_ADAPTOR_CNTRL2, 0x80),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_VGA_CAL_CNTRL2, 0x0a),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_SIGDET_CNTRL, 0x03),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_SIGDET_DEGLITCH_CNTRL, 0x16),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_SIGDET_ENABLES, 0x00),
-       QMP_PHY_INIT_CFG(QSERDES_V3_RX_RX_MODE_00, 0x00),
- };
- static const struct qmp_phy_init_tbl qcm2290_usb3_pcs_tbl[] = {
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXMGN_V0, 0x9f),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M6DB_V0, 0x17),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TXDEEMPH_M3P5DB_V0, 0x0f),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_CNTRL2, 0x83),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_CNTRL1, 0x02),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_CNT_VAL_L, 0x09),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_CNT_VAL_H_TOL, 0xa2),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_FLL_MAN_CODE, 0x85),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_LOCK_DETECT_CONFIG1, 0xd1),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_LOCK_DETECT_CONFIG2, 0x1f),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_LOCK_DETECT_CONFIG3, 0x47),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RXEQTRAINING_WAIT_TIME, 0x75),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RXEQTRAINING_RUN_TIME, 0x13),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_LFPS_TX_ECSTART_EQTLOCK, 0x86),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_PWRUP_RESET_DLY_TIME_AUXCLK, 0x04),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_TSYNC_RSYNC_TIME, 0x44),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RCVR_DTCT_DLY_P1U2_L, 0xe7),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RCVR_DTCT_DLY_P1U2_H, 0x03),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RCVR_DTCT_DLY_U3_L, 0x40),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RCVR_DTCT_DLY_U3_H, 0x00),
-       QMP_PHY_INIT_CFG(QPHY_V3_PCS_RX_SIGDET_LVL, 0x88),
- };
  static const struct qmp_phy_init_tbl sc8280xp_usb3_uniphy_serdes_tbl[] = {
        QMP_PHY_INIT_CFG(QSERDES_V5_COM_SYSCLK_EN_SEL, 0x1a),
        QMP_PHY_INIT_CFG(QSERDES_V5_COM_BIN_VCOCAL_HSCLK_SEL, 0x11),
@@@ -1448,15 -1180,10 +1180,10 @@@ struct qmp_usb_offsets 
        u16 pcs_usb;
        u16 tx;
        u16 rx;
-       /* for PHYs with >= 2 lanes */
-       u16 tx2;
-       u16 rx2;
  };
  
  /* struct qmp_phy_cfg - per-PHY initialization config */
  struct qmp_phy_cfg {
-       int lanes;
        const struct qmp_usb_offsets *offsets;
  
        /* Init sequence for PHY blocks - serdes, tx, rx, pcs */
@@@ -1496,8 -1223,6 +1223,6 @@@ struct qmp_usb 
        void __iomem *pcs_usb;
        void __iomem *tx;
        void __iomem *rx;
-       void __iomem *tx2;
-       void __iomem *rx2;
  
        struct clk *pipe_clk;
        struct clk_bulk_data *clks;
@@@ -1556,14 -1281,6 +1281,14 @@@ static const char * const qmp_phy_vreg_
        "vdda-phy", "vdda-pll",
  };
  
 +static const struct qmp_usb_offsets qmp_usb_offsets_v3 = {
 +      .serdes         = 0,
 +      .pcs            = 0x800,
 +      .pcs_misc       = 0x600,
 +      .tx             = 0x200,
 +      .rx             = 0x400,
 +};
 +
  static const struct qmp_usb_offsets qmp_usb_offsets_ipq9574 = {
        .serdes         = 0,
        .pcs            = 0x800,
        .rx             = 0x400,
  };
  
 -static const struct qmp_usb_offsets qmp_usb_offsets_v3 = {
 +static const struct qmp_usb_offsets qmp_usb_offsets_v3_msm8996 = {
        .serdes         = 0,
        .pcs            = 0x600,
        .tx             = 0x200,
        .rx             = 0x400,
  };
  
- static const struct qmp_usb_offsets qmp_usb_offsets_v3_qcm2290 = {
-       .serdes         = 0x0,
-       .pcs            = 0xc00,
-       .pcs_misc       = 0xa00,
-       .tx             = 0x200,
-       .rx             = 0x400,
-       .tx2            = 0x600,
-       .rx2            = 0x800,
- };
  static const struct qmp_usb_offsets qmp_usb_offsets_v4 = {
        .serdes         = 0,
        .pcs            = 0x0800,
@@@ -1621,27 -1328,7 +1336,23 @@@ static const struct qmp_usb_offsets qmp
        .rx             = 0x1000,
  };
  
-       .lanes                  = 1,
 +static const struct qmp_phy_cfg ipq6018_usb3phy_cfg = {
 +      .offsets                = &qmp_usb_offsets_v3,
 +
 +      .serdes_tbl             = ipq9574_usb3_serdes_tbl,
 +      .serdes_tbl_num         = ARRAY_SIZE(ipq9574_usb3_serdes_tbl),
 +      .tx_tbl                 = msm8996_usb3_tx_tbl,
 +      .tx_tbl_num             = ARRAY_SIZE(msm8996_usb3_tx_tbl),
 +      .rx_tbl                 = ipq8074_usb3_rx_tbl,
 +      .rx_tbl_num             = ARRAY_SIZE(ipq8074_usb3_rx_tbl),
 +      .pcs_tbl                = ipq8074_usb3_pcs_tbl,
 +      .pcs_tbl_num            = ARRAY_SIZE(ipq8074_usb3_pcs_tbl),
 +      .vreg_list              = qmp_phy_vreg_l,
 +      .num_vregs              = ARRAY_SIZE(qmp_phy_vreg_l),
 +      .regs                   = qmp_v3_usb3phy_regs_layout,
 +};
 +
  static const struct qmp_phy_cfg ipq8074_usb3phy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v3,
  
        .serdes_tbl             = ipq8074_usb3_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg ipq9574_usb3phy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_ipq9574,
  
        .serdes_tbl             = ipq9574_usb3_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg msm8996_usb3phy_cfg = {
-       .lanes                  = 1,
 -      .offsets                = &qmp_usb_offsets_v3,
 +      .offsets                = &qmp_usb_offsets_v3_msm8996,
  
        .serdes_tbl             = msm8996_usb3_serdes_tbl,
        .serdes_tbl_num         = ARRAY_SIZE(msm8996_usb3_serdes_tbl),
  };
  
  static const struct qmp_phy_cfg sa8775p_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v5,
  
        .serdes_tbl             = sc8280xp_usb3_uniphy_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg sc8280xp_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v5,
  
        .serdes_tbl             = sc8280xp_usb3_uniphy_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg qmp_v3_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v3,
  
        .serdes_tbl             = qmp_v3_usb3_uniphy_serdes_tbl,
        .has_pwrdn_delay        = true,
  };
  
- static const struct qmp_phy_cfg msm8998_usb3phy_cfg = {
-       .lanes                  = 2,
-       .offsets                = &qmp_usb_offsets_v3_qcm2290,
-       .serdes_tbl             = msm8998_usb3_serdes_tbl,
-       .serdes_tbl_num         = ARRAY_SIZE(msm8998_usb3_serdes_tbl),
-       .tx_tbl                 = msm8998_usb3_tx_tbl,
-       .tx_tbl_num             = ARRAY_SIZE(msm8998_usb3_tx_tbl),
-       .rx_tbl                 = msm8998_usb3_rx_tbl,
-       .rx_tbl_num             = ARRAY_SIZE(msm8998_usb3_rx_tbl),
-       .pcs_tbl                = msm8998_usb3_pcs_tbl,
-       .pcs_tbl_num            = ARRAY_SIZE(msm8998_usb3_pcs_tbl),
-       .vreg_list              = qmp_phy_vreg_l,
-       .num_vregs              = ARRAY_SIZE(qmp_phy_vreg_l),
-       .regs                   = qmp_v3_usb3phy_regs_layout,
- };
  static const struct qmp_phy_cfg sm8150_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v4,
  
        .serdes_tbl             = sm8150_usb3_uniphy_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg sm8250_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v4,
  
        .serdes_tbl             = sm8150_usb3_uniphy_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg sdx55_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v4,
  
        .serdes_tbl             = sm8150_usb3_uniphy_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg sdx65_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v5,
  
        .serdes_tbl             = sm8150_usb3_uniphy_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg sdx75_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v6,
  
        .serdes_tbl             = sdx75_usb3_uniphy_serdes_tbl,
  };
  
  static const struct qmp_phy_cfg sm8350_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v5,
  
        .serdes_tbl             = sm8150_usb3_uniphy_serdes_tbl,
        .has_pwrdn_delay        = true,
  };
  
- static const struct qmp_phy_cfg qcm2290_usb3phy_cfg = {
-       .lanes                  = 2,
-       .offsets                = &qmp_usb_offsets_v3_qcm2290,
-       .serdes_tbl             = qcm2290_usb3_serdes_tbl,
-       .serdes_tbl_num         = ARRAY_SIZE(qcm2290_usb3_serdes_tbl),
-       .tx_tbl                 = qcm2290_usb3_tx_tbl,
-       .tx_tbl_num             = ARRAY_SIZE(qcm2290_usb3_tx_tbl),
-       .rx_tbl                 = qcm2290_usb3_rx_tbl,
-       .rx_tbl_num             = ARRAY_SIZE(qcm2290_usb3_rx_tbl),
-       .pcs_tbl                = qcm2290_usb3_pcs_tbl,
-       .pcs_tbl_num            = ARRAY_SIZE(qcm2290_usb3_pcs_tbl),
-       .vreg_list              = qmp_phy_vreg_l,
-       .num_vregs              = ARRAY_SIZE(qmp_phy_vreg_l),
-       .regs                   = qmp_v3_usb3phy_regs_layout_qcm2290,
- };
  static const struct qmp_phy_cfg x1e80100_usb3_uniphy_cfg = {
-       .lanes                  = 1,
        .offsets                = &qmp_usb_offsets_v7,
  
        .serdes_tbl             = x1e80100_usb3_uniphy_serdes_tbl,
        .regs                   = qmp_v7_usb3phy_regs_layout,
  };
  
- static void qmp_usb_configure_lane(void __iomem *base,
-                                       const struct qmp_phy_init_tbl tbl[],
-                                       int num,
-                                       u8 lane_mask)
- {
-       int i;
-       const struct qmp_phy_init_tbl *t = tbl;
-       if (!t)
-               return;
-       for (i = 0; i < num; i++, t++) {
-               if (!(t->lane_mask & lane_mask))
-                       continue;
-               writel(t->val, base + t->offset);
-       }
- }
- static void qmp_usb_configure(void __iomem *base,
-                                  const struct qmp_phy_init_tbl tbl[],
-                                  int num)
- {
-       qmp_usb_configure_lane(base, tbl, num, 0xff);
- }
  static int qmp_usb_serdes_init(struct qmp_usb *qmp)
  {
        const struct qmp_phy_cfg *cfg = qmp->cfg;
        const struct qmp_phy_init_tbl *serdes_tbl = cfg->serdes_tbl;
        int serdes_tbl_num = cfg->serdes_tbl_num;
  
-       qmp_usb_configure(serdes, serdes_tbl, serdes_tbl_num);
+       qmp_configure(serdes, serdes_tbl, serdes_tbl_num);
  
        return 0;
  }
@@@ -2060,18 -1662,13 +1686,13 @@@ static int qmp_usb_power_on(struct phy 
        }
  
        /* Tx, Rx, and PCS configurations */
-       qmp_usb_configure_lane(tx, cfg->tx_tbl, cfg->tx_tbl_num, 1);
-       qmp_usb_configure_lane(rx, cfg->rx_tbl, cfg->rx_tbl_num, 1);
-       if (cfg->lanes >= 2) {
-               qmp_usb_configure_lane(qmp->tx2, cfg->tx_tbl, cfg->tx_tbl_num, 2);
-               qmp_usb_configure_lane(qmp->rx2, cfg->rx_tbl, cfg->rx_tbl_num, 2);
-       }
+       qmp_configure_lane(tx, cfg->tx_tbl, cfg->tx_tbl_num, 1);
+       qmp_configure_lane(rx, cfg->rx_tbl, cfg->rx_tbl_num, 1);
  
-       qmp_usb_configure(pcs, cfg->pcs_tbl, cfg->pcs_tbl_num);
+       qmp_configure(pcs, cfg->pcs_tbl, cfg->pcs_tbl_num);
  
        if (pcs_usb)
-               qmp_usb_configure(pcs_usb, cfg->pcs_usb_tbl, cfg->pcs_usb_tbl_num);
+               qmp_configure(pcs_usb, cfg->pcs_usb_tbl, cfg->pcs_usb_tbl_num);
  
        if (cfg->has_pwrdn_delay)
                usleep_range(10, 20);
@@@ -2414,7 -2011,6 +2035,6 @@@ static int qmp_usb_parse_dt_legacy(stru
        /*
         * Get memory resources for the PHY:
         * Resources are indexed as: tx -> 0; rx -> 1; pcs -> 2.
-        * For dual lane PHYs: tx2 -> 3, rx2 -> 4, pcs_misc (optional) -> 5
         * For single lane PHYs: pcs_misc (optional) -> 3.
         */
        qmp->tx = devm_of_iomap(dev, np, 0, NULL);
        if (cfg->pcs_usb_offset)
                qmp->pcs_usb = qmp->pcs + cfg->pcs_usb_offset;
  
-       if (cfg->lanes >= 2) {
-               qmp->tx2 = devm_of_iomap(dev, np, 3, NULL);
-               if (IS_ERR(qmp->tx2))
-                       return PTR_ERR(qmp->tx2);
-               qmp->rx2 = devm_of_iomap(dev, np, 4, NULL);
-               if (IS_ERR(qmp->rx2))
-                       return PTR_ERR(qmp->rx2);
-               qmp->pcs_misc = devm_of_iomap(dev, np, 5, NULL);
-       } else {
-               qmp->pcs_misc = devm_of_iomap(dev, np, 3, NULL);
-       }
+       qmp->pcs_misc = devm_of_iomap(dev, np, 3, NULL);
  
        if (IS_ERR(qmp->pcs_misc)) {
                dev_vdbg(dev, "PHY pcs_misc-reg not used\n");
@@@ -2496,11 -2080,6 +2104,6 @@@ static int qmp_usb_parse_dt(struct qmp_
        qmp->tx = base + offs->tx;
        qmp->rx = base + offs->rx;
  
-       if (cfg->lanes >= 2) {
-               qmp->tx2 = base + offs->tx2;
-               qmp->rx2 = base + offs->rx2;
-       }
        ret = qmp_usb_clk_init(qmp);
        if (ret)
                return ret;
@@@ -2589,7 -2168,7 +2192,7 @@@ err_node_put
  static const struct of_device_id qmp_usb_of_match_table[] = {
        {
                .compatible = "qcom,ipq6018-qmp-usb3-phy",
 -              .data = &ipq8074_usb3phy_cfg,
 +              .data = &ipq6018_usb3phy_cfg,
        }, {
                .compatible = "qcom,ipq8074-qmp-usb3-phy",
                .data = &ipq8074_usb3phy_cfg,
        }, {
                .compatible = "qcom,msm8996-qmp-usb3-phy",
                .data = &msm8996_usb3phy_cfg,
-       }, {
-               .compatible = "qcom,msm8998-qmp-usb3-phy",
-               .data = &msm8998_usb3phy_cfg,
-       }, {
-               .compatible = "qcom,qcm2290-qmp-usb3-phy",
-               .data = &qcm2290_usb3phy_cfg,
        }, {
                .compatible = "qcom,sa8775p-qmp-usb3-uni-phy",
                .data = &sa8775p_usb3_uniphy_cfg,
        }, {
                .compatible = "qcom,sdx75-qmp-usb3-uni-phy",
                .data = &sdx75_usb3_uniphy_cfg,
-       }, {
-               .compatible = "qcom,sm6115-qmp-usb3-phy",
-               .data = &qcm2290_usb3phy_cfg,
        }, {
                .compatible = "qcom,sm8150-qmp-usb3-uni-phy",
                .data = &sm8150_usb3_uniphy_cfg,
index 6387c0d34c551c0e4e28e09af0792cee69eb2952,c8b58607b037911ce9bea99e439141dc20fbab82..fbab6ac0f0d10c89a275b68dd8d0094c1943f357
@@@ -608,7 -608,7 +608,7 @@@ static const unsigned int rcar_gen3_phy
  };
  
  static struct phy *rcar_gen3_phy_usb2_xlate(struct device *dev,
-                                           struct of_phandle_args *args)
+                                           const struct of_phandle_args *args)
  {
        struct rcar_gen3_chan *ch = dev_get_drvdata(dev);
  
@@@ -673,6 -673,8 +673,6 @@@ static int rcar_gen3_phy_usb2_probe(str
        channel->irq = platform_get_irq_optional(pdev, 0);
        channel->dr_mode = rcar_gen3_get_dr_mode(dev->of_node);
        if (channel->dr_mode != USB_DR_MODE_UNKNOWN) {
 -              int ret;
 -
                channel->is_otg_channel = true;
                channel->uses_otg_pins = !of_property_read_bool(dev->of_node,
                                                        "renesas,no-otg-pins");
                ret = PTR_ERR(provider);
                goto error;
        } else if (channel->is_otg_channel) {
 -              int ret;
 -
                ret = device_create_file(dev, &dev_attr_role);
                if (ret < 0)
                        goto error;
This page took 0.214581 seconds and 4 git commands to generate.