1. 10 Jan, 2022 4 commits
    • Linus Torvalds's avatar
      Merge tag 'dt-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · aca48b2d
      Linus Torvalds authored
      Pull ARM SoC devicetree updates from Arnd Bergmann:
       "As usual, this is the bulk of the updates for the SoC tree, adding
        more devices to existing files, addressing issues from ever improving
        automated checking, and fixing minor issues.
      
        The most interesting bits as usual are the new platforms. All the
        newly supported SoCs belong into existing families this time:
      
         - Qualcomm gets support for two newly announced platforms, both of
           which can now work in production environments: the SDX65 5G modem
           that can run a minimal Linux on its Cortex-A7 core, and the
           Snapdragon 8 Gen 1, their latest high-end phone SoC.
      
         - Renesas adds support for R-Car S4-8, the most recent automotive
           Server/Communication SoC.
      
         - TI adds support for J721s2, a new automotive SoC in the K3 family.
      
         - Mediatek MT7986a/b is a SoC used in Wifi routers, the latest
           generation following their popular MT76xx series. Only basic
           support is added for now.
      
         - NXP i.MX8 ULP8 is a new low-power variant of the widespread i.MX8
           series.
      
         - TI SPEAr320s is a minor variant of the old SPEAr320 SoC that we
           have supported for a long time.
      
        New boards with the existing SoCs include
      
         - Aspeed AST2500/AST2600 BMCs in TYAN, Facebook and Yadro servers
      
         - AT91/SAMA5 based evaluation board
      
         - NXP gains twenty new development and industrial boards for their
           i.MX and Layerscape SoCs
      
         - Intel IXP4xx now supports the final two machines in device tree
           that were previously only supported in old style board files.
      
         - Mediatek MT6589 is used in the Fairphone FP1 phone from 2013, while
           MT8183 is used in the Acer Chromebook 314.
      
         - Qualcomm gains support for the reference machines using the two new
           SoCs, plus a number of Chromebook variants and phones based on the
           Snapdragon 7c, 845 and 888 SoCs, including various Sony Xperia
           devices and the Microsoft Surface Duo 2.
      
         - ST STM32 now supports the Engicam i.Core STM32MP1 carrier board.
      
         - Tegra now boots various older Android devices based on 32-bit chips
           out of the box, including a number of ASUS Transformer tablets.
      
           There is also a new Jetson AGX Orin developer kit.
      
         - Apple support adds the missing device trees for all the remaining
           M1 Macbook and iMac variants, though not yet the M1 Pro/Max
           versions.
      
         - Allwinner now supports another version of the Tanix TX6 set-top box
           based on the H6 SoC.
      
         - Broadcom gains support for the Netgear RAXE500 Wireless router
           based on BCM4908"
      
      * tag 'dt-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (574 commits)
        Revert "ARM: dts: BCM5301X: define RTL8365MB switch on Asus RT-AC88U"
        arm64: dts: qcom: sm6125: Avoid using missing SM6125_VDDCX
        arm64: dts: qcom: sm8450-qrd: Enable USB nodes
        arm64: dts: qcom: sm8450: Add usb nodes
        ARM: dts: aspeed: add LCLK setting into LPC KCS nodes
        dt-bindings: ipmi: bt-bmc: add 'clocks' as a required property
        ARM: dts: aspeed: add LCLK setting into LPC IBT node
        ARM: dts: aspeed: p10: Add TPM device
        ARM: dts: aspeed: p10: Enable USB host ports
        ARM: dts: aspeed: Add TYAN S8036 BMC machine
        ARM: dts: aspeed: tyan-s7106: Add uart_routing and fix vuart config
        ARM: dts: aspeed: Adding Facebook Bletchley BMC
        ARM: dts: aspeed: g220a: Enable secondary flash
        ARM: dts: Add openbmc-flash-layout-64-alt.dtsi
        ARM: dts: aspeed: Add secure boot controller node
        dt-bindings: aspeed: Add Secure Boot Controller bindings
        ARM: dts: Remove "spidev" nodes
        dt-bindings: pinctrl: samsung: Add pin drive definitions for Exynos850
        dt-bindings: arm: samsung: Document E850-96 board binding
        dt-bindings: Add vendor prefix for WinLink
        ...
      aca48b2d
    • Linus Torvalds's avatar
      Merge tag 'drivers-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · e85195d5
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "There are cleanups and minor bugfixes across several SoC specific
        drivers, for Qualcomm, Samsung, NXP i.MX, AT91, Tegra, Keystone,
        Renesas, ZynqMP
      
        Noteworthy new features are:
      
         - The op-tee firmware driver gains support for asynchronous
           notifications from secure-world firmware.
      
         - Qualcomm platforms gain support for new SoC types in various
           drivers: power domain, cache controller, RPM sleep, soc-info
      
         - Samsung SoC drivers gain support for new SoCs in ChipID and PMU, as
           well as a new USIv2 driver that handles various types of serial
           communiction (uart, i2c, spi)
      
         - Renesas adds support for R-Car S4-8 (R8A779F0) in multiple drivers,
           as well as memory controller support for RZ/G2L (R9A07G044).
      
         - Apple M1 gains support for the PMGR power management driver"
      
      * tag 'drivers-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (94 commits)
        soc: qcom: rpmh-rsc: Fix typo in a comment
        soc: qcom: socinfo: Add SM6350 and SM7225
        dt-bindings: arm: msm: Don't mark LLCC interrupt as required
        dt-bindings: firmware: scm: Add SM6350 compatible
        dt-bindings: arm: msm: Add LLCC for SM6350
        soc: qcom: rpmhpd: Sort power-domain definitions and lists
        soc: qcom: rpmhpd: Remove mx/cx relationship on sc7280
        soc: qcom: rpmhpd: Rename rpmhpd struct names
        soc: qcom: rpmhpd: sm8450: Add the missing .peer for sm8450_cx_ao
        soc: qcom: socinfo: add SM8450 ID
        soc: qcom: rpmhpd: Add SM8450 power domains
        dt-bindings: power: rpmpd: Add SM8450 to rpmpd binding
        soc: qcom: smem: Update max processor count
        dt-bindings: arm: qcom: Document SM8450 SoC and boards
        dt-bindings: firmware: scm: Add SM8450 compatible
        dt-bindings: arm: cpus: Add kryo780 compatible
        soc: qcom: rpmpd: Add support for sm6125
        dt-bindings: qcom-rpmpd: Add sm6125 power domains
        soc: qcom: aoss: constify static struct thermal_cooling_device_ops
        PM: AVS: qcom-cpr: Use div64_ul instead of do_div
        ...
      e85195d5
    • Linus Torvalds's avatar
      Merge tag 'defconfig-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 0dca3c5e
      Linus Torvalds authored
      Pull ARM defconfig updates from Arnd Bergmann:
       "These are the usual changes to enable newly added driver by default,
        and to do some housekeeping around changing Kconfig symbols"
      
      * tag 'defconfig-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        arm64: defconfig: Enable Samsung I2C driver
        ARM: configs: at91: Enable crypto software implementations
        ARM: configs: at91: sama7: Enable SPI NOR and QSPI controller
        ARM: config: multi v7: Enable NVIDIA Tegra20 APB DMA driver
        ARM: config: multi v7: Enable NVIDIA Tegra20 S/PDIF driver
        ARM: tegra_defconfig: Enable S/PDIF driver
        ARM: imx_v6_v7_defconfig: Enable for DHCOM devices required RTC_DRV_RV3029C2
        ARM: config: multi v7: Enable display drivers used by Tegra devices
        ARM: tegra_defconfig: Enable drivers wanted by Acer Chromebooks and ASUS tablets
        ARM: configs: gemini: Activate crypto driver
        arm64: defconfig: enable drivers for booting i.MX8ULP
        arm64: defconfig: Enable R-Car S4-8
        arm64: defconfig: enable drivers for TQ TQMa8MxML-MBa8Mx
        arm64: defconfig: Enable OV5640
        arm64: defconfig: Enable VIDEO_IMX_MEDIA
      0dca3c5e
    • Linus Torvalds's avatar
      Merge tag 'soc-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 1135ec00
      Linus Torvalds authored
      Pull ARM SoC updates from Arnd Bergmann:
       "These are all minor bug fixes and cleanups to code in arch/arm and
        arch/arm64 that is specific to one SoC, updating Kconfig symbols, the
        MAINTAINERS file, and removing some dead code"
      
      * tag 'soc-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        arm64: exynos: Enable Exynos Multi-Core Timer driver
        ARM: ixp4xx: remove unused header file pata_ixp4xx_cf.h
        ARM: ixp4xx: remove dead configs CPU_IXP43X and CPU_IXP46X
        MAINTAINERS: Add Florian as BCM5301X and BCM53573 maintainer
        ARM: samsung: Remove HAVE_S3C2410_I2C and use direct dependencies
        ARM: imx: rename DEBUG_IMX21_IMX27_UART to DEBUG_IMX27_UART
        ARM: imx: remove dead left-over from i.MX{27,31,35} removal
        ARM: s3c: add one more "fallthrough" statement in Jive
        ARM: s3c: include header for prototype of s3c2410_modify_misccr
        ARM: shmobile: rcar-gen2: Add missing of_node_put()
      1135ec00
  2. 09 Jan, 2022 6 commits
  3. 08 Jan, 2022 5 commits
  4. 07 Jan, 2022 11 commits
  5. 06 Jan, 2022 11 commits
  6. 05 Jan, 2022 3 commits
    • Naveen N. Rao's avatar
      tracing: Tag trace_percpu_buffer as a percpu pointer · f28439db
      Naveen N. Rao authored
      Tag trace_percpu_buffer as a percpu pointer to resolve warnings
      reported by sparse:
        /linux/kernel/trace/trace.c:3218:46: warning: incorrect type in initializer (different address spaces)
        /linux/kernel/trace/trace.c:3218:46:    expected void const [noderef] __percpu *__vpp_verify
        /linux/kernel/trace/trace.c:3218:46:    got struct trace_buffer_struct *
        /linux/kernel/trace/trace.c:3234:9: warning: incorrect type in initializer (different address spaces)
        /linux/kernel/trace/trace.c:3234:9:    expected void const [noderef] __percpu *__vpp_verify
        /linux/kernel/trace/trace.c:3234:9:    got int *
      
      Link: https://lkml.kernel.org/r/ebabd3f23101d89cb75671b68b6f819f5edc830b.1640255304.git.naveen.n.rao@linux.vnet.ibm.com
      
      Cc: stable@vger.kernel.org
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Fixes: 07d777fe ("tracing: Add percpu buffers for trace_printk()")
      Signed-off-by: default avatarNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      f28439db
    • Naveen N. Rao's avatar
      tracing: Fix check for trace_percpu_buffer validity in get_trace_buf() · 823e670f
      Naveen N. Rao authored
      With the new osnoise tracer, we are seeing the below splat:
          Kernel attempted to read user page (c7d880000) - exploit attempt? (uid: 0)
          BUG: Unable to handle kernel data access on read at 0xc7d880000
          Faulting instruction address: 0xc0000000002ffa10
          Oops: Kernel access of bad area, sig: 11 [#1]
          LE PAGE_SIZE=64K MMU=Radix SMP NR_CPUS=2048 NUMA pSeries
          ...
          NIP [c0000000002ffa10] __trace_array_vprintk.part.0+0x70/0x2f0
          LR [c0000000002ff9fc] __trace_array_vprintk.part.0+0x5c/0x2f0
          Call Trace:
          [c0000008bdd73b80] [c0000000001c49cc] put_prev_task_fair+0x3c/0x60 (unreliable)
          [c0000008bdd73be0] [c000000000301430] trace_array_printk_buf+0x70/0x90
          [c0000008bdd73c00] [c0000000003178b0] trace_sched_switch_callback+0x250/0x290
          [c0000008bdd73c90] [c000000000e70d60] __schedule+0x410/0x710
          [c0000008bdd73d40] [c000000000e710c0] schedule+0x60/0x130
          [c0000008bdd73d70] [c000000000030614] interrupt_exit_user_prepare_main+0x264/0x270
          [c0000008bdd73de0] [c000000000030a70] syscall_exit_prepare+0x150/0x180
          [c0000008bdd73e10] [c00000000000c174] system_call_vectored_common+0xf4/0x278
      
      osnoise tracer on ppc64le is triggering osnoise_taint() for negative
      duration in get_int_safe_duration() called from
      trace_sched_switch_callback()->thread_exit().
      
      The problem though is that the check for a valid trace_percpu_buffer is
      incorrect in get_trace_buf(). The check is being done after calculating
      the pointer for the current cpu, rather than on the main percpu pointer.
      Fix the check to be against trace_percpu_buffer.
      
      Link: https://lkml.kernel.org/r/a920e4272e0b0635cf20c444707cbce1b2c8973d.1640255304.git.naveen.n.rao@linux.vnet.ibm.com
      
      Cc: stable@vger.kernel.org
      Fixes: e2ace001 ("tracing: Choose static tp_printk buffer by explicit nesting count")
      Signed-off-by: default avatarNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      823e670f
    • Jiri Olsa's avatar
      ftrace/samples: Add missing prototypes direct functions · 0daf5cb2
      Jiri Olsa authored
      There's another compilation fail (first here [1]) reported by kernel
      test robot for W=1 clang build:
      
        >> samples/ftrace/ftrace-direct-multi-modify.c:7:6: warning: no previous
        prototype for function 'my_direct_func1' [-Wmissing-prototypes]
           void my_direct_func1(unsigned long ip)
      
      Direct functions in ftrace direct sample modules need to have prototypes
      defined. They are already global in order to be visible for the inline
      assembly, so there's no problem.
      
      The kernel test robot reported just error for ftrace-direct-multi-modify,
      but I got same errors also for the rest of the modules touched by this patch.
      
      [1] 67d4f6e3 ftrace/samples: Add missing prototype for my_direct_func
      
      Link: https://lkml.kernel.org/r/20211219135317.212430-1-jolsa@kernel.orgReported-by: default avatarkernel test robot <lkp@intel.com>
      Fixes: e1067a07 ("ftrace/samples: Add module to test multi direct modify interface")
      Fixes: ae0cc3b7 ("ftrace/samples: Add a sample module that implements modify_ftrace_direct()")
      Fixes: 156473a0 ("ftrace: Add another example of register_ftrace_direct() use case")
      Fixes: b06457c8 ("ftrace: Add sample module that uses register_ftrace_direct()")
      Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      0daf5cb2