- 12 4月, 2023 1 次提交
-
-
由 Chris Morgan 提交于
Add support for the newly mainlined panel to the RG353 series of devices. Signed-off-by: NChris Morgan <macromorgan@hotmail.com> Link: https://lore.kernel.org/r/20221126011432.22891-2-macroalpha82@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
- 06 4月, 2023 9 次提交
-
-
由 Krzysztof Kozlowski 提交于
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: NKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230326204520.80859-1-krzysztof.kozlowski@linaro.orgSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Cristian Ciocaltea 提交于
Add the necessary DT nodes for the Rock 5B board to enable the analog audio support provided by the Everest Semi ES8316 codec. Signed-off-by: NCristian Ciocaltea <cristian.ciocaltea@collabora.com> Reviewed-by: NChristopher Obbard <chris.obbard@collabora.com> Link: https://lore.kernel.org/r/20230402095054.384739-6-cristian.ciocaltea@collabora.com [adapted to the fan addition I applied slightly earlier] Signed-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Cristian Ciocaltea 提交于
In addition to the five I2S/PCM/TDM controllers and the two I2S/PCM controllers shared between the RK3588 and RK3588S SoCs, RK3588 provides another group of four I2S/PCM/TDM controllers. Add the DT nodes corresponding to the additional controllers. Signed-off-by: NCristian Ciocaltea <cristian.ciocaltea@collabora.com> Link: https://lore.kernel.org/r/20230402095054.384739-5-cristian.ciocaltea@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Cristian Ciocaltea 提交于
There are five I2S/PCM/TDM controllers and two I2S/PCM controllers embedded in the RK3588 and RK3588S SoCs. Add the DT nodes corresponding to the above mentioned Rockchip controllers. Also note RK3588 SoC contains four additional I2S/PCM/TDM controllers, which are handled via a separate patch. Signed-off-by: NCristian Ciocaltea <cristian.ciocaltea@collabora.com> Link: https://lore.kernel.org/r/20230402095054.384739-4-cristian.ciocaltea@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Cristian Ciocaltea 提交于
The clock rate for PLL_PPLL has been wrongly initialized to 100 MHz instead of 1.1 GHz. Fix it. Fixes: c9211fa2 ("arm64: dts: rockchip: Add base DT for rk3588 SoC") Reported-by: NSebastian Reichel <sebastian.reichel@collabora.com> Signed-off-by: NCristian Ciocaltea <cristian.ciocaltea@collabora.com> Link: https://lore.kernel.org/r/20230402095054.384739-3-cristian.ciocaltea@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Cristian Ciocaltea 提交于
Since commit df4fdd0d ("dt-bindings: firmware: arm,scmi: Restrict protocol child node properties") the following dtbs_check warning is shown: rk3588-rock-5b.dtb: scmi: protocol@14: Unevaluated properties are not allowed ('assigned-clock-rates', 'assigned-clocks' were unexpected) Because adding the missing properties to firmware/arm,scmi.yaml binding document was not an acceptable solution, move SCMI_CLK_CPUB01 and SCMI_CLK_CPUB23 assigned clocks to the related CPU nodes and also add the missing SCMI_CLK_CPUL. Additionally, adjust frequency to 816 MHz for all the above mentioned assigned clocks, in order to match the firmware defaults. Suggested-by: NSebastian Reichel <sebastian.reichel@collabora.com> Signed-off-by: NCristian Ciocaltea <cristian.ciocaltea@collabora.com> Link: https://lore.kernel.org/r/20230402095054.384739-2-cristian.ciocaltea@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Sebastian Reichel 提交于
Add thermal sensor IP, which allows monitoring temperatures at seven different places in the SoC: * Chip Center * CPU Cluster 1 (Dual A76 "Big" Cores) * CPU Cluster 2 (Dual A76 "Big" Cores) * CPU Cluster 0 (Quad A55 "Little" Cores) * Power Domain Center * Graphics Processing Unit * Neural Processing Unit Signed-off-by: NSebastian Reichel <sebastian.reichel@collabora.com> Link: https://lore.kernel.org/r/20230404154429.51601-1-sebastian.reichel@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Cristian Ciocaltea 提交于
Add the necessary DT changes for the Rock 5B board to enable support for the PWM controlled heat sink fan. Signed-off-by: NCristian Ciocaltea <cristian.ciocaltea@collabora.com> Reviewed-by: NChristopher Obbard <chris.obbard@collabora.com> Link: https://lore.kernel.org/r/20230404173807.490520-3-cristian.ciocaltea@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Shreeya Patel 提交于
Add DT node to enable RTC support for Rock 5B board. Signed-off-by: NShreeya Patel <shreeya.patel@collabora.com> Reviewed-by: NChristopher Obbard <chris.obbard@collabora.com> Link: https://lore.kernel.org/r/20230405082711.46303-1-shreeya.patel@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
- 30 3月, 2023 5 次提交
-
-
由 Tianling Shen 提交于
The OrangePi R1 Plus LTS is a minor variant of OrangePi R1 Plus with the on-board NIC chip changed from rtl8211e to yt8531c, and otherwise identical to OrangePi R1 Plus. Signed-off-by: NTianling Shen <cnsztl@gmail.com> Link: https://lore.kernel.org/r/20230325074022.9818-5-cnsztl@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Tianling Shen 提交于
The NanoPi R2C is a minor variant of NanoPi R2S with the on-board NIC chip changed from rtl8211e to yt8521s, and otherwise identical to R2S. Signed-off-by: NTianling Shen <cnsztl@gmail.com> Link: https://lore.kernel.org/r/20230325074022.9818-3-cnsztl@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Martijn Braam 提交于
The phone has a Goodix GT1158 touchscreen, add a DT node for it. Signed-off-by: NMartijn Braam <martijn@brixit.nl> Co-developed-by: NKamil Trzciński <ayufan@ayufan.eu> Signed-off-by: NKamil Trzciński <ayufan@ayufan.eu> Co-developed-by: NOndrej Jirman <megi@xff.cz> Signed-off-by: NOndrej Jirman <megi@xff.cz> Signed-off-by: NJavier Martinez Canillas <javierm@redhat.com> Link: https://lore.kernel.org/r/20230328073309.1743112-3-javierm@redhat.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Martijn Braam 提交于
The phone's display is using a Hannstar LCD panel. Support it by adding a panel DT node and all needed nodes (backlight, MIPI DSI, regulators, etc). Signed-off-by: NMartijn Braam <martijn@brixit.nl> Co-developed-by: NKamil Trzciński <ayufan@ayufan.eu> Signed-off-by: NKamil Trzciński <ayufan@ayufan.eu> Co-developed-by: NOndrej Jirman <megi@xff.cz> Signed-off-by: NOndrej Jirman <megi@xff.cz> Signed-off-by: NJavier Martinez Canillas <javierm@redhat.com> Tested-by: NOndrej Jirman <megi@xff.cz> Link: https://lore.kernel.org/r/20230328073309.1743112-2-javierm@redhat.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Shreeya Patel 提交于
Add DT node for watchdog support in RK3588. Signed-off-by: NShreeya Patel <shreeya.patel@collabora.com> Link: https://lore.kernel.org/r/20230328210048.195124-2-shreeya.patel@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
- 23 3月, 2023 10 次提交
-
-
由 Johan Jonker 提交于
The hclk is not used in the dw-mipi-dsi binding, so remove hclk from the rk356x.dtsi dsi node. Signed-off-by: NJohan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/4df211eb-4fcd-ee20-48a1-ce7712de552c@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Johan Jonker 提交于
'vbus-supply' does not match any of the regexes in rk3566-box-demo.dts in the usb2phy0_otg node, so rename vbus-supply to phy-supply. Signed-off-by: NJohan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/1889d8ee-e119-4a52-33a1-b990a41a137c@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Johan Jonker 提交于
Use generic node name for rk3399.dtsi dp node. With the conversion of rockchip,analogix-dp.yaml a port@1 node is required, so add a node with label edp_out. Also restyle. Signed-off-by: NJohan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/f6008819-db9b-0944-3f5b-5522b7cd8a8d@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Johan Jonker 提交于
Use generic node name for rk3399.dtsi dsi node. With the conversion of rockchip,dw-mipi-dsi.yaml a port@1 node is required, so add a node with label mipi_out. Also restyle. Signed-off-by: NJohan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/1e019e9e-a8da-3d57-2770-f6b81bbbf591@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Johan Jonker 提交于
With the conversion of rockchip,dw-mipi-dsi.yaml a port@1 node is required, so add a node with label dsi_out. Also add label dsi_in to port@0. Signed-off-by: NJohan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/1ee3e676-aef4-f464-82b0-8fb39ba5c60d@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Johan Jonker 提交于
With the conversion of rockchip,lvds.yaml a port@1 node is required, so add a node with label lvds_out. Also add label lvds_in to port@0. Signed-off-by: NJohan Jonker <jbx6244@gmail.com> Link: https://lore.kernel.org/r/99895a4b-25c4-4b64-42ac-6f70940ab56e@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Tianling Shen 提交于
This is for the audio output which does not exist on the boards. Also disable regulator-always-on for vccio_acodec since it's only used by the audio output. Signed-off-by: NTianling Shen <cnsztl@gmail.com> Link: https://lore.kernel.org/r/20230318083745.6181-6-cnsztl@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Tianling Shen 提交于
- Changed phy-mode to rgmii. - Fixed pull type in pinctrl for gmac0. - Removed duplicate properties in mdio node. These properties are defined in the gmac0 node already. Signed-off-by: NTianling Shen <cnsztl@gmail.com> Link: https://lore.kernel.org/r/20230318083745.6181-5-cnsztl@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Tianling Shen 提交于
FriendlyARM NanoPi R5C is an open-sourced mini IoT gateway device. Specification: - Rockchip RK3568 - 1/4GB LPDDR4X RAM - 8/32GB eMMC - SD card slot - M.2 Connector - 2x USB 3.0 Port - 2x 2500 Base-T (PCIe, r8125) - HDMI 2.0 - MIPI DSI/CSI - USB Type C 5V Signed-off-by: NTianling Shen <cnsztl@gmail.com> Link: https://lore.kernel.org/r/20230318083745.6181-4-cnsztl@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Tianling Shen 提交于
Create common dtsi for the FriendlyElec NanoPi R5 series. Signed-off-by: NTianling Shen <cnsztl@gmail.com> Link: https://lore.kernel.org/r/20230318083745.6181-2-cnsztl@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
- 15 3月, 2023 2 次提交
-
-
由 Vasily Khoruzhick 提交于
FriendlyElec Nanopi R5S is an open-sourced mini IoT gateway device. Board Specifications - Rockchip RK3568 - 2 or 4GB LPDDR4X - 8GB or 16GB eMMC, SD card slot - GbE LAN (Native) - 2x 2.5G LAN (PCIe) - M.2 Connector - HDMI 2.0, MIPI DSI/CSI - 2xUSB 3.0 Host - USB Type C PD, 5V/9V/12V - GPIO: 12-pin 0.5mm FPC connector Based on Tianling Shen's <cnsztl@gmail.com> work. Signed-off-by: NVasily Khoruzhick <anarsoul@gmail.com> Link: https://lore.kernel.org/r/20230308063240.107178-2-anarsoul@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Yixun Lan 提交于
Edge2 is an ultraslim, credit-card sized ARM PC designed by Khadas. In this patch, we will add basic device tree support for this board, Only eMMC, UART are enabled, so it's capable of booting into a basic linux system from eMMC via serial console. Signed-off-by: NYixun Lan <dlan@gentoo.org> Link: https://lore.kernel.org/r/20230315033441.32719-3-dlan@gentoo.orgSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
- 08 3月, 2023 3 次提交
-
-
由 Maya Matuszczyk 提交于
Note that orientation property in ST7701 driver is currently missing, And that ST7701 panel driver uses different regulator names compared to driver for Elida KD35T133 driver. Signed-off-by: NMaya Matuszczyk <maccraft123mc@gmail.com> Link: https://lore.kernel.org/r/20230213153816.213526-5-maccraft123mc@gmail.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Manoj Sai 提交于
Enable USB OTG support for Radxa Compute Module 3 IO Board Signed-off-by: NManoj Sai <abbaraju.manojsai@amarulasolutions.com> Signed-off-by: NJagan Teki <jagan@amarulasolutions.com> Link: https://lore.kernel.org/r/20230223135929.630787-1-abbaraju.manojsai@amarulasolutions.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
由 Lucas Tanure 提交于
Add SD Card node for RK3588s and RK3588. Co-developed-by: NShawn Lin <shawn.lin@rock-chips.com> Signed-off-by: NShawn Lin <shawn.lin@rock-chips.com> Signed-off-by: NLucas Tanure <lucas.tanure@collabora.com> Link: https://lore.kernel.org/r/20230228103610.25108-1-lucas.tanure@collabora.comSigned-off-by: NHeiko Stuebner <heiko@sntech.de>
-
- 28 2月, 2023 2 次提交
-
-
由 Ard Biesheuvel 提交于
Our virtual KASLR displacement is a randomly chosen multiple of 2 MiB plus an offset that is equal to the physical placement modulo 2 MiB. This arrangement ensures that we can always use 2 MiB block mappings (or contiguous PTE mappings for 16k or 64k pages) to map the kernel. This means that a KASLR offset of less than 2 MiB is simply the product of this physical displacement, and no randomization has actually taken place. Currently, we use 'kaslr_offset() > 0' to decide whether or not randomization has occurred, and so we misidentify this case. If the kernel image placement is not randomized, modules are allocated from a dedicated region below the kernel mapping, which is only used for modules and not for other vmalloc() or vmap() calls. When randomization is enabled, the kernel image is vmap()'ed randomly inside the vmalloc region, and modules are allocated in the vicinity of this mapping to ensure that relative references are always in range. However, unlike the dedicated module region below the vmalloc region, this region is not reserved exclusively for modules, and so ordinary vmalloc() calls may end up overlapping with it. This should rarely happen, given that vmalloc allocates bottom up, although it cannot be ruled out entirely. The misidentified case results in a placement of the kernel image within 2 MiB of its default address. However, the logic that randomizes the module region is still invoked, and this could result in the module region overlapping with the start of the vmalloc region, instead of using the dedicated region below it. If this happens, a single large vmalloc() or vmap() call will use up the entire region, and leave no space for loading modules after that. Since commit 82046702 ("efi/libstub/arm64: Replace 'preferred' offset with alignment check"), this is much more likely to occur on systems that boot via EFI but lack an implementation of the EFI RNG protocol, as in that case, the EFI stub will decide to leave the image where it found it, and the EFI firmware uses 64k alignment only. Fix this, by correctly identifying the case where the virtual displacement is a result of the physical displacement only. Signed-off-by: NArd Biesheuvel <ardb@kernel.org> Reviewed-by: NMark Brown <broonie@kernel.org> Acked-by: NMark Rutland <mark.rutland@arm.com> Link: https://lore.kernel.org/r/20230223204101.1500373-1-ardb@kernel.orgSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
-
由 Mark Rutland 提交于
Florian reports that when building with CONFIG_CC_OPTIMIZE_FOR_SIZE=y, he sees "Misaligned patch-site" warnings at boot, e.g. | Misaligned patch-site bcm2836_arm_irqchip_handle_irq+0x0/0x88 | WARNING: CPU: 0 PID: 0 at arch/arm64/kernel/ftrace.c:120 ftrace_call_adjust+0x4c/0x70 This is because GCC will silently ignore `-falign-functions=N` when passed `-Os`, resulting in functions not being aligned as we expect. This is a known issue, and to account for this we modified the kernel to avoid `-Os` generally. Unfortunately we forgot to account for CONFIG_CC_OPTIMIZE_FOR_SIZE. Forbid the use of CALL_OPS with CONFIG_CC_OPTIMIZE_FOR_SIZE=y to prevent this issue. All exising ftrace features will work as before, though without the performance benefit of CALL_OPS. Reported-by: NFlorian Fainelli <f.fainelli@gmail.com> Link: http://lore.kernel.org/linux-arm-kernel/2d9284c3-3805-402b-5423-520ced56d047@gmail.comSigned-off-by: NMark Rutland <mark.rutland@arm.com> Cc: Marc Zyngier <maz@kernel.org> Cc: Stefan Wahren <stefan.wahren@i2se.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Will Deacon <will@kernel.org> Tested-by: NFlorian Fainelli <f.fainelli@gmail.com> Link: https://lore.kernel.org/r/20230227115819.365630-1-mark.rutland@arm.comSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
-
- 27 2月, 2023 2 次提交
-
-
由 Linus Walleij 提交于
ARM64 systems are often memory constrained and more often than not use slow single-channel storage such as flash memory or MMC/SD-cards. For any interactive systems (such as mobile phones, tablets, chromebooks...) the BFQ I/O scheduler will be desireable. Make sure the BFQ I/O scheduler is available on these systems. ARM (32), Loongarch, MIPS, m68k, UM and S390 has also enabled BFQ in their defconfigs, cf commit b495dfed "um: Cleanup CONFIG_IOSCHED_CFQ" where the motivation is that it replaces the former CFQ scheduler. Cc: linux-arm-kernel@lists.infradead.org Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Cc: Paolo Valente <paolo.valente@linaro.org> Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Cc: Ulf Hansson <ulf.hansson@linaro.org> Cc: Arnd Bergmann <arnd@arndb.de> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20230224135230.2295826-1-linus.walleij@linaro.orgSigned-off-by: NArnd Bergmann <arnd@arndb.de>
-
由 Mark Brown 提交于
A recent update to support PCI endpoint mode on i.MX platforms unintentionally disabled PCI host support for i.MX in defconfig. The existing PCI_IMX6 was made a hidden option, selected by new options PCI_IMX6_HOST (for the existing support) and PCI_IMX6_EP (for the endpoint mode), but there has been no corresponding update to defconfig so the PCI_IMX6 ends up getting disabled. Switch defconfig to PCI_IMX6_HOST to preserve the existing functionality. Fixes: 75c2f26d ("PCI: imx6: Add i.MX PCIe EP mode support") Reported-by: N"kernelci.org bot" <bot@kernelci.org> Signed-off-by: NMark Brown <broonie@kernel.org> Reviewed-by: NRichard Zhu <hongxing.zhu@nxp.com> Link: https://lore.kernel.org/r/20230220-imx-pci-defconfig-v1-1-2210cf08340e@kernel.orgSigned-off-by: NArnd Bergmann <arnd@arndb.de>
-
- 24 2月, 2023 2 次提交
-
-
由 Sudeep Holla 提交于
Allocated 'ffh_ctxt' memory leak is possible if the SMCCC version and conduit checks fail and -EOPNOTSUPP is returned without freeing the allocated memory. Fix the same by moving the allocation after the SMCCC version and conduit checks. Fixes: 1d280ce0 ("arm64: Add architecture specific ACPI FFH Opregion callbacks") Cc: <stable@vger.kernel.org> # 6.2.x Cc: Will Deacon <will@kernel.org> Reported-by: Nkernel test robot <lkp@intel.com> Reported-by: NDan Carpenter <error27@gmail.com> Suggested-by: NDan Carpenter <error27@gmail.com> Link: https://lore.kernel.org/r/202302191417.dAl9NuE8-lkp@intel.com/Signed-off-by: NSudeep Holla <sudeep.holla@arm.com> Link: https://lore.kernel.org/r/20230223135742.2952091-1-sudeep.holla@arm.comSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
-
由 Catalin Marinas 提交于
Revert the HUGETLB_PAGE_FREE_VMEMMAP selection from commit 1e63ac08 ("arm64: mm: hugetlb: enable HUGETLB_PAGE_FREE_VMEMMAP for arm64") but keep the flush_dcache_page() compound_head() change as it aligns with the corresponding check in the __sync_icache_dcache() function. The original config option was renamed in commit 47010c04 ("mm: hugetlb_vmemmap: cleanup CONFIG_HUGETLB_PAGE_FREE_VMEMMAP*") to HUGETLB_PAGE_OPTIMIZE_VMEMMAP and the flush_dcache_page() check was further simplified by commit 2da1c309 ("mm: hugetlb_vmemmap: delete hugetlb_optimize_vmemmap_enabled()"). The reason for the revert is that the generic vmemmap_remap_pte() function changes both the permissions (writeable to read-only) and the output address (pfn) of the vmemmap ptes. This is deemed UNPREDICTABLE by the Arm architecture without a break-before-make sequence (make the PTE invalid, TLBI, write the new valid PTE). However, such sequence is not possible since the vmemmap may be concurrently accessed by the kernel. Disable the optimisation until a better solution is found. Fixes: 1e63ac08 ("arm64: mm: hugetlb: enable HUGETLB_PAGE_FREE_VMEMMAP for arm64") Cc: <stable@vger.kernel.org> # 5.19.x Cc: Muchun Song <muchun.song@linux.dev> Cc: Will Deacon <will@kernel.org> Cc: Anshuman Khandual <anshuman.khandual@arm.com> Link: https://lore.kernel.org/r/Y9pZALdn3pKiJUeQ@arm.comReviewed-by: NAnshuman Khandual <anshuman.khandual@arm.com> Link: https://lore.kernel.org/r/20230222175232.540851-1-catalin.marinas@arm.comSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
-
- 23 2月, 2023 1 次提交
-
-
由 Sangmoon Kim 提交于
Commit 0f2cb928 ("arm64: consistently pass ESR_ELx to die()") caused all callers to pass the ESR_ELx value to die(). For consistency, this patch also adds esr to die() call of cfi_handler. Also, when CFI error occurs, die handlers can use ESR_ELx value. Signed-off-by: NSangmoon Kim <sangmoon.kim@samsung.com> Acked-by: NMark Rutland <mark.rutland@arm.com> Reviewed-by: NMark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20230220073441.2753-1-sangmoon.kim@samsung.comSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
-
- 22 2月, 2023 2 次提交
-
-
由 Mark Brown 提交于
Support for SME without SVE is architecturally valid and has now been tested well enough so let's remove the warning message that is displayed at boot. Signed-off-by: NMark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20230209-arm64-sme-no-sve-v1-1-74eb3df2f878@kernel.orgSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
-
由 Peter Collingbourne 提交于
During page migration, the copy_highpage function is used to copy the page data to the target page. If the source page is a userspace page with MTE tags, the KASAN tag of the target page must have the match-all tag in order to avoid tag check faults during subsequent accesses to the page by the kernel. However, the target page may have been allocated in a number of ways, some of which will use the KASAN allocator and will therefore end up setting the KASAN tag to a non-match-all tag. Therefore, update the target page's KASAN tag to match the source page. We ended up unintentionally fixing this issue as a result of a bad merge conflict resolution between commit e059853d ("arm64: mte: Fix/clarify the PG_mte_tagged semantics") and commit 20794545 ("arm64: kasan: Revert "arm64: mte: reset the page tag in page->flags""), which preserved a tag reset for PG_mte_tagged pages which was considered to be unnecessary at the time. Because SW tags KASAN uses separate tag storage, update the code to only reset the tags when HW tags KASAN is enabled. Signed-off-by: NPeter Collingbourne <pcc@google.com> Link: https://linux-review.googlesource.com/id/If303d8a709438d3ff5af5fd85706505830f52e0cReported-by: N"Kuan-Ying Lee (李冠穎)" <Kuan-Ying.Lee@mediatek.com> Cc: <stable@vger.kernel.org> # 6.1 Fixes: 20794545 ("arm64: kasan: Revert "arm64: mte: reset the page tag in page->flags"") Reviewed-by: NAndrey Konovalov <andreyknvl@gmail.com> Link: https://lore.kernel.org/r/20230215050911.1433132-1-pcc@google.comSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
-
- 21 2月, 2023 1 次提交
-
-
由 Mark Rutland 提交于
When building a kernel with many debug options enabled (which happens in test configurations use by myself and syzbot), the kernel can become large enough that portions of .text can be more than 128M away from .idmap.text (which is placed inside the .rodata section). Where idmap code branches into .text, the linker will place veneers in the .idmap.text section to make those branches possible. Unfortunately, as Ard reports, GNU LD has bseen observed to add 4K of padding when adding such veneers, e.g. | .idmap.text 0xffffffc01e48e5c0 0x32c arch/arm64/mm/proc.o | 0xffffffc01e48e5c0 idmap_cpu_replace_ttbr1 | 0xffffffc01e48e600 idmap_kpti_install_ng_mappings | 0xffffffc01e48e800 __cpu_setup | *fill* 0xffffffc01e48e8ec 0x4 | .idmap.text.stub | 0xffffffc01e48e8f0 0x18 linker stubs | 0xffffffc01e48f8f0 __idmap_text_end = . | 0xffffffc01e48f000 . = ALIGN (0x1000) | *fill* 0xffffffc01e48f8f0 0x710 | 0xffffffc01e490000 idmap_pg_dir = . This makes the __idmap_text_start .. __idmap_text_end region bigger than the 4K we require it to fit within, and triggers an assertion in arm64's vmlinux.lds.S, which breaks the build: | LD .tmp_vmlinux.kallsyms1 | aarch64-linux-gnu-ld: ID map text too big or misaligned | make[1]: *** [scripts/Makefile.vmlinux:35: vmlinux] Error 1 | make: *** [Makefile:1264: vmlinux] Error 2 Avoid this by using an `ADRP+ADD+BLR` sequence for branches out of .idmap.text, which avoids the need for veneers. These branches are only executed once per boot, and only when the MMU is on, so there should be no noticeable performance penalty in replacing `BL` with `ADRP+ADD+BLR`. At the same time, remove the "x" and "w" attributes when placing code in .idmap.text, as these are not necessary, and this will prevent the linker from assuming that it is safe to place PLTs into .idmap.text, causing it to warn if and when there are out-of-range branches within .idmap.text, e.g. | LD .tmp_vmlinux.kallsyms1 | arch/arm64/kernel/head.o: in function `primary_entry': | (.idmap.text+0x1c): relocation truncated to fit: R_AARCH64_CALL26 against symbol `dcache_clean_poc' defined in .text section in arch/arm64/mm/cache.o | arch/arm64/kernel/head.o: in function `init_el2': | (.idmap.text+0x88): relocation truncated to fit: R_AARCH64_CALL26 against symbol `dcache_clean_poc' defined in .text section in arch/arm64/mm/cache.o | make[1]: *** [scripts/Makefile.vmlinux:34: vmlinux] Error 1 | make: *** [Makefile:1252: vmlinux] Error 2 Thus, if future changes add out-of-range branches in .idmap.text, it should be easy enough to identify those from the resulting linker errors. Reported-by: syzbot+f8ac312e31226e23302b@syzkaller.appspotmail.com Link: https://lore.kernel.org/linux-arm-kernel/00000000000028ea4105f4e2ef54@google.com/Signed-off-by: NMark Rutland <mark.rutland@arm.com> Cc: Ard Biesheuvel <ardb@kernel.org> Cc: Will Deacon <will@kernel.org> Tested-by: NArd Biesheuvel <ardb@kernel.org> Reviewed-by: NArd Biesheuvel <ardb@kernel.org> Link: https://lore.kernel.org/r/20230220162317.1581208-1-mark.rutland@arm.comSigned-off-by: NCatalin Marinas <catalin.marinas@arm.com>
-