Merge tag 'mips_6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 29 Jun 2023 22:01:51 +0000 (15:01 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 29 Jun 2023 22:01:51 +0000 (15:01 -0700)
Pull MIPS updates from Thomas Bogendoerfer:

 - add support for TP-Link HC220 G5 v1

 - add support for Wifi/Bluetooth on CI20

 - rework Ralink clock and reset handling

 - cleanups and fixes

* tag 'mips_6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: (58 commits)
  MIPS: Loongson64: DTS: Add RTC support to Loongson-2K1000
  MIPS: Loongson64: DTS: Add RTC support to LS7A PCH
  MIPS: OCTEON: octeon-usb: cleanup divider calculation
  MIPS: OCTEON: octeon-usb: introduce dwc3_octeon_{read,write}q
  MIPS: OCTEON: octeon-usb: move gpio config to separate function
  MIPS: OCTEON: octeon-usb: use bitfields for shim register
  MIPS: OCTEON: octeon-usb: use bitfields for host config register
  MIPS: OCTEON: octeon-usb: use bitfields for control register
  MIPS: OCTEON: octeon-usb: add all register offsets
  mips: ralink: match all supported system controller compatible strings
  MIPS: dec: prom: Address -Warray-bounds warning
  MIPS: DTS: CI20: Raise VDDCORE voltage to 1.125 volts
  clk: ralink: mtmips: Fix uninitialized use of ret in mtmips_register_{fixed,factor}_clocks()
  mips: ralink: introduce commonly used remap node function
  mips: pci-mt7620: use dev_info() to log PCIe device detection result
  mips: pci-mt7620: do not print NFTS register value as error log
  MAINTAINERS: add Mediatek MTMIPS Clock maintainer
  mips: ralink: get cpu rate from new driver code
  mips: ralink: remove reset related code
  mips: ralink: mt7620: remove clock related code
  ...

