Commit graph

24705 commits

Author SHA1 Message Date
Linus Torvalds
672d2dae19 ARM: SoC defconfig updates for 6.4
Most of the changes just enable additional device drivers that
 were added or that are often used on major platforms.
 
 The virtconfig added last time now disables additional drivers
 to shrink kernels for virtual machines.
 
 The obsolete oxnas_v6_defconfig file is removed in turn.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmRG4iQACgkQYKtH/8kJ
 Uicdbw//aSZJUUnk/gZw5Yk5voF/QqvaR6uCIKBi9CXmrTLVJA1YNNKtzH/IpfAi
 3PhbSByCXZBbdBo3Q5VGCSJCrdYsaBzImDXJNuvFkWeDg80cRMcfBvb0jdRzA/Yb
 mAmrmJjcX3soI6w0HGkfh9vPKV8UnIEqgUehkHjhGgmNv01jPHewbJxP1b6oP4wi
 gizpFLg7LkESkzc/3D1dipmsIrz1U7KDrH4LQgED7f0kdq34EMtUs48Fj8H3ZMh5
 pVweXaqqXR00Xv48HWxN5XkdYhWdvADmLRXtD6K53APW4zyy4Gf8lGttwuH7Qco1
 iULmgD/1B4y88TCZtBDzRHV+3aoBmmfkNUL4uYOZQyERMdsOhOpQcw6rtocZNoc8
 Tf/tlIWLe9qj/ErDXkmluz7lsVot6SpfPJ+CTr441lvLZrn/nQrfkZ9rSwg0gfPS
 QrH1E8fTFhoajSaqk0MtOfte9pGiMnFlgqcLXsRn3qegQutOZ8i/1aEjXNVZK2yb
 bh4C6l76a17yiaxxKDmIxwECPjHKyDX/nmv9gi4db8shcCxpQ3PcnJ34VFASvLmb
 QS601iLHILuF9vkKDcQvgNi/Rv6v5VIJsDHgsr8XWKbzaMAeQWWmKxF2Vm3RzyNw
 EZoDHgV034/vBAdJHamzNzSo9UoyOijCaajeDRPuDx+/3NnkdLM=
 =adFv
 -----END PGP SIGNATURE-----

Merge tag 'soc-defconfig-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC defconfig updates from Arnd Bergmann:
 "Most of the changes just enable additional device drivers that were
  added or that are often used on major platforms.

  The virtconfig added last time now disables additional drivers to
  shrink kernels for virtual machines.

  The obsolete oxnas_v6_defconfig file is removed in turn"

* tag 'soc-defconfig-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (33 commits)
  ARM: config: Update Vexpress defconfig
  arm64: defconfig: enable building the nvmem-reboot-mode module
  arm64: defconfig: Enable TI ADC driver
  arm64: defconfig: Enable TI TSCADC driver
  arm64: defconfig: Enable security accelerator driver for TI K3 SoCs
  arm64: defconfig: Enable crypto test module
  ARM: multi_v7_defconfig: Add OPTEE support
  ARM: configs: Update U8500 defconfig
  ARM: imx_v4_v5_defconfig: Build CONFIG_IMX_SDMA as module
  arm64: defconfig: Enable IPQ9574 SoC base configs
  ARM: imx_v6_v7_defconfig: Enable Tarragon peripheral drivers
  arm64: defconfig: Enable ARM CoreSight PMU driver
  arm64: defconfig: remove duplicate TYPEC_UCSI & QCOM_PMIC_GLINK
  ARM: configs: remove oxnas_v6_defconfig
  arm64: defconfig: Enable audio drivers for AM62-SK
  arm64: defconfig: Enable drivers for BeaglePlay
  ARM: imx_v6_v7_defconfig: Select CONFIG_DRM_I2C_NXP_TDA998X
  arm64: defconfig: Enable Virtio RNG driver as built in
  arm64: defconfig: Enable CAN PHY transceiver driver
  arm64: defconfig: add PMIC GLINK modules
  ...
2023-04-25 12:09:54 -07:00
Linus Torvalds
e7989789c6 Timers and timekeeping updates:
- Improve the VDSO build time checks to cover all dynamic relocations
 
     VDSO does not allow dynamic relcations, but the build time check is
     incomplete and fragile.
 
     It's based on architectures specifying the relocation types to search
     for and does not handle R_*_NONE relocation entries correctly.
     R_*_NONE relocations are injected by some GNU ld variants if they fail
     to determine the exact .rel[a]/dyn_size to cover trailing zeros.
     R_*_NONE relocations must be ignored by dynamic loaders, so they
     should be ignored in the build time check too.
 
     Remove the architecture specific relocation types to check for and
     validate strictly that no other relocations than R_*_NONE end up
     in the VSDO .so file.
 
   - Prefer signal delivery to the current thread for
     CLOCK_PROCESS_CPUTIME_ID based posix-timers
 
     Such timers prefer to deliver the signal to the main thread of a
     process even if the context in which the timer expires is the current
     task. This has the downside that it might wake up an idle thread.
 
     As there is no requirement or guarantee that the signal has to be
     delivered to the main thread, avoid this by preferring the current
     task if it is part of the thread group which shares sighand.
 
     This not only avoids waking idle threads, it also distributes the
     signal delivery in case of multiple timers firing in the context
     of different threads close to each other better.
 
   - Align the tick period properly (again)
 
     For a long time the tick was starting at CLOCK_MONOTONIC zero, which
     allowed users space applications to either align with the tick or to
     place a periodic computation so that it does not interfere with the
     tick. The alignement of the tick period was more by chance than by
     intention as the tick is set up before a high resolution clocksource is
     installed, i.e. timekeeping is still tick based and the tick period
     advances from there.
 
     The early enablement of sched_clock() broke this alignement as the time
     accumulated by sched_clock() is taken into account when timekeeping is
     initialized. So the base value now(CLOCK_MONOTONIC) is not longer a
     multiple of tick periods, which breaks applications which relied on
     that behaviour.
 
     Cure this by aligning the tick starting point to the next multiple of
     tick periods, i.e 1000ms/CONFIG_HZ.
 
  - A set of NOHZ fixes and enhancements
 
    - Cure the concurrent writer race for idle and IO sleeptime statistics
 
      The statitic values which are exposed via /proc/stat are updated from
      the CPU local idle exit and remotely by cpufreq, but that happens
      without any form of serialization. As a consequence sleeptimes can be
      accounted twice or worse.
 
      Prevent this by restricting the accumulation writeback to the CPU
      local idle exit and let the remote access compute the accumulated
      value.
 
    - Protect idle/iowait sleep time with a sequence count
 
      Reading idle/iowait sleep time, e.g. from /proc/stat, can race with
      idle exit updates. As a consequence the readout may result in random
      and potentially going backwards values.
 
      Protect this by a sequence count, which fixes the idle time
      statistics issue, but cannot fix the iowait time problem because
      iowait time accounting races with remote wake ups decrementing the
      remote runqueues nr_iowait counter. The latter is impossible to fix,
      so the only way to deal with that is to document it properly and to
      remove the assertion in the selftest which triggers occasionally due
      to that.
 
    - Restructure struct tick_sched for better cache layout
 
    - Some small cleanups and a better cache layout for struct tick_sched
 
  - Implement the missing timer_wait_running() callback for POSIX CPU timers
 
    For unknown reason the introduction of the timer_wait_running() callback
    missed to fixup posix CPU timers, which went unnoticed for almost four
    years.
 
    While initially only targeted to prevent livelocks between a timer
    deletion and the timer expiry function on PREEMPT_RT enabled kernels, it
    turned out that fixing this for mainline is not as trivial as just
    implementing a stub similar to the hrtimer/timer callbacks.
 
    The reason is that for CONFIG_POSIX_CPU_TIMERS_TASK_WORK enabled systems
    there is a livelock issue independent of RT.
 
    CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y moves the expiry of POSIX CPU timers
    out from hard interrupt context to task work, which is handled before
    returning to user space or to a VM. The expiry mechanism moves the
    expired timers to a stack local list head with sighand lock held. Once
    sighand is dropped the task can be preempted and a task which wants to
    delete a timer will spin-wait until the expiry task is scheduled back
    in. In the worst case this will end up in a livelock when the preempting
    task and the expiry task are pinned on the same CPU.
 
    The timer wheel has a timer_wait_running() mechanism for RT, which uses
    a per CPU timer-base expiry lock which is held by the expiry code and the
    task waiting for the timer function to complete blocks on that lock.
 
    This does not work in the same way for posix CPU timers as there is no
    timer base and expiry for process wide timers can run on any task
    belonging to that process, but the concept of waiting on an expiry lock
    can be used too in a slightly different way.
 
    Add a per task mutex to struct posix_cputimers_work, let the expiry task
    hold it accross the expiry function and let the deleting task which
    waits for the expiry to complete block on the mutex.
 
    In the non-contended case this results in an extra mutex_lock()/unlock()
    pair on both sides.
 
    This avoids spin-waiting on a task which is scheduled out, prevents the
    livelock and cures the problem for RT and !RT systems.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmRGrj4THHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoZhdEAC/lwfDWCnTXHC8ExQQRDIVNyXmDlLb
 EHB8ZY7Wc4gNZ8UEXEOLOXJHMG9bsbtPGctVewJwRGnXZWKVhpPwQba6kCRycyX0
 0J6l5DlvUaGGrpoOzOZwgETRmtIZE9tEArZR8xlfRScYd93a7yLhwIjO8JaV9vKs
 IQpAQMeJ/ysp6gHrS59qakYfoHU/ERUAu3Tk4GqHUtPtcyz3nX3eTlLWV8LySqs+
 00qr2yc0bQFUFoKzTCxtM8lcEi9ja9SOj1rw28348O+BXE4d0HC12Ie7eU/CDN2Y
 OAlWYxVjy4LMh24LDrRQKTzoVqx9MXDx2g+09B3t8NK5LgeS+EJIjujDhZF147/H
 5y906nplZUKa8BiZW5Rpm/HKH8tFI80T9XWSQCRBeMgTEJyRyRU1yASAwO4xw+dY
 Dn3tGmFGymcV/72o4ic9JFKQd8cTSxPjEJS3qqzMkEAtyI/zPBmKxj/Tce50OH40
 6FSZq1uU21ZQzszwSHISwgFtNr75laUSK4Z1te5OhPOOz+C7O9YqHvqS/1jwhPj2
 tMd8X17fRW3UTUBlBj+zqxqiEGBl/Yk2AvKrJIXGUtfWYCtjMJ7ieCf0kZ7NSVJx
 9ewubA0gqseMD783YomZsy8LLtMKnhclJeslUOVb1oKs1q/WF1R/k6qjy9vUwYaB
 nIJuHl8mxSetag==
 =SVnj
 -----END PGP SIGNATURE-----

Merge tag 'timers-core-2023-04-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull timers and timekeeping updates from Thomas Gleixner:

 - Improve the VDSO build time checks to cover all dynamic relocations

   VDSO does not allow dynamic relocations, but the build time check is
   incomplete and fragile.

   It's based on architectures specifying the relocation types to search
   for and does not handle R_*_NONE relocation entries correctly.
   R_*_NONE relocations are injected by some GNU ld variants if they
   fail to determine the exact .rel[a]/dyn_size to cover trailing zeros.
   R_*_NONE relocations must be ignored by dynamic loaders, so they
   should be ignored in the build time check too.

   Remove the architecture specific relocation types to check for and
   validate strictly that no other relocations than R_*_NONE end up in
   the VSDO .so file.

 - Prefer signal delivery to the current thread for
   CLOCK_PROCESS_CPUTIME_ID based posix-timers

   Such timers prefer to deliver the signal to the main thread of a
   process even if the context in which the timer expires is the current
   task. This has the downside that it might wake up an idle thread.

   As there is no requirement or guarantee that the signal has to be
   delivered to the main thread, avoid this by preferring the current
   task if it is part of the thread group which shares sighand.

   This not only avoids waking idle threads, it also distributes the
   signal delivery in case of multiple timers firing in the context of
   different threads close to each other better.

 - Align the tick period properly (again)

   For a long time the tick was starting at CLOCK_MONOTONIC zero, which
   allowed users space applications to either align with the tick or to
   place a periodic computation so that it does not interfere with the
   tick. The alignement of the tick period was more by chance than by
   intention as the tick is set up before a high resolution clocksource
   is installed, i.e. timekeeping is still tick based and the tick
   period advances from there.

   The early enablement of sched_clock() broke this alignement as the
   time accumulated by sched_clock() is taken into account when
   timekeeping is initialized. So the base value now(CLOCK_MONOTONIC) is
   not longer a multiple of tick periods, which breaks applications
   which relied on that behaviour.

   Cure this by aligning the tick starting point to the next multiple of
   tick periods, i.e 1000ms/CONFIG_HZ.

 - A set of NOHZ fixes and enhancements:

     * Cure the concurrent writer race for idle and IO sleeptime
       statistics

       The statitic values which are exposed via /proc/stat are updated
       from the CPU local idle exit and remotely by cpufreq, but that
       happens without any form of serialization. As a consequence
       sleeptimes can be accounted twice or worse.

       Prevent this by restricting the accumulation writeback to the CPU
       local idle exit and let the remote access compute the accumulated
       value.

     * Protect idle/iowait sleep time with a sequence count

       Reading idle/iowait sleep time, e.g. from /proc/stat, can race
       with idle exit updates. As a consequence the readout may result
       in random and potentially going backwards values.

       Protect this by a sequence count, which fixes the idle time
       statistics issue, but cannot fix the iowait time problem because
       iowait time accounting races with remote wake ups decrementing
       the remote runqueues nr_iowait counter. The latter is impossible
       to fix, so the only way to deal with that is to document it
       properly and to remove the assertion in the selftest which
       triggers occasionally due to that.

     * Restructure struct tick_sched for better cache layout

     * Some small cleanups and a better cache layout for struct
       tick_sched

 - Implement the missing timer_wait_running() callback for POSIX CPU
   timers

   For unknown reason the introduction of the timer_wait_running()
   callback missed to fixup posix CPU timers, which went unnoticed for
   almost four years.

   While initially only targeted to prevent livelocks between a timer
   deletion and the timer expiry function on PREEMPT_RT enabled kernels,
   it turned out that fixing this for mainline is not as trivial as just
   implementing a stub similar to the hrtimer/timer callbacks.

   The reason is that for CONFIG_POSIX_CPU_TIMERS_TASK_WORK enabled
   systems there is a livelock issue independent of RT.

   CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y moves the expiry of POSIX CPU
   timers out from hard interrupt context to task work, which is handled
   before returning to user space or to a VM. The expiry mechanism moves
   the expired timers to a stack local list head with sighand lock held.
   Once sighand is dropped the task can be preempted and a task which
   wants to delete a timer will spin-wait until the expiry task is
   scheduled back in. In the worst case this will end up in a livelock
   when the preempting task and the expiry task are pinned on the same
   CPU.

   The timer wheel has a timer_wait_running() mechanism for RT, which
   uses a per CPU timer-base expiry lock which is held by the expiry
   code and the task waiting for the timer function to complete blocks
   on that lock.

   This does not work in the same way for posix CPU timers as there is
   no timer base and expiry for process wide timers can run on any task
   belonging to that process, but the concept of waiting on an expiry
   lock can be used too in a slightly different way.

   Add a per task mutex to struct posix_cputimers_work, let the expiry
   task hold it accross the expiry function and let the deleting task
   which waits for the expiry to complete block on the mutex.

   In the non-contended case this results in an extra
   mutex_lock()/unlock() pair on both sides.

   This avoids spin-waiting on a task which is scheduled out, prevents
   the livelock and cures the problem for RT and !RT systems

