summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/arm
AgeCommit message (Collapse)AuthorFilesLines
2022-04-22Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/netPaolo Abeni1-1/+0
drivers/net/ethernet/microchip/lan966x/lan966x_main.c d08ed852560e ("net: lan966x: Make sure to release ptp interrupt") c8349639324a ("net: lan966x: Add FDMA functionality") Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2022-04-06dt-bindings: arm: mediatek: document the pcie mirror node on MT7622Lorenzo Bianconi1-0/+42
This patch adds the pcie mirror document bindings for MT7622 SoC. The feature is used for intercepting PCIe MMIO access for the WED core Add related info in mediatek-net bindings. Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-04-06dt-bindings: arm: mediatek: document WED binding for MT7622Lorenzo Bianconi1-0/+50
Document the binding for the Wireless Ethernet Dispatch core on the MT7622 SoC, which is used for Ethernet->WLAN offloading Add related info in mediatek-net bindings. Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: David S. Miller <davem@davemloft.net>
2022-04-04dt-bindings: Fix 'enum' lists with duplicate entriesRob Herring1-1/+0
There's no reason to list the same value twice in an 'enum'. Fix all the occurrences in the tree. A meta-schema change will catch future ones. Cc: Krzysztof Kozlowski <krzk+dt@kernel.org> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Jonathan Hunter <jonathanh@nvidia.com> Cc: Mauro Carvalho Chehab <mchehab@kernel.org> Cc: Charles Keepax <ckeepax@opensource.cirrus.com> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Sebastian Reichel <sre@kernel.org> Cc: Tony Lindgren <tony@atomide.com> Cc: Yunfei Dong <yunfei.dong@mediatek.com> Cc: - <patches@opensource.cirrus.com> Cc: linux-media@vger.kernel.org Cc: alsa-devel@alsa-project.org Cc: linux-gpio@vger.kernel.org Cc: linux-pm@vger.kernel.org Signed-off-by: Rob Herring <robh@kernel.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20220401141247.2993925-1-robh@kernel.org
2022-04-01Merge tag 'riscv-for-linus-5.18-mw1' of ↵Linus Torvalds3-663/+2
git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux Pull more RISC-V updates from Palmer Dabbelt: "This has a handful of new features: - Support for CURRENT_STACK_POINTER, which enables some extra stack debugging for HARDENED_USERCOPY. - Support for the new SBI CPU idle extension, via cpuidle and suspend drivers. - Profiling has been enabled in the defconfigs. but is mostly fixes and cleanups" * tag 'riscv-for-linus-5.18-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (21 commits) RISC-V: K210 defconfigs: Drop redundant MEMBARRIER=n RISC-V: defconfig: Drop redundant SBI HVC and earlycon Documentation: riscv: remove non-existent directory from table of contents riscv: cpu.c: don't use kernel-doc markers for comments RISC-V: Enable profiling by default RISC-V: module: fix apply_r_riscv_rcv_branch_rela typo RISC-V: Declare per cpu boot data as static RISC-V: Fix a comment typo in riscv_of_parent_hartid() riscv: Increase stack size under KASAN riscv: Fix fill_callchain return value riscv: dts: canaan: Fix SPI3 bus width riscv: Rename "sp_in_global" to "current_stack_pointer" riscv module: remove (NOLOAD) RISC-V: Enable RISC-V SBI CPU Idle driver for QEMU virt machine dt-bindings: Add common bindings for ARM and RISC-V idle states cpuidle: Add RISC-V SBI CPU idle driver cpuidle: Factor-out power domain related code from PSCI domain driver RISC-V: Add SBI HSM suspend related defines RISC-V: Add arch functions for non-retentive suspend entry/exit RISC-V: Rename relocate() and make it global ...
2022-03-31RISC-V CPU Idle SupportPalmer Dabbelt3-663/+2
This series adds RISC-V CPU Idle support using SBI HSM suspend function. The RISC-V SBI CPU idle driver added by this series is highly inspired from the ARM PSCI CPU idle driver. Special thanks Sandeep Tripathy for providing early feeback on SBI HSM support in all above projects (RISC-V SBI specification, OpenSBI, and Linux RISC-V). * palmer/riscv-idle: RISC-V: Enable RISC-V SBI CPU Idle driver for QEMU virt machine dt-bindings: Add common bindings for ARM and RISC-V idle states cpuidle: Add RISC-V SBI CPU idle driver cpuidle: Factor-out power domain related code from PSCI domain driver RISC-V: Add SBI HSM suspend related defines RISC-V: Add arch functions for non-retentive suspend entry/exit RISC-V: Rename relocate() and make it global RISC-V: Enable CPU_IDLE drivers
2022-03-30Merge tag 'clk-for-linus' of ↵Linus Torvalds1-0/+1
git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux Pull clk updates from Stephen Boyd: "There's one large change in the core clk framework here. We change how clk_set_rate_range() works so that the frequency is re-evaulated each time the rate is changed. Previously we wouldn't let clk providers see a rate that was different if it was still within the range, which could be bad for power if the clk could run slower when a range expands. Now the clk provider can decide to do something differently when the constraints change. This broke Nvidia's clk driver so we had to wait for the fix for that to bake a little more in -next. The rate range patch series also introduced a kunit suite for the clk framework that we're going to extend in the next release. It already made it easy to find corner cases in the rate range patches so I'm excited to see it cover more clk code and increase our confidence in core framework patches in the future. I also added a kunit test for the basic clk gate code and that work will continue to cover more basic clk types: muxes, dividers, etc. Beyond the core code we have the usual set of clk driver updates and additions. Qualcomm again dominates the diffstat here with lots more SoCs being supported and i.MX follows afer that with a similar number of SoCs gaining clk drivers. Beyond those large additions there's drivers being modernized to use clk_parent_data so we can move away from global string names for all the clks in an SoC. Finally there's lots of little fixes all over the clk drivers for typos, warnings, and missing clks that aren't critical and get batched up waiting for the next merge window to open. Nothing super big stands out in the driver pile. Full details are below. Core: - Make clk_set_rate_range() re-evaluate the limits each time - Introduce various clk_set_rate_range() tests - Add clk_drop_range() to drop a previously set range New Drivers: - i.MXRT1050 clock driver and bindings - i.MX8DXL clock driver and bindings - i.MX93 clock driver and bindings - NCO blocks on Apple SoCs - Audio clks on StarFive JH7100 RISC-V SoC - Add support for the new Renesas RZ/V2L SoC - Qualcomm SDX65 A7 PLL - Qualcomm SM6350 GPU clks - Qualcomm SM6125, SM6350, QCS2290 display clks - Qualcomm MSM8226 multimedia clks Updates: - Kunit tests for clk-gate implementation - Terminate arrays with sentinels and make that clearer - Cleanup SPDX tags - Fix typos in comments - Mark mux table as const in clk-mux - Make the all_lists array const - Convert Cirrus Logic CS2000P driver to regmap, yamlify DT binding and add support for dynamic mode - Clock configuration on Microchip PolarFire SoCs - Free allocations on probe error in Mediatek clk driver - Modernize Mediatek clk driver by consolidating code - Add watchdog (WDT), I2C, and pin function controller (PFC) clocks on Renesas R-Car S4-8 - Improve the clocks for the Rockchip rk3568 display outputs (parenting, pll-rates) - Use of_device_get_match_data() instead of open-coding on Rockchip rk3568 - Reintroduce the expected fractional-divider behaviour that disappeared with the addition of CLK_FRAC_DIVIDER_POWER_OF_TWO_PS - Remove SYS PLL 1/2 clock gates for i.MX8M* - Remove AUDIO MCLK ROOT from i.MX7D - Add fracn gppll clock type used by i.MX93 - Add new composite clock for i.MX93 - Add missing media mipi phy ref clock for i.MX8MP - Fix off by one in imx_lpcg_parse_clks_from_dt() - Rework for the imx pll14xx - sama7g5: One low priority fix for GCLK of PDMC - Add DMA engine (SYS-DMAC) clocks on Renesas R-Car S4-8 - Add MOST (MediaLB I/F) clocks on Renesas R-Car E3 and D3 - Add CAN-FD clocks on Renesas R-Car V3U - Qualcomm SC8280XP RPMCC - Add some missing clks on Qualcomm MSM8992/MSM8994/MSM8998 SoCs - Rework Qualcomm GCC bindings and convert SDM845 camera bindig to YAML - Convert various Qualcomm drivers to use clk_parent_data - Remove test clocks from various Qualcomm drivers - Crypto engine clks on Qualcomm IPQ806x + more freqs for SDCC/NSS - Qualcomm SM8150 EMAC, PCIe, UFS GDSCs - Better pixel clk frequency support on Qualcomm RCG2 clks" * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (227 commits) clk: zynq: Update the parameters to zynq_clk_register_periph_clk clk: zynq: trivial warning fix clk: Drop the rate range on clk_put() clk: test: Test clk_set_rate_range on orphan mux clk: Initialize orphan req_rate dt-bindings: clock: drop useless consumer example dt-bindings: clock: renesas: Make example 'clocks' parsable clk: qcom: gcc-msm8994: Fix gpll4 width dt-bindings: clock: fix dt_binding_check error for qcom,gcc-other.yaml clk: rs9: Add Renesas 9-series PCIe clock generator driver clk: fixed-factor: Introduce devm_clk_hw_register_fixed_factor_index() clk: visconti: prevent array overflow in visconti_clk_register_gates() dt-bindings: clk: rs9: Add Renesas 9-series I2C PCIe clock generator clk: sifive: Move all stuff into SoCs header files from C files clk: sifive: Add SoCs prefix in each SoCs-dependent data riscv: dts: Change the macro name of prci in each device node dt-bindings: change the macro name of prci in header files and example clk: sifive: duplicate the macro definitions for the time being clk: qcom: sm6125-gcc: fix typos in comments clk: ti: clkctrl: fix typos in comments ...
2022-03-29Merge branches 'clk-mvebu', 'clk-const', 'clk-imx' and 'clk-rockchip' into ↵Stephen Boyd1-0/+1
clk-next - Mark mux table as const in clk-mux - Make the all_lists array const * clk-mvebu: clk: mvebu: use time_is_before_eq_jiffies() instead of open coding it * clk-const: clk: Mark clk_core_evict_parent_cache_subtree() 'target' const clk: Mark 'all_lists' as const clk: pistachio: Declare mux table as const u32[] clk: qcom: Declare mux table as const u32[] clk: mmp: Declare mux tables as const u32[] clk: hisilicon: Remove unnecessary cast of mux table to u32 * clk: mux: Declare u32 *table parameter as const clk: nxp: Declare mux table parameter as const u32 * clk: nxp: Remove unused variable * clk-imx: (28 commits) dt-bindings: clock: drop useless consumer example clk: imx: Select MXC_CLK for i.MX93 clock driver clk: imx: remove redundant re-assignment of pll->base MAINTAINERS: clk: imx: add git tree and dt-bindings files clk: imx: pll14xx: Support dynamic rates clk: imx: pll14xx: Add pr_fmt clk: imx: pll14xx: explicitly return lowest rate clk: imx: pll14xx: name variables after usage clk: imx: pll14xx: consolidate rate calculation clk: imx: pll14xx: Use FIELD_GET/FIELD_PREP clk: imx: pll14xx: Drop wrong shifting clk: imx: pll14xx: Use register defines consistently clk: imx8mp: remove SYS PLL 1/2 clock gates clk: imx8mn: remove SYS PLL 1/2 clock gates clk: imx8mm: remove SYS PLL 1/2 clock gates clk: imx: add i.MX93 clk clk: imx: support fracn gppll clk: imx: add i.MX93 composite clk dt-bindings: clock: add i.MX93 clock definition dt-bindings: clock: Add imx93 clock support ... * clk-rockchip: clk: rockchip: re-add rational best approximation algorithm to the fractional divider clk/rockchip: Use of_device_get_match_data() clk: rockchip: Add CLK_SET_RATE_PARENT to the HDMI reference clock on rk3568 clk: rockchip: drop CLK_SET_RATE_PARENT from dclk_vop* on rk3568 clk: rockchip: Add more PLL rates for rk3568
2022-03-29dt-bindings: Fix missing '/schemas' in $ref pathsRob Herring1-1/+1
Absolute paths in $ref should always begin with '/schemas'. The tools mostly work with it omitted, but for correctness the path should be everything except the hostname as that is taken from the schema's $id value. This scheme is defined in the json-schema spec. Cc: Hector Martin <marcan@marcan.st> Cc: Sven Peter <sven@svenpeter.dev> Cc: Andrew Lunn <andrew@lunn.ch> Cc: Vivien Didelot <vivien.didelot@gmail.com> Cc: Florian Fainelli <f.fainelli@gmail.com> Cc: Vladimir Oltean <olteanv@gmail.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: Jakub Kicinski <kuba@kernel.org> Cc: Paolo Abeni <pabeni@redhat.com> Cc: Mark Brown <broonie@kernel.org> Cc: Chunfeng Yun <chunfeng.yun@mediatek.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Mukesh Savaliya <msavaliy@codeaurora.org> Cc: Akash Asthana <akashast@codeaurora.org> Cc: Bayi Cheng <bayi.cheng@mediatek.com> Cc: Chuanhong Guo <gch981213@gmail.com> Cc: Min Guo <min.guo@mediatek.com> Cc: netdev@vger.kernel.org Cc: linux-spi@vger.kernel.org Cc: linux-usb@vger.kernel.org Signed-off-by: Rob Herring <robh@kernel.org> Acked-by: Jakub Kicinski <kuba@kernel.org> Acked-by: Mark Brown <broonie@debian.org> Link: https://lore.kernel.org/r/20220325215652.525383-1-robh@kernel.org
2022-03-26Merge tag 'devicetree-for-5.18' of ↵Linus Torvalds7-85/+76
git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux Pull devicetree updates from Rob Herring: - Add Krzysztof Kozlowski as co-maintainer for DT bindings providing much needed help. - DT schema validation now takes DTB files as input rather than intermediate YAML files. This decouples the validation from the source level syntax information. There's a bunch of schema fixes as a result of switching to DTB based validation which exposed some errors and incomplete schemas and examples. - Kbuild improvements to explicitly warn users running 'make dt_binding_check' on missing yamllint - Expand DT_SCHEMA_FILES kbuild variable to take just a partial filename or path instead of the full path to 1 file. - Convert various bindings to schema format: mscc,vsc7514-switch, multiple GNSS bindings, ahci-platform, i2c-at91, multiple UFS bindings, cortina,gemini-sata-bridge, cortina,gemini-ethernet, Atmel SHA, Atmel TDES, Atmel AES, armv7m-systick, Samsung Exynos display subsystem, nuvoton,npcm7xx-timer, samsung,s3c2410-i2c, zynqmp_dma, msm/mdp4, rda,8810pl-uart - New schemas for u-boot environment variable partition, TI clksel - New compatible strings for Renesas RZ/V2L SoC - Vendor prefixes for Xen, HPE, deprecated Synopsys, deprecated HiSilicon - Add/fix schemas for QEMU Arm 'virt' machine - Drop unused of_alias_get_alias_list() function - Add a script to check DT unittest EXPECT message output. Pass messages also now print by default at PR_INFO level to help test automation. * tag 'devicetree-for-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (96 commits) dt-bindings: kbuild: Make DT_SCHEMA_LINT a recursive variable dt-bindings: nvmem: add U-Boot environment variables binding dt-bindings: ufs: qcom: Add SM6350 compatible string dt-bindings: dmaengine: sifive,fu540-c000: include generic schema dt-bindings: gpio: pca95xx: drop useless consumer example Revert "of: base: Introduce of_alias_get_alias_list() to check alias IDs" dt-bindings: virtio,mmio: Allow setting devices 'dma-coherent' dt-bindings: gnss: Add two more chips dt-bindings: gnss: Rewrite sirfstar binding in YAML dt-bindings: gnss: Modify u-blox to use common bindings dt-bindings: gnss: Rewrite common bindings in YAML dt-bindings: ata: ahci-platform: Add rk3568-dwc-ahci compatible dt-bindings: ata: ahci-platform: Add power-domains property dt-bindings: ata: ahci-platform: Convert DT bindings to yaml dt-bindings: kbuild: Use DTB files for validation dt-bindings: kbuild: Pass DT_SCHEMA_FILES to dt-validate dt-bindings: Add QEMU virt machine compatible dt-bindings: arm: Convert QEMU fw-cfg to DT schema dt-bindings: i2c: at91: Add SAMA7G5 compatible strings list dt-bindings: i2c: convert i2c-at91 to json-schema ...
2022-03-24Merge tag 'arm-dt-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/socLinus Torvalds19-7/+287
Pull ARM devicetree updates from Arnd Bergmann: "After a somewhat quiet 5.17 release, the size of the DT changes is a bit larger again. There are nine new SoC that get added, all of them related to existing platforms: - Airoha (formerly Mediatek/EcoNet) EN7523 networking SoC and EVB - Mediatek mt6582 tablet platform with the Prestigio PMT5008 3G tablet - Microchip Lan966 networking SoC and it evaluation board - Qualcomm Snapdragon 625/632 midrange phone SoCs, with the LG Nexus 5X and Fairphone FP3 phones - Renesas RZ/G2LC and RZ/V2L general-purpose embedded SoCs, along with their evaluation boards - Samsung Exynos 850 phone SoC and reference board - Samsung Exynos7885 with the Samsung Galaxy A8 (2018) phone - Tesla FSD (Fully Self-Driving), an automotive SoC loosely derived from the Samsung Exynos family. - TI K3/AM62 SoC and reference board Support for additional functionality in existing dts files is added all over the place: Samsung, Renesas, Mstar, wpcm450, OMAP, AT91, Allwinner, i.MX, Tegra, Aspeed, Oxnas, Qualcomm, Mediatek, and Broadcom. Samsung has a rework for its pinctrl schema that is a bit tricky and requires driver changes to be included here. A few more platforms only have smaller cleanups and DT Schema fixes, this includes SoCFPGA, ux500, ixp4xx, STi, Xilinx Zynq, LG, and Juno. The new machines are really too many to list, but I'll do it anyway: Allwinner: - A20-Marsboard development board Amlogic: - Amediatek X96-AIR (Amlogic S905X3) - CYX A95XF3-AIR (Amlogic S905X3) - Haochuangy H96-Max (Amlogic S905X3) - Amlogic AQ222 (Amlogic S4) - OSMC Vero 4K+ (Amlogic S905D) Arm Juno: - Separate DT depending on SCMI firmware version Aspeed: - Quanta S6Q BMC (AST2600) - ASRock ROMED8HM3 (AST2500) Broadcom: - Raspberry Pi Zero 2 W Marvell MVEBU/Armada: - Ctera C200 V1 NAS (kirkwood) - Ctera C200 V2 NAS (armada-370) Mstar: - DongShanPiOne, a low-end embedded board - Miyoo Mini handheld game console NXP i.MX: - Numerous i.MX8M Mini based boards in even more variations, but none based on other SoCs this time: Protonic PRT8MM, emCON-MX8M Mini, Toradex Verdin, and Gateworks GW7903 Qualcomm: - Google Herobrine R1 Chromebook platform (Snapdragon 7c Gen 3) - SHIFT6mq phone (Snapdragon 845) - Samsung Galaxy Book2 (Snapdragon 850) - Snapdragon 8 Gen 1 Hardware Development Kit TI OMAP: - SanCloud BeagleBone Enhanced WiFi Rockchip: - Pine64 PineNote ereader tablet (rk356x) - Bananapi-R2-Pro (rk356x) STM32: - emtrion emSBS-Argon embedded board (stm32mp157c)" * tag 'arm-dt-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (627 commits) arm64: dts: n5x: drop invalid property and fix edac node name arm64: dts: fsd: Add the MCT support arm64: dts: stingray: Fix spi clock name arm64: dts: ns2: Fix spi clock name ARM: dts: rockchip: Update regulator name for PX3 ARM: dts: rockchip: Add #clock-cells value for rk805 arm64: dts: rockchip: Add #clock-cells value for rk805 arm64: dts: rockchip: Remove vcc13 and vcc14 for rk808 arm64: dts: rockchip: Fix SDIO regulator supply properties on rk3399-firefly ARM: dts: at91: sama7g5: Add NAND support ARM: dts: at91: sama7g5: add eic node ARM: dts: at91: sama7g5: Remove unused properties in i2c nodes ARM: dts: at91: sam9x60ek: modify vdd_1v5 regulator to vdd_1v15 arm64: dts: lg: align pl330 node name with dtschema arm64: dts: lg: add dma-cells to pl330 node arm64: dts: juno: align pl330 node name with dtschema arm64: dts: broadcom: Fix sata nodename arm64: dts: n5x: add sdr edac support arm64: dts: agilex/stratix10: add clock-names to USB DWC2 node dt-bindings: usb: dwc2: add disable-over-current ...
2022-03-24Merge tag 'arm-drivers-5.18' of ↵Linus Torvalds2-0/+3
git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM driver updates from Arnd Bergmann: "There are a few separately maintained driver subsystems that we merge through the SoC tree, notable changes are: - Memory controller updates, mainly for Tegra and Mediatek SoCs, and clarifications for the memory controller DT bindings - SCMI firmware interface updates, in particular a new transport based on OPTEE and support for atomic operations. - Cleanups to the TEE subsystem, refactoring its memory management For SoC specific drivers without a separate subsystem, changes include - Smaller updates and fixes for TI, AT91/SAMA5, Qualcomm and NXP Layerscape SoCs. - Driver support for Microchip SAMA5D29, Tesla FSD, Renesas RZ/G2L, and Qualcomm SM8450. - Better power management on Mediatek MT81xx, NXP i.MX8MQ and older NVIDIA Tegra chips" * tag 'arm-drivers-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (154 commits) ARM: spear: fix typos in comments soc/microchip: fix invalid free in mpfs_sys_controller_delete soc: s4: Add support for power domains controller dt-bindings: power: add Amlogic s4 power domains bindings ARM: at91: add support in soc driver for new SAMA5D29 soc: mediatek: mmsys: add sw0_rst_offset in mmsys driver data dt-bindings: memory: renesas,rpc-if: Document RZ/V2L SoC memory: emif: check the pointer temp in get_device_details() memory: emif: Add check for setup_interrupts dt-bindings: arm: mediatek: mmsys: add support for MT8186 dt-bindings: mediatek: add compatible for MT8186 pwrap soc: mediatek: pwrap: add pwrap driver for MT8186 SoC soc: mediatek: mmsys: add mmsys reset control for MT8186 soc: mediatek: mtk-infracfg: Disable ACP on MT8192 soc: ti: k3-socinfo: Add AM62x JTAG ID soc: mediatek: add MTK mutex support for MT8186 soc: mediatek: mmsys: add mt8186 mmsys routing table soc: mediatek: pm-domains: Add support for mt8186 dt-bindings: power: Add MT8186 power domains soc: mediatek: pm-domains: Add support for mt8195 ...
2022-03-21Merge tag 'arm64-upstream' of ↵Linus Torvalds1-0/+2
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux Pull arm64 updates from Will Deacon: - Support for including MTE tags in ELF coredumps - Instruction encoder updates, including fixes to 64-bit immediate generation and support for the LSE atomic instructions - Improvements to kselftests for MTE and fpsimd - Symbol aliasing and linker script cleanups - Reduce instruction cache maintenance performed for user mappings created using contiguous PTEs - Support for the new "asymmetric" MTE mode, where stores are checked asynchronously but loads are checked synchronously - Support for the latest pointer authentication algorithm ("QARMA3") - Support for the DDR PMU present in the Marvell CN10K platform - Support for the CPU PMU present in the Apple M1 platform - Use the RNDR instruction for arch_get_random_{int,long}() - Update our copy of the Arm optimised string routines for str{n}cmp() - Fix signal frame generation for CPUs which have foolishly elected to avoid building in support for the fpsimd instructions - Workaround for Marvell GICv3 erratum #38545 - Clarification to our Documentation (booting reqs. and MTE prctl()) - Miscellanous cleanups and minor fixes * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (90 commits) docs: sysfs-devices-system-cpu: document "asymm" value for mte_tcf_preferred arm64/mte: Remove asymmetric mode from the prctl() interface arm64: Add cavium_erratum_23154_cpus missing sentinel perf/marvell: Fix !CONFIG_OF build for CN10K DDR PMU driver arm64: mm: Drop 'const' from conditional arm64_dma_phys_limit definition Documentation: vmcoreinfo: Fix htmldocs warning kasan: fix a missing header include of static_keys.h drivers/perf: Add Apple icestorm/firestorm CPU PMU driver drivers/perf: arm_pmu: Handle 47 bit counters arm64: perf: Consistently make all event numbers as 16-bits arm64: perf: Expose some Armv9 common events under sysfs perf/marvell: cn10k DDR perf event core ownership perf/marvell: cn10k DDR perfmon event overflow handling perf/marvell: CN10k DDR performance monitor support dt-bindings: perf: marvell: cn10k ddr performance monitor arm64: clean up tools Makefile perf/arm-cmn: Update watchpoint format perf/arm-cmn: Hide XP PUB events for CMN-600 arm64: drop unused includes of <linux/personality.h> arm64: Do not defer reserve_crashkernel() for platforms with no DMA memory zones ...
2022-03-11dt-bindings: Add QEMU virt machine compatibleRob Herring1-0/+20
The top level QEMU virt machine compatible, linux,dummy-virt, has been in use for a long time, but never documented. Add a schema for it. Signed-off-by: Rob Herring <robh@kernel.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> Link: https://lore.kernel.org/r/20220310021224.599398-1-robh@kernel.org
2022-03-11dt-bindings: arm: Convert QEMU fw-cfg to DT schemaRob Herring1-38/+0
Convert the QEMU fw-cfg binding to DT schema format. As this binding is also used on Risc-V now, drop any architecture references and move to a common location. The fw-cfg interface has also gained some DMA support which is coherent, so add the missing 'dma-coherent'. Signed-off-by: Rob Herring <robh@kernel.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> Acked-by: Laszlo Ersek <lersek@redhat.com> Link: https://lore.kernel.org/r/20220310013552.549590-1-robh@kernel.org
2022-03-10Merge tag 'soc-fixes-5.17-3' of ↵Linus Torvalds1-6/+0
git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM SoC fixes from Arnd Bergmann: "Here is a third set of fixes for the soc tree, well within the expected set of changes. Maintainer list changes: - Krzysztof Kozlowski and Jisheng Zhang both have new email addresses - Broadcom iProc has a new git tree Regressions: - Robert Foss sends a revert for a Mediatek DPI bridge patch that caused an inadvertent break in the DT binding - mstar timers need to be included in Kconfig Devicetree fixes for: - Aspeed ast2600 spi pinmux - Tegra eDP panels on Nyan FHD - Tegra display IOMMU - Qualcomm sm8350 UFS clocks - minor DT changes for Marvell Armada, Qualcomm sdx65, Qualcomm sm8450, and Broadcom BCM2711" * tag 'soc-fixes-5.17-3' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: arm64: dts: marvell: armada-37xx: Remap IO space to bus address 0x0 MAINTAINERS: Update Jisheng's email address Revert "arm64: dts: mt8183: jacuzzi: Fix bus properties in anx's DSI endpoint" dt-bindings: drm/bridge: anx7625: Revert DPI support ARM: dts: aspeed: Fix AST2600 quad spi group MAINTAINERS: update Krzysztof Kozlowski's email MAINTAINERS: Update git tree for Broadcom iProc SoCs ARM: tegra: Move Nyan FHD panels to AUX bus arm64: dts: armada-3720-turris-mox: Add missing ethernet0 alias ARM: mstar: Select HAVE_ARM_ARCH_TIMER soc: mediatek: mt8192-mmsys: Fix dither to dsi0 path's input sel arm64: dts: mt8183: jacuzzi: Fix bus properties in anx's DSI endpoint ARM: boot: dts: bcm2711: Fix HVS register range arm64: dts: qcom: c630: disable crypto due to serror arm64: dts: qcom: sm8450: fix apps_smmu interrupts arm64: dts: qcom: sm8450: enable GCC_USB3_0_CLKREF_EN for usb arm64: dts: qcom: sm8350: Correct UFS symbol clocks arm64: tegra: Disable ISO SMMU for Tegra194 Revert "dt-bindings: arm: qcom: Document SDX65 platform and boards"
2022-03-10dt-bindings: Add common bindings for ARM and RISC-V idle statesAnup Patel3-663/+2
The RISC-V CPU idle states will be described in under the /cpus/idle-states DT node in the same way as ARM CPU idle states. This patch adds common bindings documentation for both ARM and RISC-V idle states. Signed-off-by: Anup Patel <anup.patel@wdc.com> Signed-off-by: Anup Patel <apatel@ventanamicro.com> Reviewed-by: Rob Herring <robh@kernel.org> Reviewed-by: Guo Ren <guoren@kernel.org> Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
2022-03-08Merge tag 'arm-soc/for-5.18/devicetree' of ↵Arnd Bergmann1-0/+1
https://github.com/Broadcom/stblinux into arm/dt This pull request contains Broadcom ARM-based SoCs Device Tree changes for 5.18, please pull the following: - Arinc defines the switch ports of the RTL8365MB switch on the Asus RT-AC88U - Richard provides cache information for the BCM2835/36/37 and BCM2711 SoCs such that tools like "lscpu -C" can report it when supported - Stefan adds support for the Raspberry Pi Zero 2 W (wireless) - Matthew defines the MAC address NVMEM cells for the Cisco Meraki MX64/MX65 devices, he also fixes the LED for these platforms. - Rafal adds the MAC addres NVMEM cell for the Luxul XWR-3150 * tag 'arm-soc/for-5.18/devicetree' of https://github.com/Broadcom/stblinux: ARM: dts: BCM5301X: Add Ethernet MAC address to Luxul XWR-3150 ARM: dts: NSP: MX6X: correct LED function types ARM: dts: NSP: MX6X: get mac-address from eeprom arm64: dts: broadcom: Add reference to RPi Zero 2 W ARM: dts: Add Raspberry Pi Zero 2 W dt-bindings: arm: bcm2835: Add Raspberry Pi Zero 2 W ARM: dts: bcm2835/6: Add the missing L1/L2 cache information ARM: dts: bcm2711: Add the missing L1/L2 cache information ARM: dts: bcm2837: Add the missing L1/L2 cache information ARM: dts: BCM5301X: define RTL8365MB switch on Asus RT-AC88U Link: https://lore.kernel.org/r/20220307194817.3754107-2-f.fainelli@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-05dt-bindings: arm: Allow 32-bit 'cpu-release-addr' valuesRob Herring1-5/+5
While the DT Spec says 'cpu-release-addr' is always 64-bit, some 32-bit Arm DTs used a 32-bit value. We're now stuck with those cases, so add uint32 as a valid type. Signed-off-by: Rob Herring <robh@kernel.org> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> Link: https://lore.kernel.org/r/20220303165710.1859862-1-robh@kernel.org
2022-03-04dt-bindings: fsl: scu: add imx8dxl scu clock supportAbel Vesa1-0/+1
Add imx8dxl scu clock support. Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Acked-by: Rob Herring <robh@kernel.org> Acked-by: Stephen Boyd <sboyd@kernel.org> Link: https://lore.kernel.org/r/20220222082140.2073629-1-abel.vesa@nxp.com
2022-03-01Merge tag 'qcom-drivers-for-5.18' of ↵Arnd Bergmann1-0/+2
git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/drivers Qualcomm driver updates for v5.18 This refactors the Qualcomm mdt file loader, to partially decouple it from the SCM peripheral-authentication-service. This is needed as newer platforms, such as the Qualcomm SM8450, require the metadata to remain accessible to TrustZone during a longer time. This is followed by the introduction of remoteproc drivers for SM8450 (Snapdragon 8 Gen 1). It changes the way hardware version differences are handled in the LLCC driver and introduces support for Qualcomm SM8450. While updating the dt binding for LLCC it also introduces the missing SM8350 compatible. The ocmem and aoss drivers gains missing put_device() calls and rpmpd gains a missing check for kcalloc() failure. The SPM driver is updated to avoid instantiating the SPM cpuidle devices if the CPUs aren't controlled by SPM, such as when Snapdragon 8916 operates in 32-bit mode without PSCI. The RPM power-domain driver gains MSM8226 support. Lastly the socinfo driver gains knowledge about a few new SoCs and PMICs. * tag 'qcom-drivers-for-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (37 commits) soc: qcom: rpmpd: Add MSM8226 support dt-bindings: power: rpmpd: Add MSM8226 to rpmpd binding soc: qcom: mdt_loader: Fix split-firmware condition dt-bindings: arm: msm: Add LLCC compatible for SM8450 dt-bindings: arm: msm: Add LLCC compatible for SM8350 soc: qcom: llcc: Add configuration data for SM8450 SoC soc: qcom: llcc: Update register offsets for newer LLCC HW soc: qcom: llcc: Add missing llcc configuration data soc: qcom: llcc: Add write-cache cacheable support soc: qcom: llcc: Update the logic for version info extraction soc: qcom: llcc: Add support for 16 ways of allocation soc: qcom: socinfo: Add some more PMICs and SoCs firmware: qcom: scm: Add support for MC boot address API firmware: qcom: scm: Drop cpumask parameter from set_boot_addr() firmware: qcom: scm: Simplify set_cold/warm_boot_addr() cpuidle: qcom-spm: Check if any CPU is managed by SPM remoteproc: qcom: pas: Add SM8450 remoteproc support dt-bindings: remoteproc: qcom: pas: Add SM8450 PAS compatibles remoteproc: qcom: pas: Carry PAS metadata context soc: qcom: mdt_loader: Extract PAS operations ... Link: https://lore.kernel.org/r/20220301042055.1804859-1-bjorn.andersson@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01Merge tag 'v5.17-next-dts32' of ↵Arnd Bergmann2-0/+32
git://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux into arm/dt - add initial support for mt6582 and Prestigio PMT5008 3G tablet - add basic support for Airoha EN7523 * tag 'v5.17-next-dts32' of git://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux: ARM: dts: add GPIO support for Airoha EN7523 ARM: Add basic support for Airoha EN7523 SoC dt-bindings: arm: airoha: Add binding for EN7523 SoC and EVB dt-bindings: Add vendor prefix for Airoha dt-bindings: mediatek: Adds a DT binding documentation for the MT6582 SoC ARM: dts: Add initial support for Prestigio PMT5008 3G tablet ARM: dts: Add initial support for Mediatek mt6582 Link: https://lore.kernel.org/r/3974dc7e-4185-4d88-ab5b-031a7d24214d@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01Merge tag 'qcom-arm64-for-5.18' of ↵Arnd Bergmann2-1/+23
git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt Qualcomm ARM64 DeviceTree updates for v5.18 New platforms: Snapdragon 625 and Snapdragon 632 New boards: Google Herobrine R1, Fairphone FP3, SHIFT6mq, Samsung Galaxy Book2 and Snapdragon 8 Gen 1 Hardware Development Kit (HDK) On IPQ6018 the USB reference period is corrected, GICv2m support is enabled and the max-link-speed for PCIe is specified. IPQ8074 adds description of GIVv2m and SMEM, and ensures that TrustZone related memory is reserved from Linux. On the Snapdragon 7c Gen 3 (SC7280) description of display, displayport, L3 interconnect, bluetooth, CPU opp-tables are added. Another revision of the Google Herobrine is introduced and a bunch of cleanups are introduced. On Snapdragon 845 new support for the SHIFT6mq device is introduced, the OnePlus devices gains fuel gauge and the platform gains GSI DMA support, which is enabled for SPI (for now). On the Snapdragon 850 based WindowsOnSnapdragon laptops, initial support for Samsugn Galaxy Book2 is introduced and the Lenovo Yoga C630 gains description of its backlight controls. The Snapdragon 625 platform (MSM8953) the thereof derrived Snapdragon 632 platform is introduced, with initial description of the Fairphone 3. Fairphone 4 on the SM7225 platform gains proper WLED configuration. On Snapdragon 855 (SM8150) description of the limits hardware (LMh) is introduced and the SPI and I2C devices are wired to the GSI DMA controller. On Snapdragon 865 (SM8250) the CPU and cluster idle states are introduced, the MSI interrupts for PCIe 1 and 2 are corrected and the CPUfreq driver gains knowledge about thermal pressure interrupts. On Snapdragon 8 Gen 1 (SM8450) LLCC, interconnect and remoteproc descriptions are added. The SM8450 Hardware Development Kit is introduced and the QRD has its remoteproc instances enabled. Cluster idle and RPMh parameters are corrected on SM8150, SM8350 and SM8540. The IPA device on SC7180, SC7280 and SM8350 gains knowledge of the AOSS QMP mailbox, allowing it to enable retention of IPA registers during power collapse. DeviceTree validation issues related to thermal zone naming, missing CPU, device and platform compatibles, APR, Google EC PWM, DB410c sound, QCS404 opp-tables and SM8250 PCIe nodes are corrected. A bunch of cleanups and style fixes for MSM8992, MSM8994, MSM8996 and MSM8916 are introduced as well. * tag 'qcom-arm64-for-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (96 commits) arm64: dts: qcom: sdm632: Add device tree for Fairphone 3 dt-bindings: arm: qcom: Document sdm632 and fairphone,fp3 board arm64: dts: qcom: Add SDM632 device tree arm64: dts: qcom: Add PM8953 PMIC arm64: dts: qcom: Add MSM8953 device tree dt-bindings: arm: cpus: Add Kryo 250 CPUs arm64: dts: qcom: msm8916-longcheer-l8150: Add light and proximity sensor arm64: dts: qcom: align Google CROS EC PWM node name with dtschema arm64: dts: qcom: Add support for Samsung Galaxy Book2 arm64: dts: qcom: msm8996: convert xo_board to RPM_SMD_BB_CLK1 arm64: dts: qcom: msm8996: add cxo and sleep-clk to gcc node arm64: dts: qcom: sdm845: add bi_tcxo to camcc arm64: dts: qcom: sdm845: enable dma for spi arm64: dts: qcom: sdm845: Add gsi dma node arm64: dts: qcom: sc7280: Add cpu OPP tables arm64: dts: qcom: sc7280: Add EPSS L3 interconnect provider arm64: dts: qcom: sm8450: Add LLCC/system-cache-controller node arm64: dts: qcom: ipq6018: drop the clock-frequency property arm64: dts: qcom: ipq8074: drop the clock-frequency property arm64: dts: qcom: sm8450: add interconnect nodes ... Link: https://lore.kernel.org/r/20220301053929.1809684-1-bjorn.andersson@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01Merge tag 'qcom-dts-fixes-for-5.17' of ↵Arnd Bergmann1-6/+0
git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/fixes Qualcomm DeviceTree fixes for v5.17 The SDX65 platform and MTP device was added twice to the DT binding, this drops one of the occurances. * tag 'qcom-dts-fixes-for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: Revert "dt-bindings: arm: qcom: Document SDX65 platform and boards" Link: https://lore.kernel.org/r/20220301033838.1801689-1-bjorn.andersson@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-03-01dt-bindings: arm: mediatek: mmsys: add support for MT8186Rex-BC Chen1-0/+1
Add "mediatek,mt8186-mmsys" to binding document. Signed-off-by: Rex-BC Chen <rex-bc.chen@mediatek.com> Acked-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220301080105.31323-2-rex-bc.chen@mediatek.com Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2022-02-28Merge tag 'ti-k3-dt-for-v5.18' of ↵Arnd Bergmann1-0/+6
git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into arm/dt TI K3 device tree updates for v5.18 Since (ti-k3-dt-fixes-for-v5.17): Fixes: * Cleanups for flash nodes across K3. * gic-v3 backward compatible registers * j721s2 interrupt parent fixup for wakeup GPIO New: * AM62 SoC and AM62-SK board * wdt support for am64 * tag 'ti-k3-dt-for-v5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux: arm64: dts: ti: Add support for AM62-SK arm64: dts: ti: Introduce base support for AM62x SoC dt-bindings: pinctrl: k3: Introduce pinmux definitions for AM62 dt-bindings: arm: ti: Add bindings for AM625 SoC arm64: dts: ti: k3-*: Drop address and size cells from flash nodes arm64: dts: ti: k3-*: Fix whitespace around flash@0 nodes arm64: dts: ti: k3-j721s2: Fix gic-v3 compatible regs arm64: dts: ti: k3-am64: Fix gic-v3 compatible regs arm64: dts: ti: k3-j7200: Fix gic-v3 compatible regs arm64: dts: ti: k3-j721e: Fix gic-v3 compatible regs arm64: dts: ti: k3-am65: Fix gic-v3 compatible regs arm64: dts: ti: k3-j721s2-mcu-wakeup: Fix the interrupt-parent for wkup_gpioX instances arm64: dts: ti: k3-am64: Add ESM0 to device memory map arm64: dts: ti: k3-am65*: Remove #address-cells/#size-cells from flash nodes arm64: dts: ti: k3-am64-main: Add RTI watchdog nodes arm64: dts: ti: k3-j721s2-common-proc-board: Alias console uart to serial2 arm64: dts: ti: k3-j721s2: Move aliases to board dts Link: https://lore.kernel.org/r/20220228120711.xdburehxs5gnwxko@capacity Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-28dt-bindings: arm: ti: Add bindings for AM625 SoCNishanth Menon1-0/+6
The AM62 SoC family is the follow on AM335x built on K3 Multicore SoC architecture platform, providing ultra-low-power modes, dual display, multi-sensor edge compute, security and other BOM-saving integration. The AM62 SoC targets broad market to enable applications such as Industrial HMI, PLC/CNC/Robot control, Medical Equipment, Building Automation, Appliances and more. Some highlights of this SoC are: * Quad-Cortex-A53s (running up to 1.4GHz) in a single cluster. Pin-to-pin compatible options for single and quad core are available. * Cortex-M4F for general-purpose or safety usage. * Dual display support, providing 24-bit RBG parallel interface and OLDI/LVDS-4 Lane x2, up to 200MHz pixel clock support for 2K display resolution. * Selectable GPUsupport, up to 8GFLOPS, providing better user experience in 3D graphic display case and Android. * PRU(Programmable Realtime Unit) support for customized programmable interfaces/IOs. * Integrated Giga-bit Ethernet switch supporting up to a total of two external ports (TSN capable). * 9xUARTs, 5xSPI, 6xI2C, 2xUSB2, 3xCAN-FD, 3x eMMC and SD, GPMC for NAND/FPGA connection, OSPI memory controller, 3xMcASP for audio, 1x CSI-RX-4L for Camera, eCAP/eQEP, ePWM, among other peripherals. * Dedicated Centralized System Controller for Security, Power, and Resource Management. * Multiple low power modes support, ex: Deep sleep,Standby, MCU-only, enabling battery powered system design. AM625 is the first device of the family. Add DT bindings for the same. More details can be found in the Technical Reference Manual: https://www.ti.com/lit/pdf/spruiv7 Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> Acked-by: Rob Herring <robh@kernel.org> Reviewed-by: Bryan Brattlof <bb@ti.com> Link: https://lore.kernel.org/r/20220225120239.1303821-3-vigneshr@ti.com
2022-02-25Merge tag 'stm32-dt-for-v5.18-1' of ↵Arnd Bergmann1-0/+6
git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into arm/dt STM32 DT for v5.18, round 1 Highlights: ---------- -MCU: -Fix W=1 warnings for timers (duplicate unit-address) for F4 and F7 series. -Enable DMA2D on f469 disco. - MPU: -General: - Add new board support: emSBS-Argon. - Add dma configuration for all U(S)ART nodes and disable them in board files when they are not needed in stm32mp15. - Correct GIC PPI interrupts on stm32mp15 and stm32mp13. - ST boards: - Add EXTI support on stm32mp13 - Add DMA, MDMA and DMAmux support to stm32mp13 (iso feature than MP15) - Update SDMMC1/2 support on stm32mp13: sleep config, update version to v2.2, update the max frequency to 130 MHz. - DH boards: - Enable rproc to control the CM4 and IPCC mailbox to interact with it. * tag 'stm32-dt-for-v5.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32: (43 commits) ARM: dts: stm32: Correct masks for GIC PPI interrupts on stm32mp15 ARM: dts: stm32: Correct masks for GIC PPI interrupts on stm32mp13 ARM: dts: stm32: remove timer5 duplicate unit-address on stm32f7 series ARM: dts: stm32: remove some timer duplicate unit-address on stm32f7 series ARM: dts: stm32: Enable EXTI on stm32mp13 ARM: dts: stm32: keep uart nodes behavior on stm32mp15xx-dhcor-avenger96 ARM: dts: stm32: keep uart4 behavior on stm32mp15xx-dhcom-som ARM: dts: stm32: keep uart nodes behavior on stm32mp15xx-dhcom-picoitx ARM: dts: stm32: keep uart nodes behavior on stm32mp15xx-dhcom-pdk2 ARM: dts: stm32: keep uart nodes behavior on stm32mp15xx-dhcom-drc02 ARM: dts: stm32: keep uart4 behavior on stm32mp157c-odyssey ARM: dts: stm32: keep uart4 behavior on stm32mp157c-lxa-mc1 ARM: dts: stm32: keep uart nodes behavior on stm32mp157a-stinger96 ARM: dts: stm32: keep uart nodes behavior on stm32mp1-microdev2.0 ARM: dts: stm32: keep uart nodes behavior on stm32mp1-microdev2.0-of7 ARM: dts: stm32: keep uart4 behavior on stm32mp157a-iot-box ARM: dts: stm32: keep uart4 behavior on icore-stm32mp1-edimm2.2 ARM: dts: stm32: keep uart4 behavior on icore-stm32mp1-ctouch2 ARM: dts: stm32: keep uart4 and uart7 behavior on stm32mp15xx-dkx ARM: dts: stm32: keep uart4 behavior on stm32mp157c-ed1 ... Link: https://lore.kernel.org/r/893924a9-bcc4-9fa9-4f8e-7f56e77f6854@foss.st.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'soc-fsl-fix-v5.17' of ↵Arnd Bergmann1-1/+1
git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux into arm/fixes NXP/FSL SoC driver fixes for v5.17 - Add missing SoC compatible in existing binding - Replace kernel.h with the necessary inclusions - MAINTAINERS file fixes - Fix memory allocation failure check in guts driver - Various cleanups and minor fixes * tag 'soc-fsl-fix-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux: soc: fsl: qe: Check of ioremap return value soc: fsl: qe: fix typo in a comment soc: fsl: guts: Add a missing memory allocation failure check soc: fsl: guts: Revert commit 3c0d64e867ed soc: fsl: Correct MAINTAINERS database (SOC) soc: fsl: Correct MAINTAINERS database (QUICC ENGINE LIBRARY) soc: fsl: Replace kernel.h with the necessary inclusions dt-bindings: fsl,layerscape-dcfg: add missing compatible for lx2160a dt-bindings: qoriq-clock: add missing compatible for lx2160a Link: https://lore.kernel.org/r/20220219012208.21835-1-leoyang.li@nxp.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'at91-dt-5.18' of ↵Arnd Bergmann1-0/+9
git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux into arm/dt AT91 & LAN966 DT #1 for 5.18: - lan966x basic DT and associated evaluation board pcb8291 (2-ports) - documentation for an upcoming Kontron switch board featuring a LAN9668 - one fix for an old bug we have with PMECC on sama5d2 in some corner cases - sama7g5 and its EK: crypto, CAN and DVFS operating points * tag 'at91-dt-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux: ARM: dts: at91: sama7g5: add opps ARM: dts: at91: sama7g5ek: set regulator voltages for standby state ARM: dts: at91: fix low limit for CPU regulator ARM: dts: at91: sama7g5: Enable can0 and can1 support in sama7g5-ek ARM: dts: at91: sama7g5: Add can controllers of sama7g5 ARM: dts: at91: sama7g5: Add crypto nodes ARM: dts: at91: Use the generic "crypto" node name for the crypto IPs ARM: dts: at91: remove status = "okay" from soc specific dtsi ARM: dts: at91: sama5d2: Fix PMERRLOC resource size dt-bindings: arm: at91: add Kontron's new KSwitches ARM: dts: add DT for lan966 SoC and 2-port board pcb8291 Link: https://lore.kernel.org/r/20220225110735.18080-1-nicolas.ferre@microchip.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'v5.18-rockchip-dts64-1' of ↵Arnd Bergmann1-0/+13
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/dt New boards: Pine64 PineNote ereader tablet and Bananapi-R2-Pro (both rk356x) New peripherals for the rk356x-family (pdm-audio, gpu, another i2s, usb2) A lot of additions to Quartz-A (connector-header, gpu, sdmmc1, io-domains, usb2) and rk3568-evb1-v10 (rk809-audio, cpu-regulator, gpu, tsadc, led, usb2, touchscreen). Fixes for the pwm-regulators, that used wrong names for their supplies as well adapting the cros-ec pwm nodes to a changed binding (going via the pwm tree). And as sort of misc-changes, defined the logic-regulator on rk3399-puma as well as enabled the mali-gpu on the rk3399-firefly. * tag 'v5.18-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (28 commits) arm64: dts: rockchip: align Google CROS EC PWM node name with dtschema arm64: dts: rockchip: enable rk809 audio codec on the rk3568 evb1-v10 arm64: dts: rockchip: set vdd_gpu regulator on rk3568-evb1-v10 to always on arm64: dts: rockchip: add the vdd_cpu regulator to rk3568-evb1-v10 arm64: dts: rockchip: enable work led on rk3568-evb1-v10 arm64: dts: rockchip: fix supplies for pwm regulators arm64: dts: rockchip: define vdd_log on rk3399-puma arm64: dts: rockchip: Add Pine64 PineNote board arm64: dts: rockchip: Add pdm node to rk356x dt-bindings: arm: rockchip: Add Pine64 PineNote board arm64: dts: rockchip: enable the tsadc on rk3568-evb1-v10 arm64: dts: rockchip: enable the gpu on rk3568-evb1-v10 arm64: dts: rockchip: enable the gpu on quartz64-a arm64: dts: rockchip: add cooling map and trip points for gpu to rk356x arm64: dts: rockchip: add gpu node to rk356x arm64: dts: rockchip: add usb2 support to rk3568-evb1-v10 arm64: dts: rockchip: rename and sort the rk356x usb2 phy handles arm64: dts: rockchip: add the i2s3_2ch node to rk356x arm64: dts: rockchip: Add Bananapi R2 Pro dt-bindings: rockchip: Add BananaPi R2 Pro Board ... Link: https://lore.kernel.org/r/6456947.djgVdjDsCv@phil Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'sunxi-dt-for-5.18-1' of ↵Arnd Bergmann1-0/+5
git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/dt Usual round of DT patches for the 5.18 merge window, with: - DT fixes - ethernet0 alias for Nanopi NEO - r_uart node for H3/H5 - eMMC and bluetooth nodes for Nanopi NEO air - updated maintainers for Allwinner SoCs - new board: A20-Marsboard * tag 'sunxi-dt-for-5.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: MAINTAINERS: Update Allwinner SoCs maintainers ARM: dts: sun8i-h3: Drop args in 'thermal-sensors' ARM: dts: sun8i: v3s: Move the csi1 block to follow address order ARM: dts: sun8i: Add ethernet0 alias in Nanopi NEO's device tree dt-bindings: arm: sunxi: add haoyu,a20-marsboard ARM: dts: sun7i: Add A20-Marsboard ARM: dts: sunxi: h3/h5: add r_uart node ARM: dts: nanopi-neo-air: Add eMMC and bluetooth Link: https://lore.kernel.org/r/YhgMJ0AqaHopzaW3@kista.localdomain Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'imx-bindings-5.18' of ↵Arnd Bergmann1-0/+24
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/dt i.MX dt-bindings change for 5.18: - New board compatible for Protonic PRT8MM, Toradex Verdin-imx8mm, emCON-MX8M Mini, i.MX8MM GW7903. - A series of patches from Lucas Stach adding support for i.MX8M VPU and HSIO blk-ctrl power domains. * tag 'imx-bindings-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: dt-bindings: arm: imx: add imx8mm gw7903 support dt-bindings: soc: add binding for i.MX8MP HSIO blk-ctrl dt-bindings: power: imx8mp: add defines for HSIO blk-ctrl domains dt-bindings: power: add defines for i.MX8MP power domain dt-bindings: arm: fsl: add toradex,verdin-imx8mm et al. dt-bindings: arm: Add emtrion hardware emCON-MX8M Mini dt-bindings: arm: imx: add Protonic PRT8MM board compatible dt-bindings: soc: add binding for i.MX8MQ VPU blk-ctrl dt-bindings: power: imx8mq: add defines for VPU blk-ctrl domains Link: https://lore.kernel.org/r/20220222075226.160187-3-shawnguo@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'amlogic-arm64-dt-for-v5.18' of ↵Arnd Bergmann1-0/+12
git://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux into arm/dt Amlogic ARM64 DT changes for v5.18: - New Boards: - Amediatek X96-AIR (Amlogic S905X3) - CYX A95XF3-AIR (Amlogic S905X3) - Haochuangy H96-Max (Amlogic S905X3) - Amlogic AQ222 (Amlogic S4) - OSMC Vero 4K+ (Amlogic S905D) - Initial support for Amlogic S4 - Support for uart_ao_b & pwm_f on G12 SoCs * tag 'amlogic-arm64-dt-for-v5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux: arm64: dts: meson: add support for OSMC Vero 4K+ dt-bindings: arm: amlogic: add Vero 4K+ bindings dt-bindings: vendor-prefixes: add osmc prefix arm64: dts: meson-g12-common: add uart_ao_b pins muxing arm64: dts: meson-g12-common: add more pwm_f options arm64: dts: add support for S4 based Amlogic AQ222 arm64: dts: meson: add initial device-tree for H96-Max dt-bindings: arm: amlogic: add H96-Max bindings dt-bindings: vendor-prefixes: add haochuangyi prefix arm64: dts: meson: add initial device-trees for A95XF3-AIR dt-bindings: arm: amlogic: add A95XF3-AIR bindings dt-bindings: vendor-prefixes: add cyx prefix arm64: dts: meson: add initial device-trees for X96-AIR dt-bindings: arm: amlogic: add X96-AIR bindings arm64: dts: meson: add common SM1 ac2xx dtsi arm64: dts: meson-sm1: add spdifin and pdifout nodes dt-bindings: arm: amlogic: add S4 based AQ222 bindings Link: https://lore.kernel.org/r/a7cd9937-d441-3e1f-9709-8e80cc8814f1@baylibre.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'nuvoton-5.18-devicetree' of ↵Arnd Bergmann1-0/+48
git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc into arm/dt Nuvoton device tree updates for 5.18 * Additions to wpcm450 following the upstremaing of the pinctrl/gpio driver for this platform * Match more of the platform in MAINTAINERS * tag 'nuvoton-5.18-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc: MAINTAINERS: ARM/WPCM450: Add 'W:' line with wiki ARM: dts: wpcm450: Add pinmux information to UART0 ARM: dts: wpcm450-supermicro-x9sci-ln4f: Add GPIO LEDs and buttons ARM: dts: wpcm450: Add pin functions ARM: dts: wpcm450: Add pinctrl and GPIO nodes ARM: dts: wpcm450: Add global control registers (GCR) node MAINTAINERS: Match all of bindings/arm/npcm/ as part of NPCM architecture dt-bindings: arm/npcm: Add binding for global control registers (GCR) Link: https://lore.kernel.org/r/CACPK8XdjF6dG04hR+iMpUP8=LSJi5x-hRivgCGDaY7o_461eJw@mail.gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge branch 'mstar-dt-next' of https://github.com/linux-chenxing/linux into ↵Arnd Bergmann1-0/+4
arm/dt * 'mstar-dt-next' of https://github.com/linux-chenxing/linux: ARM: mstar: Extend opp_table for infinity2m ARM: mstar: Add OPP table for infinity3 ARM: mstar: Add OPP table for infinity ARM: mstar: Link cpupll to second core ARM: mstar: Link cpupll to cpu ARM: mstar: Add cpupll to base dtsi dt-bindings: clk: mstar msc313 cpupll binding description ARM: dts: mstar: Add board for 100ask DongShanPiOne dt-bindings: arm: mstar: Add compatible for 100ask DongShanPiOne dt-bindings: vendor-prefixes: Add prefix for 100ask ARM: dts: mstar: Add a dts for Miyoo Mini dt-bindings: arm: mstar: Add compatible for Miyoo Mini dt-bindings: vendor-prefixes: Add prefix for Miyoo ARM: dts: mstar: Add the Wireless Tag IDO-SBC2D06-V1B-22W dt-bindings: add vendor prefix for Wireless Tag ARM: dts: mstar: Set gpio compatible for ssd20xd Link: https://lore.kernel.org/r/20220216193131.59794-1-romain.perier@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'renesas-dt-bindings-for-v5.18-tag1' of ↵Arnd Bergmann1-0/+9
git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into arm/dt Renesas DT binding updates for v5.18 - Document support for the new RZ/V2L SoC and the RZ/V2L SMARC EVK board. * tag 'renesas-dt-bindings-for-v5.18-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: dt-bindings: power: renesas,rzg2l-sysc: Document RZ/V2L SoC dt-bindings: arm: renesas: Document Renesas RZ/V2L SoC on SMARC EVK Link: https://lore.kernel.org/r/cover.1644587209.git.geert+renesas@glider.be Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'socfpga_dts_update_for_v5.18_part1' of ↵Arnd Bergmann2-6/+66
git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into arm/dt SoCFPGA dts updates for v5.18, part 1 - Cleanup of Altera/Intel ARMv7 and ARMv8 DTS and bindings * tag 'socfpga_dts_update_for_v5.18_part1' of git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux: (22 commits) ARM: dts: socfpga: cyclone5: align regulator node with dtschema ARM: dts: socfpga: arria10: align regulator node with dtschema arm64: dts: agilex: align pl330 node name with dtschema arm64: dts: stratix10: align pl330 node name with dtschema arm64: dts: intel: socfpga_agilex_socdk: align LED node names with dtschema arm64: dts: agilex: align mmc node names with dtschema arm64: dts: agilex: add board compatible for N5X DK arm64: dts: agilex: add board compatible for SoCFPGA DK arm64: dts: stratix10: align regulator node names with dtschema arm64: dts: stratix10: align mmc node names with dtschema arm64: dts: stratix10: move ARM timer out of SoC node arm64: dts: stratix10: add board compatible for SoCFPGA DK ARM: dts: arria10: add board compatible for SoCFPGA DK ARM: dts: arria10: add board compatible for Mercury AA1 ARM: dts: arria5: add board compatible for SoCFPGA DK dt-bindings: clock: intel,stratix10: convert to dtschema dt-bindings: intel: document Agilex based board compatibles dt-bindings: altera: document Stratix 10 based board compatibles dt-bindings: altera: document VT compatibles dt-bindings: altera: document Arria 10 based board compatibles ... Link: https://lore.kernel.org/r/20220211112556.98940-1-dinguyen@kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-25Merge tag 'samsung-dt-5.18' of ↵Arnd Bergmann1-0/+2
git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/dt Samsung DTS ARM changes for v5.18 1. Minor improvements and dtschema fixes (node names, properties). 2. Fix issues pointed out by DT schema checks: - Add necessary clock controller inputs on Exynos5260. - Drop unsupported regulators on Odroid XU. - Add USB DWC3 supplies. - Drop old thermal properties from Exynos4210. 3. Add support for Samsung Chagall WiFi (Exynos5420, Samsung Galaxy Tab S 10.5", SM-T800 ) and a similar Samsung Klimt WiFi (Samsung Galaxy Tab S 8.4"). 4. Add battery to Samsung P4Nnote (Exynos4412, Samsung Galaxy Note 10.1). * tag 'samsung-dt-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: (22 commits) ARM: dts: exynos: use generic node name for LPDDR3 timings in Odroid ARM: dts: exynos: add charger and battery to p4note ARM: dts: exynos: update dma node name with dtschema ARM: dts: exynos: use define for TMU clock on Exynos4412 ARM: dts: exynos: drop old thermal properties from Exynos4210 ARM: dts: exynos: add fake USB DWC3 supplies to SMDK5410 ARM: dts: exynos: add USB DWC3 supplies to SMDK5420 ARM: dts: exynos: add USB DWC3 supplies to Chromebook Peach Pi ARM: dts: exynos: add USB DWC3 supplies to Chromebook Peach Pit ARM: dts: exynos: add USB DWC3 supplies to ArndaleOcta ARM: dts: exynos: add USB DWC3 supplies to Chromebook Spring ARM: dts: exynos: add USB DWC3 supplies to Chromebook Snow ARM: dts: exynos: add USB DWC3 supplies to SMDK5250 ARM: dts: exynos: add USB DWC3 supplies to Arndale ARM: dts: exynos: Add support for Samsung Klimt WiFi dt-bindings: arm: samsung: document Klimt WiFi board binding ARM: dts: exynos: Add support for Samsung Chagall WiFi dt-bindings: arm: samsung: document Chagall WiFi board binding ARM: dts: exynos: drop unsupported MAX77802 regulators on Odroid XU ARM: dts: exynos: add necessary clock controller inputs in Exynos5260 ... Link: https://lore.kernel.org/r/20220209145226.184375-1-krzysztof.kozlowski@canonical.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-24dt-bindings: arm: qcom: Document sdm632 and fairphone,fp3 boardLuca Weiss1-0/+6
Add binding documentation for Fairphone 3 smartphone which is based on Snapdragon 632 (sm632). Signed-off-by: Luca Weiss <luca@z3ntu.xyz> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20220220201909.445468-10-luca@z3ntu.xyz
2022-02-24dt-bindings: arm: cpus: Add Kryo 250 CPUsLuca Weiss1-0/+1
Document Kryo 250 CPUs found in Qualcomm Snapdragon 632 (SDM632). Signed-off-by: Luca Weiss <luca@z3ntu.xyz> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20220220201909.445468-5-luca@z3ntu.xyz
2022-02-24dt-bindings: arm: at91: add Kontron's new KSwitchesMichael Walle1-0/+9
The Kontron KSwitch D10 MMT series ethernet switches features a LAN9668 SoC with either 8 copper ports or 6 copper port and two SFP cages. Signed-off-by: Michael Walle <michael@walle.cc> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com> Link: https://lore.kernel.org/r/20220210131817.484922-1-michael@walle.cc
2022-02-21dt-bindings: arm: amlogic: add Vero 4K+ bindingsChristian Hewitt1-0/+1
Add the board binding for the OSMC Vero 4K+ STB device Signed-off-by: Christian Hewitt <christianshewitt@gmail.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Link: https://lore.kernel.org/r/20220211105311.30320-3-christianshewitt@gmail.com
2022-02-21dt-bindings: arm: imx: add imx8mm gw7903 supportTim Harvey1-0/+1
The GW7903 is based on the i.MX 8M Mini SoC featuring: - LPDDR4 DRAM - eMMC FLASH - microSD connector with UHS support - LIS2DE12 3-axis accelerometer - Gateworks System Controller - IMX8M FEC - software selectable RS232/RS485/RS422 serial transceiver - PMIC - 2x off-board bi-directional opto-isolated digital I/O - 1x M.2 A-E Key Socket and 1x MiniPCIe socket with USB2.0 and PCIe (resistor loading to route PCIe/USB2 between M.2 and MiniPCIe socket) Signed-off-by: Tim Harvey <tharvey@gateworks.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2022-02-19dt-bindings: fsl,layerscape-dcfg: add missing compatible for lx2160aLi Yang1-1/+1
The compatible string is already in use, fix the chip list in binding to include it. Signed-off-by: Li Yang <leoyang.li@nxp.com> Acked-by: Rob Herring <robh@kernel.org>
2022-02-15dt-bindings: arm/npcm: Add binding for global control registers (GCR)Jonathan Neuschäfer1-0/+48
A nuvoton,*-gcr node is present in nuvoton-common-npcm7xx.dtsi and will be added to nuvoton-wpcm450.dtsi. It is necessary for the NPCM7xx and WPCM450 pinctrl drivers, and may later be used to retrieve SoC model and version information. This patch adds a binding to describe this node. Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220129115228.2257310-2-j.neuschaefer@gmx.net Signed-off-by: Joel Stanley <joel@jms.id.au>
2022-02-12dt-bindings: arm: rockchip: Add Pine64 PineNote boardSamuel Holland1-0/+8
The PineNote is a tablet from Pine64 based on the RK3566 SoC. There are two existing variants of the board. v1.1 was contained in some early samples, and v1.2 was sold as the "PineNote Developer Edition". Signed-off-by: Samuel Holland <samuel@sholland.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220130053803.43660-1-samuel@sholland.org Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2022-02-12dt-bindings: arm: bcm2835: Add Raspberry Pi Zero 2 WStefan Wahren1-0/+1
Add the Raspberry Pi Zero 2 W to DT schema. Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2022-02-12Merge tag 'at91-fixes-5.17' of ↵Arnd Bergmann1-1/+2
git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux into arm/fixes AT91 fixes #1 for 5.17: - MAINTAINERS file update. * tag 'at91-fixes-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux: dt-bindings: ARM: at91: update maintainers entry MAINTAINERS: replace a Microchip AT91 maintainer Link: https://lore.kernel.org/r/20220211133515.15314-1-nicolas.ferre@microchip.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-02-11dt-bindings: arm: Trivial typo fixes in cpu-capacity.txtZenghui Yu1-2/+2
Correct the spelling of 'cluster1@max-freq' and fix the wrong capacity-dmips-mhz value 576 (which should be 578 instead). Signed-off-by: Zenghui Yu <yuzenghui@huawei.com> Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220208070300.1610-1-yuzenghui@huawei.com