1  2 
Documentation/admin-guide/kernel-parameters.txt
MAINTAINERS
arch/mips/Kconfig
arch/mips/include/asm/mach-loongson32/loongson1.h
arch/mips/kernel/smp-cps.c
arch/mips/kernel/smp.c

                        EL0 is indicated by /sys/devices/system/cpu/aarch32_el0
                        and hot-unplug operations may be restricted.
  
 -                      See Documentation/arm64/asymmetric-32bit.rst for more
 +                      See Documentation/arch/arm64/asymmetric-32bit.rst for more
                        information.
  
        amd_iommu=      [HW,X86-64]
        arm64.nosme     [ARM64] Unconditionally disable Scalable Matrix
                        Extension support
  
 +      arm64.nomops    [ARM64] Unconditionally disable Memory Copy and Memory
 +                      Set instructions support
 +
        ataflop=        [HW,M68k]
  
        atarimouse=     [HW,MOUSE] Atari Mouse
                        Format:
                        <first_slot>,<last_slot>,<port>,<enum_bit>[,<debug>]
  
 -      cpu0_hotplug    [X86] Turn on CPU0 hotplug feature when
 -                      CONFIG_BOOTPARAM_HOTPLUG_CPU0 is off.
 -                      Some features depend on CPU0. Known dependencies are:
 -                      1. Resume from suspend/hibernate depends on CPU0.
 -                      Suspend/hibernate will fail if CPU0 is offline and you
 -                      need to online CPU0 before suspend/hibernate.
 -                      2. PIC interrupts also depend on CPU0. CPU0 can't be
 -                      removed if a PIC interrupt is detected.
 -                      It's said poweroff/reboot may depend on CPU0 on some
 -                      machines although I haven't seen such issues so far
 -                      after CPU0 is offline on a few tested machines.
 -                      If the dependencies are under your control, you can
 -                      turn on cpu0_hotplug.
 -
        cpuidle.off=1   [CPU_IDLE]
                        disable the cpuidle sub-system
  
                        on every CPU online, such as boot, and resume from suspend.
                        Default: 10000
  
 +      cpuhp.parallel=
 +                      [SMP] Enable/disable parallel bringup of secondary CPUs
 +                      Format: <bool>
 +                      Default is enabled if CONFIG_HOTPLUG_PARALLEL=y. Otherwise
 +                      the parameter has no effect.
 +
        crash_kexec_post_notifiers
                        Run kdump after running panic-notifiers and dumping
                        kmsg. This only for the users who doubt kdump always
                        disable
                          Do not enable intel_pstate as the default
                          scaling driver for the supported processors
 +                        active
 +                          Use intel_pstate driver to bypass the scaling
 +                          governors layer of cpufreq and provides it own
 +                          algorithms for p-state selection. There are two
 +                          P-state selection algorithms provided by
 +                          intel_pstate in the active mode: powersave and
 +                          performance.  The way they both operate depends
 +                          on whether or not the hardware managed P-states
 +                          (HWP) feature has been enabled in the processor
 +                          and possibly on the processor model.
                        passive
                          Use intel_pstate as a scaling driver, but configure it
                          to work with generic cpufreq governors (instead of
                        If the value is 0 (the default), KVM will pick a period based
                        on the ratio, such that a page is zapped after 1 hour on average.
  
 -      kvm-amd.nested= [KVM,AMD] Allow nested virtualization in KVM/SVM.
 -                      Default is 1 (enabled)
 +      kvm-amd.nested= [KVM,AMD] Control nested virtualization feature in
 +                      KVM/SVM. Default is 1 (enabled).
  
 -      kvm-amd.npt=    [KVM,AMD] Disable nested paging (virtualized MMU)
 -                      for all guests.
 -                      Default is 1 (enabled) if in 64-bit or 32-bit PAE mode.
 +      kvm-amd.npt=    [KVM,AMD] Control KVM's use of Nested Page Tables,
 +                      a.k.a. Two-Dimensional Page Tables. Default is 1
 +                      (enabled). Disable by KVM if hardware lacks support
 +                      for NPT.
  
        kvm-arm.mode=
                        [KVM,ARM] Select one of KVM/arm64's modes of operation.
                        Format: <integer>
                        Default: 5
  
 -      kvm-intel.ept=  [KVM,Intel] Disable extended page tables
 -                      (virtualized MMU) support on capable Intel chips.
 -                      Default is 1 (enabled)
 +      kvm-intel.ept=  [KVM,Intel] Control KVM's use of Extended Page Tables,
 +                      a.k.a. Two-Dimensional Page Tables.  Default is 1
 +                      (enabled). Disable by KVM if hardware lacks support
 +                      for EPT.
  
        kvm-intel.emulate_invalid_guest_state=
 -                      [KVM,Intel] Disable emulation of invalid guest state.
 -                      Ignored if kvm-intel.enable_unrestricted_guest=1, as
 -                      guest state is never invalid for unrestricted guests.
 -                      This param doesn't apply to nested guests (L2), as KVM
 -                      never emulates invalid L2 guest state.
 -                      Default is 1 (enabled)
 +                      [KVM,Intel] Control whether to emulate invalid guest
 +                      state. Ignored if kvm-intel.enable_unrestricted_guest=1,
 +                      as guest state is never invalid for unrestricted
 +                      guests. This param doesn't apply to nested guests (L2),
 +                      as KVM never emulates invalid L2 guest state.
 +                      Default is 1 (enabled).
  
        kvm-intel.flexpriority=
 -                      [KVM,Intel] Disable FlexPriority feature (TPR shadow).
 -                      Default is 1 (enabled)
 +                      [KVM,Intel] Control KVM's use of FlexPriority feature
 +                      (TPR shadow). Default is 1 (enabled). Disalbe by KVM if
 +                      hardware lacks support for it.
  
        kvm-intel.nested=
 -                      [KVM,Intel] Enable VMX nesting (nVMX).
 -                      Default is 0 (disabled)
 +                      [KVM,Intel] Control nested virtualization feature in
 +                      KVM/VMX. Default is 1 (enabled).
  
        kvm-intel.unrestricted_guest=
 -                      [KVM,Intel] Disable unrestricted guest feature
 -                      (virtualized real and unpaged mode) on capable
 -                      Intel chips. Default is 1 (enabled)
 +                      [KVM,Intel] Control KVM's use of unrestricted guest
 +                      feature (virtualized real and unpaged mode). Default
 +                      is 1 (enabled). Disable by KVM if EPT is disabled or
 +                      hardware lacks support for it.
  
        kvm-intel.vmentry_l1d_flush=[KVM,Intel] Mitigation for L1 Terminal Fault
                        CVE-2018-3620.
  
                        Default is cond (do L1 cache flush in specific instances)
  
 -      kvm-intel.vpid= [KVM,Intel] Disable Virtual Processor Identification
 -                      feature (tagged TLBs) on capable Intel chips.
 -                      Default is 1 (enabled)
 +      kvm-intel.vpid= [KVM,Intel] Control KVM's use of Virtual Processor
 +                      Identification feature (tagged TLBs). Default is 1
 +                      (enabled). Disable by KVM if hardware lacks support
 +                      for it.
  
        l1d_flush=      [X86,INTEL]
                        Control mitigation for L1D based snooping vulnerability.
                        [HW] Make the MicroTouch USB driver use raw coordinates
                        ('y', default) or cooked coordinates ('n')
  
 +      mtrr=debug      [X86]
 +                      Enable printing debug information related to MTRR
 +                      registers at boot time.
 +
        mtrr_chunk_size=nn[KMG] [X86]
                        used for mtrr cleanup. It is largest continuous chunk
                        that could hold holes aka. UC entries.
  
        nohibernate     [HIBERNATION] Disable hibernation and resume.
  
-       nohlt           [ARM,ARM64,MICROBLAZE,SH] Forces the kernel to busy wait
-                       in do_idle() and not use the arch_cpu_idle()
+       nohlt           [ARM,ARM64,MICROBLAZE,MIPS,SH] Forces the kernel to
+                       busy wait in do_idle() and not use the arch_cpu_idle()
                        implementation; requires CONFIG_GENERIC_IDLE_POLL_SETUP
                        to be effective. This is useful on platforms where the
                        sleep(SH) or wfi(ARM,ARM64) instructions do not work
        nosmp           [SMP] Tells an SMP kernel to act as a UP kernel,
                        and disable the IO APIC.  legacy for "maxcpus=0".
  
-       nosmt           [KNL,S390] Disable symmetric multithreading (SMT).
+       nosmt           [KNL,MIPS,S390] Disable symmetric multithreading (SMT).
                        Equivalent to smt=1.
  
                        [KNL,X86] Disable symmetric multithreading (SMT).
                        the propagation of recent CPU-hotplug changes up
                        the rcu_node combining tree.
  
 -      rcutree.use_softirq=    [KNL]
 -                      If set to zero, move all RCU_SOFTIRQ processing to
 -                      per-CPU rcuc kthreads.  Defaults to a non-zero
 -                      value, meaning that RCU_SOFTIRQ is used by default.
 -                      Specify rcutree.use_softirq=0 to use rcuc kthreads.
 -
 -                      But note that CONFIG_PREEMPT_RT=y kernels disable
 -                      this kernel boot parameter, forcibly setting it
 -                      to zero.
 -
 -      rcutree.rcu_fanout_exact= [KNL]
 -                      Disable autobalancing of the rcu_node combining
 -                      tree.  This is used by rcutorture, and might
 -                      possibly be useful for architectures having high
 -                      cache-to-cache transfer latencies.
 -
 -      rcutree.rcu_fanout_leaf= [KNL]
 -                      Change the number of CPUs assigned to each
 -                      leaf rcu_node structure.  Useful for very
 -                      large systems, which will choose the value 64,
 -                      and for NUMA systems with large remote-access
 -                      latencies, which will choose a value aligned
 -                      with the appropriate hardware boundaries.
 -
 -      rcutree.rcu_min_cached_objs= [KNL]
 -                      Minimum number of objects which are cached and
 -                      maintained per one CPU. Object size is equal
 -                      to PAGE_SIZE. The cache allows to reduce the
 -                      pressure to page allocator, also it makes the
 -                      whole algorithm to behave better in low memory
 -                      condition.
 -
 -      rcutree.rcu_delay_page_cache_fill_msec= [KNL]
 -                      Set the page-cache refill delay (in milliseconds)
 -                      in response to low-memory conditions.  The range
 -                      of permitted values is in the range 0:100000.
 -
        rcutree.jiffies_till_first_fqs= [KNL]
                        Set delay from grace-period initialization to
                        first attempt to force quiescent states.
                        When RCU_NOCB_CPU is set, also adjust the
                        priority of NOCB callback kthreads.
  
 -      rcutree.rcu_divisor= [KNL]
 -                      Set the shift-right count to use to compute
 -                      the callback-invocation batch limit bl from
 -                      the number of callbacks queued on this CPU.
 -                      The result will be bounded below by the value of
 -                      the rcutree.blimit kernel parameter.  Every bl
 -                      callbacks, the softirq handler will exit in
 -                      order to allow the CPU to do other work.
 -
 -                      Please note that this callback-invocation batch
 -                      limit applies only to non-offloaded callback
 -                      invocation.  Offloaded callbacks are instead
 -                      invoked in the context of an rcuoc kthread, which
 -                      scheduler will preempt as it does any other task.
 -
        rcutree.nocb_nobypass_lim_per_jiffy= [KNL]
                        On callback-offloaded (rcu_nocbs) CPUs,
                        RCU reduces the lock contention that would
                        the ->nocb_bypass queue.  The definition of "too
                        many" is supplied by this kernel boot parameter.
  
 -      rcutree.rcu_nocb_gp_stride= [KNL]
 -                      Set the number of NOCB callback kthreads in
 -                      each group, which defaults to the square root
 -                      of the number of CPUs.  Larger numbers reduce
 -                      the wakeup overhead on the global grace-period
 -                      kthread, but increases that same overhead on
 -                      each group's NOCB grace-period kthread.
 -
        rcutree.qhimark= [KNL]
                        Set threshold of queued RCU callbacks beyond which
                        batch limiting is disabled.
                        on rcutree.qhimark at boot time and to zero to
                        disable more aggressive help enlistment.
  
 +      rcutree.rcu_delay_page_cache_fill_msec= [KNL]
 +                      Set the page-cache refill delay (in milliseconds)
 +                      in response to low-memory conditions.  The range
 +                      of permitted values is in the range 0:100000.
 +
 +      rcutree.rcu_divisor= [KNL]
 +                      Set the shift-right count to use to compute
 +                      the callback-invocation batch limit bl from
 +                      the number of callbacks queued on this CPU.
 +                      The result will be bounded below by the value of
 +                      the rcutree.blimit kernel parameter.  Every bl
 +                      callbacks, the softirq handler will exit in
 +                      order to allow the CPU to do other work.
 +
 +                      Please note that this callback-invocation batch
 +                      limit applies only to non-offloaded callback
 +                      invocation.  Offloaded callbacks are instead
 +                      invoked in the context of an rcuoc kthread, which
 +                      scheduler will preempt as it does any other task.
 +
 +      rcutree.rcu_fanout_exact= [KNL]
 +                      Disable autobalancing of the rcu_node combining
 +                      tree.  This is used by rcutorture, and might
 +                      possibly be useful for architectures having high
 +                      cache-to-cache transfer latencies.
 +
 +      rcutree.rcu_fanout_leaf= [KNL]
 +                      Change the number of CPUs assigned to each
 +                      leaf rcu_node structure.  Useful for very
 +                      large systems, which will choose the value 64,
 +                      and for NUMA systems with large remote-access
 +                      latencies, which will choose a value aligned
 +                      with the appropriate hardware boundaries.
 +
 +      rcutree.rcu_min_cached_objs= [KNL]
 +                      Minimum number of objects which are cached and
 +                      maintained per one CPU. Object size is equal
 +                      to PAGE_SIZE. The cache allows to reduce the
 +                      pressure to page allocator, also it makes the
 +                      whole algorithm to behave better in low memory
 +                      condition.
 +
 +      rcutree.rcu_nocb_gp_stride= [KNL]
 +                      Set the number of NOCB callback kthreads in
 +                      each group, which defaults to the square root
 +                      of the number of CPUs.  Larger numbers reduce
 +                      the wakeup overhead on the global grace-period
 +                      kthread, but increases that same overhead on
 +                      each group's NOCB grace-period kthread.
 +
        rcutree.rcu_kick_kthreads= [KNL]
                        Cause the grace-period kthread to get an extra
                        wake_up() if it sleeps three times longer than
                        This wake_up() will be accompanied by a
                        WARN_ONCE() splat and an ftrace_dump().
  
 +      rcutree.rcu_resched_ns= [KNL]
 +                      Limit the time spend invoking a batch of RCU
 +                      callbacks to the specified number of nanoseconds.
 +                      By default, this limit is checked only once
 +                      every 32 callbacks in order to limit the pain
 +                      inflicted by local_clock() overhead.
 +
        rcutree.rcu_unlock_delay= [KNL]
                        In CONFIG_RCU_STRICT_GRACE_PERIOD=y kernels,
                        this specifies an rcu_read_unlock()-time delay
                        rcu_node tree with an eye towards determining
                        why a new grace period has not yet started.
  
 +      rcutree.use_softirq=    [KNL]
 +                      If set to zero, move all RCU_SOFTIRQ processing to
 +                      per-CPU rcuc kthreads.  Defaults to a non-zero
 +                      value, meaning that RCU_SOFTIRQ is used by default.
 +                      Specify rcutree.use_softirq=0 to use rcuc kthreads.
 +
 +                      But note that CONFIG_PREEMPT_RT=y kernels disable
 +                      this kernel boot parameter, forcibly setting it
 +                      to zero.
 +
        rcuscale.gp_async= [KNL]
                        Measure performance of asynchronous
                        grace-period primitives such as call_rcu().
  
        rcutorture.stall_cpu_block= [KNL]
                        Sleep while stalling if set.  This will result
 -                      in warnings from preemptible RCU in addition
 -                      to any other stall-related activity.
 +                      in warnings from preemptible RCU in addition to
 +                      any other stall-related activity.  Note that
 +                      in kernels built with CONFIG_PREEMPTION=n and
 +                      CONFIG_PREEMPT_COUNT=y, this parameter will
 +                      cause the CPU to pass through a quiescent state.
 +                      Given CONFIG_PREEMPTION=n, this will suppress
 +                      RCU CPU stall warnings, but will instead result
 +                      in scheduling-while-atomic splats.
 +
 +                      Use of this module parameter results in splats.
 +
  
        rcutorture.stall_cpu_holdoff= [KNL]
                        Time to wait (s) after boot before inducing stall.
                        port and the regular usb controller gets disabled.
  
        root=           [KNL] Root filesystem
 -                      See name_to_dev_t comment in init/do_mounts.c.
 +                      Usually this a a block device specifier of some kind,
 +                      see the early_lookup_bdev comment in
 +                      block/early-lookup.c for details.
 +                      Alternatively this can be "ram" for the legacy initial
 +                      ramdisk, "nfs" and "cifs" for root on a network file
 +                      system, or "mtd" and "ubi" for mounting from raw flash.
  
        rootdelay=      [KNL] Delay (in seconds) to pause before attempting to
                        mount the root filesystem
                                1: Fast pin select (default)
                                2: ATC IRMode
  
-       smt=            [KNL,S390] Set the maximum number of threads (logical
+       smt=            [KNL,MIPS,S390] Set the maximum number of threads (logical
                        CPUs) to use per physical CPU on systems capable of
                        symmetric multithreading (SMT). Will be capped to the
                        actual hardware limit.
        unknown_nmi_panic
                        [X86] Cause panic on unknown NMI.
  
 +      unwind_debug    [X86-64]
 +                      Enable unwinder debug output.  This can be
 +                      useful for debugging certain unwinder error
 +                      conditions, including corrupt stacks and
 +                      bad/missing unwinder metadata.
 +
        usbcore.authorized_default=
                        [USB] Default USB device authorization:
                        (default -1 = authorized except for wireless USB,
                        it can be updated at runtime by writing to the
                        corresponding sysfs file.
  
 +      workqueue.cpu_intensive_thresh_us=
 +                      Per-cpu work items which run for longer than this
 +                      threshold are automatically considered CPU intensive
 +                      and excluded from concurrency management to prevent
 +                      them from noticeably delaying other per-cpu work
 +                      items. Default is 10000 (10ms).
 +
 +                      If CONFIG_WQ_CPU_INTENSIVE_REPORT is set, the kernel
 +                      will report the work functions which violate this
 +                      threshold repeatedly. They are likely good
 +                      candidates for using WQ_UNBOUND workqueues instead.
 +
        workqueue.disable_numa
                        By default, all work items queued to unbound
                        workqueues are affine to the NUMA nodes they're
diff --combined MAINTAINERS
@@@ -909,6 -909,13 +909,6 @@@ L:        netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/ethernet/altera/
  
 -ALTERA TSE PCS
 -M:    Maxime Chevallier <maxime.chevallier@bootlin.com>
 -L:    netdev@vger.kernel.org
 -S:    Supported
 -F:    drivers/net/pcs/pcs-altera-tse.c
 -F:    include/linux/pcs-altera-tse.h
 -
  ALTERA UART/JTAG UART SERIAL DRIVERS
  M:    Tobias Klauser <tklauser@distanz.ch>
  L:    linux-serial@vger.kernel.org
@@@ -949,8 -956,7 +949,8 @@@ F: Documentation/networking/device_driv
  F:    drivers/net/ethernet/amazon/
  
  AMAZON RDMA EFA DRIVER
 -M:    Gal Pressman <galpress@amazon.com>
 +M:    Michael Margolin <mrgolin@amazon.com>
 +R:    Gal Pressman <gal.pressman@linux.dev>
  R:    Yossi Leybovich <sleybo@amazon.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
@@@ -1594,7 -1600,7 +1594,7 @@@ F:      drivers/media/i2c/ar0521.
  
  ARASAN NAND CONTROLLER DRIVER
  M:    Miquel Raynal <miquel.raynal@bootlin.com>
 -M:    Naga Sureshkumar Relli <nagasure@xilinx.com>
 +R:    Michal Simek <michal.simek@amd.com>
  L:    linux-mtd@lists.infradead.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/mtd/arasan,nand-controller.yaml
@@@ -1757,7 -1763,7 +1757,7 @@@ F:      include/linux/amba/mmci.
  
  ARM PRIMECELL PL35X NAND CONTROLLER DRIVER
  M:    Miquel Raynal <miquel.raynal@bootlin.com>
 -M:    Naga Sureshkumar Relli <nagasure@xilinx.com>
 +R:    Michal Simek <michal.simek@amd.com>
  L:    linux-mtd@lists.infradead.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/mtd/arm,pl353-nand-r2p1.yaml
@@@ -1765,7 -1771,7 +1765,7 @@@ F:      drivers/mtd/nand/raw/pl35x-nand-cont
  
  ARM PRIMECELL PL35X SMC DRIVER
  M:    Miquel Raynal <miquel.raynal@bootlin.com>
 -M:    Naga Sureshkumar Relli <nagasure@xilinx.com>
 +R:    Michal Simek <michal.simek@amd.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  F:    Documentation/devicetree/bindings/memory-controllers/arm,pl35x-smc.yaml
@@@ -1877,7 -1883,6 +1877,7 @@@ L:      linux-amlogic@lists.infradead.or
  S:    Maintained
  F:    Documentation/devicetree/bindings/clock/amlogic*
  F:    drivers/clk/meson/
 +F:    include/dt-bindings/clock/amlogic,a1*
  F:    include/dt-bindings/clock/gxbb*
  F:    include/dt-bindings/clock/meson*
  
@@@ -2354,7 -2359,6 +2354,7 @@@ F:      arch/arm/configs/mvebu_*_defconfi
  F:    arch/arm/mach-mvebu/
  F:    arch/arm64/boot/dts/marvell/armada*
  F:    arch/arm64/boot/dts/marvell/cn913*
 +F:    drivers/clk/mvebu/
  F:    drivers/cpufreq/armada-37xx-cpufreq.c
  F:    drivers/cpufreq/armada-8k-cpufreq.c
  F:    drivers/cpufreq/mvebu-cpufreq.c
@@@ -2425,15 -2429,6 +2425,15 @@@ X:    drivers/net/wireless/atmel
  N:    at91
  N:    atmel
  
 +ARM/MICROCHIP (ARM64) SoC support
 +M:    Conor Dooley <conor@kernel.org>
 +M:    Nicolas Ferre <nicolas.ferre@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +S:    Supported
 +T:    git https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux.git
 +F:    arch/arm64/boot/dts/microchip/
 +
  ARM/Microchip Sparx5 SoC support
  M:    Lars Povlsen <lars.povlsen@microchip.com>
  M:    Steen Hegelund <Steen.Hegelund@microchip.com>
@@@ -2441,7 -2436,8 +2441,7 @@@ M:      Daniel Machon <daniel.machon@microch
  M:    UNGLinuxDriver@microchip.com
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
 -T:    git git://github.com/microchip-ung/linux-upstream.git
 -F:    arch/arm64/boot/dts/microchip/
 +F:    arch/arm64/boot/dts/microchip/sparx*
  F:    drivers/net/ethernet/microchip/vcap/
  F:    drivers/pinctrl/pinctrl-microchip-sgpio.c
  N:    sparx5
@@@ -2581,9 -2577,9 +2581,9 @@@ F:      arch/arm/boot/dts/qcom-*.dts
  F:    arch/arm/configs/qcom_defconfig
  F:    arch/arm/mach-qcom/
  F:    arch/arm64/boot/dts/qcom/
 +F:    drivers/*/*/pm8???-*
  F:    drivers/*/*/qcom*
  F:    drivers/*/*/qcom/
 -F:    drivers/*/pm8???-*
  F:    drivers/*/qcom*
  F:    drivers/*/qcom/
  F:    drivers/bluetooth/btqcomsmd.c
@@@ -2705,7 -2701,7 +2705,7 @@@ Q:      https://patchwork.kernel.org/project
  B:    mailto:linux-samsung-soc@vger.kernel.org
  C:    irc://irc.libera.chat/linux-exynos
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git
 -F:    Documentation/arm/samsung/
 +F:    Documentation/arch/arm/samsung/
  F:    Documentation/devicetree/bindings/arm/samsung/
  F:    Documentation/devicetree/bindings/hwinfo/samsung,*
  F:    Documentation/devicetree/bindings/power/pd-samsung.yaml
@@@ -3057,7 -3053,7 +3057,7 @@@ M:      Will Deacon <will@kernel.org
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git
 -F:    Documentation/arm64/
 +F:    Documentation/arch/arm64/
  F:    arch/arm64/
  F:    tools/testing/selftests/arm64/
  X:    arch/arm64/boot/dts/
@@@ -3540,7 -3536,7 +3540,7 @@@ F:      Documentation/filesystems/befs.rs
  F:    fs/befs/
  
  BFQ I/O SCHEDULER
 -M:    Paolo Valente <paolo.valente@linaro.org>
 +M:    Paolo Valente <paolo.valente@unimore.it>
  M:    Jens Axboe <axboe@kernel.dk>
  L:    linux-block@vger.kernel.org
  S:    Maintained
@@@ -3608,7 -3604,6 +3608,7 @@@ S:      Supporte
  W:    http://www.bluez.org/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git
 +F:    Documentation/devicetree/bindings/net/bluetooth/
  F:    drivers/bluetooth/
  
  BLUETOOTH SUBSYSTEM
@@@ -4483,13 -4478,6 +4483,13 @@@ S:    Supporte
  F:    Documentation/filesystems/caching/cachefiles.rst
  F:    fs/cachefiles/
  
 +CACHESTAT: PAGE CACHE STATS FOR A FILE
 +M:    Nhat Pham <nphamcs@gmail.com>
 +M:    Johannes Weiner <hannes@cmpxchg.org>
 +L:    linux-mm@kvack.org
 +S:    Maintained
 +F:    tools/testing/selftests/cachestat/test_cachestat.c
 +
  CADENCE MIPI-CSI2 BRIDGES
  M:    Maxime Ripard <mripard@kernel.org>
  L:    linux-media@vger.kernel.org
@@@ -5142,7 -5130,7 +5142,7 @@@ X:      drivers/clk/clkdev.
  
  COMMON INTERNET FILE SYSTEM CLIENT (CIFS and SMB3)
  M:    Steve French <sfrench@samba.org>
 -R:    Paulo Alcantara <pc@cjr.nz> (DFS, global name space)
 +R:    Paulo Alcantara <pc@manguebit.com> (DFS, global name space)
  R:    Ronnie Sahlberg <lsahlber@redhat.com> (directory leases, sparse files)
  R:    Shyam Prasad N <sprasad@microsoft.com> (multichannel)
  R:    Tom Talpey <tom@talpey.com> (RDMA, smbdirect)
@@@ -5152,8 -5140,8 +5152,8 @@@ S:      Supporte
  W:    https://wiki.samba.org/index.php/LinuxCIFS
  T:    git git://git.samba.org/sfrench/cifs-2.6.git
  F:    Documentation/admin-guide/cifs/
 -F:    fs/cifs/
 -F:    fs/smbfs_common/
 +F:    fs/smb/client/
 +F:    fs/smb/common/
  F:    include/uapi/linux/cifs
  
  COMPACTPCI HOTPLUG CORE
@@@ -5347,18 -5335,6 +5347,18 @@@ F:    include/linux/sched/cpufreq.
  F:    kernel/sched/cpufreq*.c
  F:    tools/testing/selftests/cpufreq/
  
 +CPU HOTPLUG
 +M:    Thomas Gleixner <tglx@linutronix.de>
 +M:    Peter Zijlstra <peterz@infradead.org>
 +L:    linux-kernel@vger.kernel.org
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git smp/core
 +F:    kernel/cpu.c
 +F:    kernel/smpboot.*
 +F:    include/linux/cpu.h
 +F:    include/linux/cpuhotplug.h
 +F:    include/linux/smpboot.h
 +
  CPU IDLE TIME MANAGEMENT FRAMEWORK
  M:    "Rafael J. Wysocki" <rafael@kernel.org>
  M:    Daniel Lezcano <daniel.lezcano@linaro.org>
@@@ -5743,14 -5719,6 +5743,14 @@@ F:    include/linux/tfrc.
  F:    include/uapi/linux/dccp.h
  F:    net/dccp/
  
 +DEBUGOBJECTS:
 +M:    Thomas Gleixner <tglx@linutronix.de>
 +L:    linux-kernel@vger.kernel.org
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core/debugobjects
 +F:    lib/debugobjects.c
 +F:    include/linux/debugobjects.h
 +
  DECSTATION PLATFORM SUPPORT
  M:    "Maciej W. Rozycki" <macro@orcam.me.uk>
  L:    linux-mips@vger.kernel.org
@@@ -6242,12 -6210,6 +6242,12 @@@ X:    Documentation/power
  X:    Documentation/spi/
  X:    Documentation/userspace-api/media/
  
 +DOCUMENTATION PROCESS
 +M:    Jonathan Corbet <corbet@lwn.net>
 +S:    Maintained
 +F:    Documentation/process/
 +L:    workflows@vger.kernel.org
 +
  DOCUMENTATION REPORTING ISSUES
  M:    Thorsten Leemhuis <linux@leemhuis.info>
  L:    linux-doc@vger.kernel.org
@@@ -6604,7 -6566,6 +6604,7 @@@ M:      Rob Clark <robdclark@gmail.com
  M:    Abhinav Kumar <quic_abhinavk@quicinc.com>
  M:    Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
  R:    Sean Paul <sean@poorly.run>
 +R:    Marijn Suijten <marijn.suijten@somainline.org>
  L:    linux-arm-msm@vger.kernel.org
  L:    dri-devel@lists.freedesktop.org
  L:    freedreno@lists.freedesktop.org
@@@ -6725,12 -6686,6 +6725,12 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/display/panel/samsung,s6d27a1.yaml
  F:    drivers/gpu/drm/panel/panel-samsung-s6d27a1.c
  
 +DRM DRIVER FOR SAMSUNG S6D7AA0 PANELS
 +M:    Artur Weber <aweber.kernel@gmail.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/display/panel/samsung,s6d7aa0.yaml
 +F:    drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c
 +
  DRM DRIVER FOR SITRONIX ST7586 PANELS
  M:    David Lechner <david@lechnology.com>
  S:    Maintained
@@@ -6803,7 -6758,6 +6803,7 @@@ F:      drivers/gpu/drm/udl
  DRM DRIVER FOR VIRTUAL KERNEL MODESETTING (VKMS)
  M:    Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com>
  M:    Melissa Wen <melissa.srw@gmail.com>
 +M:    Maíra Canal <mairacanal@riseup.net>
  R:    Haneen Mohammed <hamohammed.sa@gmail.com>
  R:    Daniel Vetter <daniel@ffwll.ch>
  L:    dri-devel@lists.freedesktop.org
@@@ -6906,7 -6860,6 +6906,7 @@@ S:      Maintaine
  T:    git git://anongit.freedesktop.org/drm/drm-misc
  F:    Documentation/devicetree/bindings/display/bridge/
  F:    drivers/gpu/drm/bridge/
 +F:    drivers/gpu/drm/drm_bridge.c
  F:    include/drm/drm_bridge.h
  
  DRM DRIVERS FOR EXYNOS
@@@ -7015,7 -6968,8 +7015,7 @@@ F:      Documentation/devicetree/bindings/di
  F:    Documentation/devicetree/bindings/display/bridge/renesas,dw-hdmi.yaml
  F:    Documentation/devicetree/bindings/display/bridge/renesas,lvds.yaml
  F:    Documentation/devicetree/bindings/display/renesas,du.yaml
 -F:    drivers/gpu/drm/rcar-du/
 -F:    drivers/gpu/drm/shmobile/
 +F:    drivers/gpu/drm/renesas/
  F:    include/linux/platform_data/shmob_drm.h
  
  DRM DRIVERS FOR ROCKCHIP
@@@ -7511,14 -7465,6 +7511,14 @@@ L:    linux-edac@vger.kernel.or
  S:    Maintained
  F:    drivers/edac/mpc85xx_edac.[ch]
  
 +EDAC-NPCM
 +M:    Marvin Lin <kflin@nuvoton.com>
 +M:    Stanley Chu <yschu@nuvoton.com>
 +L:    linux-edac@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/memory-controllers/nuvoton,npcm-memory-controller.yaml
 +F:    drivers/edac/npcm_edac.c
 +
  EDAC-PASEMI
  M:    Egor Martovetsky <egor@pasemi.com>
  L:    linux-edac@vger.kernel.org
@@@ -8015,12 -7961,6 +8015,12 @@@ S:    Maintaine
  F:    drivers/hwmon/f75375s.c
  F:    include/linux/f75375s.h
  
 +FINTEK F81604 USB to 2xCANBUS DEVICE DRIVER
 +M:    Ji-Ze Hong (Peter Hong) <peter_hong@fintek.com.tw>
 +L:    linux-can@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/can/usb/f81604.c
 +
  FIREWIRE AUDIO DRIVERS and IEC 61883-1/6 PACKET STREAMING ENGINE
  M:    Clemens Ladisch <clemens@ladisch.de>
  M:    Takashi Sakamoto <o-takashi@sakamocchi.jp>
@@@ -8116,7 -8056,6 +8116,7 @@@ T:      git git://git.kernel.org/pub/scm/lin
  F:    include/linux/fortify-string.h
  F:    lib/fortify_kunit.c
  F:    lib/memcpy_kunit.c
 +F:    lib/strcat_kunit.c
  F:    lib/strscpy_kunit.c
  F:    lib/test_fortify/*
  F:    scripts/test_fortify.sh
@@@ -8214,7 -8153,6 +8214,7 @@@ F:      include/linux/spi/spi-fsl-dspi.
  
  FREESCALE ENETC ETHERNET DRIVERS
  M:    Claudiu Manoil <claudiu.manoil@nxp.com>
 +M:    Vladimir Oltean <vladimir.oltean@nxp.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/ethernet/freescale/enetc/
@@@ -8843,7 -8781,6 +8843,7 @@@ F:      include/linux/gpio/regmap.
  GPIO SUBSYSTEM
  M:    Linus Walleij <linus.walleij@linaro.org>
  M:    Bartosz Golaszewski <brgl@bgdev.pl>
 +R:    Andy Shevchenko <andy@kernel.org>
  L:    linux-gpio@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git
@@@ -9208,12 -9145,6 +9208,12 @@@ L:    linux-input@vger.kernel.or
  S:    Maintained
  F:    drivers/hid/hid-pxrc.c
  
 +HID NVIDIA SHIELD DRIVER
 +M:    Rahul Rameshbabu <rrameshbabu@nvidia.com>
 +L:    linux-input@vger.kernel.org
 +S:    Maintained
 +F:    drivers/hid/hid-nvidia-shield.c
 +
  HID PLAYSTATION DRIVER
  M:    Roderick Colenbrander <roderick.colenbrander@sony.com>
  L:    linux-input@vger.kernel.org
@@@ -9403,7 -9334,7 +9403,7 @@@ F:      include/linux/hisi_acc_qm.
  
  HISILICON ROCE DRIVER
  M:    Haoyue Xu <xuhaoyue1@hisilicon.com>
 -M:    Wenpeng Liang <liangwenpeng@huawei.com>
 +M:    Junxian Huang <huangjunxian6@hisilicon.com>
  L:    linux-rdma@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/infiniband/hisilicon-hns-roce.txt
@@@ -9489,13 -9420,6 +9489,13 @@@ L:    platform-driver-x86@vger.kernel.or
  S:    Orphan
  F:    drivers/platform/x86/hp/tc1100-wmi.c
  
 +HP WMI HARDWARE MONITOR DRIVER
 +M:    James Seo <james@equiv.tech>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/hwmon/hp-wmi-sensors.rst
 +F:    drivers/hwmon/hp-wmi-sensors.c
 +
  HPET: High Precision Event Timers driver
  M:    Clemens Ladisch <clemens@ladisch.de>
  S:    Maintained
@@@ -9753,9 -9677,8 +9753,9 @@@ F:      include/uapi/linux/i2c-*.
  F:    include/uapi/linux/i2c.h
  
  I2C SUBSYSTEM HOST DRIVERS
 +M:    Andi Shyti <andi.shyti@kernel.org>
  L:    linux-i2c@vger.kernel.org
 -S:    Odd Fixes
 +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
@@@ -10029,9 -9952,8 +10029,9 @@@ M:    Miquel Raynal <miquel.raynal@bootlin
  L:    linux-wpan@vger.kernel.org
  S:    Maintained
  W:    https://linux-wpan.org/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sschmidt/wpan.git
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sschmidt/wpan-next.git
 +Q:    https://patchwork.kernel.org/project/linux-wpan/list/
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/wpan/wpan.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/wpan/wpan-next.git
  F:    Documentation/networking/ieee802154.rst
  F:    drivers/net/ieee802154/
  F:    include/linux/ieee802154.h
@@@ -10183,7 -10105,7 +10183,7 @@@ S:   Maintaine
  F:    Documentation/process/kernel-docs.rst
  
  INDUSTRY PACK SUBSYSTEM (IPACK)
 -M:    Samuel Iglesias Gonsalvez <siglesias@igalia.com>
 +M:    Vaibhav Gupta <vaibhavgupta40@gmail.com>
  M:    Jens Taprogge <jens.taprogge@taprogge.org>
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  L:    industrypack-devel@lists.sourceforge.net
@@@ -10403,8 -10325,9 +10403,8 @@@ M:   Jesse Brandeburg <jesse.brandeburg@i
  M:    Tony Nguyen <anthony.l.nguyen@intel.com>
  L:    intel-wired-lan@lists.osuosl.org (moderated for non-subscribers)
  S:    Supported
 -W:    http://www.intel.com/support/feedback.htm
 -W:    http://e1000.sourceforge.net/
 -Q:    http://patchwork.ozlabs.org/project/intel-wired-lan/list/
 +W:    https://www.intel.com/content/www/us/en/support.html
 +Q:    https://patchwork.ozlabs.org/project/intel-wired-lan/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue.git
  F:    Documentation/networking/device_drivers/ethernet/intel/
@@@ -11331,10 -11254,6 +11331,10 @@@ W: http://kernelnewbies.org/KernelJanit
  KERNEL NFSD, SUNRPC, AND LOCKD SERVERS
  M:    Chuck Lever <chuck.lever@oracle.com>
  M:    Jeff Layton <jlayton@kernel.org>
 +R:    Neil Brown <neilb@suse.de>
 +R:    Olga Kornievskaia <kolga@netapp.com>
 +R:    Dai Ngo <Dai.Ngo@oracle.com>
 +R:    Tom Talpey <tom@talpey.com>
  L:    linux-nfs@vger.kernel.org
  S:    Supported
  W:    http://nfs.sourceforge.net/
@@@ -11381,9 -11300,9 +11381,9 @@@ R:   Tom Talpey <tom@talpey.com
  L:    linux-cifs@vger.kernel.org
  S:    Maintained
  T:    git git://git.samba.org/ksmbd.git
 -F:    Documentation/filesystems/cifs/ksmbd.rst
 -F:    fs/ksmbd/
 -F:    fs/smbfs_common/
 +F:    Documentation/filesystems/smb/ksmbd.rst
 +F:    fs/smb/common/
 +F:    fs/smb/server/
  
  KERNEL UNIT TESTING FRAMEWORK (KUnit)
  M:    Brendan Higgins <brendanhiggins@google.com>
@@@ -11392,8 -11311,6 +11392,8 @@@ L:   linux-kselftest@vger.kernel.or
  L:    kunit-dev@googlegroups.com
  S:    Maintained
  W:    https://google.github.io/kunit-docs/third_party/kernel/docs/
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git kunit
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git kunit-fixes
  F:    Documentation/dev-tools/kunit/
  F:    include/kunit/
  F:    lib/kunit/
@@@ -11442,7 -11359,6 +11442,6 @@@ F:   tools/testing/selftests/kvm/aarch64
  
  KERNEL VIRTUAL MACHINE FOR MIPS (KVM/mips)
  M:    Huacai Chen <chenhuacai@kernel.org>
- M:    Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
  L:    linux-mips@vger.kernel.org
  L:    kvm@vger.kernel.org
  S:    Maintained
@@@ -12608,11 -12524,12 +12607,11 @@@ MARVELL NAND CONTROLLER DRIVE
  M:    Miquel Raynal <miquel.raynal@bootlin.com>
  L:    linux-mtd@lists.infradead.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/mtd/marvell-nand.txt
  F:    drivers/mtd/nand/raw/marvell_nand.c
  
  MARVELL OCTEON ENDPOINT DRIVER
  M:    Veerasenareddy Burru <vburru@marvell.com>
 -M:    Abhijit Ayarekar <aayarekar@marvell.com>
 +M:    Sathesh Edara <sedara@marvell.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/net/ethernet/marvell/octeon_ep
@@@ -12694,15 -12611,6 +12693,15 @@@ F: Documentation/userspace-api/media/dr
  F:    drivers/media/i2c/max2175*
  F:    include/uapi/linux/max2175.h
  
 +MAX31827 TEMPERATURE SWITCH DRIVER
 +M:    Daniel Matyas <daniel.matyas@analog.com>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Supported
 +W:    http://ez.analog.com/community/linux-device-drivers
 +F:    Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
 +F:    Documentation/hwmon/max31827.rst
 +F:    drivers/hwmon/max31827.c
 +
  MAX6650 HARDWARE MONITOR AND FAN CONTROLLER DRIVER
  L:    linux-hwmon@vger.kernel.org
  S:    Orphan
@@@ -12920,13 -12828,6 +12919,13 @@@ F: Documentation/devicetree/bindings/ne
  F:    drivers/net/ieee802154/mcr20a.c
  F:    drivers/net/ieee802154/mcr20a.h
  
 +MDIO REGMAP DRIVER
 +M:    Maxime Chevallier <maxime.chevallier@bootlin.com>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/mdio/mdio-regmap.c
 +F:    include/linux/mdio/mdio-regmap.h
 +
  MEASUREMENT COMPUTING CIO-DAC IIO DRIVER
  M:    William Breathitt Gray <william.gray@linaro.org>
  L:    linux-iio@vger.kernel.org
@@@ -13226,15 -13127,6 +13225,15 @@@ S: Maintaine
  F:    drivers/net/pcs/pcs-mtk-lynxi.c
  F:    include/linux/pcs/pcs-mtk-lynxi.h
  
 +MEDIATEK ETHERNET PHY DRIVERS
 +M:    Daniel Golle <daniel@makrotopia.org>
 +M:    Qingfang Deng <dqfext@gmail.com>
 +M:    SkyLake Huang <SkyLake.Huang@mediatek.com>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/phy/mediatek-ge-soc.c
 +F:    drivers/net/phy/mediatek-ge.c
 +
  MEDIATEK I2C CONTROLLER DRIVER
  M:    Qii Wang <qii.wang@mediatek.com>
  L:    linux-i2c@vger.kernel.org
@@@ -13296,7 -13188,6 +13295,7 @@@ R:   Shayne Chen <shayne.chen@mediatek.co
  R:    Sean Wang <sean.wang@mediatek.com>
  L:    linux-wireless@vger.kernel.org
  S:    Maintained
 +T:    git https://github.com/nbd168/wireless
  F:    Documentation/devicetree/bindings/net/wireless/mediatek,mt76.yaml
  F:    drivers/net/wireless/mediatek/mt76/
  
@@@ -13331,6 -13222,12 +13330,12 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml
  F:    drivers/i2c/busses/i2c-mt7621.c
  
+ MEDIATEK MTMIPS CLOCK DRIVER
+ M:    Sergio Paracuellos <sergio.paracuellos@gmail.com>
+ S:    Maintained
+ F:    Documentation/devicetree/bindings/clock/mediatek,mtmips-sysc.yaml
+ F:    drivers/clk/ralink/clk-mtmips.c
  MEDIATEK NAND CONTROLLER DRIVER
  L:    linux-mtd@lists.infradead.org
  S:    Orphan
@@@ -13357,11 -13254,10 +13362,11 @@@ F:        drivers/memory/mtk-smi.
  F:    include/soc/mediatek/smi.h
  
  MEDIATEK SWITCH DRIVER
 -M:    Sean Wang <sean.wang@mediatek.com>
 +M:    Arınç ÜNAL <arinc.unal@arinc9.com>
 +M:    Daniel Golle <daniel@makrotopia.org>
  M:    Landen Chao <Landen.Chao@mediatek.com>
  M:    DENG Qingfang <dqfext@gmail.com>
 -M:    Daniel Golle <daniel@makrotopia.org>
 +M:    Sean Wang <sean.wang@mediatek.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/dsa/mt7530-mdio.c
@@@ -13808,7 -13704,6 +13813,7 @@@ MICROCHIP EIC DRIVE
  M:    Claudiu Beznea <claudiu.beznea@microchip.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
 +F:    Documentation/devicetree/bindings/interrupt-controller/microchip,sama7g5-eic.yaml
  F:    drivers/irqchip/irq-mchp-eic.c
  
  MICROCHIP I2C DRIVER
@@@ -13937,7 -13832,7 +13942,7 @@@ F:   drivers/tty/serial/8250/8250_pci1xxx
  
  MICROCHIP POLARFIRE FPGA DRIVERS
  M:    Conor Dooley <conor.dooley@microchip.com>
 -R:    Ivan Bornyakov <i.bornyakov@metrotek.ru>
 +R:    Vladimir Georgiev <v.georgiev@metrotek.ru>
  L:    linux-fpga@vger.kernel.org
  S:    Supported
  F:    Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
@@@ -14783,7 -14678,7 +14788,7 @@@ NETWORKING [LABELED] (NetLabel, Labele
  M:    Paul Moore <paul@paul-moore.com>
  L:    netdev@vger.kernel.org
  L:    linux-security-module@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  W:    https://github.com/netlabel
  F:    Documentation/netlabel/
  F:    include/net/calipso.h
@@@ -14819,7 -14714,6 +14824,7 @@@ NETWORKING [TCP
  M:    Eric Dumazet <edumazet@google.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
 +F:    include/linux/net_mm.h
  F:    include/linux/tcp.h
  F:    include/net/tcp.h
  F:    include/trace/events/tcp.h
@@@ -15037,7 -14931,6 +15042,7 @@@ F:   drivers/ntb/hw/intel
  
  NTFS FILESYSTEM
  M:    Anton Altaparmakov <anton@tuxera.com>
 +R:    Namjae Jeon <linkinjeon@kernel.org>
  L:    linux-ntfs-dev@lists.sourceforge.net
  S:    Supported
  W:    http://www.tuxera.com/
@@@ -15388,7 -15281,7 +15393,7 @@@ OMAP DISPLAY SUBSYSTEM and FRAMEBUFFER 
  L:    linux-omap@vger.kernel.org
  L:    linux-fbdev@vger.kernel.org
  S:    Orphan
 -F:    Documentation/arm/omap/dss.rst
 +F:    Documentation/arch/arm/omap/dss.rst
  F:    drivers/video/fbdev/omap2/
  
  OMAP FRAMEBUFFER SUPPORT
@@@ -15517,7 -15410,6 +15522,7 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    arch/arm/configs/omap2plus_defconfig
  F:    arch/arm/mach-omap2/
  F:    drivers/bus/ti-sysc.c
 +F:    drivers/gpio/gpio-tps65219.c
  F:    drivers/i2c/busses/i2c-omap.c
  F:    drivers/irqchip/irq-omap-intc.c
  F:    drivers/mfd/*omap*.c
@@@ -15938,7 -15830,6 +15943,7 @@@ F:   include/media/i2c/ov2659.
  
  OVERLAY FILESYSTEM
  M:    Miklos Szeredi <miklos@szeredi.hu>
 +M:    Amir Goldstein <amir73il@gmail.com>
  L:    linux-unionfs@vger.kernel.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git
@@@ -16041,7 -15932,7 +16046,7 @@@ F:   include/uapi/linux/ppdev.
  
  PARAVIRT_OPS INTERFACE
  M:    Juergen Gross <jgross@suse.com>
 -M:    Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu>
 +R:    Ajay Kaher <akaher@vmware.com>
  R:    Alexey Makhalov <amakhalov@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    virtualization@lists.linux-foundation.org
@@@ -16477,7 -16368,7 +16482,7 @@@ F:   Documentation/devicetree/bindings/pc
  F:    drivers/pci/controller/dwc/pcie-keembay.c
  
  PCIE DRIVER FOR INTEL LGM GW SOC
 -M:    Rahul Tanwar <rtanwar@maxlinear.com>
 +M:    Chuanhua Lei <lchuanhua@maxlinear.com>
  L:    linux-pci@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/pci/intel-gw-pcie.yaml
@@@ -17277,7 -17168,6 +17282,7 @@@ F:   sound/soc/codecs/wcd9335.
  F:    sound/soc/codecs/wcd934x.c
  F:    sound/soc/codecs/wsa881x.c
  F:    sound/soc/codecs/wsa883x.c
 +F:    sound/soc/codecs/wsa884x.c
  F:    sound/soc/qcom/
  
  QCOM EMBEDDED USB DEBUGGER (EUD)
@@@ -17452,8 -17342,6 +17457,8 @@@ QUALCOMM ATHEROS ATH11K WIRELESS DRIVE
  M:    Kalle Valo <kvalo@kernel.org>
  L:    ath11k@lists.infradead.org
  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/
@@@ -17463,7 -17351,6 +17468,7 @@@ M:   Toke Høiland-Jørgensen <toke@toke.
  L:    linux-wireless@vger.kernel.org
  S:    Maintained
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/ath9k
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
  F:    Documentation/devicetree/bindings/net/wireless/qca,ath9k.yaml
  F:    drivers/net/wireless/ath/ath9k/
  
@@@ -17496,8 -17383,6 +17501,8 @@@ F:   include/dt-bindings/clock/qcom,
  
  QUALCOMM CLOUD AI (QAIC) DRIVER
  M:    Jeffrey Hugo <quic_jhugo@quicinc.com>
 +R:    Carl Vanderlip <quic_carlv@quicinc.com>
 +R:    Pranjal Ramajor Asha Kanojiya <quic_pkanojiy@quicinc.com>
  L:    linux-arm-msm@vger.kernel.org
  L:    dri-devel@lists.freedesktop.org
  S:    Supported
@@@ -17895,7 -17780,7 +17900,7 @@@ M:   Boqun Feng <boqun.feng@gmail.com
  R:    Steven Rostedt <rostedt@goodmis.org>
  R:    Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  R:    Lai Jiangshan <jiangshanlai@gmail.com>
 -R:    Zqiang <qiang1.zhang@intel.com>
 +R:    Zqiang <qiang.zhang1211@gmail.com>
  L:    rcu@vger.kernel.org
  S:    Supported
  W:    http://www.rdrop.com/users/paulmck/RCU/
@@@ -17926,7 -17811,7 +17931,7 @@@ F:   tools/testing/selftests/rtc
  Real-time Linux Analysis (RTLA) tools
  M:    Daniel Bristot de Oliveira <bristot@kernel.org>
  M:    Steven Rostedt <rostedt@goodmis.org>
 -L:    linux-trace-devel@vger.kernel.org
 +L:    linux-trace-kernel@vger.kernel.org
  S:    Maintained
  F:    Documentation/tools/rtla/
  F:    tools/tracing/rtla/
@@@ -18147,14 -18032,6 +18152,14 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/usb/renesas,rzn1-usbf.yaml
  F:    drivers/usb/gadget/udc/renesas_usbf.c
  
 +RENESAS RZ/V2M I2C DRIVER
 +M:    Fabrizio Castro <fabrizio.castro.jz@renesas.com>
 +L:    linux-i2c@vger.kernel.org
 +L:    linux-renesas-soc@vger.kernel.org
 +S:    Supported
 +F:    Documentation/devicetree/bindings/i2c/renesas,rzv2m.yaml
 +F:    drivers/i2c/busses/i2c-rzv2m.c
 +
  RENESAS USB PHY DRIVER
  M:    Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
  L:    linux-renesas-soc@vger.kernel.org
@@@ -18496,7 -18373,7 +18501,7 @@@ F:   drivers/infiniband/ulp/rtrs
  RUNTIME VERIFICATION (RV)
  M:    Daniel Bristot de Oliveira <bristot@kernel.org>
  M:    Steven Rostedt <rostedt@goodmis.org>
 -L:    linux-trace-devel@vger.kernel.org
 +L:    linux-trace-kernel@vger.kernel.org
  S:    Maintained
  F:    Documentation/trace/rv/
  F:    include/linux/rv.h
@@@ -18831,6 -18708,7 +18836,6 @@@ F:   include/dt-bindings/clock/samsung,*.
  F:    include/linux/clk/samsung.h
  
  SAMSUNG SPI DRIVERS
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  M:    Andi Shyti <andi.shyti@kernel.org>
  L:    linux-spi@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
@@@ -19239,9 -19117,6 +19244,9 @@@ SHARED MEMORY COMMUNICATIONS (SMC) SOCK
  M:    Karsten Graul <kgraul@linux.ibm.com>
  M:    Wenjia Zhang <wenjia@linux.ibm.com>
  M:    Jan Karcher <jaka@linux.ibm.com>
 +R:    D. Wythe <alibuda@linux.alibaba.com>
 +R:    Tony Lu <tonylu@linux.alibaba.com>
 +R:    Wen Gu <guwen@linux.alibaba.com>
  L:    linux-s390@vger.kernel.org
  S:    Supported
  F:    net/smc/
@@@ -20257,12 -20132,6 +20262,12 @@@ F: Documentation/devicetree/bindings/po
  F:    drivers/soc/starfive/jh71xx_pmu.c
  F:    include/dt-bindings/power/starfive,jh7110-pmu.h
  
 +STARFIVE JH7110 TDM DRIVER
 +M:    Walker Chen <walker.chen@starfivetech.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/starfive,jh7110-tdm.yaml
 +F:    sound/soc/starfive/jh7110_tdm.c
 +
  STARFIVE SOC DRIVERS
  M:    Conor Dooley <conor@kernel.org>
  S:    Maintained
@@@ -22302,6 -22171,7 +22307,6 @@@ L:   linux-fbdev@vger.kernel.or
  S:    Maintained
  F:    drivers/video/fbdev/via/
  F:    include/linux/via-core.h
 -F:    include/linux/via-gpio.h
  F:    include/linux/via_i2c.h
  
  VIA VELOCITY NETWORK DRIVER
@@@ -22554,14 -22424,6 +22559,14 @@@ L: linux-fsdevel@vger.kernel.or
  S:    Maintained
  F:    fs/vboxsf/*
  
 +VIRTUAL PCM TEST DRIVER
 +M:    Ivan Orlov <ivan.orlov0322@gmail.com>
 +L:    alsa-devel@alsa-project.org
 +S:    Maintained
 +F:    Documentation/sound/cards/pcmtest.rst
 +F:    sound/drivers/pcmtest.c
 +F:    tools/testing/selftests/alsa/test-pcmtest-driver.c
 +
  VIRTUAL SERIO DEVICE DRIVER
  M:    Stephen Chandler Paul <thatslyude@gmail.com>
  S:    Maintained
@@@ -22632,7 -22494,7 +22637,7 @@@ S:   Supporte
  F:    drivers/misc/vmw_balloon.c
  
  VMWARE HYPERVISOR INTERFACE
 -M:    Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu>
 +M:    Ajay Kaher <akaher@vmware.com>
  M:    Alexey Makhalov <amakhalov@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    virtualization@lists.linux-foundation.org
@@@ -22659,8 -22521,8 +22664,8 @@@ F:   drivers/scsi/vmw_pvscsi.
  F:    drivers/scsi/vmw_pvscsi.h
  
  VMWARE VIRTUAL PTP CLOCK DRIVER
 -M:    Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu>
  M:    Deep Shah <sdeep@vmware.com>
 +R:    Ajay Kaher <akaher@vmware.com>
  R:    Alexey Makhalov <amakhalov@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    netdev@vger.kernel.org
@@@ -23264,7 -23126,6 +23269,7 @@@ F:   drivers/iio/adc/xilinx-ams.
  XILINX AXI ETHERNET DRIVER
  M:    Radhey Shyam Pandey <radhey.shyam.pandey@xilinx.com>
  S:    Maintained
 +F:    Documentation/devicetree/bindings/net/xlnx,axi-ethernet.yaml
  F:    drivers/net/ethernet/xilinx/xilinx_axienet*
  
  XILINX CAN DRIVER
diff --combined arch/mips/Kconfig
@@@ -4,7 -4,6 +4,7 @@@ config MIP
        default y
        select ARCH_32BIT_OFF_T if !64BIT
        select ARCH_BINFMT_ELF_STATE if MIPS_FP_SUPPORT
 +      select ARCH_HAS_CPU_FINALIZE_INIT
        select ARCH_HAS_CURRENT_STACK_POINTER if !CC_IS_CLANG || CLANG_VERSION >= 140000
        select ARCH_HAS_DEBUG_VIRTUAL if !64BIT
        select ARCH_HAS_FORTIFY_SOURCE
@@@ -45,6 -44,7 +45,7 @@@
        select GENERIC_LIB_UCMPDI2
        select GENERIC_SCHED_CLOCK if !CAVIUM_OCTEON_SOC
        select GENERIC_SMP_IDLE_THREAD
+       select GENERIC_IDLE_POLL_SETUP
        select GENERIC_TIME_VSYSCALL
        select GUP_GET_PXX_LOW_HIGH if CPU_MIPS32 && PHYS_ADDR_T_64BIT
        select HAS_IOPORT if !NO_IOPORT_MAP || ISA
@@@ -80,7 -80,6 +81,6 @@@
        select HAVE_LD_DEAD_CODE_DATA_ELIMINATION
        select HAVE_MOD_ARCH_SPECIFIC
        select HAVE_NMI
-       select HAVE_PATA_PLATFORM
        select HAVE_PERF_EVENTS
        select HAVE_PERF_REGS
        select HAVE_PERF_USER_STACK_DUMP
@@@ -92,7 -91,6 +92,7 @@@
        select HAVE_VIRT_CPU_ACCOUNTING_GEN if 64BIT || !SMP
        select IRQ_FORCED_THREADING
        select ISA if EISA
 +      select LOCK_MM_AND_FIND_VMA
        select MODULES_USE_ELF_REL if MODULES
        select MODULES_USE_ELF_RELA if MODULES && 64BIT
        select PERF_USE_VMALLOC
@@@ -155,9 -153,11 +155,11 @@@ config MIPS_GENERIC_KERNE
        select SWAP_IO_SPACE
        select SYS_HAS_CPU_MIPS32_R1
        select SYS_HAS_CPU_MIPS32_R2
+       select SYS_HAS_CPU_MIPS32_R5
        select SYS_HAS_CPU_MIPS32_R6
        select SYS_HAS_CPU_MIPS64_R1
        select SYS_HAS_CPU_MIPS64_R2
+       select SYS_HAS_CPU_MIPS64_R5
        select SYS_HAS_CPU_MIPS64_R6
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_64BIT_KERNEL
@@@ -2288,7 -2288,6 +2290,7 @@@ config MIPS_CP
        select MIPS_CM
        select MIPS_CPS_PM if HOTPLUG_CPU
        select SMP
 +      select HOTPLUG_CORE_SYNC_DEAD if HOTPLUG_CPU
        select SYNC_R4K if (CEVT_R4K || CSRC_R4K)
        select SYS_SUPPORTS_HOTPLUG_CPU
        select SYS_SUPPORTS_SCHED_SMT if CPU_MIPSR6
@@@ -47,7 -47,7 +47,6 @@@
  
  #include <regs-clk.h>
  #include <regs-mux.h>
 -#include <regs-pwm.h>
  #include <regs-rtc.h>
- #include <regs-wdt.h>
  
  #endif /* __ASM_MACH_LOONGSON32_LOONGSON1_H */
  #include <asm/time.h>
  #include <asm/uasm.h>
  
- static bool threads_disabled;
  static DECLARE_BITMAP(core_power, NR_CPUS);
  
  struct core_boot_config *mips_cps_core_bootcfg;
  
- static int __init setup_nothreads(char *s)
+ static unsigned __init core_vpe_count(unsigned int cluster, unsigned core)
  {
-       threads_disabled = true;
-       return 0;
- }
- early_param("nothreads", setup_nothreads);
- static unsigned core_vpe_count(unsigned int cluster, unsigned core)
- {
-       if (threads_disabled)
-               return 1;
-       return mips_cps_numvps(cluster, core);
+       return min(smp_max_threads, mips_cps_numvps(cluster, core));
  }
  
  static void __init cps_smp_setup(void)
@@@ -503,7 -492,8 +492,7 @@@ void play_dead(void
                }
        }
  
 -      /* This CPU has chosen its way out */
 -      (void)cpu_report_death();
 +      cpuhp_ap_report_dead();
  
        cps_shutdown_this_cpu(cpu_death);
  
@@@ -526,9 -516,7 +515,9 @@@ static void wait_for_sibling_halt(void 
        } while (!(halted & TCHALT_H));
  }
  
 -static void cps_cpu_die(unsigned int cpu)
 +static void cps_cpu_die(unsigned int cpu) { }
 +
 +static void cps_cleanup_dead_cpu(unsigned cpu)
  {
        unsigned core = cpu_core(&cpu_data[cpu]);
        unsigned int vpe_id = cpu_vpe_id(&cpu_data[cpu]);
        unsigned stat;
        int err;
  
 -      /* Wait for the cpu to choose its way out */
 -      if (!cpu_wait_death(cpu, 5)) {
 -              pr_err("CPU%u: didn't offline\n", cpu);
 -              return;
 -      }
 -
        /*
         * Now wait for the CPU to actually offline. Without doing this that
         * offlining may race with one or more of:
@@@ -619,7 -613,6 +608,7 @@@ static const struct plat_smp_ops cps_sm
  #ifdef CONFIG_HOTPLUG_CPU
        .cpu_disable            = cps_cpu_disable,
        .cpu_die                = cps_cpu_die,
 +      .cleanup_dead_cpu       = cps_cleanup_dead_cpu,
  #endif
  #ifdef CONFIG_KEXEC
        .kexec_nonboot_cpu      = cps_kexec_nonboot_cpu,
diff --combined arch/mips/kernel/smp.c
@@@ -73,6 -73,24 +73,24 @@@ static cpumask_t cpu_core_setup_map
  
  cpumask_t cpu_coherent_mask;
  
+ unsigned int smp_max_threads __initdata = UINT_MAX;
+ static int __init early_nosmt(char *s)
+ {
+       smp_max_threads = 1;
+       return 0;
+ }
+ early_param("nosmt", early_nosmt);
+ static int __init early_smt(char *s)
+ {
+       get_option(&s, &smp_max_threads);
+       /* Ensure at least one thread is available */
+       smp_max_threads = clamp_val(smp_max_threads, 1U, UINT_MAX);
+       return 0;
+ }
+ early_param("smt", early_smt);
  #ifdef CONFIG_GENERIC_IRQ_IPI
  static struct irq_desc *call_desc;
  static struct irq_desc *sched_desc;
@@@ -690,14 -708,6 +708,14 @@@ void flush_tlb_one(unsigned long vaddr
  EXPORT_SYMBOL(flush_tlb_page);
  EXPORT_SYMBOL(flush_tlb_one);
  
 +#ifdef CONFIG_HOTPLUG_CORE_SYNC_DEAD
 +void arch_cpuhp_cleanup_dead_cpu(unsigned int cpu)
 +{
 +      if (mp_ops->cleanup_dead_cpu)
 +              mp_ops->cleanup_dead_cpu(cpu);
 +}
 +#endif
 +
  #ifdef CONFIG_GENERIC_CLOCKEVENTS_BROADCAST
  
  static void tick_broadcast_callee(void *info)