* tag 'timers-core-2023-04-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  posix-cpu-timers: Implement the missing timer_wait_running callback
  selftests/proc: Assert clock_gettime(CLOCK_BOOTTIME) VS /proc/uptime monotonicity
  selftests/proc: Remove idle time monotonicity assertions
  MAINTAINERS: Remove stale email address
  timers/nohz: Remove middle-function __tick_nohz_idle_stop_tick()
  timers/nohz: Add a comment about broken iowait counter update race
  timers/nohz: Protect idle/iowait sleep time under seqcount
  timers/nohz: Only ever update sleeptime from idle exit
  timers/nohz: Restructure and reshuffle struct tick_sched
  tick/common: Align tick period with the HZ tick.
  selftests/timers/posix_timers: Test delivery of signals across threads
  posix-timers: Prefer delivery of signals to the current thread
  vdso: Improve cmd_vdso_check to check all dynamic relocations
2023-04-25 11:22:46 -07:00
Linus Torvalds
3f614ab563 Interrupt core and drivers updates:
- Core:
 
    - Add tracepoints for tasklet callbacks which makes it possible to
      analyze individual tasklet functions instead of guess working
      from the overall duration of tasklet processing
 
    - Ensure that secondary interrupt threads have their affinity adjusted
      correctly.
 
  - Drivers:
 
    - A large rework of the RISC-V IPI management to prepare for a new
      RISC-V interrupt architecture
 
    - Small fixes and enhancements all over the place
 
    - Removal of support for various obsolete hardware platforms and the
      related code
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmRGnqsTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoUsSD/9IHF2HogDvMq+9dBqmqQMrryiLOIad
 dne9PvhZu6Cww60WVRbYA5dvmyRx3oi9vHb5xrqjEgEXwCGyNGUU9K6seqzqwTjr
 BuhokcbeimCVUBsF9/6x0k50tRSRP0oCLA49WDJ+uaXyICII+y+p+qkQOQmP6UTx
 sCpA6Y51RpO7eAcxiMqLa2XgiixQCFZvRXRmO0a0DcxY3DhOSz6PbecTWcY43jtX
 CpHiNZkeiVmLOAmbfPF/mBBRczt9BzYTx3C/NA2TTXwwA2Mcw7p2Vmh3JL2cTWzc
 nD6nvarsTkOk9T8LkT8uEk/ovalwXtTn+Z8yYrcI3o2I89y4cat56haz/Y2tOTFG
 D5fUXHIFTV8jsBUUL2Ai+3PCjoSzd1jbqua7fa8496FqS2FyZjNsHeuzIUXRyQd9
 2/VF+sT5NQ6ytYzgiUuoO13VcI6e6Hc3mwmbd3RhKMf+epZQ9ifx9KcLlokWcxcS
 bdJSHWz6Zos3hH+GRilXmgi16xNN7eaYxEtg0FPUBuB2zWYzZwreY2uvlZGqYpVG
 OKTncko7TeDOR8PXybWXXce6VhKxhMHgpHOdFMFm4lIqDzpbMmyYjNaXdxFqhyGM
 s/FTxPOdEMwapWBGr5Fhumepgdmujc2USZArnIPvnzwF5mUje+U1Pg4xHeLYF4lU
 Taaw4Jc5OvAD2A==
 =EWF0
 -----END PGP SIGNATURE-----

Merge tag 'irq-core-2023-04-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull interrupt updates from Thomas Gleixner:
 "Core:

   - Add tracepoints for tasklet callbacks which makes it possible to
     analyze individual tasklet functions instead of guess working from
     the overall duration of tasklet processing

   - Ensure that secondary interrupt threads have their affinity
     adjusted correctly

  Drivers:

   - A large rework of the RISC-V IPI management to prepare for a new
     RISC-V interrupt architecture

   - Small fixes and enhancements all over the place

   - Removal of support for various obsolete hardware platforms and the
     related code"

* tag 'irq-core-2023-04-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)
  irqchip/st: Remove stih415/stih416 and stid127 platforms support
  irqchip/gic-v3: Add Rockchip 3588001 erratum workaround
  genirq: Update affinity of secondary threads
  softirq: Add trace points for tasklet entry/exit
  irqchip/loongson-pch-pic: Fix pch_pic_acpi_init calling
  irqchip/loongson-pch-pic: Fix registration of syscore_ops
  irqchip/loongson-eiointc: Fix registration of syscore_ops
  irqchip/loongson-eiointc: Fix incorrect use of acpi_get_vec_parent
  irqchip/loongson-eiointc: Fix returned value on parsing MADT
  irqchip/riscv-intc: Add empty irq_eoi() for chained irq handlers
  RISC-V: Use IPIs for remote icache flush when possible
  RISC-V: Use IPIs for remote TLB flush when possible
  RISC-V: Allow marking IPIs as suitable for remote FENCEs
  RISC-V: Treat IPIs as normal Linux IRQs
  irqchip/riscv-intc: Allow drivers to directly discover INTC hwnode
  RISC-V: Clear SIP bit only when using SBI IPI operations
  irqchip/irq-sifive-plic: Add syscore callbacks for hibernation
  irqchip: Use of_property_read_bool() for boolean properties
  irqchip/bcm-6345-l1: Request memory region
  irqchip/gicv3: Workaround for NVIDIA erratum T241-FABRIC-4
  ...
2023-04-25 11:16:08 -07:00
Linus Torvalds
5dfb75e842 RCU Changes for 6.4:
o  MAINTAINERS files additions and changes.
  o  Fix hotplug warning in nohz code.
  o  Tick dependency changes by Zqiang.
  o  Lazy-RCU shrinker fixes by Zqiang.
  o  rcu-tasks stall reporting improvements by Neeraj.
  o  Initial changes for renaming of k[v]free_rcu() to its new k[v]free_rcu_mightsleep()
     name for robustness.
  o  Documentation Updates:
  o  Significant changes to srcu_struct size.
  o  Deadlock detection for srcu_read_lock() vs synchronize_srcu() from Boqun.
  o  rcutorture and rcu-related tool, which are targeted for v6.4 from Boqun's tree.
  o  Other misc changes.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEcoCIrlGe4gjE06JJqA4nf2o45hAFAmQuBnIACgkQqA4nf2o4
 5hACVRAAoXu7/gfh5Pjw9O4E4pCdPJKsZZVYrcrVGrq6NAxRn6M1SgurAdC5grj2
 96x0waoGaiO82V0H5iJMcKdAVu67x9R8WaQ1JoxN75Efn8h9W4TguB87TV1gk0xS
 eZ18b/CyEaM5mNb80DFFF4FLohy5737p/kNTMqXQdUyR1BsDl16iRMgjiBiFhNUx
 yPo8Y2kC2U2OTbldZgaE7s9bQO3xxEcifx93sGWsAex/gx54FYNisiwSlCOSgOE+
 XkYo/OKk8Xvr82tLVX8XQVEPCMJ+rxea8T5zSs8/alvsPq7gA8wW3y6fsoa3vUU/
 +Gd+W+Q/OsONIDtp8rQAY1qsD0ScDpaR8052RSH0zTa7pj8HsQgE5PjZ+cJW0SEi
 cKN+Oe8+ETqKald+xZ6PDf58O212VLrru3RpQWrOQcJ7fmKmfT4REK0RcbLgg4qT
 CBgOo6eg+ub4pxq2y11LZJBNTv1/S7xAEzFE0kArew64KB2gyVud0VJRZVAJnEfe
 93QQVDFrwK2bhgWQZ6J6IbTvGeQW0L93IibuaU6jhZPR283VtUIIvM7vrOylN7Fq
 4jsae0T7YGYfKUhgTpm7rCnm8A/D3Ni8MY0sKYYgDSyKmZUsnpI5wpx1xke4lwwV
 ErrY46RCFa+k8wscc6iWfB4cGXyyFHyu+wtyg0KpFn5JAzcfz4A=
 =Rgbj
 -----END PGP SIGNATURE-----

Merge tag 'rcu.6.4.april5.2023.3' of git://git.kernel.org/pub/scm/linux/kernel/git/jfern/linux

Pull RCU updates from Joel Fernandes:

 - Updates and additions to MAINTAINERS files, with Boqun being added to
   the RCU entry and Zqiang being added as an RCU reviewer.

   I have also transitioned from reviewer to maintainer; however, Paul
   will be taking over sending RCU pull-requests for the next merge
   window.

 - Resolution of hotplug warning in nohz code, achieved by fixing
   cpu_is_hotpluggable() through interaction with the nohz subsystem.

   Tick dependency modifications by Zqiang, focusing on fixing usage of
   the TICK_DEP_BIT_RCU_EXP bitmask.

 - Avoid needless calls to the rcu-lazy shrinker for CONFIG_RCU_LAZY=n
   kernels, fixed by Zqiang.

 - Improvements to rcu-tasks stall reporting by Neeraj.

 - Initial renaming of k[v]free_rcu() to k[v]free_rcu_mightsleep() for
   increased robustness, affecting several components like mac802154,
   drbd, vmw_vmci, tracing, and more.

   A report by Eric Dumazet showed that the API could be unknowingly
   used in an atomic context, so we'd rather make sure they know what
   they're asking for by being explicit:

      https://lore.kernel.org/all/20221202052847.2623997-1-edumazet@google.com/

 - Documentation updates, including corrections to spelling,
   clarifications in comments, and improvements to the srcu_size_state
   comments.

 - Better srcu_struct cache locality for readers, by adjusting the size
   of srcu_struct in support of SRCU usage by Christoph Hellwig.

 - Teach lockdep to detect deadlocks between srcu_read_lock() vs
   synchronize_srcu() contributed by Boqun.

   Previously lockdep could not detect such deadlocks, now it can.

 - Integration of rcutorture and rcu-related tools, targeted for v6.4
   from Boqun's tree, featuring new SRCU deadlock scenarios, test_nmis
   module parameter, and more

 - Miscellaneous changes, various code cleanups and comment improvements

* tag 'rcu.6.4.april5.2023.3' of git://git.kernel.org/pub/scm/linux/kernel/git/jfern/linux: (71 commits)
  checkpatch: Error out if deprecated RCU API used
  mac802154: Rename kfree_rcu() to kvfree_rcu_mightsleep()
  rcuscale: Rename kfree_rcu() to kfree_rcu_mightsleep()
  ext4/super: Rename kfree_rcu() to kfree_rcu_mightsleep()
  net/mlx5: Rename kfree_rcu() to kfree_rcu_mightsleep()
  net/sysctl: Rename kvfree_rcu() to kvfree_rcu_mightsleep()
  lib/test_vmalloc.c: Rename kvfree_rcu() to kvfree_rcu_mightsleep()
  tracing: Rename kvfree_rcu() to kvfree_rcu_mightsleep()
  misc: vmw_vmci: Rename kvfree_rcu() to kvfree_rcu_mightsleep()
  drbd: Rename kvfree_rcu() to kvfree_rcu_mightsleep()
  rcu: Protect rcu_print_task_exp_stall() ->exp_tasks access
  rcu: Avoid stack overflow due to __rcu_irq_enter_check_tick() being kprobe-ed
  rcu-tasks: Report stalls during synchronize_srcu() in rcu_tasks_postscan()
  rcu: Permit start_poll_synchronize_rcu_expedited() to be invoked early
  rcu: Remove never-set needwake assignment from rcu_report_qs_rdp()
  rcu: Register rcu-lazy shrinker only for CONFIG_RCU_LAZY=y kernels
  rcu: Fix missing TICK_DEP_MASK_RCU_EXP dependency check
  rcu: Fix set/clear TICK_DEP_BIT_RCU_EXP bitmask race
  rcu/trace: use strscpy() to instead of strncpy()
  tick/nohz: Fix cpu_is_hotpluggable() by checking with nohz subsystem
  ...
2023-04-24 12:16:14 -07:00
Linus Torvalds
2caeeb9d4a Two serious ARM fixes:
* Plug a buffer overflow due to the use of the user-provided register
   width for firmware regs. Outright reject accesses where the
   user register width does not match the kernel representation.
 
 * Protect non-atomic RMW operations on vCPU flags against preemption,
   as an update to the flags by an intervening preemption could be lost.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmRDIaMUHHBib256aW5p
 QHJlZGhhdC5jb20ACgkQv/vSX3jHroN7Hwf+Pjf7eQ6YZJdmG/4ySbEHJwml1MoW
 KxZn6aODWlxhSj7AtQMpvw0+HoGOoOPE0dV4GOMOqh9P/i0gwFOHtmhFczssyxgY
 WwjoW3JEuYZYJ7v1uhUVR0aQvKsTplNsW2tnD6WvneV+YbGgSDc7QRH3FbP7wOow
 /tsCerEuNLr7aQP5PdYnnbGQ/YyVKCX/Z0iuENa1tNn9T4/fVlzzMXNzCnrUAFp4
 bOEDmgZNDfJRT626Yg8HiLsVB2Dwkbxo1u1d4JP2x+/7Gl38RPSSX7y6e3EQ1rdO
 Ttb/2JD5iLhtNShCY0JbPR/rsGd8cTFZn1odpnXd+PRu+OOvStSEFcdx3g==
 =XhSQ
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull kvm fixes from Paolo Bonzini:
 "Two serious ARM fixes:

   - Plug a buffer overflow due to the use of the user-provided register
     width for firmware regs. Outright reject accesses where the user
     register width does not match the kernel representation.

   - Protect non-atomic RMW operations on vCPU flags against preemption,
     as an update to the flags by an intervening preemption could be
     lost"

* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
  KVM: arm64: Fix buffer overflow in kvm_arm_set_fw_reg()
  KVM: arm64: Make vcpu flag updates non-preemptible
2023-04-22 09:27:46 -07:00
Paolo Bonzini
265b97cbc2 KVM/arm64 fixes for 6.3, part #4
- Plug a buffer overflow due to the use of the user-provided register
    width for firmware regs. Outright reject accesses where the
    user register width does not match the kernel representation.
 
  - Protect non-atomic RMW operations on vCPU flags against preemption,
    as an update to the flags by an intervening preemption could be lost.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQSNXHjWXuzMZutrKNKivnWIJHzdFgUCZEALwAAKCRCivnWIJHzd
 Fq2nAQDPwWpuMOrQYZCM5RF5/8yai5OPKB0NcvK00UDM4f6E1AEAxDud/KT9i15c
 dmBfGn1zDzW4XAENrOkxjQWuBqi/tQg=
 =Lxvf
 -----END PGP SIGNATURE-----

Merge tag 'kvmarm-fixes-6.3-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD

KVM/arm64 fixes for 6.3, part #4

 - Plug a buffer overflow due to the use of the user-provided register
   width for firmware regs. Outright reject accesses where the
   user register width does not match the kernel representation.

 - Protect non-atomic RMW operations on vCPU flags against preemption,
   as an update to the flags by an intervening preemption could be lost.
2023-04-21 19:19:02 -04:00
Thomas Gleixner
f37202aa6e irqchip changes for 6.4
- Large RISC-V IPI rework to make way for a new interrupt
   architecture
 
 - More Loongarch fixes from Lianmin Lv, fixing issues in the so
   called "dual-bridge" systems.
 
 - Workaround for the nvidia T241 chip that gets confused in
   3 and 4 socket configurations, leading to the GIC
   malfunctionning in some contexts
 
 - Drop support for non-firmware driven GIC configurarations
   now that the old ARM11MP Cavium board is gone
 
 - Workaround for the Rockchip 3588 chip that doesn't
   correctly deal with the shareability attributes.
 
 - Replace uses of of_find_property() with the more appropriate
   of_property_read_bool()
 
 - Make bcm-6345-l1 request its MMIO region
 
 - Add suspend support to the SiFive PLIC
 
 - Drop support for stih415, stih416 and stid127 platforms
 -----BEGIN PGP SIGNATURE-----
 
 iQJDBAABCgAtFiEEn9UcU+C1Yxj9lZw9I9DQutE9ekMFAmRCjF0PHG1hekBrZXJu
 ZWwub3JnAAoJECPQ0LrRPXpDfAcQAMCqxwZcMPtMDcj1pfuiPM4mcPnb81nB80ms
 0Clc+O/fLvW4bduVQN9S+P4aJ3WNYUw0nTrF13CzUZpPOLGt8NlylSZ0+EQV6+th
 60+YoJ0X5ovlQ6tMUzhJjuU2HFQxXyvNmkXsrr4xaPlZaOt01OCNGhKVwuq+f7nJ
 U87id3M3Nt6dSj//NonBdy+61y/XZiPQXZZP6act71f5Rz+REnBdEESzWLbzV9jo
 UiVZD24OWLE+A0N4JqTXI4ruXIaOdwfOi31hN/OF3JrWWrM99RYK/pLJM/mEvCdw
 HA0acS/uj9wQLUD9OFPCKE3aGOA4rdcWUrwzQvINZMIezHgaWfuOT/J5BbF9iH+Y
 nrySLQB9xl9TVtMsfCOmjc+yPDDQ0AycrV++pn6CH59dx4WR3e2wTe68arHMoO9h
 ljvEHVb2inDYJqHhyYKhNehlD1YGNFcOT4QRrduWxQezl3RKdYEjJngmm7QBfRT1
 ee62Jm2RodPAknuDnnJNsFnHAE8emu9RLdKviEmPT66oclhw2sgn/V2JC+O+Oe0e
 TkXrn4AzrIpEjbEUMJAow7RTSpzIGx921fcqbSpZrf6k75rgxaKBPPxtV4uANfII
 gbOKklj15pljuPuxsputWzkdU9xVvgdg/5CHw6+AA68rNeB16NbTMe9RsiYNzlF6
 7XBGnW3Q
 =TsID
 -----END PGP SIGNATURE-----

Merge tag 'irqchip-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/core

Pull irqchip changes from Marc Zyngier:

 - Large RISC-V IPI rework to make way for a new interrupt
   architecture

 - More Loongarch fixes from Lianmin Lv, fixing issues in the so
   called "dual-bridge" systems.

 - Workaround for the nvidia T241 chip that gets confused in
   3 and 4 socket configurations, leading to the GIC
   malfunctionning in some contexts

 - Drop support for non-firmware driven GIC configurarations
   now that the old ARM11MP Cavium board is gone

 - Workaround for the Rockchip 3588 chip that doesn't
   correctly deal with the shareability attributes.

 - Replace uses of of_find_property() with the more appropriate
   of_property_read_bool()

 - Make bcm-6345-l1 request its MMIO region

 - Add suspend support to the SiFive PLIC

 - Drop support for stih415, stih416 and stid127 platforms

Link: https://lore.kernel.org/lkml/20230421132104.3021536-1-maz@kernel.org
2023-04-21 17:30:57 +02:00
Marc Zyngier
f39157b3c0 Merge branch irq/gic-6.4 into irq/irqchip-next
* irq/gic-6.4:
  : .
  : Collection of GIC/GICv3 fixes and cleanups
  :
  : - Workaround for the nvidia T241 chip that gets confused
  :   in 3 and 4 socket configurations, leading to the GIC
  :   malfunctionning in some contexts
  :
  : - Drop support for non-firmware driven GIC configurarations
  :   now that the old ARM11MP Cavium board is gone
  :
  : - Workaround for the Rockchip 3588 chip that doesn't
  :   correctly deal with the shareability attributes.
  : .
  irqchip/gic-v3: Add Rockchip 3588001 erratum workaround
  irqchip/gicv3: Workaround for NVIDIA erratum T241-FABRIC-4
  irqchip/gic: Drop support for board files

Signed-off-by: Marc Zyngier <maz@kernel.org>
2023-04-21 14:05:08 +01:00
Dan Carpenter
a25bc8486f KVM: arm64: Fix buffer overflow in kvm_arm_set_fw_reg()
The KVM_REG_SIZE() comes from the ioctl and it can be a power of two
between 0-32768 but if it is more than sizeof(long) this will corrupt
memory.

Fixes: 99adb56763 ("KVM: arm/arm64: Add save/restore support for firmware workaround state")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: Steven Price <steven.price@arm.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/4efbab8c-640f-43b2-8ac6-6d68e08280fe@kili.mountain
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2023-04-19 15:22:37 +00:00
Marc Zyngier
35dcb3ac66 KVM: arm64: Make vcpu flag updates non-preemptible
Per-vcpu flags are updated using a non-atomic RMW operation.
Which means it is possible to get preempted between the read and
write operations.

Another interesting thing to note is that preemption also updates
flags, as we have some flag manipulation in both the load and put
operations.

It is thus possible to lose information communicated by either
load or put, as the preempted flag update will overwrite the flags
when the thread is resumed. This is specially critical if either
load or put has stored information which depends on the physical
CPU the vcpu runs on.

This results in really elusive bugs, and kudos must be given to
Mostafa for the long hours of debugging, and finally spotting
the problem.

Fix it by disabling preemption during the RMW operation, which
ensures that the state stays consistent. Also upgrade vcpu_get_flag
path to use READ_ONCE() to make sure the field is always atomically
accessed.

Fixes: e87abb73e5 ("KVM: arm64: Add helpers to manipulate vcpu flags among a set")
Reported-by: Mostafa Saleh <smostafa@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20230418125737.2327972-1-maz@kernel.org
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2023-04-18 17:08:09 +00:00
Sebastian Reichel
a8707f5538 irqchip/gic-v3: Add Rockchip 3588001 erratum workaround
Rockchip RK3588/RK3588s GIC600 integration does not support the
sharability feature. Rockchip assigned Erratum ID #3588001 for this
issue.

Note, that the 0x0201743b ID is not Rockchip specific and thus
there is an extra of_machine_is_compatible() check.

The flags are named FORCE_NON_SHAREABLE to be vendor agnostic,
since apparently similar integration design errors exist in other
platforms and they can reuse the same flag.

Co-developed-by: XiaoDong Huang <derrick.huang@rock-chips.com>
Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
Co-developed-by: Kever Yang <kever.yang@rock-chips.com>
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Co-developed-by: Lucas Tanure <lucas.tanure@collabora.com>
Signed-off-by: Lucas Tanure <lucas.tanure@collabora.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230418142109.49762-2-sebastian.reichel@collabora.com
2023-04-18 17:31:17 +01:00
Linus Torvalds
bbab25317c ARM: SoC fixes for 6.3, part 3
There are a number of updates for devicetree files for Qualcomm,
 Rockchips, and NXP i.MX platforms, addressing mistakes in the DT
 contents:
 
  - Wrong GPIO polarity on some boards
 
  - Lower SD card interface speed for better stability
 
  - Incorrect power supply, clock, pmic, cache properties
 
  - Disable broken hbr3 on sc7280-herobrine
 
  - Devicetree warning fixes
 
 The only other changes are:
 
  - A regression fix for the Amlogic performance monitoring unit driver,
    along with two related DT changes.
 
  - imx_v6_v7_defconfig enables PCI support again.
 
  - Trivial fixes for tee, optee and psci firmware drivers, addressing
    compiler warning and error output
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmQ+sQgACgkQYKtH/8kJ
 UiftwQ/9G4zUbL4KZMZXmIrLTE/RYcJVLwnIk1Qh36Kj04tYE+uADRyxBdDcTCE6
 hSwgQ98hvM8hDAgGUIEscO7FsoTWFs/ADXVQmJ/kgMzLdfldLkjJYsXiatmZFIlQ
 7DW6ZtXV8ePUi/2Dk3al0bRuR+4xBAQf+0u/p9W7dFwttxeTyL87ApLgfQ9eoq9u
 I60vwr9QNeUY19QpzHXX+AZRWS2R+uLqfBNEVV2NHl4Fy6iGqaBRc2q1Fby9Tt1h
 793vDwNZz3+65xXL/XGDlKxh5OQtRK3FiWHXD9qTHzohUrYu3zMG2/ls8GczF3Vk
 HYOtQp5xYNWI37JU2XlLIjWA4tuc0LUInVB2yK5uniIGKXaygnwnRI0IaEQkvWtW
 tI89MOsPne7BgQv2boJh0FBA1yXYgL5WYFBx1x11kP71IRFf2LHrgutvuiIKzPF8
 UiuxdrakT5FMZVr7pJTDr5Gk52qgR7PXXAGKc/oDj37JhXE1XuqSyNkbGRtujkkc
 3x6etgAkuYcUQtuka0VVCLmG6Y/2Otn3dj+y+RYHFH7ljUDN6PfwveUqXNX9o0nz
 AdI9gULbYWOf8iUc3hvT1tyJNudSIBeBXiqq/ovIklAme1scpKfjT54vQLyS4HYB
 2repRE5v1LtXSyF2A3877EY4m6Tbcm4t+cUK2vl7NKVtYE4P8n8=
 =5Uki
 -----END PGP SIGNATURE-----

Merge tag 'arm-fixes-6.3-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC fixes from Arnd Bergmann:
 "There are a number of updates for devicetree files for Qualcomm,
  Rockchips, and NXP i.MX platforms, addressing mistakes in the DT
  contents:

   - Wrong GPIO polarity on some boards

   - Lower SD card interface speed for better stability

   - Incorrect power supply, clock, pmic, cache properties

   - Disable broken hbr3 on sc7280-herobrine

   - Devicetree warning fixes

  The only other changes are:

   - A regression fix for the Amlogic performance monitoring unit
     driver, along with two related DT changes.

   - imx_v6_v7_defconfig enables PCI support again.

   - Trivial fixes for tee, optee and psci firmware drivers, addressing
     compiler warning and error output"

* tag 'arm-fixes-6.3-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (32 commits)
  firmware/psci: demote suspend-mode warning to info level
  arm64: dts: qcom: sc7280: remove hbr3 support on herobrine boards
  ARM: imx_v6_v7_defconfig: Fix unintentional disablement of PCI
  arm64: dts: rockchip: correct panel supplies on some rk3326 boards
  arm64: dts: rockchip: use just "port" in panel on RockPro64
  arm64: dts: rockchip: use just "port" in panel on Pinebook Pro
  ARM: dts: imx6ull-colibri: Remove unnecessary #address-cells/#size-cells
  ARM: dts: imx7d-remarkable2: Remove unnecessary #address-cells/#size-cells
  arm64: dts: imx8mp-verdin: correct off-on-delay
  arm64: dts: imx8mm-verdin: correct off-on-delay
  arm64: dts: imx8mm-evk: correct pmic clock source
  arm64: dts: qcom: sc8280xp-pmics: fix pon compatible and registers
  arm64: dts: rockchip: Remove non-existing pwm-delay-us property
  arm64: dts: rockchip: Add clk_rtc_32k to Anbernic xx3 Devices
  tee: Pass a pointer to virt_to_page()
  perf/amlogic: adjust register offsets
  arm64: dts: meson-g12-common: resolve conflict between canvas & pmu
  arm64: dts: meson-g12-common: specify full DMC range
  arm64: dts: imx8mp: fix address length for LCDIF2
  riscv: dts: canaan: drop invalid spi-max-frequency
  ...
2023-04-18 08:21:45 -07:00
Bartosz Golaszewski
d4a53049fa arm64: defconfig: enable building the nvmem-reboot-mode module
This module is used by the Qualcomm sa8775p platform for passing the
reboot reason to the bootloader. Enable building it in the arm64
defconfig as a module.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-17 16:38:41 +02:00
Bhavya Kapoor
8c0232d68d arm64: defconfig: Enable TI ADC driver
Enable ADC driver to be built as a module which will
add support for ADC in TI K3 specific SoCs.

Signed-off-by: Bhavya Kapoor <b-kapoor@ti.com>
Reviewed-by: Manorit Chawdhry <m-chawdhry@ti.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-17 16:38:21 +02:00
Bhavya Kapoor
e56ec0cad2 arm64: defconfig: Enable TI TSCADC driver
Enable TSCADC driver to be built as a module which will
add support for TI's TSC/ADC MFDevice.

Signed-off-by: Bhavya Kapoor <b-kapoor@ti.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-17 16:38:21 +02:00
Kamlesh Gurudasani
caa633855a
arm64: defconfig: Enable security accelerator driver for TI K3 SoCs
Enable TI's SA2UL driver to support security acceleration on TI K3 SoCs.

Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-17 16:35:46 +02:00
Kamlesh Gurudasani
a2116e7b92
arm64: defconfig: Enable crypto test module
Enable crypto test module, used for testing crypto engine performance.

Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-17 16:33:21 +02:00
Arnd Bergmann
b4655af5f6 arm64: tegra: Default configuration changes for v6.4-rc1
Contains a single patch to enable the Coresight System PMU driver.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmQuvvATHHRyZWRpbmdA
 bnZpZGlhLmNvbQAKCRDdI6zXfz6zoT6xEACtpMwOHvhjsRpEbJMsRMhy6acyYpba
 H4tczf8cffhmZsFueAhggCQmYNOBUNsuQ4/4qEaKGd36kiHfjdkWrVKMLZ40j6a4
 xlxM1rCubZdDZPEdskoIB0dULOOV7jVf8YwY9b/Bqtz0UHrlsvVzhMdx+6Nu26sq
 vfJ1+vikkpdoe+G9vvXzNU2MBvjDOr+QPyI9VaG1mjzFmL7ps4voBOnTuc2xf0yX
 75cA3hf+CilDIhMhUvFLWljqERDxX6RSjjH+uJYb7aMc28bftJ1WmSGvkIvv6DU3
 XFNWjY9liTxW5osY2WIeDaEvn8+t2NQHlZnl+AnPF0SmyyKmdnpcaasKgWz4D86L
 xAf5v6Rrebig1DyT7xB5AGjn1hnlLG5fQoArKs2+9A9ghCZSrKY+wCf39SkK9y+A
 pfMM2i+NIDB0qEaI5vaHHWYos59rTAK6lxFvEbSnK3CNrEqojH+PRbda1vL807uc
 BTeQxpCAKt7r/r1YPQnOumDvc+uJqctKq/LV22LhQx+ODSAZM+CKfD5qJjwke/gY
 v6694JfBnUpOy5tBRgkt53820JO2WgHaxlCjB6Qfd0RJgCufnWMfojjswIsTvLHd
 /paZd4l9yRgZOgELKc9Gbk0TwfeADrIjYpMObOXth6lo9usiIaqdHQnXch3Ynpt5
 ZPgJqkMEAMNMGQ==
 =rVAH
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmQ5P+MACgkQYKtH/8kJ
 UifINxAAlO29skF1CsfXkn/baUgHN6p2ktA9gJhaUJ+Y8uPWEGjdmVT9nltgunHT
 3Xpu6xaMnEAIAZspgtcSFFX0c9FPhFMgW/RkZJo4YRFnHQTIuhKsSYtVU1MzHNMq
 Xk5/X5fmIR4W23alRTyz38m/3aZkxhlJebDgZBiK+1mbBQnV1SeXZSvlr04DlRto
 hu7AIL8Xhp/SoTDUnK8I6iUYYO5gvbLskb0LTFkc2NSxBDeSUCsGhuaqJ1APp3F4
 NEOHAq8fG+WadafOIGi+MoraybZimbjHIAmYimTqKuc4mybWSNZHFpwDW4l9wAWK
 rt9NjwkRjxCg6ZJQyCbyv9Kj8ZxBR2nyNfZXwercj0bSjmq8eaBimZQQ/HbVQvV1
 a9FlIWWPSN6B2Zt1J67uVWsf1WdBQVwv6aCPqlEJEP7qg6xGr3Z+6lFn1MvXk98E
 NZhyWtog14wNFlxqqD+76daNzcQAyMgCy2CRm5VqiMqVnYRwNX/kOJ4+gw6F9zvK
 yRjAOGlny4ujrkR58rR5wJPZGgM9y2uWAMODIv/ns8DQwbQzmnNFwlBwsk7B9A3h
 Mg7Q0WQm5snvCN25aWNg94g/GbkZUl2VZFmVjdwsb+4a52+sPrKOTXaT0qJ0bOb7
 ZIFEhEM71rvLTKufDW3L96FJBVeuNVl5AC9n/bmO9VSM8f5QamM=
 =uDCZ
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-6.4-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/defconfig

arm64: tegra: Default configuration changes for v6.4-rc1

Contains a single patch to enable the Coresight System PMU driver.

* tag 'tegra-for-6.4-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: defconfig: Enable ARM CoreSight PMU driver

Link: https://lore.kernel.org/r/20230406124804.970394-7-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14 13:58:26 +02:00
Arnd Bergmann
fe46e5547f i.MX defconfig updates for 6.4:
- Enable i.MX93 ADC driver in arm64 defconfig.
 - Enable BD71815 PMIC and TDA998X HDMI bridge driver in
   imx_v6_v7_defconfig.
 - Enable a few drivers support needed by Tarragon boards in
   imx_v6_v7_defconfig.
 - Build IMX_SDMA driver as module in imx_v4_v5_defconfig.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmQxPi4UHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM64DAf/RsCs8qjlpKYjEwFLkH0Si5V+YG8s
 AczhCoqEzDsrJf4mHAwOb4Ty9zgLgGegYhh2e1BYXxgrNBZps1pHvgQVdrJQAKs8
 OzEJNgeqcGW2kIuSs6Jzi0sl1DGQXU/xy+TlA4Sp//jbLfSkpQBEeY+szN5j4eW5
 HVRaIH2NIEmq/ohob8R0dbPaHo9GqQAgIp3wvbSGLbAyHFumqzwf02dC86kzgCu7
 4o4u96zH5xtOivCQaY1FgKLRT0by9mcCqOzpKgWCKqaBCNCfMc3JYKz84CzaYJxS
 0N+gK5+Q8LbhJtAA1EDj5qA9F13EQ5faoVHt7kFAZLd2KeILFzAQvx6qzw==
 =eSwa
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmQ5P7wACgkQYKtH/8kJ
 UicydRAA2SONl9j0lG3NjJtK/L60TCk9gTPczGu+w0yr9efVeXYP6LAz0Y5hHL9X
 CFoiOuFnvbG6kCIhtcmgRKqB/s/XTFefrGp82Qx2Qq2x2A8W8nellCLjicFLT0Nj
 nJgOOghhWmX9E+/LaoN9C9XZ8/yTczu8d6NcRiZ5akVgft5aa4Jsny/lAhp4jVel
 Cwu0//+Br1rmzlDt4SNfrJyWcrZcUsks3inHIUrw2DrNjlMAMlboCzrKrqcnRdo+
 MenRXx03Xy48x95HdS1giuuJIIXY6wrISBH8Hs6D41SzrmcW2m8FrD323dNpBTLN
 L2XGQA/D64FRUHV1tvdRHldwmZA602RknQnIdUjWX0fFc+Wxn0aQ7d66OoV/TkLj
 s3ib2lMxKyp1k5buuKZdTWKveHG/wU5XoPxyjj3cS8gbZhReJQQ/0VzBSF4NDmY6
 AKx2f0euxsaHiMINszAHrIoPAWnn3XcLG5PwNpVlvYegLf6y/0IzD4bvQe3RSx/q
 VmMhnt6C4NOa7pjtzRAu+yuG88NAdWrlNasTr3wFpudDRHF+qlm9bbLSCNrzHjC9
 B0p5P0a3GBMjhZCx0PmGThuvY1huWZIA5QpvySRfqTcl56FPRtXpQOO/kuwnsP9m
 0Bvyx8virSGrFKpq2RjAX705v/+P6NVOm8KpNVdOGUQd+YtHSKo=
 =7Slz
 -----END PGP SIGNATURE-----

Merge tag 'imx-defconfig-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/defconfig

i.MX defconfig updates for 6.4:

- Enable i.MX93 ADC driver in arm64 defconfig.
- Enable BD71815 PMIC and TDA998X HDMI bridge driver in
  imx_v6_v7_defconfig.
- Enable a few drivers support needed by Tarragon boards in
  imx_v6_v7_defconfig.
- Build IMX_SDMA driver as module in imx_v4_v5_defconfig.

* tag 'imx-defconfig-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx_v4_v5_defconfig: Build CONFIG_IMX_SDMA as module
  ARM: imx_v6_v7_defconfig: Enable Tarragon peripheral drivers
  ARM: imx_v6_v7_defconfig: Select CONFIG_DRM_I2C_NXP_TDA998X
  arm64: defconfig: Enable i.MX93 ADC support
  ARM: imx_v6_v7_defconfig: Enable rohm,bd71815

Link: https://lore.kernel.org/r/20230408101928.280271-6-shawnguo@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14 13:57:47 +02:00
Arnd Bergmann
d04a06e984 arm64: TI K3 defconfig updates for v6.4
* Enable drivers for BeaglePlay and Audio drivers for AM62-SK
 
 For this tag, Bloat-o-meter reports (17.0.0 + v6.3-rc1 base):
 add/remove: 61/2 grow/shrink: 3/1 up/down: 17852/-208 (17644)
 [...]
 Total: Before=27746954, After=27764598, chg +0.06%
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE+KKGk1TrgjIXoxo03bWEnRc2JJ0FAmQ0EHUACgkQ3bWEnRc2
 JJ3HoA/8CVVWeiTQKBjwG7jwFa3un28AIw4dohIG7dYuF/PIHxfjQYXZXhc9LIby
 ePIf797MV8nAsD6Yjk/XGDVCRwj/MVRbPRqJeFkqssjLqGEgSShUjx6ETMSy3q8W
 8gO36lNA5CeU3uiGJU3VQLyjeCf7kRxyzM+4njCxt6sFCS4lJpGOpGNa0Wy6bx/z
 buUDJ959BMjCeWj2PWTycuOhLrNQRUMVdcRlEeb8LfNhFqHRYitFG/Y0tf9LsfZ+
 8TnCaw28VmH/8tNAUZW4sK0LU5XmKdKSSBNtP5Ni44E4lJYC4GC0f0P4W6//gzXD
 mwILda8gI+Z4kEU40tmtTs3oTI71ugFESQDdb1h6D3a8iwmzwgH5zVLUKgHW/WEv
 58GR5ZHtWvUpIGnFyArWUPDZAQmChKxNEWPdxzuq0VwhcYo1sBXEA4F10rT9fXkU
 hnZlf/DC2xgyypUn5IbkCI0FcxQV8QvpOfMzbbjCZaMCXnMjogPCeAlB6PPy5tAQ
 BsvzxjLTfn9x2b7cqYjwEG8nXyUwO1XANTqOSJ9oPHAX/Pr124FloDOO9LBGUfMj
 frq7BotLa876a5orKtHZanvMEwXu6P6qVQwWuiJeKzcBncVbK4ga4ZWudVvUSK0w
 4wlBTENjfb1wnTD89+f4RUpZ8l0OCJOG3owYdeEvgI6D/EYedyY=
 =HGsW
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmQ5P4wACgkQYKtH/8kJ
 UieFdhAAzzaEqDSU7zWFETpocwUZqj+/SsGSURHUtKcTinfOCkjnbawIfAXNFL6w
 3e3Pn1u9osnXgDOuSt9bIJrmayCaaCDhICYrN/KLo30to/85Iiq/M/p3XRwxu5ys
 phiTkYoZHT2coAmYO9eS9gTnfRr4SE069URy+/M/cVsDMixgrAOPX35sxpGjXRdJ
 Tn4psazn+U+WEncBlqNST4/dHaLWG7zrD3aee6xg8keWn2jwgL5WP90BCO9LRzDy
 ySD6ZSZFGiFTmzfwo3yQ47Y4F1/MBWQZZq4Cc2bEL2OLSH7OtLhQh5E/xeKBcUAV
 OGn3kP2GGJ2DdLIc3Aopiw1gwYFQVXUQCb0IZ/YyM30zpR7mRVkQCYYYtqcbOcLk
 FU9y7VpUT3wzIZBEoHPq9iHfsYkKx3EDyssPwJDA/VvFcdB0HUJ3iyiM0C9Gyogh
 5Zo8JGlTVOFKElrZw57X+RWhALRfL+AkOYkQn7qszAeGs+tsUs1/rEUef0+dLucS
 aIhVJcf2SIvIeAVMtTgU1SRyDkmsTWOEo1JkWbh9mj73TxAjDscy9xIQ+s2B56xU
 s1ZaePp7DFg9cqxHItDJCW8IeU8pCuPsOpV+lu/zsIiLIBTG4l6X1OHup7GBBokz
 xvKO4pR2eVobE8JbqgZQmT9K1dwzsjq6/kEt52hFm9dJbmt34mI=
 =YxTs
 -----END PGP SIGNATURE-----

Merge tag 'ti-k3-config-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into soc/defconfig

arm64: TI K3 defconfig updates for v6.4

* Enable drivers for BeaglePlay and Audio drivers for AM62-SK

For this tag, Bloat-o-meter reports (17.0.0 + v6.3-rc1 base):
add/remove: 61/2 grow/shrink: 3/1 up/down: 17852/-208 (17644)
[...]
Total: Before=27746954, After=27764598, chg +0.06%

* tag 'ti-k3-config-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux:
  arm64: defconfig: Enable audio drivers for AM62-SK
  arm64: defconfig: Enable drivers for BeaglePlay

Link: https://lore.kernel.org/r/20230410140517.ovxnagc4xh3gqath@canary
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14 13:57:00 +02:00
Arnd Bergmann
2425d7e3f1 Qualcomm ARM64 defconfig updates for v6.4
This enables a range of TLMM pinctrl drivers, needed to boot related
 platforms. Multimedia clock drivers for MSM8994 and MSM8998 are enabled
 and the MSM8996 is flagged as a module instead of builtin.
 
 The PMIC_GLINK drivers are enabled, providing USB Type-C and battery
 support on various platforms, and eUSB2 drivers found on SM8550 are
 enabled.
 
 Base drivers for IPQ5332 and IPQ9574 are enabled.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmQ0MmUVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FkGsP/2PH493n6sB3fFCOR5oMO1Y6aEcg
 0/4SLGZzdxkS+wc2MshL8IUixh0fdgQZaav0dvwyMS6PExki303bocQeGp0WMmrH
 G+30i2g5dMxRyKSAtsDXoVLOBe34usKsy6xkfGsvpDUHT2b9j9pXXw95a69XS3iZ
 gIFXB0DVwrpv2U9LJD+RjlHfH2aS3IMFbEa5eX+2TgPfNOCw+zNcdjbd83ofvPIV
 4n1S4ENRgJuCzHMA4K9DZXTtDmHLm+3byt8ZE75zQ61JGDIz9pK88owvfF9FNKMw
 mbiOugkGpRkU4/wWkS+ZjPLfHBGJcedsA90NH3lyduJ5Rk+8nNt2R12K8X2ucohX
 2exx+zV6CYjDQnqakZ6T4Sd9iAMKkigkSIaeINKmMvFl2LplAmLNrvHt18F7Amcm
 JtMJx/J7+uJ0AbTI39DVA9KV1KBmq3TJzBVu23S8Yr3UhzMEYqeaYUmXPSquqJKG
 luQU48rcxXIWA0akGIw36aNiST40ZZeUhVGFH3AMtJfzcYdNUsFMXvbOQ8mpsbre
 VnE/JWRIK/KakQQni4kF9apH53HDHICzdeu5bx0s1hKiKzENMX99bJMA1h5hecO5
 vob5TfX6EWt8u7V03VW6t0IoLsbES/XJOZd2wys+BDVK7VCpWJKzvVRH+9dqcFDt
 hKkbymrKRrjuQqJy
 =9aIE
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmQ5P1cACgkQYKtH/8kJ
 Uiffsw/9EWlWc2xp1AuFLSChSMXtb3uOwL/6W0kMEI3ZgEXvgxLjFX/3cR7C3OzB
 hvFrdrL0JJoZBxQVN7b6p19xzUEQFTjNf35EjjNFZXYNV607CTCrCTz3ULSXVFBB
 UcXB5vqRh9+1C4w2sLVkEgLO9sTzIPxvYHsFhYSpK91eqOvT7W/drjRR1DE9oSTc
 wdIK204L3d8rnDaVfhSM+Hkj+kZoqtE4oNodM3IN2GQ2l2lioOFJtlPHMQtX3vK2
 uG30LUrx7E77YAxMLEd9FwL0J9WePanij7Ryxp+kAdAstLkzQhB3Y36DZ7sxPtn1
 7BJq8gbiCJg+MJE8XleKstfJfo3C9NGpzXE6JYlNq0ME1NcPZKUo4QLs9NSEODPj
 G08ysj9xNBxPd6MQELn91v/aLiOyhFeV4dM5ZHj1fvb/zpJ5uPB8mWFEAexHmfHw
 zLncYXhCLeI87tz6YjORoS+M3VPB2WZ3Db+gVEjenvSj0Z8xV574m8VswEJNYuy0
 Rr8sMsadfGf5kqsSIqQ5HWfII+QKTDiACJMjk9uAnbimz8RdS7h4evktS/BdJl+a
 y4dsmXPkeIJUNseWqVgEDUNQo5+K3z2Z3JUMYxx+N4bI+ufsR4KlhD7Bl+nFdZsv
 Osf58MOOA2YXHgJ1hnF6ZRA6pvXXdaMJu3mG4iG3UGEMtfvyZ+Q=
 =slvv
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-defconfig-for-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/defconfig

Qualcomm ARM64 defconfig updates for v6.4

This enables a range of TLMM pinctrl drivers, needed to boot related
platforms. Multimedia clock drivers for MSM8994 and MSM8998 are enabled
and the MSM8996 is flagged as a module instead of builtin.

The PMIC_GLINK drivers are enabled, providing USB Type-C and battery
support on various platforms, and eUSB2 drivers found on SM8550 are
enabled.

Base drivers for IPQ5332 and IPQ9574 are enabled.

* tag 'qcom-arm64-defconfig-for-6.4' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  arm64: defconfig: Enable IPQ9574 SoC base configs
  arm64: defconfig: remove duplicate TYPEC_UCSI & QCOM_PMIC_GLINK
  arm64: defconfig: add PMIC GLINK modules
  arm64: defconfig: enable Qualcomm pin controller drivers
  arm64: defconfig: Enable qcom msm899{4,8} clk drivers
  arm64: defconfig: Switch msm8996 clk drivers to module
  arm64: defconfig: Enable QCOM eUSB2 SNPS PHY and repeater
  arm64: defconfig: Enable IPQ5332 SoC base configs

Link: https://lore.kernel.org/r/20230410155955.5329-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14 13:56:07 +02:00
Arnd Bergmann
d75eecc3d1 A few more Qualcomm ARM64 DeviceTree fixes for 6.3
The GPIO polarity of the WSA881x shutdown GPIO was inconsistent and had
 to be corrected in the driver, this fixes the polarity in the DeviceTree
 for QRB5165 RB5, SM8250 MTP, Samsung Galaxy Book 2 and Lenovo Yoga C630.
 
 The recent rearrangement of nodes among the IPQ8074 accidentally enabled
 the PCIe PHYs, rather than the PCIe controllers. This is being
 corrected, to restore PCIe functionality.
 
 PMK8280 PON node has the wrong compatible, which recently caused the
 driver to stop probing. This is corrected and the required "pbs" region
 is added.
 
 With support for HBR3 introduced, it's noted that SC7280 Herobrine
 devices are having trouble running at this rate. This drops the claim
 that it's supported, until further analysis can be done.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmQ0LU8VHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3Fa+wP/23+62lBn+5sfsUMo5k/ajYel0Ug
 sfqMS7PDvTPG3AsVhk1R95NrKWb9eWmkpvkwVKsBHD75BeRkuDovIx9yxSLSDZm2
 yWlV514AOLWlhgBu75XzOIDy/J9BQccZPmkBHPJY2I9vpnvlhWnQhaPx4tKgQM8T
 5qKuQUf2Q1sQy/QDcbOrMEpHCBHl+Zm11ffmnFosXtVsF0xEzcGyHcKwCOMSaxg1
 KVxeK0wS3Mt09D4SiPwVNaMA+c0vcexp2jpySoQBMbEmbYOZr3DEU+b5lyZDQqOi
 odMwF4EhMHaGvUCRwM+c4GgdcdXP8IT4eex9ZjdgYblzJsAUfdpFQ5NBB4PeoHPt
 9GOp1n+s4+L3pVm9oyeqUDAUNhE3X6PinOfEScwtgFnQAob45k+6vznVgWt66Apg
 uZAXRE1kONxtJO7bR8hzH+NH395mtb18lHh1MF09KdIR48wl8bK2f91yP0NkSTY8
 N4mKcdy9GwBAmTK3FpEmExOWfmwq0EXdeV2j2RdrVTGNBvTuX9nzpKHUdckk77Ay
 sOS5KfUANAHy/7UIOZHwerPKImRyo+y7gZ8kRcihtUgGOXaESeT1s1KPsTUE2ZqX
 xWuJWRxYizPHdn809iEr5jgAHOAZlKh5RsJ6QQijY1XKNwNLU5/8iLb61x55PbHv
 fnvqlKTO04pDSWD9
 =3Uaf
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmQ5PpEACgkQYKtH/8kJ
 Uic7Vw/8CTiwm+gErIrED6Wm7eCNkzvENkruXboy5437tyrPsnd68sJ+KFs7lznz
 0cXSA06bGKp6rj/i1nodfwO8A0PtEl+RAtCaRuesCI8hQRfkF9o6BOEjpmQ4mYbn
 09nr0ehIatVdwl+RxFn9GZEBQT4yPIt8cTjjgT/zyxUsomYJjDv6dl9iODyX8TBY
 w3J2VInSUW1GRrlf+GD7XPxbIHhHl7tqWG1neBENQirWb7N0xjDuq2X7absWyzgt
 TaPaKYiaqr9X5cE1cfDff+RDoBVZRdtG5H7Gs1u28UaVvmziP04oCxgD8L5cHbX5
 niT8cq0d0+f367o+B9WXfcqJXHk/0q3clWP+Ad5q6Bt7HhAkfxY5eezYUMgoDpN4
 3+fRrdBJBVK7e2OobxK8+tUt5Zu97zIrNL1b0k9+RkauhBL1efuOQ/tAfh4AY4LR
 tguyJ6RBIneNYlAWsWPW7f4TpkR/2XmnFYityjFMLLj75rVK2oC+q1kYU/4/Un6a
 Z9G20Uotr3YXThGQJasZSwh+R0maymIEN7pugg9mrImC5zvGOUXA1DC+6MqdLmd1
 ocqSr3a0p6jRe9t0xSBxS8YtFT33zU9pevOTnIIYrQhyQ1xL8DFXjmoEFbuQdvWG
 Ks2x83/F5OefLoGYXG5Q/K10eKmodaWsuyPsSePOkOTo4VWZEoE=
 =ikZD
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-fixes-for-6.3-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/fixes

A few more Qualcomm ARM64 DeviceTree fixes for 6.3

The GPIO polarity of the WSA881x shutdown GPIO was inconsistent and had
to be corrected in the driver, this fixes the polarity in the DeviceTree
for QRB5165 RB5, SM8250 MTP, Samsung Galaxy Book 2 and Lenovo Yoga C630.

The recent rearrangement of nodes among the IPQ8074 accidentally enabled
the PCIe PHYs, rather than the PCIe controllers. This is being
corrected, to restore PCIe functionality.

PMK8280 PON node has the wrong compatible, which recently caused the
driver to stop probing. This is corrected and the required "pbs" region
is added.

With support for HBR3 introduced, it's noted that SC7280 Herobrine
devices are having trouble running at this rate. This drops the claim
that it's supported, until further analysis can be done.

* tag 'qcom-arm64-fixes-for-6.3-2' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  arm64: dts: qcom: sc7280: remove hbr3 support on herobrine boards
  arm64: dts: qcom: sc8280xp-pmics: fix pon compatible and registers
  arm64: dts: qcom: ipq8074-hk10: enable QMP device, not the PHY node
  arm64: dts: qcom: ipq8074-hk01: enable QMP device, not the PHY node
  arm64: dts: qcom: qrb5165-rb5: Use proper WSA881x shutdown GPIO polarity
  arm64: dts: qcom: sm8250-mtp: Use proper WSA881x shutdown GPIO polarity
  arm64: dts: qcom: sdm850-samsung-w737: Use proper WSA881x shutdown GPIO polarity
  arm64: dts: qcom: sdm850-lenovo-yoga-c630: Use proper WSA881x shutdown GPIO polarity

Link: https://lore.kernel.org/r/20230410153850.4752-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14 13:52:48 +02:00
Arnd Bergmann
43950556b7 Lower sd card speeds for two boards to make them run more reliable,
missing 32k clock definition for Anbric xx3 devices, missing cache-levels
 for rk3588, fixed rk3326-board display supplies and more dt-schema fixes.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmQx/6UQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgYMiB/45skI/LcajSjuqIJpAC+cDeCs/IaQb6aev
 4fnwBRYgb836JvThTGeOn4KRe2avnZMfyjn3IlkHhYBHtLukS8jcuNuU+T+oD1/n
 Yss63kUSbMCvNl13uCSz/dqsaFZJ1x8hHth0b19PlGWnnBgtzWWWScr371m+PsF6
 2x2dnteRvQcUyWa8/5Xavgc8bseMds2SiKEc9Y58MTwRVL/pqfh9AFJhsWRJYFsN
 x0SU+Gwopg2qW+Mfdm6DOK1m08Vu6Uaw1zftF06/oAnDqvYMiVSWfsFIpW5eEi/T
 kb5ovzTTDwnLz/n8jkG1ldB7hQY362NQjyIc/GoUab/03yxyFE63
 =JS4f
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmQ5PlAACgkQYKtH/8kJ
 UifHPRAAwF4jqjWejgzFnHsB7RPmjvUtvuobU0gmI25HIjKnWLdcuS4IFXWvFgLU
 gxc1oQS1m4C7eM8ceI/jGR3oDZfhKXCIrpif9Tg+LxtmwRaeo3tbpasPANwiO+Eq
 BI6LssLFStBblwwaaMzC1E/8fCdBsZYVbQe4LqsJmzb9hOvFCih4At1YFHKQXcHM
 L+1sCdpKMo/f/AQ3sjS3kEYnFwrIYdskxImHXmYkYe2e1OMkXSQcWjz958A7GPB1
 kdm5yMPARR8FZxY9RZBf6QLg3xnIc/OqraeHYCjpFLs+gDGGoEMGwwBW5u3/JJmE
 SLTq2EYYf6szdVh156zjfMtCFCIM51BXoWwlB3swhWI80WD87lzrKzYYRbW5H6jp
 5SIW74a8vR2OxOKyQu00Qb8S0SsTJF5Ord9EImYsm6rXpQnSs894kp18zNjmjUDh
 FLxNhMMuY8aiwbypYUm4YRFN9BJJth3SKLXIyP1xxBEpN3IIeQSIXeD9ZoA+sc6e
 OdEREqMwQV9xPq84JQLsxTqjcSCwO1MJECqwNvKj07w0qdaIMgDAgirLCTXSPJPh
 b8b2p07Dpb5wFKw/FwGSBuvi3DEzSLhK7zbJzky8zNhmWNAx0VS7gR/koFQDGxR0
 gNcVU5vPB2ujvBdW76MegqynP2UowsGdD3Sy3KlB/FAZ+LTGMGY=
 =Yjl8
 -----END PGP SIGNATURE-----

Merge tag 'v6.3-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/fixes

Lower sd card speeds for two boards to make them run more reliable,
missing 32k clock definition for Anbric xx3 devices, missing cache-levels
for rk3588, fixed rk3326-board display supplies and more dt-schema fixes.

* tag 'v6.3-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: dts: rockchip: correct panel supplies on some rk3326 boards
  arm64: dts: rockchip: use just "port" in panel on RockPro64
  arm64: dts: rockchip: use just "port" in panel on Pinebook Pro
  arm64: dts: rockchip: Remove non-existing pwm-delay-us property
  arm64: dts: rockchip: Add clk_rtc_32k to Anbernic xx3 Devices
  arm64: dts: rockchip: add rk3588 cache level information
  arm64: dts: rockchip: Lower SD card speed on rk3399 Pinebook Pro
  arm64: dts: rockchip: Lower sd speed on rk3566-soquartz
  ARM: dts: rockchip: fix a typo error for rk3288 spdif node
  arm64: dts: rockchip: Fix rk3399 GICv3 ITS node name

Link: https://lore.kernel.org/r/10559306.CDJkKcVGEf@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-14 13:51:43 +02:00
Linus Torvalds
829cca4d17 Including fixes from bpf, and bluetooth.
Not all that quiet given spring celebrations, but "current" fixes
 are thinning out, which is encouraging. One outstanding regression
 in the mlx5 driver when using old FW, not blocking but we're pushing
 for a fix.
 
 Current release - new code bugs:
 
  - eth: enetc: workaround for unresponsive pMAC after receiving
    express traffic
 
 Previous releases - regressions:
 
  - rtnetlink: restore RTM_NEW/DELLINK notification behavior,
    keep the pid/seq fields 0 for backward compatibility
 
 Previous releases - always broken:
 
  - sctp: fix a potential overflow in sctp_ifwdtsn_skip
 
  - mptcp:
    - use mptcp_schedule_work instead of open-coding it and make
      the worker check stricter, to avoid scheduling work on closed
      sockets
    - fix NULL pointer dereference on fastopen early fallback
 
  - skbuff: fix memory corruption due to a race between skb coalescing
    and releasing clones confusing page_pool reference counting
 
  - bonding: fix neighbor solicitation validation on backup slaves
 
  - bpf: tcp: use sock_gen_put instead of sock_put in bpf_iter_tcp
 
  - bpf: arm64: fixed a BTI error on returning to patched function
 
  - openvswitch: fix race on port output leading to inf loop
 
  - sfp: initialize sfp->i2c_block_size at sfp allocation to avoid
    returning a different errno than expected
 
  - phy: nxp-c45-tja11xx: unregister PTP, purge queues on remove
 
  - Bluetooth: fix printing errors if LE Connection times out
 
  - Bluetooth: assorted UaF, deadlock and data race fixes
 
  - eth: macb: fix memory corruption in extended buffer descriptor mode
 
 Misc:
 
  - adjust the XDP Rx flow hash API to also include the protocol layers
    over which the hash was computed
 
 Signed-off-by: Jakub Kicinski <kuba@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEE6jPA+I1ugmIBA4hXMUZtbf5SIrsFAmQ4ZrsACgkQMUZtbf5S
 IruWUQ/9F+HlnHf3Sv08zGlnV++vLaJ/Ld8C2YNYNxRwuoJvcCyikQ/ZfUKdKAoS
 kCf0XqFD2SMl8wHpCQBhK4uXvKBdBMx6L6wEp7dbDciGl/+5yihe9opBBXKekWbB
 ULRZcZE7RACri/QsXQhD7Y8p530xnYWQXO8ZMjR3vOAWxplJtBDNDnXi7hqtxQpW
 Vzwl1ntvD1msmxhvy0UZrgeesL8R3UckFvqYEqnINeyd8E8HB1dAOg899/ZPUbjA
 UoEw5VsSBSr9DE7+Fs6uD8trBxQ1CrdRVJjhRhwivHk8/Ro7dIzjcVV30ei3wucz
 0RiNvCqypkeLeRrcVlSk8lR5r9FBGvhDMFbcGM8lHnxSc0WB+Sj+2iup4fpTE8/p
 VUIvhhzuBuXU4Sc022pm6BL5DBSKdnJRquFq6XCTwnQM6v7fvzu1yWNXsQom8Nbi
 1/ZcFdj27FHwMpU0JPZ4PFxT7Ta830UyulVZuyWA+zEzlN7DvW3O7bGQC72GEuID
 Xc58D4kVtywzbntFmUjuhXCD/6vvD5WW5orLpMWg5SH9F14prt3C9OFSpTwTTq+W
 uPBEslhnhhCPecTNo2iFPLX3bN67n8KDVUWua1AHaqmcK7QFGs0njJGGLpFdHMll
 SuNgrNrtQE9EHH8XL6VbSD2zf35ZfoKVg6qvL3oeLzXkGkZrnls=
 =W+J2
 -----END PGP SIGNATURE-----

Merge tag 'net-6.3-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

Pull networking fixes from Jakub Kicinski:
 "Including fixes from bpf, and bluetooth.

  Not all that quiet given spring celebrations, but "current" fixes are
  thinning out, which is encouraging. One outstanding regression in the
  mlx5 driver when using old FW, not blocking but we're pushing for a
  fix.

  Current release - new code bugs:

   - eth: enetc: workaround for unresponsive pMAC after receiving
     express traffic

  Previous releases - regressions:

   - rtnetlink: restore RTM_NEW/DELLINK notification behavior, keep the
     pid/seq fields 0 for backward compatibility

  Previous releases - always broken:

   - sctp: fix a potential overflow in sctp_ifwdtsn_skip

   - mptcp:
      - use mptcp_schedule_work instead of open-coding it and make the
        worker check stricter, to avoid scheduling work on closed
        sockets
      - fix NULL pointer dereference on fastopen early fallback

   - skbuff: fix memory corruption due to a race between skb coalescing
     and releasing clones confusing page_pool reference counting

   - bonding: fix neighbor solicitation validation on backup slaves

   - bpf: tcp: use sock_gen_put instead of sock_put in bpf_iter_tcp

   - bpf: arm64: fixed a BTI error on returning to patched function

   - openvswitch: fix race on port output leading to inf loop

   - sfp: initialize sfp->i2c_block_size at sfp allocation to avoid
     returning a different errno than expected

   - phy: nxp-c45-tja11xx: unregister PTP, purge queues on remove

   - Bluetooth: fix printing errors if LE Connection times out

   - Bluetooth: assorted UaF, deadlock and data race fixes

   - eth: macb: fix memory corruption in extended buffer descriptor mode

  Misc:

   - adjust the XDP Rx flow hash API to also include the protocol layers
     over which the hash was computed"

* tag 'net-6.3-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (50 commits)
  selftests/bpf: Adjust bpf_xdp_metadata_rx_hash for new arg
  mlx4: bpf_xdp_metadata_rx_hash add xdp rss hash type
  veth: bpf_xdp_metadata_rx_hash add xdp rss hash type
  mlx5: bpf_xdp_metadata_rx_hash add xdp rss hash type
  xdp: rss hash types representation
  selftests/bpf: xdp_hw_metadata remove bpf_printk and add counters
  skbuff: Fix a race between coalescing and releasing SKBs
  net: macb: fix a memory corruption in extended buffer descriptor mode
  selftests: add the missing CONFIG_IP_SCTP in net config
  udp6: fix potential access to stale information
  selftests: openvswitch: adjust datapath NL message declaration
  selftests: mptcp: userspace pm: uniform verify events
  mptcp: fix NULL pointer dereference on fastopen early fallback
  mptcp: stricter state check in mptcp_worker
  mptcp: use mptcp_schedule_work instead of open-coding it
  net: enetc: workaround for unresponsive pMAC after receiving express traffic
  sctp: fix a potential overflow in sctp_ifwdtsn_skip
  net: qrtr: Fix an uninit variable access bug in qrtr_tx_resume()
  rtnetlink: Restore RTM_NEW/DELLINK notification behavior
  net: ti/cpsw: Add explicit platform_device.h and of_platform.h includes
  ...
2023-04-13 15:33:04 -07:00
Linus Torvalds
aa4c9185f0 Two ARM fixes:
* Ensure the guest PMU context is restored before the first KVM_RUN,
   fixing an issue where EL0 event counting is broken after vCPU
   save/restore
 
 * Actually initialize ID_AA64PFR0_EL1.{CSV2,CSV3} based on the
   sanitized, system-wide values for protected VMs
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmQ0944UHHBib256aW5p
 QHJlZGhhdC5jb20ACgkQv/vSX3jHroO3mAf8CpzKs1SSfx4OpH1rPHgnZBmMyb9x
 cJe+W330RCuM96sUXFah7kealS8KIVLFk1E1k2gUIKBtm7cExWeWm6NFpazeu4aT
 c4R6dOGoXZ9i0E0l807onh0NCZp/cV6FnTnfYnS44Re6Bpo1V7QODP8cVWww1IIK
 w+4I4Fvcz/ensjgzh8z3h6o0Jz8YWWgAS17Vcic6ezVCEX5HC1sltXB9y1NKMduc
 vYvT7At8Rb4GhqvfCfsAiNW7iV5dftZe5LHup0Rd6FmzvQGkaTGd7aoekf46IQV2
 Kl7yNpOH6GAUjxCjf8Dvfat4IsFsrfTESGPI15s0cS9BG2d1dXzwLVcHaQ==
 =bYva
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull kvm fixes from Paolo Bonzini:
 "Two ARM fixes:

   - Ensure the guest PMU context is restored before the first KVM_RUN,
     fixing an issue where EL0 event counting is broken after vCPU
     save/restore

   - Actually initialize ID_AA64PFR0_EL1.{CSV2,CSV3} based on the
     sanitized, system-wide values for protected VMs"

* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
  KVM: arm64: Advertise ID_AA64PFR0_EL1.CSV2/3 to protected VMs
  KVM: arm64: PMU: Restore the guest's EL0 event counting after migration
2023-04-11 09:36:42 -07:00
Jakub Kicinski
029294d019 bpf-for-netdev
-----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTFp0I1jqZrAX+hPRXbK58LschIgwUCZDCaHgAKCRDbK58LschI
 g2CXAP9sgjqCaRhfSSYWbESKWxokJAa1j6v7phNjR9iqHrBjzwEAg6aDHOUqcYpD
 Zlp/5JV9HIkc1wTmuIUuI74YAVZBJAU=
 =V2jo
 -----END PGP SIGNATURE-----

Merge tag 'for-netdev' of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf

Daniel Borkmann says:

====================
pull-request: bpf 2023-04-08

We've added 4 non-merge commits during the last 11 day(s) which contain
a total of 5 files changed, 39 insertions(+), 6 deletions(-).

The main changes are:

1) Fix BPF TCP socket iterator to use correct helper for dropping
   socket's refcount, that is, sock_gen_put instead of sock_put,
   from Martin KaFai Lau.

2) Fix a BTI exception splat in BPF trampoline-generated code on arm64,
   from Xu Kuohai.

3) Fix a LongArch JIT error from missing BPF_NOSPEC no-op, from George Guo.

4) Fix dynamic XDP feature detection of veth in xdp_redirect selftest,
   from Lorenzo Bianconi.

* tag 'for-netdev' of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf:
  selftests/bpf: fix xdp_redirect xdp-features selftest for veth driver
  bpf, arm64: Fixed a BTI error on returning to patched function
  LoongArch, bpf: Fix jit to skip speculation barrier opcode
  bpf: tcp: Use sock_gen_put instead of sock_put in bpf_iter_tcp
====================

Link: https://lore.kernel.org/r/20230407224642.30906-1-daniel@iogearbox.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-04-07 18:23:37 -07:00
Linus Torvalds
d523dc7b16 Fix uninitialised variable warning (from smatch) in the arm64 compat
alignment fixup code.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE5RElWfyWxS+3PLO2a9axLQDIXvEFAmQv6MkACgkQa9axLQDI
 XvHVyg//WpG3mikeENgSKvWSQYvieoHPKn+11u9Q/mtIcgZhr2KH/3kDmWNYBHx8
 E0ZjK68WjnegYMAar/aIBomP+cV1wgMJ17qDCwegIrcmrXXneEnoZ1ID+to/7AEh
 JI74Sit9jHIyB2evmo11B1zhudqoovtPKSLT96sOhb1yyUmlBPH8cmyjfLV+ahMW
 e+WyiF3BqRQg2KSXmG1umJwqvFkbzfVHDTmpuNswmkr9uvwuj0C2fp5shDROAR2d
 DHW/luyeiv9cRYWNnH1HAtKbxCNAJAOcauSM5B5iv5LVMM7u33hv1gpoVFXWlLDy
 izME1O0d+7ytGWGFI5vi867FSlK3GnB/K/rTXYPNpY8Akuic3Vv2A6a+i8inRJMb
 qrM0EwY4ms0Pzk8p+WIzfbHrQxRbv0IFwiZtp5wid0KJCQ77fHh6bE/p+HciBMk9
 3VYxdJNqgELzrImGVuI3gl6uvLnjGIZgYZS29kykuTzYt718CUZZcPgHj7ycDShB
 EcnOfpqIPUBKy0hNdWK0z2P0O5SR/co20fNvJKivnVQHWUsJfgESHJTsBcQvIz/h
 TqAHjOM1SzOkjtUApIzxQCnLW2SBGLF4/fvH1Iyrjt/8+HFiR7fVnZrww7lbvb8V
 jyfxtLMaOhNEcts4yAPC2+o67Q4P6/vE2gNZFkWV8AFMoy8RcIU=
 =JiMH
 -----END PGP SIGNATURE-----

Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

Pull arm64 fix from Catalin Marinas:
 "Fix uninitialised variable warning (from smatch) in the arm64 compat
  alignment fixup code"

* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
  arm64: compat: Work around uninitialized variable warning
2023-04-07 13:27:02 -07:00
Devi Priya
34d1a90bdb arm64: defconfig: Enable IPQ9574 SoC base configs
Enables clk & pinctrl related configs for Qualcomm IPQ9574 SoC

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Devi Priya <quic_devipriy@quicinc.com>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230316072940.29137-7-quic_devipriy@quicinc.com
2023-04-07 10:30:30 -07:00
Abhinav Kumar
75eab749e7 arm64: dts: qcom: sc7280: remove hbr3 support on herobrine boards
There are some interop issues seen across a few DP monitors with
HBR3 and herobrine boards where the DP display stays blank with hbr3.
This is still under investigation but in preparation for supporting
higher resolutions, its better to disable HBR3 till the issues are
root-caused as there is really no guarantee which monitors will show
the issue and which would not.

This can be enabled back after successful validation across more DP
sinks.

Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230329233416.27152-1-quic_abhinavk@quicinc.com
2023-04-07 09:26:37 -07:00
Paolo Bonzini
0bf9601f8e KVM/arm64 fixes for 6.3, part #3
- Ensure the guest PMU context is restored before the first KVM_RUN,
    fixing an issue where EL0 event counting is broken after vCPU
    save/restore
 
  - Actually initialize ID_AA64PFR0_EL1.{CSV2,CSV3} based on the
    sanitized, system-wide values for protected VMs
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQSNXHjWXuzMZutrKNKivnWIJHzdFgUCZC2ZbwAKCRCivnWIJHzd
 FvovAP9aooqUBBs8w2myh8SXCv7dJOg88r6fKS5vCqMdkY7OhwD9GXA7hWU2dXdy
 X1L8qq6C7R+GtIY/kDm9E2HkNKg7rQc=
 =nfXd
 -----END PGP SIGNATURE-----

Merge tag 'kvmarm-fixes-6.3-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD

KVM/arm64 fixes for 6.3, part #3

 - Ensure the guest PMU context is restored before the first KVM_RUN,
   fixing an issue where EL0 event counting is broken after vCPU
   save/restore

 - Actually initialize ID_AA64PFR0_EL1.{CSV2,CSV3} based on the
   sanitized, system-wide values for protected VMs
2023-04-06 13:34:19 -04:00
Arnd Bergmann
a425efcb6e i.MX fixes for 6.3, 2nd round:
- Fix 'reg' address length for i.MX8MP LCDIF2 device.
 - A couple of changes from Fabio Estevam to fix DTC warnings caused
   unnecessary address/size cells.
 - Re-enable PCI driver support in imx_v6_v7_defconfig.
 - Fix PMIC clock source property for imx8mm-evk board.
 - A couple of fixes from Peng Fan to correct off-on delay property for
   i.MX8 Verdin boards.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmQuKr0UHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM65nQgAgp0xA4VOc/4zgazrhIhzYru/E2Q/
 Acd4Rthp7aUATWXjQH1bGM0nNdgp+SLHAarpxysVY0DTXlE92h0eYY+mUohAeX7p
 X/aXY3OlcmXwq8VqZvUsgmgjIugDpp+T86yH7yEWR2/cdqRtX8A7E4NBCEvQa4PC
 YkyDMc+Vn9JUxry+oKVdbQ9GKG7UEhFmoyuN0kq1wuua8iKBqsq3CSkH74aRHxbF
 EpHVSLMUGflAHILofqcZoix+UGR7bV5xBypVh6APCLJhlx9vjk5R+rPVzvpvWUJz
 N8+R8iS9YCSAx8BSYIPM1vqGq3dDB0wjrjpdAhCmc2lwOOIvtkB2516VkA==
 =XK6g
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmQugGEACgkQmmx57+YA
 GNm01w/+I7uc4gGa72VFhDA9TPCIw0Yz47qSHE+Up2UHg3GOEuNaxLER6kCFdxHE
 ZCEHxvl+u6rM99GU2bPeCbcHa8Ig0wksGTbAG2EmsfAjoZfpCyNYGQP02hPIOYhV
 dPs57iol6KLOExWejdLvLM73viY9gJa+rAlS27aOxAtwgaWtlK2ZbjUCBV8EQ1Db
 UFAu3R4Rd517ohNmn9e1x9QJcW03KnNO34wVZNV0siNLLYdVg7FAvsTvNX7JMwCi
 QmWYZFaEKtXbWsZM3QgSjQvqx98/KY3JGIxhhYD9nq00hd6VRLeMETHPvO/6v9mw
 OtEFXvTLmAUxXGYdP8eZ4vQEe7QaBLD1WTRD/iAGf0EPuV6lws5tNf9RsziCmcdB
 8bw7lBJByqIqA2OCVwhFBUq4ZvBChN9ftxpkGsxE+2FBKkYgn0ki6Tyw+iZAhWyV
 /Nku/cQePyE/4kPe/9Jpt4MlGdsISvL9ZReLY60fe5z433m6vA5p7G2ajENI0RjC
 EsM/I8b7hGCFmEGKbsS+xHa36FwJpCSIQisZWvS8SGrB6sNnhQOg+MVjyKo/bTz9
 1Amq4R4CQQDF76ocHM0pYbUr6cc/hL8oirqzjg74ISivOHxixULMElivpOycCb9x
 pf1AUzlgmXexN92WX0CdhG7AHhBTRPP/UcvUlTabKbimXzB112o=
 =or6G
 -----END PGP SIGNATURE-----

Merge tag 'imx-fixes-6.3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes

i.MX fixes for 6.3, 2nd round:

- Fix 'reg' address length for i.MX8MP LCDIF2 device.
- A couple of changes from Fabio Estevam to fix DTC warnings caused
  unnecessary address/size cells.
- Re-enable PCI driver support in imx_v6_v7_defconfig.
- Fix PMIC clock source property for imx8mm-evk board.
- A couple of fixes from Peng Fan to correct off-on delay property for
  i.MX8 Verdin boards.

* tag 'imx-fixes-6.3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx_v6_v7_defconfig: Fix unintentional disablement of PCI
  ARM: dts: imx6ull-colibri: Remove unnecessary #address-cells/#size-cells
  ARM: dts: imx7d-remarkable2: Remove unnecessary #address-cells/#size-cells
  arm64: dts: imx8mp-verdin: correct off-on-delay
  arm64: dts: imx8mm-verdin: correct off-on-delay
  arm64: dts: imx8mm-evk: correct pmic clock source
  arm64: dts: imx8mp: fix address length for LCDIF2

Link: https://lore.kernel.org/r/20230406021602.GP11367@dragon
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-06 10:18:41 +02:00
Krzysztof Kozlowski
60a655debd arm64: dts: rockchip: correct panel supplies on some rk3326 boards
The Anbernic and Odroid Go have different panels and take differently
named supplies, so move all the supplies to DTS defining actual panel to
fix warnings like:

  rk3326-odroid-go3.dtb: panel@0: 'IOVCC-supply' is a required property
  rk3326-odroid-go3.dtb: panel@0: 'iovcc-supply', 'vdd-supply' do not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230326204520.80859-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2023-04-05 19:38:03 +02:00
Krzysztof Kozlowski
2dd16a23e8 arm64: dts: rockchip: use just "port" in panel on RockPro64
The panel bindings expect to have only one port, thus they do not allow
to use "ports" node:

  rk3399-rockpro64.dtb: panel@0: 'ports' does not match any of the regexes: 'pinctrl-[0-9]+'

There is only one endpoint, so use simpler form without "reg".

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230326204520.80859-3-krzysztof.kozlowski@linaro.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2023-04-05 19:36:49 +02:00
Krzysztof Kozlowski
5438b349c0 arm64: dts: rockchip: use just "port" in panel on Pinebook Pro
The panel bindings expect to have only one port, thus they do not allow
to use "ports" node:

  rk3399-pinebook-pro.dtb: edp-panel: 'ports' does not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230326204520.80859-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2023-04-05 19:36:49 +02:00
Ard Biesheuvel
32d8599968 arm64: compat: Work around uninitialized variable warning
Dan reports that smatch complains about a potential uninitialized
variable being used in the compat alignment fixup code.

The logic is not wrong per se, but we do end up using an uninitialized
variable if reading the instruction that triggered the alignment fault
from user space faults, even if the fault ensures that the uninitialized
value doesn't propagate any further.

Given that we just give up and return 1 if any fault occurs when reading
the instruction, let's get rid of the 'success handling' pattern that
captures the fault in a variable and aborts later, and instead, just
return 1 immediately if any of the get_user() calls result in an
exception.

Fixes: 3fc24ef32d ("arm64: compat: Implement misalignment fixups for multiword loads")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/r/202304021214.gekJ8yRc-lkp@intel.com/
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20230404103625.2386382-1-ardb@kernel.org
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2023-04-05 17:51:47 +01:00
Peng Fan
02c447a0d7 arm64: dts: imx8mp-verdin: correct off-on-delay
The property should be off-on-delay-us, not off-on-delay

Fixes: a39ed23bdf ("arm64: dts: freescale: add initial support for verdin imx8m plus")
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-05 22:24:23 +08:00
Peng Fan
130c1f4306 arm64: dts: imx8mm-verdin: correct off-on-delay
The property should be off-on-delay-us, not off-on-delay

Fixes: 6a57f224f7 ("arm64: dts: freescale: add initial support for verdin imx8m mini")
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-05 22:24:15 +08:00
Paul E. McKenney
79cf833be6 kvm: Remove "select SRCU"
Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it.  Therefore, remove the "select SRCU"
Kconfig statements from the various KVM Kconfig files.

Acked-by: Sean Christopherson <seanjc@google.com> (x86)
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Cc: Huacai Chen <chenhuacai@kernel.org>
Cc: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Sean Christopherson <seanjc@google.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: <kvm@vger.kernel.org>
Acked-by: Marc Zyngier <maz@kernel.org> (arm64)
Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
Acked-by: Anup Patel <anup@brainfault.org> (riscv)
Acked-by: Heiko Carstens <hca@linux.ibm.com> (s390)
Reviewed-by: John Ogness <john.ogness@linutronix.de>
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
2023-04-05 13:47:42 +00:00
Peng Fan
85af7ffd24 arm64: dts: imx8mm-evk: correct pmic clock source
The osc_32k supports #clock-cells as 0, using an id is wrong, drop it.

Fixes: a6a355ede5 ("arm64: dts: imx8mm-evk: Add 32.768 kHz clock to PMIC")
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-05 21:21:56 +08:00
Besar Wicaksono
f462eb1d0d arm64: defconfig: Enable ARM CoreSight PMU driver
Enable driver for Coresight PMU arch device.

Signed-off-by: Besar Wicaksono <bwicaksono@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
2023-04-05 15:08:34 +02:00
Johan Hovold
ad8cd35c58 arm64: dts: qcom: sc8280xp-pmics: fix pon compatible and registers
The pmk8280 PMIC PON peripheral is gen3 and uses two sets of registers;
hlos and pbs.

This specifically fixes the following error message during boot when the
pbs registers are not defined:

	PON_PBS address missing, can't read HW debounce time

Note that this also enables the spurious interrupt workaround introduced
by commit 0b65118e6b ("Input: pm8941-pwrkey - add software key press
debouncing support") (which may or may not be needed).

Fixes: ccd3517faf ("arm64: dts: qcom: sc8280xp: Add reference device")
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tested-by: Steev Klimaszewski <steev@kali.org> #Thinkpad X13s
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230327122948.4323-1-johan+linaro@kernel.org
2023-04-04 20:37:45 -07:00
Neil Armstrong
7b4c00e9cc arm64: defconfig: remove duplicate TYPEC_UCSI & QCOM_PMIC_GLINK
Both configs were already applied by 2 separate changes,
fix this to avoid:
arch/arm64/configs/defconfig:989:warning: override: reassigning to symbol TYPEC_UCSI
arch/arm64/configs/defconfig:1232:warning: override: reassigning to symbol QCOM_PMIC_GLINK

Fixes: 4ffd0b0019 ("arm64: defconfig: add PMIC GLINK modules")
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230324-topic-sm8450-upstream-defconfig-fixup-v1-1-2d75cc9b3c3d@linaro.org
2023-04-04 20:22:41 -07:00
Fuad Tabba
e81625218b KVM: arm64: Advertise ID_AA64PFR0_EL1.CSV2/3 to protected VMs
The existing pKVM code attempts to advertise CSV2/3 using values
initialized to 0, but never set. To advertise CSV2/3 to protected
guests, pass the CSV2/3 values to hyp when initializing hyp's
view of guests' ID_AA64PFR0_EL1.

Similar to non-protected KVM, these are system-wide, rather than
per cpu, for simplicity.

Fixes: 6c30bfb18d ("KVM: arm64: Add handlers for protected VM System Registers")
Signed-off-by: Fuad Tabba <tabba@google.com>
Link: https://lore.kernel.org/r/20230404152321.413064-1-tabba@google.com
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
2023-04-04 15:52:06 +00:00
Arnd Bergmann
f0cda04203 Renesas ARM defconfig updates for v6.4
- Enable support for the Dialog Semiconductor DA7213 Codec, and the
     Renesas RZ/V2M xHCI and USB3.1 DRD controllers in the arm64
     defconfig,
   - Disable support for the obsolete R-Car H3 ES1.* (R8A77950) SoC in
     the arm64 defconfig,
   - Refresh shmobile_defconfig for v6.3-rc1,
   - Enable additional support for RZ/N1 platforms in multi_v7_defconfig.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCZCFJcgAKCRCKwlD9ZEnx
 cOjEAP4/lrD9r6ZSsknhf3WgVEuHiSWfLQzMlEUfCBCTPV+LYAD/WvO8Xh/jFPUm
 398UvhUK3J8Gn9ZCN2MiXSKmvkI2ZAw=
 =CsJt
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmQsKMMACgkQmmx57+YA
 GNlcpw//QK0OJ1R4XorDj1vMIilZHUKDPWlSy1Csz9idtRMSDi0Z6rIyteZuGMYO
 MDs2rdY4ulFNQ08kSfRuBEe3jPKMFT1ImKLzV7j6G39bkA5cZvZHoqkg+eNgMYvT
 IhMFz/z1FuFLhAgF6InMbVb28gQyDj3XKf6/SH42ZI3E1K91UAysoMFFsxQIQDQJ
 jQ0ZPd+g2aTSUWj5RqtYNIScmEhPy5NZudkpv/neNhZQwMgtcWnvF993lBLo8PFJ
 iB76dnAvSdPh2izTEDyetysUrHacH4RcNeR45EadRiF6aVyDkJ25kfGkW5zj9n+s
 ZyqzeqmqKTg5KtcqI1bsLzorCDTUhNtYwPNwWDSKhes8ZNH7f5CNDzXwij8rA05H
 0ngYPvu0lPUowkGqExhqi38bHhSuYxz3Dm0+7V/9/EMOeDyiAZ5TcM7imKbnPWFJ
 646/kn/Czd2jc41Qr0gsbPxqARrxypXDpIjEMZUCx1rIW9yxj1Y/d48kyf5OigyK
 MhRhZLhETJYKsyHx6Ys+d4Zzp9wrI8qLq9//cgV0LiLEXTZrcMcOd1vIhOlo56s/
 QjhK4/XK3kmrYk4hRg7eaSCAb3d9t0cNUJ7vBj+AxKibT51N5fOWzLV4r2uxMKOT
 hLXSbaheC108poeFU7Qd8ymmvyZNW0SwDyUDNoO1IhKlTIRDA1E=
 =uj39
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm-defconfig-for-v6.4-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/defconfig

Renesas ARM defconfig updates for v6.4

  - Enable support for the Dialog Semiconductor DA7213 Codec, and the
    Renesas RZ/V2M xHCI and USB3.1 DRD controllers in the arm64
    defconfig,
  - Disable support for the obsolete R-Car H3 ES1.* (R8A77950) SoC in
    the arm64 defconfig,
  - Refresh shmobile_defconfig for v6.3-rc1,
  - Enable additional support for RZ/N1 platforms in multi_v7_defconfig.

* tag 'renesas-arm-defconfig-for-v6.4-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  arm64: defconfig: Enable RZ/V2M xHCI and USB3.1 DRD controller support
  ARM: multi_v7_defconfig: Enable additional support for RZ/N1 platforms
  ARM: shmobile: defconfig: Refresh for v6.3-rc1
  arm64: defconfig: Disable R-Car H3 ES1.*
  arm64: defconfig: Enable DA7213 Codec

Link: https://lore.kernel.org/r/cover.1679907057.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-04 15:40:19 +02:00
Arnd Bergmann
0311454f4f Amlogic fixes for v6.3-rc:
- fix conflicts between DMC memory space and Amlogic perf driver
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmQkLLkACgkQd9zb2sjI
 SdFm7Q//aDal2EZ4Iu6a0tikywQHVR2FcrDE0TXQLNaPc4o6/RFkwSOOzHyKRuud
 HlpHsTgQO/C11xWhbkuld/Md3hwa8u3xr1Fy7hX6k3X+FDzYP0XH6mFSSDbhybGw
 MrqwGyNdLOxUvDlzbktNkhAwckRck5CFgBSN5S3rGdQlQK0FgNoSeokmy25liZPv
 BYl/Q3eprvke1Nr6J7IlcHtiOQDOgiO5HtWm6ro2rblsrn63GCrbN7lSFpkp8/1n
 cf/4Xsnc/BjdN1sVs/1koq85AbQ6DNZLz82vmk5QrE8WA6gkABsK6C8u8/jy2UAz
 uVxlwWIr+6WNCguToI+bwpkRnwHb6Xmgw67fZq82YXYcZxzUBacfQCvcqIreaKTz
 9qN2eWVBfIt6qw08Sb0q77Fgexj4W8AJ95LAnwpy7u0Bk+FPNHcT86J131CPrd7s
 cTi20UaKlmxu2tE9KVSPIXV3j4GPdr/VAjKloXeDyWH/U8v+G1eFb2Afepj9BS4J
 numtcFRw4+KkwlVKXNWkUxlAsY2GhPp9/WZsiYa1TZlnWmXXVVZ9C6NuDJmU6mNO
 WwdTELakPHTzEf3JUR7jKMTH3NxM6Q6A/y1PKe+1LP9WOY1lGCgwHUgYg4MdEnrN
 LVBhwUFxQFFxGd4kXxudmG+t7fqfOq076ala2WLXADxrKA58kx0=
 =fPrA
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmQq9e4ACgkQmmx57+YA
 GNmX4g/9H/d4aTPzLsOM+hRTuKu1I7ndnXUzkU8G+uo27xJYaqa8N0Wuh7W1NZ/T
 pAsR1Mo60L8oUxSxJ3d8/AQE+UlGmCvB/B6OqeqHlU139NHYtRbFF3VZBD25k8Qb
 /fbMc5hKtTInTqHTsb38NUQhaRY7Pk6JTfGh3oTDN6cIgkd96esIeNaMq9ocDJBN
 KGj4RetJT31fb1xLHoeGiFkmfW6eUZ9f2q6s9O3y1eHmUn6sso3faM/Zuyvm0fje
 aOMNvfswpSRZED6DLRI+xvfq04I3Pm11QnoZkIwM5DhTu+5FBCFuPuQCzjwWrzj+
 UcFhgRCpQHTUx/mHFI7oRva5AWeDg7TrXSti5yknaH8mrYj39q1NpwBsOQYfB7ZS
 o5kaWIwTNJ0i2dgKibXE1ANg1eeE6E549/EKRmg7IMrMeF/nIru7ML1eAzZO8OxE
 ppUDiOQrsl5UnXLkT2/l8pCG8oYkVxIK966YKtk0ClgKLQGhCM1xYUf1WfqdbQ+4
 GeztnYkl3ooMDcTiGpmi7yE5MhdG8jyqSCrebbnOOkENIfyLDMdAvK/pb7rYwKd3
 kpIFyiU5mvozdE9v4qV/WwYmYSjCEbhrevD+313l2ojovIzIgZag0UhXqghShmu+
 LG7Jn851pAR+pc6LOF+AxkNB+wV9cos19Wc46x7PuQSc/aj2zPM=
 =fCvS
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-fixes-v6.3-rc' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux into arm/fixes

Amlogic fixes for v6.3-rc:
- fix conflicts between DMC memory space and Amlogic perf driver

* tag 'amlogic-fixes-v6.3-rc' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  perf/amlogic: adjust register offsets
  arm64: dts: meson-g12-common: resolve conflict between canvas & pmu
  arm64: dts: meson-g12-common: specify full DMC range

Link: https://lore.kernel.org/r/db5fcdb4-60e8-95e6-06b5-1ac474ecabe3@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-04-03 17:51:10 +02:00
Xu Kuohai
738a96c4a8 bpf, arm64: Fixed a BTI error on returning to patched function
When BPF_TRAMP_F_CALL_ORIG is set, BPF trampoline uses BLR to jump
back to the instruction next to call site to call the patched function.
For BTI-enabled kernel, the instruction next to call site is usually
PACIASP, in this case, it's safe to jump back with BLR. But when
the call site is not followed by a PACIASP or bti, a BTI exception
is triggered.

Here is a fault log:

 Unhandled 64-bit el1h sync exception on CPU0, ESR 0x0000000034000002 -- BTI
 CPU: 0 PID: 263 Comm: test_progs Tainted: GF
 Hardware name: linux,dummy-virt (DT)
 pstate: 40400805 (nZcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=-c)
 pc : bpf_fentry_test1+0xc/0x30
 lr : bpf_trampoline_6442573892_0+0x48/0x1000
 sp : ffff80000c0c3a50
 x29: ffff80000c0c3a90 x28: ffff0000c2e6c080 x27: 0000000000000000
 x26: 0000000000000000 x25: 0000000000000000 x24: 0000000000000050
 x23: 0000000000000000 x22: 0000ffffcfd2a7f0 x21: 000000000000000a
 x20: 0000ffffcfd2a7f0 x19: 0000000000000000 x18: 0000000000000000
 x17: 0000000000000000 x16: 0000000000000000 x15: 0000ffffcfd2a7f0
 x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
 x11: 0000000000000000 x10: ffff80000914f5e4 x9 : ffff8000082a1528
 x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0101010101010101
 x5 : 0000000000000000 x4 : 00000000fffffff2 x3 : 0000000000000001
 x2 : ffff8001f4b82000 x1 : 0000000000000000 x0 : 0000000000000001
 Kernel panic - not syncing: Unhandled exception
 CPU: 0 PID: 263 Comm: test_progs Tainted: GF
 Hardware name: linux,dummy-virt (DT)
 Call trace:
  dump_backtrace+0xec/0x144
  show_stack+0x24/0x7c
  dump_stack_lvl+0x8c/0xb8
  dump_stack+0x18/0x34
  panic+0x1cc/0x3ec
  __el0_error_handler_common+0x0/0x130
  el1h_64_sync_handler+0x60/0xd0
  el1h_64_sync+0x78/0x7c
  bpf_fentry_test1+0xc/0x30
  bpf_fentry_test1+0xc/0x30
  bpf_prog_test_run_tracing+0xdc/0x2a0
  __sys_bpf+0x438/0x22a0
  __arm64_sys_bpf+0x30/0x54
  invoke_syscall+0x78/0x110
  el0_svc_common.constprop.0+0x6c/0x1d0
  do_el0_svc+0x38/0xe0
  el0_svc+0x30/0xd0
  el0t_64_sync_handler+0x1ac/0x1b0
  el0t_64_sync+0x1a0/0x1a4
 Kernel Offset: disabled
 CPU features: 0x0000,00034c24,f994fdab
 Memory Limit: none

And the instruction next to call site of bpf_fentry_test1 is ADD,
not PACIASP:

<bpf_fentry_test1>:
	bti     c
	nop
	nop
	add     w0, w0, #0x1
	paciasp

For BPF prog, JIT always puts a PACIASP after call site for BTI-enabled
kernel, so there is no problem. To fix it, replace BLR with RET to bypass
the branch target check.

Fixes: efc9909fdc ("bpf, arm64: Add bpf trampoline for arm64")
Reported-by: Florent Revest <revest@chromium.org>
Signed-off-by: Xu Kuohai <xukuohai@huawei.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Tested-by: Florent Revest <revest@chromium.org>
Acked-by: Florent Revest <revest@chromium.org>
Link: https://lore.kernel.org/bpf/20230401234144.3719742-1-xukuohai@huaweicloud.com
2023-04-03 17:44:03 +02:00
Alexey Kardashevskiy
52882b9c7a KVM: PPC: Make KVM_CAP_IRQFD_RESAMPLE platform dependent
When introduced, IRQFD resampling worked on POWER8 with XICS. However
KVM on POWER9 has never implemented it - the compatibility mode code
("XICS-on-XIVE") misses the kvm_notify_acked_irq() call and the native
XIVE mode does not handle INTx in KVM at all.

This moved the capability support advertising to platforms and stops
advertising it on XIVE, i.e. POWER9 and later.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Acked-by: Anup Patel <anup@brainfault.org>
Acked-by: Nicholas Piggin <npiggin@gmail.com>
Message-Id: <20220504074807.3616813-1-aik@ozlabs.ru>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2023-03-31 11:19:05 -04:00
Paolo Bonzini
85b475a450 A small fix that repairs the external loop detection code for PV
guests.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEwGNS88vfc9+v45Yq41TmuOI4ufgFAmQilhMACgkQ41TmuOI4
 ufhydRAAgldhL63tLa9PChGUkRtQLRdWKC8qJXIZUriF5d3fvQD8nfTRSvndwPEj
 ELg+MO63xhZEqyje4JVjNISc8sHXTZqFk43L+L2uamX2tlbw8ELAtiCTLZHKuCzz
 T3+vNB6Q103C94ZxsIhxnlhXAw69K0yv7H3P/SytBx6iDCvQ2k+BdAuSKylTytcU
 lfOGK3ADuvaL9PJSyM1ICCKqgdveEBI+tHo9h/eqgM8SmSNF1OahhjyDiiWtWTT6
 EpaTkce0fJypvCShCOMBnSHdPS6QZ4JclNdcDR6uz4VMT28acV6lNGRDkPYgBzta
 Wnx6+CETyePJt6NU5Nh8XLXstKQ7OUvCUSWNligkRBYYl0pr7jSA8u8xuGCaCCDs
 8ZOkMWcYLYKqH3Cvqb2rMR2MM9psrHwtLflC+38hGMV23Iy8YBnAQv/AixSy5yoP
 J50O1IlnNVhjsRuNxVAEwaybZP3pY11/iEwrhOVDyjdKlZGmbA0lK705bTh5z5YE
 XXGYDe97sPvztfrpPwDWdqoJPPDvxRvzrXROxhNK4vo5D/qGzobrvxkEkDcrAVqQ
 yoOj46zk/cieSCkiySURcQ+3qLYi/8+HeOtQcVMApK91GsselzM6vwSuKqFUmicq
 XrgsS7Gj2VNk4IMLLgevqQWfwvRRhNs/FiUI6lDd+wqqhX09Vl0=
 =Ysma
 -----END PGP SIGNATURE-----

Merge tag 'kvm-s390-master-6.3-1' of https://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into HEAD

A small fix that repairs the external loop detection code for PV
guests.
2023-03-31 11:15:09 -04:00
Javier Martinez Canillas
3adf89324a arm64: dts: rockchip: Remove non-existing pwm-delay-us property
There is neither a driver that parses this nor a DT binding schema that
documents it, so let's remove from the DTS files that make use of this.

The properties that exist are post-pwm-on-delay-ms and pwm-off-delay-ms,
defined in the pwm-backlight DT binding. If the delays are really needed
then those properties should be used instead.

Brian Norris mentioned though that looking at the first downstream usage
of the pwm-delay-us property for RK3399 Gru systems in ChromiumOS tree,
he couldn't find a spec reference that said that this was really needed.

So perhaps it was unnecessary added and a simple removal would be enough.

Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
Reviewed-by: Brian Norris <briannorris@chromium.org>
Link: https://lore.kernel.org/r/20230330231924.2404747-1-javierm@redhat.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2023-03-31 02:44:27 +02:00
Jai Luthra
44b263bf04 arm64: defconfig: Enable audio drivers for AM62-SK
TI's K3 platform uses McASP as the digital audio interface on the SoCs.
AM62-SK, AM62-LP-SK and AM62A-SK also use the TLV320AIC3106 codec with a
3.5mm jack for analog audio input and output.

Signed-off-by: Jai Luthra <j-luthra@ti.com>
Reviewed-by: Devarsh Thakkar <devarsht@ti.com>
Link: https://lore.kernel.org/r/20230313-mcasp_upstream-v10-3-94332149657a@ti.com
Signed-off-by: Nishanth Menon <nm@ti.com>
2023-03-30 11:58:36 -05:00