mirror of https://github.com/armbian/build.git
rockchip-rk3588-edge: update kernel to v6.11.0-rc1
This commit is contained in:
parent
edd888aa70
commit
53396d202c
|
@ -1,21 +1,19 @@
|
|||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm64 6.10.0-rc5 Kernel Configuration
|
||||
# Linux/arm64 6.11.0-rc1 Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0"
|
||||
CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
CONFIG_GCC_VERSION=130200
|
||||
CONFIG_GCC_VERSION=110400
|
||||
CONFIG_CLANG_VERSION=0
|
||||
CONFIG_AS_IS_GNU=y
|
||||
CONFIG_AS_VERSION=24200
|
||||
CONFIG_AS_VERSION=23800
|
||||
CONFIG_LD_IS_BFD=y
|
||||
CONFIG_LD_VERSION=24200
|
||||
CONFIG_LD_VERSION=23800
|
||||
CONFIG_LLD_VERSION=0
|
||||
CONFIG_CC_CAN_LINK=y
|
||||
CONFIG_CC_CAN_LINK_STATIC=y
|
||||
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
|
||||
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
|
||||
CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
|
||||
CONFIG_GCC_ASM_GOTO_OUTPUT_BROKEN=y
|
||||
CONFIG_CC_HAS_ASM_INLINE=y
|
||||
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
|
||||
CONFIG_PAHOLE_VERSION=125
|
||||
|
@ -179,7 +177,7 @@ CONFIG_CGROUPS=y
|
|||
CONFIG_PAGE_COUNTER=y
|
||||
# CONFIG_CGROUP_FAVOR_DYNMODS is not set
|
||||
CONFIG_MEMCG=y
|
||||
CONFIG_MEMCG_KMEM=y
|
||||
# CONFIG_MEMCG_V1 is not set
|
||||
CONFIG_BLK_CGROUP=y
|
||||
CONFIG_CGROUP_WRITEBACK=y
|
||||
CONFIG_CGROUP_SCHED=y
|
||||
|
@ -260,7 +258,6 @@ CONFIG_CACHESTAT_SYSCALL=y
|
|||
CONFIG_KALLSYMS=y
|
||||
# CONFIG_KALLSYMS_SELFTEST is not set
|
||||
# CONFIG_KALLSYMS_ALL is not set
|
||||
CONFIG_KALLSYMS_BASE_RELATIVE=y
|
||||
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
|
||||
CONFIG_HAVE_PERF_EVENTS=y
|
||||
CONFIG_GUEST_PERF_EVENTS=y
|
||||
|
@ -400,9 +397,7 @@ CONFIG_ARM64_ERRATUM_2645198=y
|
|||
CONFIG_ARM64_WORKAROUND_SPECULATIVE_UNPRIV_LOAD=y
|
||||
CONFIG_ARM64_ERRATUM_2966298=y
|
||||
CONFIG_ARM64_ERRATUM_3117295=y
|
||||
CONFIG_ARM64_WORKAROUND_SPECULATIVE_SSBS=y
|
||||
CONFIG_ARM64_ERRATUM_3194386=y
|
||||
CONFIG_ARM64_ERRATUM_3312417=y
|
||||
CONFIG_CAVIUM_ERRATUM_22375=y
|
||||
CONFIG_CAVIUM_ERRATUM_23144=y
|
||||
CONFIG_CAVIUM_ERRATUM_23154=y
|
||||
|
@ -446,7 +441,6 @@ CONFIG_HZ=300
|
|||
CONFIG_SCHED_HRTICK=y
|
||||
CONFIG_ARCH_SPARSEMEM_ENABLE=y
|
||||
CONFIG_HW_PERF_EVENTS=y
|
||||
CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
|
||||
CONFIG_PARAVIRT=y
|
||||
CONFIG_PARAVIRT_TIME_ACCOUNTING=y
|
||||
CONFIG_ARCH_SUPPORTS_KEXEC=y
|
||||
|
@ -549,6 +543,7 @@ CONFIG_ARM64_CONTPTE=y
|
|||
CONFIG_CMDLINE=""
|
||||
CONFIG_EFI_STUB=y
|
||||
CONFIG_EFI=y
|
||||
# CONFIG_COMPRESSED_INSTALL is not set
|
||||
CONFIG_DMI=y
|
||||
# end of Boot options
|
||||
|
||||
|
@ -659,6 +654,7 @@ CONFIG_ACPI_PROCESSOR_IDLE=y
|
|||
CONFIG_ACPI_MCFG=y
|
||||
CONFIG_ACPI_PROCESSOR=y
|
||||
CONFIG_ACPI_IPMI=m
|
||||
CONFIG_ACPI_HOTPLUG_CPU=y
|
||||
CONFIG_ACPI_THERMAL=m
|
||||
CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
|
||||
CONFIG_ACPI_TABLE_UPGRADE=y
|
||||
|
@ -712,7 +708,6 @@ CONFIG_KVM_GENERIC_HARDWARE_ENABLING=y
|
|||
CONFIG_KVM_GENERIC_MMU_NOTIFIER=y
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
CONFIG_KVM=y
|
||||
CONFIG_VIDEO_SYNOPSYS_HDMIRX=m
|
||||
# CONFIG_NVHE_EL2_DEBUG is not set
|
||||
CONFIG_CPU_MITIGATIONS=y
|
||||
|
||||
|
@ -776,8 +771,6 @@ CONFIG_HAVE_ARCH_STACKLEAK=y
|
|||
CONFIG_HAVE_STACKPROTECTOR=y
|
||||
CONFIG_STACKPROTECTOR=y
|
||||
CONFIG_STACKPROTECTOR_STRONG=y
|
||||
CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
|
||||
# CONFIG_SHADOW_CALL_STACK is not set
|
||||
CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
|
||||
CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
|
||||
CONFIG_LTO_NONE=y
|
||||
|
@ -874,7 +867,6 @@ CONFIG_BLK_DEV_BSG_COMMON=y
|
|||
CONFIG_BLK_ICQ=y
|
||||
CONFIG_BLK_DEV_BSGLIB=y
|
||||
CONFIG_BLK_DEV_INTEGRITY=y
|
||||
CONFIG_BLK_DEV_INTEGRITY_T10=y
|
||||
CONFIG_BLK_DEV_WRITE_MOUNTED=y
|
||||
CONFIG_BLK_DEV_ZONED=y
|
||||
CONFIG_BLK_DEV_THROTTLING=y
|
||||
|
@ -983,6 +975,7 @@ CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD=y
|
|||
CONFIG_ZSWAP_ZPOOL_DEFAULT="z3fold"
|
||||
CONFIG_ZBUD=y
|
||||
CONFIG_Z3FOLD=y
|
||||
CONFIG_HAVE_ZSMALLOC=y
|
||||
CONFIG_ZSMALLOC=y
|
||||
# CONFIG_ZSMALLOC_STAT is not set
|
||||
CONFIG_ZSMALLOC_CHAIN_SIZE=8
|
||||
|
@ -995,6 +988,7 @@ CONFIG_SLUB=y
|
|||
CONFIG_SLAB_MERGE_DEFAULT=y
|
||||
CONFIG_SLAB_FREELIST_RANDOM=y
|
||||
# CONFIG_SLAB_FREELIST_HARDENED is not set
|
||||
# CONFIG_SLAB_BUCKETS is not set
|
||||
# CONFIG_SLUB_STATS is not set
|
||||
CONFIG_SLUB_CPU_PARTIAL=y
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
|
@ -1660,6 +1654,7 @@ CONFIG_NET_DSA_TAG_RZN1_A5PSW=m
|
|||
CONFIG_NET_DSA_TAG_LAN9303=m
|
||||
CONFIG_NET_DSA_TAG_SJA1105=m
|
||||
CONFIG_NET_DSA_TAG_TRAILER=m
|
||||
CONFIG_NET_DSA_TAG_VSC73XX_8021Q=m
|
||||
CONFIG_NET_DSA_TAG_XRS700X=m
|
||||
CONFIG_VLAN_8021Q=y
|
||||
CONFIG_VLAN_8021Q_GVRP=y
|
||||
|
@ -2111,7 +2106,6 @@ CONFIG_PCI_HOST_THUNDER_ECAM=y
|
|||
CONFIG_PCI_HOST_COMMON=y
|
||||
CONFIG_PCI_HOST_GENERIC=y
|
||||
# CONFIG_PCIE_HISI_ERR is not set
|
||||
# CONFIG_PCIE_MICROCHIP_HOST is not set
|
||||
CONFIG_PCIE_ROCKCHIP=y
|
||||
CONFIG_PCIE_ROCKCHIP_HOST=y
|
||||
CONFIG_PCIE_ROCKCHIP_EP=y
|
||||
|
@ -2139,13 +2133,21 @@ CONFIG_PCI_HISI=y
|
|||
CONFIG_PCIE_DW_PLAT=y
|
||||
CONFIG_PCIE_DW_PLAT_HOST=y
|
||||
CONFIG_PCIE_DW_PLAT_EP=y
|
||||
CONFIG_PCIE_ROCKCHIP_DW=y
|
||||
CONFIG_PCIE_ROCKCHIP_DW_HOST=y
|
||||
# CONFIG_PCIE_ROCKCHIP_DW_EP is not set
|
||||
# end of DesignWare-based PCIe controllers
|
||||
|
||||
#
|
||||
# Mobiveil-based PCIe controllers
|
||||
#
|
||||
# end of Mobiveil-based PCIe controllers
|
||||
|
||||
#
|
||||
# PLDA-based PCIe controllers
|
||||
#
|
||||
# CONFIG_PCIE_MICROCHIP_HOST is not set
|
||||
# end of PLDA-based PCIe controllers
|
||||
# end of PCI controller drivers
|
||||
|
||||
#
|
||||
|
@ -2572,6 +2574,7 @@ CONFIG_NVME_TCP=m
|
|||
CONFIG_NVME_TCP_TLS=y
|
||||
CONFIG_NVME_HOST_AUTH=y
|
||||
CONFIG_NVME_TARGET=m
|
||||
# CONFIG_NVME_TARGET_DEBUGFS is not set
|
||||
CONFIG_NVME_TARGET_PASSTHRU=y
|
||||
CONFIG_NVME_TARGET_LOOP=m
|
||||
CONFIG_NVME_TARGET_FC=m
|
||||
|
@ -2651,6 +2654,7 @@ CONFIG_MISC_RTSX_USB=m
|
|||
CONFIG_UACCE=m
|
||||
# CONFIG_PVPANIC is not set
|
||||
CONFIG_GP_PCI1XXXX=m
|
||||
# CONFIG_KEBA_CP500 is not set
|
||||
# end of Misc devices
|
||||
|
||||
#
|
||||
|
@ -3244,6 +3248,7 @@ CONFIG_MLX5_SW_STEERING=y
|
|||
# CONFIG_MLXSW_CORE is not set
|
||||
# CONFIG_MLXFW is not set
|
||||
CONFIG_MLXBF_GIGE=m
|
||||
CONFIG_NET_VENDOR_META=y
|
||||
CONFIG_NET_VENDOR_MICREL=y
|
||||
# CONFIG_KS8842 is not set
|
||||
# CONFIG_KS8851 is not set
|
||||
|
@ -3346,6 +3351,7 @@ CONFIG_NET_VENDOR_SYNOPSYS=y
|
|||
# CONFIG_DWC_XLGMAC is not set
|
||||
CONFIG_NET_VENDOR_TEHUTI=y
|
||||
CONFIG_TEHUTI=m
|
||||
# CONFIG_TEHUTI_TN40 is not set
|
||||
CONFIG_NET_VENDOR_TI=y
|
||||
# CONFIG_TI_CPSW_PHY_SEL is not set
|
||||
# CONFIG_TLAN is not set
|
||||
|
@ -3653,6 +3659,7 @@ CONFIG_ATH10K_SDIO=m
|
|||
CONFIG_ATH10K_USB=m
|
||||
# CONFIG_ATH10K_DEBUG is not set
|
||||
# CONFIG_ATH10K_DEBUGFS is not set
|
||||
CONFIG_ATH10K_LEDS=y
|
||||
# CONFIG_ATH10K_TRACING is not set
|
||||
CONFIG_WCN36XX=m
|
||||
# CONFIG_WCN36XX_DEBUGFS is not set
|
||||
|
@ -3844,6 +3851,7 @@ CONFIG_RTL8188EE=m
|
|||
CONFIG_RTL8192EE=m
|
||||
CONFIG_RTL8821AE=m
|
||||
CONFIG_RTL8192CU=m
|
||||
# CONFIG_RTL8192DU is not set
|
||||
CONFIG_RTLWIFI=m
|
||||
CONFIG_RTLWIFI_PCI=m
|
||||
CONFIG_RTLWIFI_USB=m
|
||||
|
@ -3883,6 +3891,7 @@ CONFIG_RTW89_CORE=m
|
|||
CONFIG_RTW89_PCI=m
|
||||
CONFIG_RTW89_8851B=m
|
||||
CONFIG_RTW89_8852A=m
|
||||
CONFIG_RTW89_8852B_COMMON=m
|
||||
CONFIG_RTW89_8852B=m
|
||||
CONFIG_RTW89_8852C=m
|
||||
CONFIG_RTW89_8851BE=m
|
||||
|
@ -3918,6 +3927,7 @@ CONFIG_WLCORE_SDIO=m
|
|||
# CONFIG_RTL8821CU is not set
|
||||
# CONFIG_88XXAU is not set
|
||||
# CONFIG_RTL8192EU is not set
|
||||
# CONFIG_RTL8189FS is not set
|
||||
# CONFIG_RTL8189ES is not set
|
||||
CONFIG_WLAN_VENDOR_ZYDAS=y
|
||||
CONFIG_ZD1211RW=m
|
||||
|
@ -4394,7 +4404,6 @@ CONFIG_HW_RANDOM_VIRTIO=m
|
|||
CONFIG_HW_RANDOM_OPTEE=m
|
||||
# CONFIG_HW_RANDOM_CCTRNG is not set
|
||||
# CONFIG_HW_RANDOM_XIPHERA is not set
|
||||
CONFIG_HW_RANDOM_ROCKCHIP=m
|
||||
CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
|
||||
CONFIG_HW_RANDOM_CN10K=y
|
||||
# CONFIG_APPLICOM is not set
|
||||
|
@ -4552,6 +4561,7 @@ CONFIG_SPI_BITBANG=m
|
|||
CONFIG_SPI_CADENCE=m
|
||||
CONFIG_SPI_CADENCE_QUADSPI=y
|
||||
CONFIG_SPI_CADENCE_XSPI=m
|
||||
# CONFIG_SPI_CH341 is not set
|
||||
CONFIG_SPI_DESIGNWARE=m
|
||||
# CONFIG_SPI_DW_DMA is not set
|
||||
CONFIG_SPI_DW_PCI=m
|
||||
|
@ -4644,6 +4654,7 @@ CONFIG_PINCTRL_ROCKCHIP=y
|
|||
CONFIG_PINCTRL_SINGLE=y
|
||||
CONFIG_PINCTRL_STMFX=m
|
||||
CONFIG_PINCTRL_SX150X=y
|
||||
# CONFIG_PINCTRL_IMX_SCMI is not set
|
||||
|
||||
#
|
||||
# Renesas pinctrl drivers
|
||||
|
@ -4746,6 +4757,13 @@ CONFIG_GPIO_VIRTIO=m
|
|||
# CONFIG_GPIO_SIM is not set
|
||||
# end of Virtual GPIO drivers
|
||||
|
||||
#
|
||||
# GPIO Debugging utilities
|
||||
#
|
||||
# CONFIG_GPIO_SLOPPY_LOGIC_ANALYZER is not set
|
||||
# CONFIG_GPIO_VIRTUSER is not set
|
||||
# end of GPIO Debugging utilities
|
||||
|
||||
CONFIG_W1=m
|
||||
CONFIG_W1_CON=y
|
||||
|
||||
|
@ -4798,6 +4816,7 @@ CONFIG_POWER_RESET_SYSCON_POWEROFF=y
|
|||
CONFIG_REBOOT_MODE=y
|
||||
CONFIG_SYSCON_REBOOT_MODE=y
|
||||
# CONFIG_NVMEM_REBOOT_MODE is not set
|
||||
# CONFIG_POWER_SEQUENCING is not set
|
||||
CONFIG_POWER_SUPPLY=y
|
||||
# CONFIG_POWER_SUPPLY_DEBUG is not set
|
||||
CONFIG_POWER_SUPPLY_HWMON=y
|
||||
|
@ -4820,6 +4839,7 @@ CONFIG_BATTERY_BQ27XXX_HDQ=m
|
|||
# CONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM is not set
|
||||
CONFIG_BATTERY_MAX17040=m
|
||||
CONFIG_BATTERY_MAX17042=m
|
||||
# CONFIG_BATTERY_MAX1720X is not set
|
||||
CONFIG_BATTERY_MAX1721X=m
|
||||
CONFIG_CHARGER_ISP1704=m
|
||||
# CONFIG_CHARGER_MAX8903 is not set
|
||||
|
@ -4849,6 +4869,7 @@ CONFIG_BATTERY_RT5033=m
|
|||
# CONFIG_CHARGER_RT9471 is not set
|
||||
# CONFIG_CHARGER_CROS_USBPD is not set
|
||||
CONFIG_CHARGER_CROS_PCHG=m
|
||||
CONFIG_CHARGER_CROS_CONTROL=m
|
||||
CONFIG_CHARGER_UCS1002=m
|
||||
# CONFIG_CHARGER_BD99954 is not set
|
||||
# CONFIG_BATTERY_UG3105 is not set
|
||||
|
@ -4888,6 +4909,7 @@ CONFIG_SENSORS_ATXP1=m
|
|||
# CONFIG_SENSORS_CHIPCAP2 is not set
|
||||
# CONFIG_SENSORS_CORSAIR_CPRO is not set
|
||||
CONFIG_SENSORS_CORSAIR_PSU=m
|
||||
CONFIG_SENSORS_CROS_EC=y
|
||||
CONFIG_SENSORS_DRIVETEMP=m
|
||||
CONFIG_SENSORS_DS620=m
|
||||
CONFIG_SENSORS_DS1621=m
|
||||
|
@ -5016,9 +5038,13 @@ CONFIG_SENSORS_MAX34440=m
|
|||
CONFIG_SENSORS_MAX8688=m
|
||||
# CONFIG_SENSORS_MP2856 is not set
|
||||
CONFIG_SENSORS_MP2888=m
|
||||
# CONFIG_SENSORS_MP2891 is not set
|
||||
# CONFIG_SENSORS_MP2975 is not set
|
||||
# CONFIG_SENSORS_MP2993 is not set
|
||||
# CONFIG_SENSORS_MP5023 is not set
|
||||
# CONFIG_SENSORS_MP5920 is not set
|
||||
# CONFIG_SENSORS_MP5990 is not set
|
||||
# CONFIG_SENSORS_MP9941 is not set
|
||||
# CONFIG_SENSORS_MPQ7932 is not set
|
||||
# CONFIG_SENSORS_MPQ8785 is not set
|
||||
CONFIG_SENSORS_PIM4328=m
|
||||
|
@ -5068,6 +5094,7 @@ CONFIG_SENSORS_INA209=m
|
|||
CONFIG_SENSORS_INA2XX=m
|
||||
# CONFIG_SENSORS_INA238 is not set
|
||||
CONFIG_SENSORS_INA3221=m
|
||||
# CONFIG_SENSORS_SPD5118 is not set
|
||||
CONFIG_SENSORS_TC74=m
|
||||
CONFIG_SENSORS_THMC50=m
|
||||
CONFIG_SENSORS_TMP102=m
|
||||
|
@ -5234,6 +5261,7 @@ CONFIG_MFD_CROS_EC_DEV=y
|
|||
# CONFIG_MFD_88PM800 is not set
|
||||
# CONFIG_MFD_88PM805 is not set
|
||||
# CONFIG_MFD_88PM860X is not set
|
||||
# CONFIG_MFD_88PM886_PMIC is not set
|
||||
# CONFIG_MFD_MAX14577 is not set
|
||||
# CONFIG_MFD_MAX77541 is not set
|
||||
# CONFIG_MFD_MAX77620 is not set
|
||||
|
@ -5312,12 +5340,15 @@ CONFIG_MFD_WL1273_CORE=m
|
|||
# CONFIG_MFD_ROHM_BD718XX is not set
|
||||
# CONFIG_MFD_ROHM_BD71828 is not set
|
||||
# CONFIG_MFD_ROHM_BD957XMUF is not set
|
||||
# CONFIG_MFD_ROHM_BD96801 is not set
|
||||
# CONFIG_MFD_STPMIC1 is not set
|
||||
CONFIG_MFD_STMFX=m
|
||||
# CONFIG_MFD_WCD934X is not set
|
||||
# CONFIG_MFD_ATC260X_I2C is not set
|
||||
CONFIG_MFD_KHADAS_MCU=m
|
||||
# CONFIG_MFD_QCOM_PM8008 is not set
|
||||
# CONFIG_MFD_CS40L50_I2C is not set
|
||||
# CONFIG_MFD_CS40L50_SPI is not set
|
||||
CONFIG_MFD_VEXPRESS_SYSREG=y
|
||||
# CONFIG_RAVE_SP_CORE is not set
|
||||
# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
|
||||
|
@ -5493,6 +5524,7 @@ CONFIG_VIDEO_V4L2_SUBDEV_API=y
|
|||
# CONFIG_VIDEO_ADV_DEBUG is not set
|
||||
CONFIG_VIDEO_FIXED_MINOR_RANGES=y
|
||||
CONFIG_VIDEO_TUNER=m
|
||||
CONFIG_V4L2_JPEG_HELPER=m
|
||||
CONFIG_V4L2_H264=m
|
||||
CONFIG_V4L2_VP9=m
|
||||
CONFIG_V4L2_MEM2MEM_DEV=m
|
||||
|
@ -5816,6 +5848,7 @@ CONFIG_VIDEO_CADENCE_CSI2TX=m
|
|||
#
|
||||
# Chips&Media media platform drivers
|
||||
#
|
||||
# CONFIG_VIDEO_E5010_JPEG_ENC is not set
|
||||
|
||||
#
|
||||
# Intel media platform drivers
|
||||
|
@ -5850,6 +5883,11 @@ CONFIG_VIDEO_CAFE_CCIC=m
|
|||
# Qualcomm media platform drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Raspberry Pi media platform drivers
|
||||
#
|
||||
# CONFIG_VIDEO_RASPBERRYPI_PISP_BE is not set
|
||||
|
||||
#
|
||||
# Renesas media platform drivers
|
||||
#
|
||||
|
@ -5949,6 +5987,8 @@ CONFIG_VIDEO_CCS_PLL=m
|
|||
# CONFIG_VIDEO_ALVIUM_CSI2 is not set
|
||||
# CONFIG_VIDEO_AR0521 is not set
|
||||
# CONFIG_VIDEO_GC0308 is not set
|
||||
# CONFIG_VIDEO_GC05A2 is not set
|
||||
# CONFIG_VIDEO_GC08A3 is not set
|
||||
# CONFIG_VIDEO_GC2145 is not set
|
||||
CONFIG_VIDEO_HI556=m
|
||||
CONFIG_VIDEO_HI846=m
|
||||
|
@ -5958,6 +5998,7 @@ CONFIG_VIDEO_IMX214=m
|
|||
CONFIG_VIDEO_IMX219=m
|
||||
CONFIG_VIDEO_IMX258=m
|
||||
CONFIG_VIDEO_IMX274=m
|
||||
# CONFIG_VIDEO_IMX283 is not set
|
||||
CONFIG_VIDEO_IMX290=m
|
||||
# CONFIG_VIDEO_IMX296 is not set
|
||||
CONFIG_VIDEO_IMX319=m
|
||||
|
@ -6016,7 +6057,7 @@ CONFIG_VIDEO_RJ54N1=m
|
|||
CONFIG_VIDEO_S5C73M3=m
|
||||
CONFIG_VIDEO_S5K5BAF=m
|
||||
CONFIG_VIDEO_S5K6A3=m
|
||||
# CONFIG_VIDEO_ST_VGXY61 is not set
|
||||
# CONFIG_VIDEO_VGXY61 is not set
|
||||
CONFIG_VIDEO_CCS=m
|
||||
CONFIG_VIDEO_ET8EK8=m
|
||||
|
||||
|
@ -6155,6 +6196,8 @@ CONFIG_VIDEO_M52790=m
|
|||
# CONFIG_VIDEO_DS90UB913 is not set
|
||||
# CONFIG_VIDEO_DS90UB953 is not set
|
||||
# CONFIG_VIDEO_DS90UB960 is not set
|
||||
# CONFIG_VIDEO_MAX96714 is not set
|
||||
# CONFIG_VIDEO_MAX96717 is not set
|
||||
# end of Video serializers and deserializers
|
||||
|
||||
#
|
||||
|
@ -6406,6 +6449,7 @@ CONFIG_DRM_DISPLAY_DP_AUX_BUS=m
|
|||
CONFIG_DRM_DISPLAY_DP_HELPER=y
|
||||
CONFIG_DRM_DISPLAY_HDCP_HELPER=y
|
||||
CONFIG_DRM_DISPLAY_HDMI_HELPER=y
|
||||
CONFIG_DRM_DISPLAY_HDMI_STATE_HELPER=y
|
||||
CONFIG_DRM_TTM=m
|
||||
CONFIG_DRM_EXEC=m
|
||||
CONFIG_DRM_GPUVM=m
|
||||
|
@ -6477,11 +6521,13 @@ CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
|
|||
CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D=m
|
||||
CONFIG_DRM_PANEL_DSI_CM=m
|
||||
CONFIG_DRM_PANEL_LVDS=m
|
||||
# CONFIG_DRM_PANEL_HIMAX_HX83102 is not set
|
||||
# CONFIG_DRM_PANEL_HIMAX_HX83112A is not set
|
||||
# CONFIG_DRM_PANEL_HIMAX_HX8394 is not set
|
||||
CONFIG_DRM_PANEL_ILITEK_IL9322=m
|
||||
CONFIG_DRM_PANEL_ILITEK_ILI9341=m
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9805 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9806E is not set
|
||||
CONFIG_DRM_PANEL_ILITEK_ILI9881C=m
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9882T is not set
|
||||
CONFIG_DRM_PANEL_INNOLUX_EJ030NA=m
|
||||
|
@ -6494,6 +6540,7 @@ CONFIG_DRM_PANEL_KHADAS_TS050=m
|
|||
CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04=m
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
|
||||
CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829=m
|
||||
# CONFIG_DRM_PANEL_LINCOLNTECH_LCD197 is not set
|
||||
CONFIG_DRM_PANEL_LG_LB035Q02=m
|
||||
# CONFIG_DRM_PANEL_LG_LG4573 is not set
|
||||
# CONFIG_DRM_PANEL_LG_SW43408 is not set
|
||||
|
@ -6743,6 +6790,7 @@ CONFIG_BACKLIGHT_MT6370=m
|
|||
CONFIG_BACKLIGHT_QCOM_WLED=m
|
||||
# CONFIG_BACKLIGHT_ADP8860 is not set
|
||||
# CONFIG_BACKLIGHT_ADP8870 is not set
|
||||
# CONFIG_BACKLIGHT_LM3509 is not set
|
||||
# CONFIG_BACKLIGHT_LM3630A is not set
|
||||
# CONFIG_BACKLIGHT_LM3639 is not set
|
||||
CONFIG_BACKLIGHT_LP855X=y
|
||||
|
@ -6928,6 +6976,7 @@ CONFIG_SND_HDA_CODEC_HDMI=m
|
|||
CONFIG_SND_HDA_CODEC_CIRRUS=m
|
||||
CONFIG_SND_HDA_CODEC_CS8409=m
|
||||
CONFIG_SND_HDA_CODEC_CONEXANT=m
|
||||
# CONFIG_SND_HDA_CODEC_SENARYTECH is not set
|
||||
CONFIG_SND_HDA_CODEC_CA0110=m
|
||||
CONFIG_SND_HDA_CODEC_CA0132=m
|
||||
CONFIG_SND_HDA_CODEC_CA0132_DSP=y
|
||||
|
@ -7067,6 +7116,7 @@ CONFIG_SND_SOC_AK4375=m
|
|||
CONFIG_SND_SOC_AK4458=m
|
||||
CONFIG_SND_SOC_AK4554=m
|
||||
CONFIG_SND_SOC_AK4613=m
|
||||
# CONFIG_SND_SOC_AK4619 is not set
|
||||
CONFIG_SND_SOC_AK4642=m
|
||||
CONFIG_SND_SOC_AK5386=m
|
||||
CONFIG_SND_SOC_AK5558=m
|
||||
|
@ -7119,6 +7169,7 @@ CONFIG_SND_SOC_CS43130=m
|
|||
CONFIG_SND_SOC_CS4341=m
|
||||
CONFIG_SND_SOC_CS4349=m
|
||||
CONFIG_SND_SOC_CS53L30=m
|
||||
# CONFIG_SND_SOC_CS530X_I2C is not set
|
||||
CONFIG_SND_SOC_CX2072X=m
|
||||
CONFIG_SND_SOC_DA7213=m
|
||||
CONFIG_SND_SOC_DA7219=m
|
||||
|
@ -7126,6 +7177,7 @@ CONFIG_SND_SOC_DMIC=m
|
|||
CONFIG_SND_SOC_HDMI_CODEC=m
|
||||
CONFIG_SND_SOC_ES7134=m
|
||||
CONFIG_SND_SOC_ES7241=m
|
||||
# CONFIG_SND_SOC_ES8311 is not set
|
||||
CONFIG_SND_SOC_ES8316=m
|
||||
CONFIG_SND_SOC_ES8326=m
|
||||
CONFIG_SND_SOC_ES8328=m
|
||||
|
@ -7182,6 +7234,7 @@ CONFIG_SND_SOC_RL6231=m
|
|||
CONFIG_SND_SOC_RT1308_SDW=m
|
||||
CONFIG_SND_SOC_RT1316_SDW=m
|
||||
# CONFIG_SND_SOC_RT1318_SDW is not set
|
||||
# CONFIG_SND_SOC_RT1320_SDW is not set
|
||||
CONFIG_SND_SOC_RT5514=m
|
||||
CONFIG_SND_SOC_RT5514_SPI=m
|
||||
CONFIG_SND_SOC_RT5616=m
|
||||
|
@ -7259,6 +7312,7 @@ CONFIG_SND_SOC_UDA1334=m
|
|||
CONFIG_SND_SOC_WCD_CLASSH=m
|
||||
CONFIG_SND_SOC_WCD9335=m
|
||||
CONFIG_SND_SOC_WCD_MBHC=m
|
||||
# CONFIG_SND_SOC_WCD937X_SDW is not set
|
||||
CONFIG_SND_SOC_WCD938X=m
|
||||
CONFIG_SND_SOC_WCD938X_SDW=m
|
||||
# CONFIG_SND_SOC_WCD939X_SDW is not set
|
||||
|
@ -8029,6 +8083,7 @@ CONFIG_LEDS_LM3697=m
|
|||
# CONFIG_LEDS_RT4505 is not set
|
||||
# CONFIG_LEDS_RT8515 is not set
|
||||
# CONFIG_LEDS_SGM3140 is not set
|
||||
# CONFIG_LEDS_SY7802 is not set
|
||||
|
||||
#
|
||||
# RGB LED drivers
|
||||
|
@ -8058,6 +8113,7 @@ CONFIG_LEDS_TRIGGER_PANIC=y
|
|||
CONFIG_LEDS_TRIGGER_NETDEV=m
|
||||
CONFIG_LEDS_TRIGGER_PATTERN=m
|
||||
CONFIG_LEDS_TRIGGER_TTY=m
|
||||
# CONFIG_LEDS_TRIGGER_INPUT_EVENTS is not set
|
||||
|
||||
#
|
||||
# Simple LED drivers
|
||||
|
@ -8312,6 +8368,7 @@ CONFIG_MLX5_VDPA_NET=m
|
|||
# CONFIG_MLX5_VDPA_STEERING_DEBUG is not set
|
||||
CONFIG_VP_VDPA=m
|
||||
# CONFIG_SNET_VDPA is not set
|
||||
# CONFIG_OCTEONEP_VDPA is not set
|
||||
CONFIG_VHOST_IOTLB=m
|
||||
CONFIG_VHOST_RING=m
|
||||
CONFIG_VHOST_TASK=y
|
||||
|
@ -8412,11 +8469,9 @@ CONFIG_STAGING_MEDIA=y
|
|||
CONFIG_DVB_AV7110_IR=y
|
||||
CONFIG_DVB_AV7110=m
|
||||
CONFIG_DVB_AV7110_OSD=y
|
||||
CONFIG_DVB_BUDGET_PATCH=m
|
||||
CONFIG_DVB_SP8870=m
|
||||
# CONFIG_VIDEO_MAX96712 is not set
|
||||
CONFIG_VIDEO_ROCKCHIP_VDEC=m
|
||||
CONFIG_VIDEO_ROCKCHIP_VDEC2=m
|
||||
|
||||
#
|
||||
# StarFive media platform drivers
|
||||
|
@ -8491,6 +8546,7 @@ CONFIG_CROS_USBPD_NOTIFY=y
|
|||
# CONFIG_CHROMEOS_PRIVACY_SCREEN is not set
|
||||
CONFIG_CROS_TYPEC_SWITCH=m
|
||||
# CONFIG_CROS_KUNIT_EC_PROTO_TEST is not set
|
||||
# CONFIG_CZNIC_PLATFORMS is not set
|
||||
# CONFIG_MELLANOX_PLATFORM is not set
|
||||
CONFIG_SURFACE_PLATFORMS=y
|
||||
# CONFIG_SURFACE_3_POWER_OPREGION is not set
|
||||
|
@ -8499,7 +8555,6 @@ CONFIG_SURFACE_PLATFORMS=y
|
|||
# CONFIG_SURFACE_PRO3_BUTTON is not set
|
||||
# CONFIG_SURFACE_AGGREGATOR is not set
|
||||
CONFIG_ARM64_PLATFORM_DEVICES=y
|
||||
# CONFIG_EC_ACER_ASPIRE1 is not set
|
||||
CONFIG_HAVE_CLK=y
|
||||
CONFIG_HAVE_CLK_PREPARE=y
|
||||
CONFIG_COMMON_CLK=y
|
||||
|
@ -8861,6 +8916,7 @@ CONFIG_AD7266=m
|
|||
CONFIG_AD7291=m
|
||||
CONFIG_AD7292=m
|
||||
CONFIG_AD7298=m
|
||||
# CONFIG_AD7380 is not set
|
||||
CONFIG_AD7476=m
|
||||
CONFIG_AD7606=m
|
||||
CONFIG_AD7606_IFACE_PARALLEL=m
|
||||
|
@ -8876,7 +8932,6 @@ CONFIG_AD7923=m
|
|||
CONFIG_AD7949=m
|
||||
CONFIG_AD799X=m
|
||||
# CONFIG_AD9467 is not set
|
||||
# CONFIG_ADI_AXI_ADC is not set
|
||||
# CONFIG_CC10001_ADC is not set
|
||||
# CONFIG_ENVELOPE_DETECTOR is not set
|
||||
# CONFIG_HI8435 is not set
|
||||
|
@ -8917,6 +8972,7 @@ CONFIG_TI_ADC108S102=m
|
|||
CONFIG_TI_ADC128S052=m
|
||||
CONFIG_TI_ADC161S626=m
|
||||
CONFIG_TI_ADS1015=m
|
||||
# CONFIG_TI_ADS1119 is not set
|
||||
# CONFIG_TI_ADS7924 is not set
|
||||
# CONFIG_TI_ADS1100 is not set
|
||||
# CONFIG_TI_ADS1298 is not set
|
||||
|
@ -8970,6 +9026,7 @@ CONFIG_BME680=m
|
|||
CONFIG_BME680_I2C=m
|
||||
CONFIG_BME680_SPI=m
|
||||
# CONFIG_CCS811 is not set
|
||||
# CONFIG_ENS160 is not set
|
||||
# CONFIG_IAQCORE is not set
|
||||
CONFIG_PMS7003=m
|
||||
# CONFIG_SCD30_CORE is not set
|
||||
|
@ -9027,7 +9084,6 @@ CONFIG_IIO_ST_SENSORS_CORE=m
|
|||
# CONFIG_AD5504 is not set
|
||||
# CONFIG_AD5624R_SPI is not set
|
||||
# CONFIG_AD9739A is not set
|
||||
# CONFIG_ADI_AXI_DAC is not set
|
||||
# CONFIG_LTC2688 is not set
|
||||
CONFIG_AD5686=m
|
||||
CONFIG_AD5686_SPI=m
|
||||
|
@ -9243,6 +9299,7 @@ CONFIG_US5182D=m
|
|||
CONFIG_VCNL4000=m
|
||||
CONFIG_VCNL4035=m
|
||||
CONFIG_VEML6030=m
|
||||
# CONFIG_VEML6040 is not set
|
||||
CONFIG_VEML6070=m
|
||||
# CONFIG_VEML6075 is not set
|
||||
CONFIG_VL6180=m
|
||||
|
@ -9419,6 +9476,7 @@ CONFIG_PWM_CROS_EC=m
|
|||
CONFIG_PWM_DWC_CORE=m
|
||||
CONFIG_PWM_DWC=m
|
||||
# CONFIG_PWM_FSL_FTM is not set
|
||||
# CONFIG_PWM_GPIO is not set
|
||||
CONFIG_PWM_NTXEC=m
|
||||
# CONFIG_PWM_PCA9685 is not set
|
||||
CONFIG_PWM_ROCKCHIP=y
|
||||
|
@ -9434,7 +9492,9 @@ CONFIG_ARM_GIC_V2M=y
|
|||
CONFIG_ARM_GIC_V3=y
|
||||
CONFIG_ARM_GIC_V3_ITS=y
|
||||
CONFIG_ARM_GIC_V3_ITS_PCI=y
|
||||
CONFIG_IRQ_MSI_LIB=y
|
||||
# CONFIG_AL_FIC is not set
|
||||
# CONFIG_LAN966X_OIC is not set
|
||||
# CONFIG_XILINX_INTC is not set
|
||||
CONFIG_PARTITION_PERCPU=y
|
||||
# end of IRQ chip support
|
||||
|
@ -9736,7 +9796,6 @@ CONFIG_NETFS_SUPPORT=m
|
|||
CONFIG_NETFS_STATS=y
|
||||
CONFIG_FSCACHE=y
|
||||
CONFIG_FSCACHE_STATS=y
|
||||
# CONFIG_FSCACHE_DEBUG is not set
|
||||
CONFIG_CACHEFILES=m
|
||||
# CONFIG_CACHEFILES_DEBUG is not set
|
||||
# CONFIG_CACHEFILES_ERROR_INJECTION is not set
|
||||
|
@ -10129,12 +10188,7 @@ CONFIG_LSM="lockdown,yama,integrity,apparmor"
|
|||
#
|
||||
# Memory initialization
|
||||
#
|
||||
CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
|
||||
CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
|
||||
CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
|
||||
CONFIG_INIT_STACK_NONE=y
|
||||
# CONFIG_INIT_STACK_ALL_PATTERN is not set
|
||||
# CONFIG_INIT_STACK_ALL_ZERO is not set
|
||||
CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
|
||||
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
|
||||
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
|
||||
|
@ -10206,7 +10260,6 @@ CONFIG_CRYPTO_ECC=m
|
|||
CONFIG_CRYPTO_ECDH=m
|
||||
CONFIG_CRYPTO_ECDSA=m
|
||||
CONFIG_CRYPTO_ECRDSA=m
|
||||
# CONFIG_CRYPTO_SM2 is not set
|
||||
CONFIG_CRYPTO_CURVE25519=m
|
||||
# end of Public-key cryptography
|
||||
|
||||
|
@ -10390,8 +10443,6 @@ CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m
|
|||
CONFIG_CRYPTO_DEV_CAVIUM_ZIP=m
|
||||
CONFIG_CRYPTO_DEV_ROCKCHIP=m
|
||||
# CONFIG_CRYPTO_DEV_ROCKCHIP_DEBUG is not set
|
||||
CONFIG_CRYPTO_DEV_ROCKCHIP2=m
|
||||
# CONFIG_CRYPTO_DEV_ROCKCHIP2_DEBUG is not set
|
||||
CONFIG_CRYPTO_DEV_VIRTIO=m
|
||||
CONFIG_CRYPTO_DEV_SAFEXCEL=m
|
||||
CONFIG_CRYPTO_DEV_CCREE=m
|
||||
|
@ -10896,7 +10947,6 @@ CONFIG_FUNCTION_ERROR_INJECTION=y
|
|||
# CONFIG_FAULT_INJECTION is not set
|
||||
CONFIG_ARCH_HAS_KCOV=y
|
||||
CONFIG_CC_HAS_SANCOV_TRACE_PC=y
|
||||
# CONFIG_KCOV is not set
|
||||
CONFIG_RUNTIME_TESTING_MENU=y
|
||||
# CONFIG_TEST_DHRY is not set
|
||||
# CONFIG_LKDTM is not set
|
||||
|
@ -10930,7 +10980,6 @@ CONFIG_TEST_XARRAY=m
|
|||
# CONFIG_TEST_LKM is not set
|
||||
# CONFIG_TEST_BITOPS is not set
|
||||
CONFIG_TEST_VMALLOC=m
|
||||
# CONFIG_TEST_USER_COPY is not set
|
||||
CONFIG_TEST_BPF=m
|
||||
CONFIG_TEST_BLACKHOLE_DEV=m
|
||||
# CONFIG_FIND_BIT_BENCHMARK is not set
|
||||
|
@ -10954,6 +11003,7 @@ CONFIG_MEMCPY_KUNIT_TEST=m
|
|||
# CONFIG_STACKINIT_KUNIT_TEST is not set
|
||||
# CONFIG_FORTIFY_KUNIT_TEST is not set
|
||||
# CONFIG_SIPHASH_KUNIT_TEST is not set
|
||||
# CONFIG_USERCOPY_KUNIT_TEST is not set
|
||||
# CONFIG_TEST_UDELAY is not set
|
||||
# CONFIG_TEST_STATIC_KEYS is not set
|
||||
# CONFIG_TEST_DYNAMIC_DEBUG is not set
|
|
@ -50,7 +50,7 @@ case $BRANCH in
|
|||
edge)
|
||||
# Branch based on the latest kernel release including RC releases, to benefit from the latest RK3588 mainline advancements. Might be unstable!
|
||||
LINUXFAMILY=rockchip-rk3588
|
||||
KERNEL_MAJOR_MINOR="6.10" # Major and minor versions of this kernel.
|
||||
KERNEL_MAJOR_MINOR="6.11" # Major and minor versions of this kernel.
|
||||
LINUXCONFIG="linux-rockchip-rk3588-${KERNEL_MAJOR_MINOR}" # Attention: not -${BRANCH} (edge/current/legacy), but -${KERNEL_MAJOR_MINOR} thus 6.8 / 6.10 etc
|
||||
# No need to set KERNELPATCHDIR, since default is: KERNELPATCHDIR='archive/rockchip-rk3588-${KERNEL_MAJOR_MINOR}'
|
||||
;;
|
||||
|
|
|
@ -1,758 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Alexey Charkov <alchark@gmail.com>
|
||||
Date: Mon, 6 May 2024 13:36:32 +0400
|
||||
Subject: arm64: dts: rockchip: add thermal zones information on RK3588
|
||||
|
||||
This includes the necessary device tree data to allow thermal
|
||||
monitoring on RK3588(s) using the on-chip TSADC device, along with
|
||||
trip points for automatic thermal management.
|
||||
|
||||
Each of the CPU clusters (one for the little cores and two for
|
||||
the big cores) get a passive cooling trip point at 85C, which
|
||||
will trigger DVFS throttling of the respective cluster upon
|
||||
reaching a high temperature condition.
|
||||
|
||||
All zones also have a critical trip point at 115C, which will
|
||||
trigger a reset.
|
||||
|
||||
Signed-off-by: Alexey Charkov <alchark@gmail.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 147 ++++++++++
|
||||
1 file changed, 147 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -10,6 +10,7 @@
|
||||
#include <dt-bindings/reset/rockchip,rk3588-cru.h>
|
||||
#include <dt-bindings/phy/phy.h>
|
||||
#include <dt-bindings/ata/ahci.h>
|
||||
+#include <dt-bindings/thermal/thermal.h>
|
||||
|
||||
/ {
|
||||
compatible = "rockchip,rk3588";
|
||||
@@ -2368,6 +2369,152 @@ pwm15: pwm@febf0030 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
+ thermal_zones: thermal-zones {
|
||||
+ /* sensor near the center of the SoC */
|
||||
+ package_thermal: package-thermal {
|
||||
+ polling-delay-passive = <0>;
|
||||
+ polling-delay = <0>;
|
||||
+ thermal-sensors = <&tsadc 0>;
|
||||
+
|
||||
+ trips {
|
||||
+ package_crit: package-crit {
|
||||
+ temperature = <115000>;
|
||||
+ hysteresis = <0>;
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ /* sensor between A76 cores 0 and 1 */
|
||||
+ bigcore0_thermal: bigcore0-thermal {
|
||||
+ polling-delay-passive = <100>;
|
||||
+ polling-delay = <0>;
|
||||
+ thermal-sensors = <&tsadc 1>;
|
||||
+
|
||||
+ trips {
|
||||
+ bigcore0_alert: bigcore0-alert {
|
||||
+ temperature = <85000>;
|
||||
+ hysteresis = <2000>;
|
||||
+ type = "passive";
|
||||
+ };
|
||||
+ bigcore0_crit: bigcore0-crit {
|
||||
+ temperature = <115000>;
|
||||
+ hysteresis = <0>;
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+ cooling-maps {
|
||||
+ map0 {
|
||||
+ trip = <&bigcore0_alert>;
|
||||
+ cooling-device =
|
||||
+ <&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu_b1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ /* sensor between A76 cores 2 and 3 */
|
||||
+ bigcore2_thermal: bigcore2-thermal {
|
||||
+ polling-delay-passive = <100>;
|
||||
+ polling-delay = <0>;
|
||||
+ thermal-sensors = <&tsadc 2>;
|
||||
+
|
||||
+ trips {
|
||||
+ bigcore2_alert: bigcore2-alert {
|
||||
+ temperature = <85000>;
|
||||
+ hysteresis = <2000>;
|
||||
+ type = "passive";
|
||||
+ };
|
||||
+ bigcore2_crit: bigcore2-crit {
|
||||
+ temperature = <115000>;
|
||||
+ hysteresis = <0>;
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+ cooling-maps {
|
||||
+ map0 {
|
||||
+ trip = <&bigcore2_alert>;
|
||||
+ cooling-device =
|
||||
+ <&cpu_b2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu_b3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ /* sensor between the four A55 cores */
|
||||
+ little_core_thermal: littlecore-thermal {
|
||||
+ polling-delay-passive = <100>;
|
||||
+ polling-delay = <0>;
|
||||
+ thermal-sensors = <&tsadc 3>;
|
||||
+
|
||||
+ trips {
|
||||
+ littlecore_alert: littlecore-alert {
|
||||
+ temperature = <85000>;
|
||||
+ hysteresis = <2000>;
|
||||
+ type = "passive";
|
||||
+ };
|
||||
+ littlecore_crit: littlecore-crit {
|
||||
+ temperature = <115000>;
|
||||
+ hysteresis = <0>;
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+ cooling-maps {
|
||||
+ map0 {
|
||||
+ trip = <&littlecore_alert>;
|
||||
+ cooling-device =
|
||||
+ <&cpu_l0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu_l1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu_l2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
+ <&cpu_l3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ /* sensor near the PD_CENTER power domain */
|
||||
+ center_thermal: center-thermal {
|
||||
+ polling-delay-passive = <0>;
|
||||
+ polling-delay = <0>;
|
||||
+ thermal-sensors = <&tsadc 4>;
|
||||
+
|
||||
+ trips {
|
||||
+ center_crit: center-crit {
|
||||
+ temperature = <115000>;
|
||||
+ hysteresis = <0>;
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpu_thermal: gpu-thermal {
|
||||
+ polling-delay-passive = <0>;
|
||||
+ polling-delay = <0>;
|
||||
+ thermal-sensors = <&tsadc 5>;
|
||||
+
|
||||
+ trips {
|
||||
+ gpu_crit: gpu-crit {
|
||||
+ temperature = <115000>;
|
||||
+ hysteresis = <0>;
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ npu_thermal: npu-thermal {
|
||||
+ polling-delay-passive = <0>;
|
||||
+ polling-delay = <0>;
|
||||
+ thermal-sensors = <&tsadc 6>;
|
||||
+
|
||||
+ trips {
|
||||
+ npu_crit: npu-crit {
|
||||
+ temperature = <115000>;
|
||||
+ hysteresis = <0>;
|
||||
+ type = "critical";
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
tsadc: tsadc@fec00000 {
|
||||
compatible = "rockchip,rk3588-tsadc";
|
||||
reg = <0x0 0xfec00000 0x0 0x400>;
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Alexey Charkov <alchark@gmail.com>
|
||||
Date: Mon, 6 May 2024 13:36:33 +0400
|
||||
Subject: arm64: dts: rockchip: enable thermal management on all RK3588 boards
|
||||
|
||||
This enables the on-chip thermal monitoring sensor (TSADC) on all
|
||||
RK3588(s) boards that don't have it enabled yet. It provides temperature
|
||||
monitoring for the SoC and emergency thermal shutdowns, and is thus
|
||||
important to have in place before CPU DVFS is enabled, as high CPU
|
||||
operating performance points can overheat the chip quickly in the
|
||||
absence of thermal management.
|
||||
|
||||
Signed-off-by: Alexey Charkov <alchark@gmail.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588-armsom-sige7.dts | 4 ++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6a-common.dtsi | 4 ++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts | 4 ++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-ok3588-c.dts | 4 ++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts | 4 ++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-toybrick-x0.dts | 4 ++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-turing-rk1.dtsi | 4 ++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts | 4 ++++
|
||||
8 files changed, 32 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-armsom-sige7.dts b/arch/arm64/boot/dts/rockchip/rk3588-armsom-sige7.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-armsom-sige7.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-armsom-sige7.dts
|
||||
@@ -673,6 +673,10 @@ regulator-state-mem {
|
||||
};
|
||||
};
|
||||
|
||||
+&tsadc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&u2phy0 {
|
||||
status = "okay";
|
||||
};
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6a-common.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6a-common.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6a-common.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6a-common.dtsi
|
||||
@@ -466,3 +466,7 @@ regulator-state-mem {
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&tsadc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts b/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
|
||||
@@ -1131,6 +1131,10 @@ &sata0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&tsadc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&u2phy0 {
|
||||
status = "okay";
|
||||
};
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-ok3588-c.dts b/arch/arm64/boot/dts/rockchip/rk3588-ok3588-c.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-ok3588-c.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-ok3588-c.dts
|
||||
@@ -376,6 +376,10 @@ &sdmmc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&tsadc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&u2phy2 {
|
||||
status = "okay";
|
||||
};
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
@@ -743,6 +743,10 @@ regulator-state-mem {
|
||||
};
|
||||
};
|
||||
|
||||
+&tsadc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&uart2 {
|
||||
pinctrl-0 = <&uart2m0_xfer>;
|
||||
status = "okay";
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-toybrick-x0.dts b/arch/arm64/boot/dts/rockchip/rk3588-toybrick-x0.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-toybrick-x0.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-toybrick-x0.dts
|
||||
@@ -648,6 +648,10 @@ regulator-state-mem {
|
||||
};
|
||||
};
|
||||
|
||||
+&tsadc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&u2phy2 {
|
||||
status = "okay";
|
||||
};
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-turing-rk1.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-turing-rk1.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-turing-rk1.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-turing-rk1.dtsi
|
||||
@@ -601,6 +601,10 @@ regulator-state-mem {
|
||||
};
|
||||
};
|
||||
|
||||
+&tsadc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&uart2 {
|
||||
pinctrl-0 = <&uart2m0_xfer>;
|
||||
status = "okay";
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts b/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
|
||||
@@ -699,6 +699,10 @@ regulator-state-mem {
|
||||
};
|
||||
};
|
||||
|
||||
+&tsadc {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&u2phy0 {
|
||||
status = "okay";
|
||||
};
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Alexey Charkov <alchark@gmail.com>
|
||||
Date: Mon, 6 May 2024 13:36:34 +0400
|
||||
Subject: arm64: dts: rockchip: add passive GPU cooling on RK3588
|
||||
|
||||
As the GPU support on RK3588 has been merged upstream, along with OPP
|
||||
values, add a corresponding cooling map for passive cooling using the GPU.
|
||||
|
||||
Signed-off-by: Alexey Charkov <alchark@gmail.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 14 +++++++++-
|
||||
1 file changed, 13 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -2487,17 +2487,29 @@ center_crit: center-crit {
|
||||
};
|
||||
|
||||
gpu_thermal: gpu-thermal {
|
||||
- polling-delay-passive = <0>;
|
||||
+ polling-delay-passive = <100>;
|
||||
polling-delay = <0>;
|
||||
thermal-sensors = <&tsadc 5>;
|
||||
|
||||
trips {
|
||||
+ gpu_alert: gpu-alert {
|
||||
+ temperature = <85000>;
|
||||
+ hysteresis = <2000>;
|
||||
+ type = "passive";
|
||||
+ };
|
||||
gpu_crit: gpu-crit {
|
||||
temperature = <115000>;
|
||||
hysteresis = <0>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
+ cooling-maps {
|
||||
+ map0 {
|
||||
+ trip = <&gpu_alert>;
|
||||
+ cooling-device =
|
||||
+ <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+ };
|
||||
};
|
||||
|
||||
npu_thermal: npu-thermal {
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Alexey Charkov <alchark@gmail.com>
|
||||
Date: Mon, 6 May 2024 13:36:36 +0400
|
||||
Subject: arm64: dts: rockchip: Add CPU/memory regulator coupling for RK3588
|
||||
|
||||
RK3588 chips allow for their CPU cores to be powered by a different
|
||||
supply vs. their corresponding memory interfaces, and two of the
|
||||
boards currently upstream do that (EVB1 and QuartzPro64).
|
||||
|
||||
The voltage of the memory interface though has to match that of the
|
||||
CPU cores that use it, which downstream kernels achieve by the means
|
||||
of a custom cpufreq driver which adjusts both at the same time.
|
||||
|
||||
It seems that regulator coupling is a more appropriate generic
|
||||
interface for it, so this patch introduces coupling to affected
|
||||
device trees to ensure that memory interface voltage is also updated
|
||||
whenever cpufreq switches between CPU OPPs.
|
||||
|
||||
Note that other boards, such as Radxa Rock 5B, define both the CPU
|
||||
and memory interface regulators as aliases to the same DT node, so
|
||||
this doesn't apply there.
|
||||
|
||||
Signed-off-by: Alexey Charkov <alchark@gmail.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts | 12 ++++++++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-quartzpro64.dts | 12 ++++++++++
|
||||
2 files changed, 24 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts b/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
|
||||
@@ -878,6 +878,8 @@ regulators {
|
||||
vdd_cpu_big1_s0: dcdc-reg1 {
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_big1_mem_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -890,6 +892,8 @@ regulator-state-mem {
|
||||
vdd_cpu_big0_s0: dcdc-reg2 {
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_big0_mem_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -902,6 +906,8 @@ regulator-state-mem {
|
||||
vdd_cpu_lit_s0: dcdc-reg3 {
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_lit_mem_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <950000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -926,6 +932,8 @@ regulator-state-mem {
|
||||
vdd_cpu_big1_mem_s0: dcdc-reg5 {
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_big1_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <675000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -939,6 +947,8 @@ regulator-state-mem {
|
||||
vdd_cpu_big0_mem_s0: dcdc-reg6 {
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_big0_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <675000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -963,6 +973,8 @@ regulator-state-mem {
|
||||
vdd_cpu_lit_mem_s0: dcdc-reg8 {
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_lit_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <675000>;
|
||||
regulator-max-microvolt = <950000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-quartzpro64.dts b/arch/arm64/boot/dts/rockchip/rk3588-quartzpro64.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-quartzpro64.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-quartzpro64.dts
|
||||
@@ -833,6 +833,8 @@ vdd_cpu_big1_s0: dcdc-reg1 {
|
||||
regulator-name = "vdd_cpu_big1_s0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_big1_mem_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -846,6 +848,8 @@ vdd_cpu_big0_s0: dcdc-reg2 {
|
||||
regulator-name = "vdd_cpu_big0_s0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_big0_mem_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -859,6 +863,8 @@ vdd_cpu_lit_s0: dcdc-reg3 {
|
||||
regulator-name = "vdd_cpu_lit_s0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_lit_mem_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <950000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -885,6 +891,8 @@ vdd_cpu_big1_mem_s0: dcdc-reg5 {
|
||||
regulator-name = "vdd_cpu_big1_mem_s0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_big1_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <675000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -899,6 +907,8 @@ vdd_cpu_big0_mem_s0: dcdc-reg6 {
|
||||
regulator-name = "vdd_cpu_big0_mem_s0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_big0_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <675000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
@@ -925,6 +935,8 @@ vdd_cpu_lit_mem_s0: dcdc-reg8 {
|
||||
regulator-name = "vdd_cpu_lit_mem_s0";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
+ regulator-coupled-with = <&vdd_cpu_lit_s0>;
|
||||
+ regulator-coupled-max-spread = <10000>;
|
||||
regulator-min-microvolt = <675000>;
|
||||
regulator-max-microvolt = <950000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Alexey Charkov <alchark@gmail.com>
|
||||
Date: Mon, 6 May 2024 13:36:37 +0400
|
||||
Subject: arm64: dts: rockchip: Add OPP data for CPU cores on RK3588
|
||||
|
||||
By default the CPUs on RK3588 start up in a conservative performance
|
||||
mode. Add frequency and voltage mappings to the device tree to enable
|
||||
dynamic scaling via cpufreq.
|
||||
|
||||
OPP values are adapted from Radxa's downstream kernel for Rock 5B [1],
|
||||
stripping them down to the minimum frequency and voltage combinations
|
||||
as expected by the generic upstream cpufreq-dt driver, and also dropping
|
||||
those OPPs that don't differ in voltage but only in frequency (keeping
|
||||
the top frequency OPP in each case).
|
||||
|
||||
Note that this patch ignores voltage scaling for the CPU memory
|
||||
interface which the downstream kernel does through a custom cpufreq
|
||||
driver, and which is why the downstream version has two sets of voltage
|
||||
values for each OPP (the second one being meant for the memory
|
||||
interface supply regulator). This is done instead via regulator
|
||||
coupling between CPU and memory interface supplies on affected boards.
|
||||
|
||||
This has been tested on Rock 5B with u-boot 2023.11 compiled from
|
||||
Collabora's integration tree [2] with binary bl31 and appears to be
|
||||
stable both under active cooling and passive cooling (with throttling)
|
||||
|
||||
[1] https://github.com/radxa/kernel/blob/stable-5.10-rock5/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
[2] https://gitlab.collabora.com/hardware-enablement/rockchip-3588/u-boot
|
||||
|
||||
Signed-off-by: Alexey Charkov <alchark@gmail.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 122 ++++++++++
|
||||
1 file changed, 122 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -97,6 +97,7 @@ cpu_l0: cpu@0 {
|
||||
clocks = <&scmi_clk SCMI_CLK_CPUL>;
|
||||
assigned-clocks = <&scmi_clk SCMI_CLK_CPUL>;
|
||||
assigned-clock-rates = <816000000>;
|
||||
+ operating-points-v2 = <&cluster0_opp_table>;
|
||||
cpu-idle-states = <&CPU_SLEEP>;
|
||||
i-cache-size = <32768>;
|
||||
i-cache-line-size = <64>;
|
||||
@@ -116,6 +117,7 @@ cpu_l1: cpu@100 {
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <530>;
|
||||
clocks = <&scmi_clk SCMI_CLK_CPUL>;
|
||||
+ operating-points-v2 = <&cluster0_opp_table>;
|
||||
cpu-idle-states = <&CPU_SLEEP>;
|
||||
i-cache-size = <32768>;
|
||||
i-cache-line-size = <64>;
|
||||
@@ -135,6 +137,7 @@ cpu_l2: cpu@200 {
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <530>;
|
||||
clocks = <&scmi_clk SCMI_CLK_CPUL>;
|
||||
+ operating-points-v2 = <&cluster0_opp_table>;
|
||||
cpu-idle-states = <&CPU_SLEEP>;
|
||||
i-cache-size = <32768>;
|
||||
i-cache-line-size = <64>;
|
||||
@@ -154,6 +157,7 @@ cpu_l3: cpu@300 {
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <530>;
|
||||
clocks = <&scmi_clk SCMI_CLK_CPUL>;
|
||||
+ operating-points-v2 = <&cluster0_opp_table>;
|
||||
cpu-idle-states = <&CPU_SLEEP>;
|
||||
i-cache-size = <32768>;
|
||||
i-cache-line-size = <64>;
|
||||
@@ -175,6 +179,7 @@ cpu_b0: cpu@400 {
|
||||
clocks = <&scmi_clk SCMI_CLK_CPUB01>;
|
||||
assigned-clocks = <&scmi_clk SCMI_CLK_CPUB01>;
|
||||
assigned-clock-rates = <816000000>;
|
||||
+ operating-points-v2 = <&cluster1_opp_table>;
|
||||
cpu-idle-states = <&CPU_SLEEP>;
|
||||
i-cache-size = <65536>;
|
||||
i-cache-line-size = <64>;
|
||||
@@ -194,6 +199,7 @@ cpu_b1: cpu@500 {
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <1024>;
|
||||
clocks = <&scmi_clk SCMI_CLK_CPUB01>;
|
||||
+ operating-points-v2 = <&cluster1_opp_table>;
|
||||
cpu-idle-states = <&CPU_SLEEP>;
|
||||
i-cache-size = <65536>;
|
||||
i-cache-line-size = <64>;
|
||||
@@ -215,6 +221,7 @@ cpu_b2: cpu@600 {
|
||||
clocks = <&scmi_clk SCMI_CLK_CPUB23>;
|
||||
assigned-clocks = <&scmi_clk SCMI_CLK_CPUB23>;
|
||||
assigned-clock-rates = <816000000>;
|
||||
+ operating-points-v2 = <&cluster2_opp_table>;
|
||||
cpu-idle-states = <&CPU_SLEEP>;
|
||||
i-cache-size = <65536>;
|
||||
i-cache-line-size = <64>;
|
||||
@@ -234,6 +241,7 @@ cpu_b3: cpu@700 {
|
||||
enable-method = "psci";
|
||||
capacity-dmips-mhz = <1024>;
|
||||
clocks = <&scmi_clk SCMI_CLK_CPUB23>;
|
||||
+ operating-points-v2 = <&cluster2_opp_table>;
|
||||
cpu-idle-states = <&CPU_SLEEP>;
|
||||
i-cache-size = <65536>;
|
||||
i-cache-line-size = <64>;
|
||||
@@ -348,6 +356,120 @@ l3_cache: l3-cache {
|
||||
};
|
||||
};
|
||||
|
||||
+ cluster0_opp_table: opp-table-cluster0 {
|
||||
+ compatible = "operating-points-v2";
|
||||
+ opp-shared;
|
||||
+
|
||||
+ opp-1008000000 {
|
||||
+ opp-hz = /bits/ 64 <1008000000>;
|
||||
+ opp-microvolt = <675000 675000 950000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1200000000 {
|
||||
+ opp-hz = /bits/ 64 <1200000000>;
|
||||
+ opp-microvolt = <712500 712500 950000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1416000000 {
|
||||
+ opp-hz = /bits/ 64 <1416000000>;
|
||||
+ opp-microvolt = <762500 762500 950000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ opp-suspend;
|
||||
+ };
|
||||
+ opp-1608000000 {
|
||||
+ opp-hz = /bits/ 64 <1608000000>;
|
||||
+ opp-microvolt = <850000 850000 950000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1800000000 {
|
||||
+ opp-hz = /bits/ 64 <1800000000>;
|
||||
+ opp-microvolt = <950000 950000 950000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ cluster1_opp_table: opp-table-cluster1 {
|
||||
+ compatible = "operating-points-v2";
|
||||
+ opp-shared;
|
||||
+
|
||||
+ opp-1200000000 {
|
||||
+ opp-hz = /bits/ 64 <1200000000>;
|
||||
+ opp-microvolt = <675000 675000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1416000000 {
|
||||
+ opp-hz = /bits/ 64 <1416000000>;
|
||||
+ opp-microvolt = <725000 725000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1608000000 {
|
||||
+ opp-hz = /bits/ 64 <1608000000>;
|
||||
+ opp-microvolt = <762500 762500 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1800000000 {
|
||||
+ opp-hz = /bits/ 64 <1800000000>;
|
||||
+ opp-microvolt = <850000 850000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-2016000000 {
|
||||
+ opp-hz = /bits/ 64 <2016000000>;
|
||||
+ opp-microvolt = <925000 925000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-2208000000 {
|
||||
+ opp-hz = /bits/ 64 <2208000000>;
|
||||
+ opp-microvolt = <987500 987500 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-2400000000 {
|
||||
+ opp-hz = /bits/ 64 <2400000000>;
|
||||
+ opp-microvolt = <1000000 1000000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ cluster2_opp_table: opp-table-cluster2 {
|
||||
+ compatible = "operating-points-v2";
|
||||
+ opp-shared;
|
||||
+
|
||||
+ opp-1200000000 {
|
||||
+ opp-hz = /bits/ 64 <1200000000>;
|
||||
+ opp-microvolt = <675000 675000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1416000000 {
|
||||
+ opp-hz = /bits/ 64 <1416000000>;
|
||||
+ opp-microvolt = <725000 725000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1608000000 {
|
||||
+ opp-hz = /bits/ 64 <1608000000>;
|
||||
+ opp-microvolt = <762500 762500 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-1800000000 {
|
||||
+ opp-hz = /bits/ 64 <1800000000>;
|
||||
+ opp-microvolt = <850000 850000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-2016000000 {
|
||||
+ opp-hz = /bits/ 64 <2016000000>;
|
||||
+ opp-microvolt = <925000 925000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-2208000000 {
|
||||
+ opp-hz = /bits/ 64 <2208000000>;
|
||||
+ opp-microvolt = <987500 987500 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ opp-2400000000 {
|
||||
+ opp-hz = /bits/ 64 <2400000000>;
|
||||
+ opp-microvolt = <1000000 1000000 1000000>;
|
||||
+ clock-latency-ns = <40000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
display_subsystem: display-subsystem {
|
||||
compatible = "rockchip,display-subsystem";
|
||||
ports = <&vop_out>;
|
||||
--
|
||||
Armbian
|
||||
|
|
@ -1,311 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
Date: Thu, 13 Jun 2024 15:48:42 +0200
|
||||
Subject: media: dt-bindings: rk3568-vepu: Add RK3588 VEPU121
|
||||
|
||||
From: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
|
||||
|
||||
This encoder-only device is present four times on this SoC, and should
|
||||
support everything the rk3568 vepu supports (so JPEG, H.264 and VP8
|
||||
encoding). No fallback compatible has been added, since the operating
|
||||
systems might already support RK3568 VEPU and want to avoid registering
|
||||
four of them separately considering they can be used as a cluster.
|
||||
|
||||
Signed-off-by: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
|
||||
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
---
|
||||
Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml b/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
|
||||
+++ b/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
|
||||
@@ -17,6 +17,7 @@ properties:
|
||||
compatible:
|
||||
enum:
|
||||
- rockchip,rk3568-vepu
|
||||
+ - rockchip,rk3588-vepu121
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
Date: Thu, 13 Jun 2024 15:48:44 +0200
|
||||
Subject: media: hantro: Disable multicore support
|
||||
|
||||
Avoid exposing equal Hantro video codecs to userspace. Equal video
|
||||
codecs allow scheduling work between the cores. For that kernel support
|
||||
is required, which does not yet exist. Until that is implemented avoid
|
||||
exposing each core separately to userspace so that multicore can be
|
||||
added in the future without breaking userspace ABI.
|
||||
|
||||
This was written with Rockchip RK3588 in mind (which has 4 Hantro H1
|
||||
cores), but applies to all SoCs.
|
||||
|
||||
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
---
|
||||
drivers/media/platform/verisilicon/hantro_drv.c | 37 ++++++++++
|
||||
1 file changed, 37 insertions(+)
|
||||
|
||||
diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
+++ b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
@@ -992,6 +992,39 @@ static const struct media_device_ops hantro_m2m_media_ops = {
|
||||
.req_queue = v4l2_m2m_request_queue,
|
||||
};
|
||||
|
||||
+/*
|
||||
+ * Some SoCs, like RK3588 have multiple identical Hantro cores, but the
|
||||
+ * kernel is currently missing support for multi-core handling. Exposing
|
||||
+ * separate devices for each core to userspace is bad, since that does
|
||||
+ * not allow scheduling tasks properly (and creates ABI). With this workaround
|
||||
+ * the driver will only probe for the first core and early exit for the other
|
||||
+ * cores. Once the driver gains multi-core support, the same technique
|
||||
+ * for detecting the main core can be used to cluster all cores together.
|
||||
+ */
|
||||
+static int hantro_disable_multicore(struct hantro_dev *vpu)
|
||||
+{
|
||||
+ const char *compatible;
|
||||
+ struct device_node *node;
|
||||
+ int ret;
|
||||
+
|
||||
+ /* Intentionally ignores the fallback strings */
|
||||
+ ret = of_property_read_string(vpu->dev->of_node, "compatible", &compatible);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+
|
||||
+ /* first compatible node found from the root node is considered the main core */
|
||||
+ node = of_find_compatible_node(NULL, NULL, compatible);
|
||||
+ if (!node)
|
||||
+ return -EINVAL; /* broken DT? */
|
||||
+
|
||||
+ if (vpu->dev->of_node != node) {
|
||||
+ dev_info(vpu->dev, "missing multi-core support, ignoring this instance\n");
|
||||
+ return -ENODEV;
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static int hantro_probe(struct platform_device *pdev)
|
||||
{
|
||||
const struct of_device_id *match;
|
||||
@@ -1011,6 +1044,10 @@ static int hantro_probe(struct platform_device *pdev)
|
||||
match = of_match_node(of_hantro_match, pdev->dev.of_node);
|
||||
vpu->variant = match->data;
|
||||
|
||||
+ ret = hantro_disable_multicore(vpu);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+
|
||||
/*
|
||||
* Support for nxp,imx8mq-vpu is kept for backwards compatibility
|
||||
* but it's deprecated. Please update your DTS file to use
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
Date: Thu, 13 Jun 2024 15:48:45 +0200
|
||||
Subject: media: hantro: Add RK3588 VEPU121
|
||||
|
||||
RK3588 handling is exactly the same as RK3568. This is not
|
||||
handled using fallback compatibles to avoid exposing multiple
|
||||
video devices on kernels not having the multicore disable
|
||||
patch.
|
||||
|
||||
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
---
|
||||
drivers/media/platform/verisilicon/hantro_drv.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
+++ b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
@@ -722,6 +722,7 @@ static const struct of_device_id of_hantro_match[] = {
|
||||
{ .compatible = "rockchip,rk3399-vpu", .data = &rk3399_vpu_variant, },
|
||||
{ .compatible = "rockchip,rk3568-vepu", .data = &rk3568_vepu_variant, },
|
||||
{ .compatible = "rockchip,rk3568-vpu", .data = &rk3568_vpu_variant, },
|
||||
+ { .compatible = "rockchip,rk3588-vepu121", .data = &rk3568_vepu_variant, },
|
||||
{ .compatible = "rockchip,rk3588-av1-vpu", .data = &rk3588_vpu981_variant, },
|
||||
#endif
|
||||
#ifdef CONFIG_VIDEO_HANTRO_IMX8M
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
Date: Thu, 13 Jun 2024 15:48:46 +0200
|
||||
Subject: arm64: dts: rockchip: Add VEPU121 to RK3588
|
||||
|
||||
From: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
|
||||
|
||||
RK3588 has 4 Hantro G1 encoder-only cores. They are all independent IP,
|
||||
but can be used as a cluster (i.e. sharing work between the cores).
|
||||
These cores are called VEPU121 in the TRM. The TRM describes one more
|
||||
VEPU121, but that is combined with a Hantro H1. That one will be handled
|
||||
using the VPU binding instead.
|
||||
|
||||
Signed-off-by: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
|
||||
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 80 ++++++++++
|
||||
1 file changed, 80 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -1282,6 +1282,86 @@ power-domain@RK3588_PD_SDMMC {
|
||||
};
|
||||
};
|
||||
|
||||
+ vepu121_0: video-codec@fdba0000 {
|
||||
+ compatible = "rockchip,rk3588-vepu121";
|
||||
+ reg = <0x0 0xfdba0000 0x0 0x800>;
|
||||
+ interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>;
|
||||
+ clock-names = "aclk", "hclk";
|
||||
+ iommus = <&vepu121_0_mmu>;
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ };
|
||||
+
|
||||
+ vepu121_0_mmu: iommu@fdba0800 {
|
||||
+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
|
||||
+ reg = <0x0 0xfdba0800 0x0 0x40>;
|
||||
+ interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>;
|
||||
+ clock-names = "aclk", "iface";
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ #iommu-cells = <0>;
|
||||
+ };
|
||||
+
|
||||
+ vepu121_1: video-codec@fdba4000 {
|
||||
+ compatible = "rockchip,rk3588-vepu121";
|
||||
+ reg = <0x0 0xfdba4000 0x0 0x800>;
|
||||
+ interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_JPEG_ENCODER1>, <&cru HCLK_JPEG_ENCODER1>;
|
||||
+ clock-names = "aclk", "hclk";
|
||||
+ iommus = <&vepu121_1_mmu>;
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ };
|
||||
+
|
||||
+ vepu121_1_mmu: iommu@fdba4800 {
|
||||
+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
|
||||
+ reg = <0x0 0xfdba4800 0x0 0x40>;
|
||||
+ interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_JPEG_ENCODER1>, <&cru HCLK_JPEG_ENCODER1>;
|
||||
+ clock-names = "aclk", "iface";
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ #iommu-cells = <0>;
|
||||
+ };
|
||||
+
|
||||
+ vepu121_2: video-codec@fdba8000 {
|
||||
+ compatible = "rockchip,rk3588-vepu121";
|
||||
+ reg = <0x0 0xfdba8000 0x0 0x800>;
|
||||
+ interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_JPEG_ENCODER2>, <&cru HCLK_JPEG_ENCODER2>;
|
||||
+ clock-names = "aclk", "hclk";
|
||||
+ iommus = <&vepu121_2_mmu>;
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ };
|
||||
+
|
||||
+ vepu121_2_mmu: iommu@fdba8800 {
|
||||
+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
|
||||
+ reg = <0x0 0xfdba8800 0x0 0x40>;
|
||||
+ interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_JPEG_ENCODER2>, <&cru HCLK_JPEG_ENCODER2>;
|
||||
+ clock-names = "aclk", "iface";
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ #iommu-cells = <0>;
|
||||
+ };
|
||||
+
|
||||
+ vepu121_3: video-codec@fdbac000 {
|
||||
+ compatible = "rockchip,rk3588-vepu121";
|
||||
+ reg = <0x0 0xfdbac000 0x0 0x800>;
|
||||
+ interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_JPEG_ENCODER3>, <&cru HCLK_JPEG_ENCODER3>;
|
||||
+ clock-names = "aclk", "hclk";
|
||||
+ iommus = <&vepu121_3_mmu>;
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ };
|
||||
+
|
||||
+ vepu121_3_mmu: iommu@fdbac800 {
|
||||
+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
|
||||
+ reg = <0x0 0xfdbac800 0x0 0x40>;
|
||||
+ interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_JPEG_ENCODER3>, <&cru HCLK_JPEG_ENCODER3>;
|
||||
+ clock-names = "aclk", "iface";
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ #iommu-cells = <0>;
|
||||
+ };
|
||||
+
|
||||
av1d: video-codec@fdc70000 {
|
||||
compatible = "rockchip,rk3588-av1-vpu";
|
||||
reg = <0x0 0xfdc70000 0x0 0x800>;
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
Date: Thu, 13 Jun 2024 15:48:47 +0200
|
||||
Subject: arm64: dts: rockchip: Add VPU121 support for RK3588
|
||||
|
||||
From: Jianfeng Liu <liujianfeng1994@gmail.com>
|
||||
|
||||
Enable Hantro G1 video decoder in RK3588's devicetree.
|
||||
|
||||
Tested with FFmpeg v4l2_request code taken from [1]
|
||||
with MPEG2, H.264 and VP8 samples.
|
||||
|
||||
[1] https://github.com/LibreELEC/LibreELEC.tv/blob/master/packages/multimedia/ffmpeg/patches/v4l2-request/ffmpeg-001-v4l2-request.patch
|
||||
|
||||
Signed-off-by: Jianfeng Liu <liujianfeng1994@gmail.com>
|
||||
Tested-by: Hugh Cole-Baker <sigmaris@gmail.com>
|
||||
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 22 ++++++++++
|
||||
1 file changed, 22 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -1282,6 +1282,28 @@ power-domain@RK3588_PD_SDMMC {
|
||||
};
|
||||
};
|
||||
|
||||
+ vpu121: video-codec@fdb50000 {
|
||||
+ compatible = "rockchip,rk3588-vpu121", "rockchip,rk3399-vpu";
|
||||
+ reg = <0x0 0xfdb50000 0x0 0x800>;
|
||||
+ interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
+ <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ interrupt-names = "vepu", "vdpu";
|
||||
+ clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>;
|
||||
+ clock-names = "aclk", "hclk";
|
||||
+ iommus = <&vpu121_mmu>;
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ };
|
||||
+
|
||||
+ vpu121_mmu: iommu@fdb50800 {
|
||||
+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
|
||||
+ reg = <0x0 0xfdb50800 0x0 0x40>;
|
||||
+ interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clock-names = "aclk", "iface";
|
||||
+ clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>;
|
||||
+ power-domains = <&power RK3588_PD_VDPU>;
|
||||
+ #iommu-cells = <0>;
|
||||
+ };
|
||||
+
|
||||
vepu121_0: video-codec@fdba0000 {
|
||||
compatible = "rockchip,rk3588-vepu121";
|
||||
reg = <0x0 0xfdba0000 0x0 0x800>;
|
||||
--
|
||||
Armbian
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: lanefu <lane@lane-fu.com>
|
||||
Date: Sat, 20 Jan 2024 17:16:20 +0000
|
||||
Subject: rock-5b enable SPI flash in device tree
|
||||
arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
|
||||
Signed-off-by: lanefu <lane@lane-fu.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts | 27 ++++++++++
|
||||
1 file changed, 27 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
@@ -421,6 +421,33 @@ &uart6 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&sfc {
|
||||
+ status = "okay";
|
||||
+
|
||||
+ spi_flash: spi-flash@0 {
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ compatible = "jedec,spi-nor";
|
||||
+ reg = <0x0>;
|
||||
+ spi-max-frequency = <50000000>;
|
||||
+ spi-tx-bus-width = <1>;
|
||||
+ spi-rx-bus-width = <4>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ loader@0 {
|
||||
+ label = "loader";
|
||||
+ reg = <0x0 0x1000000>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+};
|
||||
+
|
||||
&spi2 {
|
||||
status = "okay";
|
||||
assigned-clocks = <&cru CLK_SPI2>;
|
||||
--
|
||||
Armbian
|
||||
|
|
@ -1,68 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Alexey Charkov <alchark@gmail.com>
|
||||
Date: Mon, 6 May 2024 13:36:35 +0400
|
||||
Subject: arm64: dts: rockchip: enable automatic fan control on Rock 5B
|
||||
|
||||
This links the PWM fan on Radxa Rock 5B as an active cooling device
|
||||
managed automatically by the thermal subsystem, with a target SoC
|
||||
temperature of 65C and a minimum-spin interval from 55C to 65C to
|
||||
ensure airflow when the system gets warm
|
||||
|
||||
Helped-by: Dragan Simic <dsimic@manjaro.org>
|
||||
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
|
||||
Signed-off-by: Alexey Charkov <alchark@gmail.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts | 30 +++++++++-
|
||||
1 file changed, 29 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
@@ -53,7 +53,7 @@ led_rgb_b {
|
||||
|
||||
fan: pwm-fan {
|
||||
compatible = "pwm-fan";
|
||||
- cooling-levels = <0 95 145 195 255>;
|
||||
+ cooling-levels = <0 120 150 180 210 240 255>;
|
||||
fan-supply = <&vcc5v0_sys>;
|
||||
pwms = <&pwm1 0 50000 0>;
|
||||
#cooling-cells = <2>;
|
||||
@@ -299,6 +299,34 @@ i2s0_8ch_p0_0: endpoint {
|
||||
};
|
||||
};
|
||||
|
||||
+&package_thermal {
|
||||
+ polling-delay = <1000>;
|
||||
+
|
||||
+ trips {
|
||||
+ package_fan0: package-fan0 {
|
||||
+ temperature = <55000>;
|
||||
+ hysteresis = <2000>;
|
||||
+ type = "active";
|
||||
+ };
|
||||
+ package_fan1: package-fan1 {
|
||||
+ temperature = <65000>;
|
||||
+ hysteresis = <2000>;
|
||||
+ type = "active";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ cooling-maps {
|
||||
+ map1 {
|
||||
+ trip = <&package_fan0>;
|
||||
+ cooling-device = <&fan THERMAL_NO_LIMIT 1>;
|
||||
+ };
|
||||
+ map2 {
|
||||
+ trip = <&package_fan1>;
|
||||
+ cooling-device = <&fan 2 THERMAL_NO_LIMIT>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
&pcie2x1l0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pcie2_0_rst>;
|
||||
--
|
||||
Armbian
|
||||
|
|
@ -16,8 +16,8 @@ config: # This is file 'patch/kernel/rockchip-rk3588-edge/0000.patching_config.y
|
|||
name: rockchip-rk3588-edge
|
||||
kind: kernel
|
||||
type: mainline # or: vendor
|
||||
branch: linux-6.10.y
|
||||
last-known-good-tag: v6.10-rc2
|
||||
branch: linux-6.11.y
|
||||
last-known-good-tag: v6.11-rc1
|
||||
maintainers:
|
||||
- { github: rpardini, name: Ricardo Pardini, email: ricardo@pardini.net, armbian-forum: rpardini }
|
||||
|
|
@ -45,7 +45,7 @@ index 111111111111..222222222222 100644
|
|||
$(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \
|
||||
-d $(depfile).dtc.tmp $(dtc-tmp) ; \
|
||||
cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)
|
||||
@@ -427,12 +427,18 @@ quiet_cmd_dtb = $(quiet_cmd_dtc)
|
||||
@@ -438,12 +438,18 @@ quiet_cmd_dtb = $(quiet_cmd_dtc)
|
||||
cmd_dtb = $(cmd_dtc)
|
||||
endif
|
||||
|
|
@ -11,7 +11,7 @@ diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
|
|||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/irqchip/irq-gic-v3-its.c
|
||||
+++ b/drivers/irqchip/irq-gic-v3-its.c
|
||||
@@ -163,6 +163,7 @@ struct its_device {
|
||||
@@ -164,6 +164,7 @@ struct its_device {
|
||||
struct its_node *its;
|
||||
struct event_lpi_map event_map;
|
||||
void *itt;
|
||||
|
@ -19,7 +19,7 @@ index 111111111111..222222222222 100644
|
|||
u32 nr_ites;
|
||||
u32 device_id;
|
||||
bool shared;
|
||||
@@ -2191,6 +2192,9 @@ static void gic_reset_prop_table(void *va)
|
||||
@@ -2186,6 +2187,9 @@ static void gic_reset_prop_table(void *va)
|
||||
static struct page *its_allocate_prop_table(gfp_t gfp_flags)
|
||||
{
|
||||
struct page *prop_page;
|
||||
|
@ -29,7 +29,7 @@ index 111111111111..222222222222 100644
|
|||
|
||||
prop_page = alloc_pages(gfp_flags, get_order(LPI_PROPBASE_SZ));
|
||||
if (!prop_page)
|
||||
@@ -2315,6 +2319,7 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
|
||||
@@ -2310,6 +2314,7 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
|
||||
u32 alloc_pages, psz;
|
||||
struct page *page;
|
||||
void *base;
|
||||
|
@ -37,7 +37,7 @@ index 111111111111..222222222222 100644
|
|||
|
||||
psz = baser->psz;
|
||||
alloc_pages = (PAGE_ORDER_TO_SIZE(order) / psz);
|
||||
@@ -2326,7 +2331,11 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
|
||||
@@ -2321,7 +2326,11 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
|
||||
order = get_order(GITS_BASER_PAGES_MAX * psz);
|
||||
}
|
||||
|
||||
|
@ -50,7 +50,7 @@ index 111111111111..222222222222 100644
|
|||
if (!page)
|
||||
return -ENOMEM;
|
||||
|
||||
@@ -2376,6 +2385,15 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
|
||||
@@ -2371,6 +2380,15 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
|
||||
its_write_baser(its, baser, val);
|
||||
tmp = baser->val;
|
||||
|
||||
|
@ -66,7 +66,7 @@ index 111111111111..222222222222 100644
|
|||
if ((val ^ tmp) & GITS_BASER_SHAREABILITY_MASK) {
|
||||
/*
|
||||
* Shareability didn't stick. Just use
|
||||
@@ -2965,7 +2983,9 @@ static int its_alloc_collections(struct its_node *its)
|
||||
@@ -2960,7 +2978,9 @@ static int its_alloc_collections(struct its_node *its)
|
||||
static struct page *its_allocate_pending_table(gfp_t gfp_flags)
|
||||
{
|
||||
struct page *pend_page;
|
||||
|
@ -77,7 +77,7 @@ index 111111111111..222222222222 100644
|
|||
pend_page = alloc_pages(gfp_flags | __GFP_ZERO,
|
||||
get_order(LPI_PENDBASE_SZ));
|
||||
if (!pend_page)
|
||||
@@ -3124,6 +3144,11 @@ static void its_cpu_init_lpis(void)
|
||||
@@ -3119,6 +3139,11 @@ static void its_cpu_init_lpis(void)
|
||||
if (!rdists_support_shareable())
|
||||
tmp &= ~GICR_PROPBASER_SHAREABILITY_MASK;
|
||||
|
||||
|
@ -89,7 +89,7 @@ index 111111111111..222222222222 100644
|
|||
if ((tmp ^ val) & GICR_PROPBASER_SHAREABILITY_MASK) {
|
||||
if (!(tmp & GICR_PROPBASER_SHAREABILITY_MASK)) {
|
||||
/*
|
||||
@@ -3151,6 +3176,11 @@ static void its_cpu_init_lpis(void)
|
||||
@@ -3146,6 +3171,11 @@ static void its_cpu_init_lpis(void)
|
||||
if (!rdists_support_shareable())
|
||||
tmp &= ~GICR_PENDBASER_SHAREABILITY_MASK;
|
||||
|
||||
|
@ -101,7 +101,7 @@ index 111111111111..222222222222 100644
|
|||
if (!(tmp & GICR_PENDBASER_SHAREABILITY_MASK)) {
|
||||
/*
|
||||
* The HW reports non-shareable, we must remove the
|
||||
@@ -3314,7 +3344,11 @@ static bool its_alloc_table_entry(struct its_node *its,
|
||||
@@ -3309,7 +3339,11 @@ static bool its_alloc_table_entry(struct its_node *its,
|
||||
|
||||
/* Allocate memory for 2nd level table */
|
||||
if (!table[idx]) {
|
||||
|
@ -114,7 +114,7 @@ index 111111111111..222222222222 100644
|
|||
get_order(baser->psz));
|
||||
if (!page)
|
||||
return false;
|
||||
@@ -3403,6 +3437,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
|
||||
@@ -3398,6 +3432,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
|
||||
int nr_lpis;
|
||||
int nr_ites;
|
||||
int sz;
|
||||
|
@ -122,7 +122,7 @@ index 111111111111..222222222222 100644
|
|||
|
||||
if (!its_alloc_device_table(its, dev_id))
|
||||
return NULL;
|
||||
@@ -3418,7 +3453,15 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
|
||||
@@ -3413,7 +3448,15 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
|
||||
nr_ites = max(2, nvecs);
|
||||
sz = nr_ites * (FIELD_GET(GITS_TYPER_ITT_ENTRY_SIZE, its->typer) + 1);
|
||||
sz = max(sz, ITS_ITT_ALIGN) + ITS_ITT_ALIGN - 1;
|
||||
|
@ -139,7 +139,7 @@ index 111111111111..222222222222 100644
|
|||
if (alloc_lpis) {
|
||||
lpi_map = its_lpi_alloc(nvecs, &lpi_base, &nr_lpis);
|
||||
if (lpi_map)
|
||||
@@ -3432,7 +3475,13 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
|
||||
@@ -3427,7 +3470,13 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
|
||||
|
||||
if (!dev || !itt || !col_map || (!lpi_map && alloc_lpis)) {
|
||||
kfree(dev);
|
||||
|
@ -154,7 +154,7 @@ index 111111111111..222222222222 100644
|
|||
bitmap_free(lpi_map);
|
||||
kfree(col_map);
|
||||
return NULL;
|
||||
@@ -3442,6 +3491,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
|
||||
@@ -3437,6 +3486,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
|
||||
|
||||
dev->its = its;
|
||||
dev->itt = itt;
|
||||
|
@ -162,7 +162,7 @@ index 111111111111..222222222222 100644
|
|||
dev->nr_ites = nr_ites;
|
||||
dev->event_map.lpi_map = lpi_map;
|
||||
dev->event_map.col_map = col_map;
|
||||
@@ -3469,7 +3519,13 @@ static void its_free_device(struct its_device *its_dev)
|
||||
@@ -3464,7 +3514,13 @@ static void its_free_device(struct its_device *its_dev)
|
||||
list_del(&its_dev->entry);
|
||||
raw_spin_unlock_irqrestore(&its_dev->its->lock, flags);
|
||||
kfree(its_dev->event_map.col_map);
|
||||
|
@ -177,7 +177,7 @@ index 111111111111..222222222222 100644
|
|||
kfree(its_dev);
|
||||
}
|
||||
|
||||
@@ -5078,6 +5134,7 @@ static int __init its_probe_one(struct its_node *its)
|
||||
@@ -5079,6 +5135,7 @@ static int __init its_probe_one(struct its_node *its)
|
||||
struct page *page;
|
||||
u32 ctlr;
|
||||
int err;
|
||||
|
@ -185,7 +185,7 @@ index 111111111111..222222222222 100644
|
|||
|
||||
its_enable_quirks(its);
|
||||
|
||||
@@ -5111,7 +5168,10 @@ static int __init its_probe_one(struct its_node *its)
|
||||
@@ -5112,7 +5169,10 @@ static int __init its_probe_one(struct its_node *its)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -197,7 +197,7 @@ index 111111111111..222222222222 100644
|
|||
get_order(ITS_CMD_QUEUE_SZ));
|
||||
if (!page) {
|
||||
err = -ENOMEM;
|
||||
@@ -5140,6 +5200,11 @@ static int __init its_probe_one(struct its_node *its)
|
||||
@@ -5141,6 +5201,11 @@ static int __init its_probe_one(struct its_node *its)
|
||||
if (its->flags & ITS_FLAGS_FORCE_NON_SHAREABLE)
|
||||
tmp &= ~GITS_CBASER_SHAREABILITY_MASK;
|
||||
|
|
@ -85,45 +85,6 @@ index 000000000000..111111111111
|
|||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Corentin Labbe <clabbe@baylibre.com>
|
||||
Date: Tue, 7 Nov 2023 15:55:29 +0000
|
||||
Subject: ARM64: dts: rk3588: add crypto node
|
||||
|
||||
The rk3588 has a crypto IP handled by the rk3588 crypto driver so adds a
|
||||
node for it.
|
||||
|
||||
Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 12 ++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -1923,6 +1923,18 @@ sdhci: mmc@fe2e0000 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
+ crypto: crypto@fe370000 {
|
||||
+ compatible = "rockchip,rk3588-crypto";
|
||||
+ reg = <0x0 0xfe370000 0x0 0x2000>;
|
||||
+ interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&scmi_clk SCMI_CRYPTO_CORE>, <&scmi_clk SCMI_ACLK_SECURE_NS>,
|
||||
+ <&scmi_clk SCMI_HCLK_SECURE_NS>;
|
||||
+ clock-names = "core", "aclk", "hclk";
|
||||
+ resets = <&scmi_reset SRST_CRYPTO_CORE>;
|
||||
+ reset-names = "core";
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+
|
||||
i2s0_8ch: i2s@fe470000 {
|
||||
compatible = "rockchip,rk3588-i2s-tdm";
|
||||
reg = <0x0 0xfe470000 0x0 0x1000>;
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Corentin Labbe <clabbe@baylibre.com>
|
||||
Date: Tue, 7 Nov 2023 15:55:30 +0000
|
||||
|
@ -142,7 +103,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk356x.dtsi b/arch/arm64/boot/dts/rock
|
|||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||
@@ -1112,6 +1112,18 @@ sdhci: mmc@fe310000 {
|
||||
@@ -1113,6 +1113,18 @@ sdhci: mmc@fe310000 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
|
@ -628,36 +628,3 @@ index 000000000000..111111111111
|
|||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Muhammed Efe Cetin <efectn@protonmail.com>
|
||||
Date: Thu, 16 Nov 2023 17:52:35 +0300
|
||||
Subject: arm64: dts: Add HW RNG support to RK3588S
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -1935,6 +1935,16 @@ crypto: crypto@fe370000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+ rng: rng@fe378000 {
|
||||
+ compatible = "rockchip,trngv1";
|
||||
+ reg = <0x0 0xfe378000 0x0 0x200>;
|
||||
+ interrupts = <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&scmi_clk SCMI_HCLK_SECURE_NS>;
|
||||
+ clock-names = "hclk_trng";
|
||||
+ resets = <&scmi_reset SRST_H_TRNG_NS>;
|
||||
+ reset-names = "reset";
|
||||
+ };
|
||||
+
|
||||
i2s0_8ch: i2s@fe470000 {
|
||||
compatible = "rockchip,rk3588-i2s-tdm";
|
||||
reg = <0x0 0xfe470000 0x0 0x1000>;
|
||||
--
|
||||
Armbian
|
||||
|
|
@ -0,0 +1,141 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
Date: Thu, 13 Jun 2024 15:48:42 +0200
|
||||
Subject: media: dt-bindings: rk3568-vepu: Add RK3588 VEPU121
|
||||
|
||||
From: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
|
||||
|
||||
This encoder-only device is present four times on this SoC, and should
|
||||
support everything the rk3568 vepu supports (so JPEG, H.264 and VP8
|
||||
encoding). No fallback compatible has been added, since the operating
|
||||
systems might already support RK3568 VEPU and want to avoid registering
|
||||
four of them separately considering they can be used as a cluster.
|
||||
|
||||
Signed-off-by: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
|
||||
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
---
|
||||
Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml b/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
|
||||
+++ b/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
|
||||
@@ -17,6 +17,7 @@ properties:
|
||||
compatible:
|
||||
enum:
|
||||
- rockchip,rk3568-vepu
|
||||
+ - rockchip,rk3588-vepu121
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
Date: Thu, 13 Jun 2024 15:48:44 +0200
|
||||
Subject: media: hantro: Disable multicore support
|
||||
|
||||
Avoid exposing equal Hantro video codecs to userspace. Equal video
|
||||
codecs allow scheduling work between the cores. For that kernel support
|
||||
is required, which does not yet exist. Until that is implemented avoid
|
||||
exposing each core separately to userspace so that multicore can be
|
||||
added in the future without breaking userspace ABI.
|
||||
|
||||
This was written with Rockchip RK3588 in mind (which has 4 Hantro H1
|
||||
cores), but applies to all SoCs.
|
||||
|
||||
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
---
|
||||
drivers/media/platform/verisilicon/hantro_drv.c | 37 ++++++++++
|
||||
1 file changed, 37 insertions(+)
|
||||
|
||||
diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
+++ b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
@@ -992,6 +992,39 @@ static const struct media_device_ops hantro_m2m_media_ops = {
|
||||
.req_queue = v4l2_m2m_request_queue,
|
||||
};
|
||||
|
||||
+/*
|
||||
+ * Some SoCs, like RK3588 have multiple identical Hantro cores, but the
|
||||
+ * kernel is currently missing support for multi-core handling. Exposing
|
||||
+ * separate devices for each core to userspace is bad, since that does
|
||||
+ * not allow scheduling tasks properly (and creates ABI). With this workaround
|
||||
+ * the driver will only probe for the first core and early exit for the other
|
||||
+ * cores. Once the driver gains multi-core support, the same technique
|
||||
+ * for detecting the main core can be used to cluster all cores together.
|
||||
+ */
|
||||
+static int hantro_disable_multicore(struct hantro_dev *vpu)
|
||||
+{
|
||||
+ const char *compatible;
|
||||
+ struct device_node *node;
|
||||
+ int ret;
|
||||
+
|
||||
+ /* Intentionally ignores the fallback strings */
|
||||
+ ret = of_property_read_string(vpu->dev->of_node, "compatible", &compatible);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+
|
||||
+ /* first compatible node found from the root node is considered the main core */
|
||||
+ node = of_find_compatible_node(NULL, NULL, compatible);
|
||||
+ if (!node)
|
||||
+ return -EINVAL; /* broken DT? */
|
||||
+
|
||||
+ if (vpu->dev->of_node != node) {
|
||||
+ dev_info(vpu->dev, "missing multi-core support, ignoring this instance\n");
|
||||
+ return -ENODEV;
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static int hantro_probe(struct platform_device *pdev)
|
||||
{
|
||||
const struct of_device_id *match;
|
||||
@@ -1011,6 +1044,10 @@ static int hantro_probe(struct platform_device *pdev)
|
||||
match = of_match_node(of_hantro_match, pdev->dev.of_node);
|
||||
vpu->variant = match->data;
|
||||
|
||||
+ ret = hantro_disable_multicore(vpu);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+
|
||||
/*
|
||||
* Support for nxp,imx8mq-vpu is kept for backwards compatibility
|
||||
* but it's deprecated. Please update your DTS file to use
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
Date: Thu, 13 Jun 2024 15:48:45 +0200
|
||||
Subject: media: hantro: Add RK3588 VEPU121
|
||||
|
||||
RK3588 handling is exactly the same as RK3568. This is not
|
||||
handled using fallback compatibles to avoid exposing multiple
|
||||
video devices on kernels not having the multicore disable
|
||||
patch.
|
||||
|
||||
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
|
||||
---
|
||||
drivers/media/platform/verisilicon/hantro_drv.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
+++ b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
@@ -722,6 +722,7 @@ static const struct of_device_id of_hantro_match[] = {
|
||||
{ .compatible = "rockchip,rk3399-vpu", .data = &rk3399_vpu_variant, },
|
||||
{ .compatible = "rockchip,rk3568-vepu", .data = &rk3568_vepu_variant, },
|
||||
{ .compatible = "rockchip,rk3568-vpu", .data = &rk3568_vpu_variant, },
|
||||
+ { .compatible = "rockchip,rk3588-vepu121", .data = &rk3568_vepu_variant, },
|
||||
{ .compatible = "rockchip,rk3588-av1-vpu", .data = &rk3588_vpu981_variant, },
|
||||
#endif
|
||||
#ifdef CONFIG_VIDEO_HANTRO_IMX8M
|
||||
--
|
||||
Armbian
|
||||
|
|
@ -3663,84 +3663,3 @@ index 000000000000..111111111111
|
|||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Detlev Casanova <detlev.casanova@collabora.com>
|
||||
Date: Thu, 20 Jun 2024 10:19:46 -0400
|
||||
Subject: arm64: dts: rockchip: Add rkvdec2 Video Decoder on rk3588(s)
|
||||
|
||||
Add the rkvdec2 Video Decoder to the RK3588s devicetree.
|
||||
|
||||
Signed-off-by: Detlev Casanova <detlev.casanova@collabora.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 48 ++++++++++
|
||||
1 file changed, 48 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -3001,6 +3001,16 @@ system_sram2: sram@ff001000 {
|
||||
ranges = <0x0 0x0 0xff001000 0xef000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
+
|
||||
+ vdec0_sram: rkvdec-sram@0 {
|
||||
+ reg = <0x0 0x78000>;
|
||||
+ pool;
|
||||
+ };
|
||||
+
|
||||
+ vdec1_sram: rkvdec-sram@1 {
|
||||
+ reg = <0x78000 0x77000>;
|
||||
+ pool;
|
||||
+ };
|
||||
};
|
||||
|
||||
pinctrl: pinctrl {
|
||||
@@ -3070,6 +3080,44 @@ gpio4: gpio@fec50000 {
|
||||
#interrupt-cells = <2>;
|
||||
};
|
||||
};
|
||||
+
|
||||
+ vdec0: video-decoder@fdc38100 {
|
||||
+ compatible = "rockchip,rk3588-vdec";
|
||||
+ reg = <0x0 0xfdc38100 0x0 0x500>;
|
||||
+ interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_RKVDEC0>, <&cru HCLK_RKVDEC0>, <&cru CLK_RKVDEC0_CA>,
|
||||
+ <&cru CLK_RKVDEC0_CORE>, <&cru CLK_RKVDEC0_HEVC_CA>;
|
||||
+ clock-names = "axi", "ahb", "cabac", "core", "hevc_cabac";
|
||||
+ assigned-clocks = <&cru ACLK_RKVDEC0>, <&cru CLK_RKVDEC0_CORE>,
|
||||
+ <&cru CLK_RKVDEC0_CA>, <&cru CLK_RKVDEC0_HEVC_CA>;
|
||||
+ assigned-clock-rates = <800000000>, <600000000>,
|
||||
+ <600000000>, <1000000000>;
|
||||
+ resets = <&cru SRST_A_RKVDEC0>, <&cru SRST_H_RKVDEC0>, <&cru SRST_RKVDEC0_CA>,
|
||||
+ <&cru SRST_RKVDEC0_CORE>, <&cru SRST_RKVDEC0_HEVC_CA>;
|
||||
+ reset-names = "rst_axi", "rst_ahb", "rst_cabac",
|
||||
+ "rst_core", "rst_hevc_cabac";
|
||||
+ power-domains = <&power RK3588_PD_RKVDEC0>;
|
||||
+ sram = <&vdec0_sram>;
|
||||
+ };
|
||||
+
|
||||
+ vdec1: video-decoder@fdc40100 {
|
||||
+ compatible = "rockchip,rk3588-vdec";
|
||||
+ reg = <0x0 0xfdc40100 0x0 0x500>;
|
||||
+ interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ clocks = <&cru ACLK_RKVDEC1>, <&cru HCLK_RKVDEC1>, <&cru CLK_RKVDEC1_CA>,
|
||||
+ <&cru CLK_RKVDEC1_CORE>, <&cru CLK_RKVDEC1_HEVC_CA>;
|
||||
+ clock-names = "axi", "ahb", "cabac", "core", "hevc_cabac";
|
||||
+ assigned-clocks = <&cru ACLK_RKVDEC1>, <&cru CLK_RKVDEC1_CORE>,
|
||||
+ <&cru CLK_RKVDEC1_CA>, <&cru CLK_RKVDEC1_HEVC_CA>;
|
||||
+ assigned-clock-rates = <800000000>, <600000000>,
|
||||
+ <600000000>, <1000000000>;
|
||||
+ resets = <&cru SRST_A_RKVDEC1>, <&cru SRST_H_RKVDEC1>, <&cru SRST_RKVDEC1_CA>,
|
||||
+ <&cru SRST_RKVDEC1_CORE>, <&cru SRST_RKVDEC1_HEVC_CA>;
|
||||
+ reset-names = "rst_axi", "rst_ahb", "rst_cabac",
|
||||
+ "rst_core", "rst_hevc_cabac";
|
||||
+ power-domains = <&power RK3588_PD_RKVDEC1>;
|
||||
+ sram = <&vdec1_sram>;
|
||||
+ };
|
||||
};
|
||||
|
||||
#include "rk3588s-pinctrl.dtsi"
|
||||
--
|
||||
Armbian
|
||||
|
|
@ -1,87 +1,27 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Shreeya Patel <shreeya.patel@collabora.com>
|
||||
Subject: [PATCH v4 3/4] arm64: dts: rockchip: Add device tree support for HDMI RX Controller
|
||||
Date: Mon, 29 Jul 2024 14:41:14 +0300
|
||||
Subject: arm64: dts: rockchip: Add device tree support for HDMI RX Controller
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588.dtsi b/arch/arm64/boot/dts/rockchip/rk3588.dtsi
|
||||
index 5984016b5f96..49fc23dfe94d 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588.dtsi
|
||||
@@ -7,6 +7,29 @@
|
||||
#include "rk3588-pinctrl.dtsi"
|
||||
|
||||
/ {
|
||||
+ reserved-memory {
|
||||
+ #address-cells = <2>;
|
||||
+ #size-cells = <2>;
|
||||
+ ranges;
|
||||
+
|
||||
+ /*
|
||||
+ * The 4k HDMI capture controller works only with 32bit
|
||||
+ * phys addresses and doesn't support IOMMU. HDMI RX CMA
|
||||
+ * must be reserved below 4GB.
|
||||
+ * The size of 160MB was determined as follows:
|
||||
+ * (3840 * 2160 pixels) * (4 bytes/pixel) * (2 frames/buffer) / 10^6 = 66MB
|
||||
+ * To ensure sufficient support for practical use-cases,
|
||||
+ * we doubled the 66MB value.
|
||||
+ */
|
||||
+ hdmi_receiver_cma: hdmi-receiver-cma {
|
||||
+ compatible = "shared-dma-pool";
|
||||
+ alloc-ranges = <0x0 0x0 0x0 0xffffffff>;
|
||||
+ size = <0x0 (160 * 0x100000)>; /* 160MiB */
|
||||
+ no-map;
|
||||
+ status = "disabled";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
usb_host1_xhci: usb@fc400000 {
|
||||
compatible = "rockchip,rk3588-dwc3", "snps,dwc3";
|
||||
reg = <0x0 0xfc400000 0x0 0x400000>;
|
||||
@@ -27,6 +50,40 @@ usb_host1_xhci: usb@fc400000 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
+ hdmi_receiver: hdmi_receiver@fdee0000 {
|
||||
+ compatible = "rockchip,rk3588-hdmirx-ctrler", "snps,dw-hdmi-rx";
|
||||
+ reg = <0x0 0xfdee0000 0x0 0x6000>;
|
||||
+ power-domains = <&power RK3588_PD_VO1>;
|
||||
+ rockchip,grf = <&sys_grf>;
|
||||
+ rockchip,vo1-grf = <&vo1_grf>;
|
||||
+ interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
+ <GIC_SPI 436 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
+ <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ interrupt-names = "cec", "hdmi", "dma";
|
||||
+ clocks = <&cru ACLK_HDMIRX>,
|
||||
+ <&cru CLK_HDMIRX_AUD>,
|
||||
+ <&cru CLK_CR_PARA>,
|
||||
+ <&cru PCLK_HDMIRX>,
|
||||
+ <&cru CLK_HDMIRX_REF>,
|
||||
+ <&cru PCLK_S_HDMIRX>,
|
||||
+ <&cru HCLK_VO1>;
|
||||
+ clock-names = "aclk",
|
||||
+ "audio",
|
||||
+ "cr_para",
|
||||
+ "pclk",
|
||||
+ "ref",
|
||||
+ "hclk_s_hdmirx",
|
||||
+ "hclk_vo1";
|
||||
+ resets = <&cru SRST_A_HDMIRX>, <&cru SRST_P_HDMIRX>,
|
||||
+ <&cru SRST_HDMIRX_REF>, <&cru SRST_A_HDMIRX_BIU>;
|
||||
+ reset-names = "axi", "apb", "ref", "biu";
|
||||
+ memory-region = <&hdmi_receiver_cma>;
|
||||
+ pinctrl-0 = <&hdmim1_rx>;
|
||||
+ pinctrl-names = "default";
|
||||
+ status = "disabled";
|
||||
+ };
|
||||
+
|
||||
+
|
||||
pcie30_phy_grf: syscon@fd5b8000 {
|
||||
compatible = "rockchip,rk3588-pcie3-phy-grf", "syscon";
|
||||
reg = <0x0 0xfd5b8000 0x0 0x10000>;
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588-extra-pinctrl.dtsi | 42 +
|
||||
arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi | 56 +
|
||||
drivers/media/platform/Kconfig | 1 +
|
||||
drivers/media/platform/Makefile | 1 +
|
||||
drivers/media/platform/synopsys/Kconfig | 3 +
|
||||
drivers/media/platform/synopsys/Makefile | 2 +
|
||||
drivers/media/platform/synopsys/hdmirx/Kconfig | 27 +
|
||||
drivers/media/platform/synopsys/hdmirx/Makefile | 4 +
|
||||
drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c | 2763 ++++++++++
|
||||
drivers/media/platform/synopsys/hdmirx/snps_hdmirx.h | 394 ++
|
||||
drivers/media/platform/synopsys/hdmirx/snps_hdmirx_cec.c | 285 +
|
||||
drivers/media/platform/synopsys/hdmirx/snps_hdmirx_cec.h | 44 +
|
||||
12 files changed, 3622 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-pinctrl.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-pinctrl.dtsi
|
||||
index 244c66faa161..81ac792f01f5 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-pinctrl.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-pinctrl.dtsi
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-extra-pinctrl.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-extra-pinctrl.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-extra-pinctrl.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-extra-pinctrl.dtsi
|
||||
@@ -169,6 +169,48 @@ hdmim0_tx1_sda: hdmim0-tx1-sda {
|
||||
/* hdmim0_tx1_sda */
|
||||
<2 RK_PB4 4 &pcfg_pull_none>;
|
||||
|
@ -131,10 +71,82 @@ index 244c66faa161..81ac792f01f5 100644
|
|||
};
|
||||
|
||||
i2c0 {
|
||||
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi
|
||||
@@ -7,6 +7,29 @@
|
||||
#include "rk3588-extra-pinctrl.dtsi"
|
||||
|
||||
/ {
|
||||
+ reserved-memory {
|
||||
+ #address-cells = <2>;
|
||||
+ #size-cells = <2>;
|
||||
+ ranges;
|
||||
+
|
||||
+ /*
|
||||
+ * The 4k HDMI capture controller works only with 32bit
|
||||
+ * phys addresses and doesn't support IOMMU. HDMI RX CMA
|
||||
+ * must be reserved below 4GB.
|
||||
+ * The size of 160MB was determined as follows:
|
||||
+ * (3840 * 2160 pixels) * (4 bytes/pixel) * (2 frames/buffer) / 10^6 = 66MB
|
||||
+ * To ensure sufficient support for practical use-cases,
|
||||
+ * we doubled the 66MB value.
|
||||
+ */
|
||||
+ hdmi_receiver_cma: hdmi-receiver-cma {
|
||||
+ compatible = "shared-dma-pool";
|
||||
+ alloc-ranges = <0x0 0x0 0x0 0xffffffff>;
|
||||
+ size = <0x0 (160 * 0x100000)>; /* 160MiB */
|
||||
+ no-map;
|
||||
+ status = "disabled";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
usb_host1_xhci: usb@fc400000 {
|
||||
compatible = "rockchip,rk3588-dwc3", "snps,dwc3";
|
||||
reg = <0x0 0xfc400000 0x0 0x400000>;
|
||||
@@ -433,6 +456,39 @@ combphy1_ps: phy@fee10000 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
+ hdmi_receiver: hdmi_receiver@fdee0000 {
|
||||
+ compatible = "rockchip,rk3588-hdmirx-ctrler", "snps,dw-hdmi-rx";
|
||||
+ reg = <0x0 0xfdee0000 0x0 0x6000>;
|
||||
+ power-domains = <&power RK3588_PD_VO1>;
|
||||
+ rockchip,grf = <&sys_grf>;
|
||||
+ rockchip,vo1-grf = <&vo1_grf>;
|
||||
+ interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
+ <GIC_SPI 436 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
+ <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
+ interrupt-names = "cec", "hdmi", "dma";
|
||||
+ clocks = <&cru ACLK_HDMIRX>,
|
||||
+ <&cru CLK_HDMIRX_AUD>,
|
||||
+ <&cru CLK_CR_PARA>,
|
||||
+ <&cru PCLK_HDMIRX>,
|
||||
+ <&cru CLK_HDMIRX_REF>,
|
||||
+ <&cru PCLK_S_HDMIRX>,
|
||||
+ <&cru HCLK_VO1>;
|
||||
+ clock-names = "aclk",
|
||||
+ "audio",
|
||||
+ "cr_para",
|
||||
+ "pclk",
|
||||
+ "ref",
|
||||
+ "hclk_s_hdmirx",
|
||||
+ "hclk_vo1";
|
||||
+ resets = <&cru SRST_A_HDMIRX>, <&cru SRST_P_HDMIRX>,
|
||||
+ <&cru SRST_HDMIRX_REF>, <&cru SRST_A_HDMIRX_BIU>;
|
||||
+ reset-names = "axi", "apb", "ref", "biu";
|
||||
+ memory-region = <&hdmi_receiver_cma>;
|
||||
+ pinctrl-0 = <&hdmim1_rx>;
|
||||
+ pinctrl-names = "default";
|
||||
+ status = "disabled";
|
||||
+ };
|
||||
+
|
||||
pcie30phy: phy@fee80000 {
|
||||
compatible = "rockchip,rk3588-pcie3-phy";
|
||||
reg = <0x0 0xfee80000 0x0 0x20000>;
|
||||
diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig
|
||||
index 85d2627776b6..9287faafdce5 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/Kconfig
|
||||
+++ b/drivers/media/platform/Kconfig
|
||||
@@ -85,6 +85,7 @@ source "drivers/media/platform/rockchip/Kconfig"
|
||||
|
@ -146,7 +158,7 @@ index 85d2627776b6..9287faafdce5 100644
|
|||
source "drivers/media/platform/verisilicon/Kconfig"
|
||||
source "drivers/media/platform/via/Kconfig"
|
||||
diff --git a/drivers/media/platform/Makefile b/drivers/media/platform/Makefile
|
||||
index ace4e34483dd..6fd7db0541c7 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/Makefile
|
||||
+++ b/drivers/media/platform/Makefile
|
||||
@@ -28,6 +28,7 @@ obj-y += rockchip/
|
||||
|
@ -159,7 +171,7 @@ index ace4e34483dd..6fd7db0541c7 100644
|
|||
obj-y += via/
|
||||
diff --git a/drivers/media/platform/synopsys/Kconfig b/drivers/media/platform/synopsys/Kconfig
|
||||
new file mode 100644
|
||||
index 000000000000..4fd521f78425
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/media/platform/synopsys/Kconfig
|
||||
@@ -0,0 +1,3 @@
|
||||
|
@ -168,7 +180,7 @@ index 000000000000..4fd521f78425
|
|||
+source "drivers/media/platform/synopsys/hdmirx/Kconfig"
|
||||
diff --git a/drivers/media/platform/synopsys/Makefile b/drivers/media/platform/synopsys/Makefile
|
||||
new file mode 100644
|
||||
index 000000000000..3b12c574dd67
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/media/platform/synopsys/Makefile
|
||||
@@ -0,0 +1,2 @@
|
||||
|
@ -176,7 +188,7 @@ index 000000000000..3b12c574dd67
|
|||
+obj-y += hdmirx/
|
||||
diff --git a/drivers/media/platform/synopsys/hdmirx/Kconfig b/drivers/media/platform/synopsys/hdmirx/Kconfig
|
||||
new file mode 100644
|
||||
index 000000000000..ab569e59300f
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/media/platform/synopsys/hdmirx/Kconfig
|
||||
@@ -0,0 +1,27 @@
|
||||
|
@ -209,7 +221,7 @@ index 000000000000..ab569e59300f
|
|||
+ such as supported resolutions, refresh rates, and audio formats.
|
||||
diff --git a/drivers/media/platform/synopsys/hdmirx/Makefile b/drivers/media/platform/synopsys/hdmirx/Makefile
|
||||
new file mode 100644
|
||||
index 000000000000..2fa2d9e25300
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/media/platform/synopsys/hdmirx/Makefile
|
||||
@@ -0,0 +1,4 @@
|
||||
|
@ -219,7 +231,7 @@ index 000000000000..2fa2d9e25300
|
|||
+obj-$(CONFIG_VIDEO_SYNOPSYS_HDMIRX) += synopsys-hdmirx.o
|
||||
diff --git a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
|
||||
new file mode 100644
|
||||
index 000000000000..1dfecf256393
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c
|
||||
@@ -0,0 +1,2763 @@
|
||||
|
@ -2988,7 +3000,7 @@ index 000000000000..1dfecf256393
|
|||
+MODULE_LICENSE("GPL");
|
||||
diff --git a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.h b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.h
|
||||
new file mode 100644
|
||||
index 000000000000..220ab99ca611
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.h
|
||||
@@ -0,0 +1,394 @@
|
||||
|
@ -3388,7 +3400,7 @@ index 000000000000..220ab99ca611
|
|||
+#endif
|
||||
diff --git a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx_cec.c b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx_cec.c
|
||||
new file mode 100644
|
||||
index 000000000000..9f67e2080bb6
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx_cec.c
|
||||
@@ -0,0 +1,285 @@
|
||||
|
@ -3679,7 +3691,7 @@ index 000000000000..9f67e2080bb6
|
|||
+}
|
||||
diff --git a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx_cec.h b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx_cec.h
|
||||
new file mode 100644
|
||||
index 000000000000..c55c403cdb9f
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx_cec.h
|
||||
@@ -0,0 +1,44 @@
|
||||
|
@ -3727,3 +3739,6 @@ index 000000000000..c55c403cdb9f
|
|||
+void snps_hdmirx_cec_unregister(struct hdmirx_cec *cec);
|
||||
+
|
||||
+#endif /* DW_HDMI_RX_CEC_H */
|
||||
--
|
||||
Armbian
|
||||
|
|
@ -7,14 +7,14 @@ Add DT node for the HDMI0 bridge found on RK3588 SoC.
|
|||
|
||||
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 55 ++++++++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 55 ++++++++++
|
||||
1 file changed, 55 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -1516,6 +1516,61 @@ i2s9_8ch: i2s@fddfc000 {
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
@@ -1254,6 +1254,61 @@ i2s9_8ch: i2s@fddfc000 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -58,11 +58,11 @@ index 111111111111..222222222222 100644
|
|||
+ phys = <&hdptxphy_hdmi0>;
|
||||
+ phy-names = "hdmi";
|
||||
+ status = "disabled";
|
||||
+
|
||||
+
|
||||
+ ports {
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+
|
||||
+ hdmi0_in: port@0 {
|
||||
+ reg = <0>;
|
||||
+ };
|
|
@ -6,14 +6,14 @@ Subject: arm64: dts: rockchip: Enable HDMI0 PHY clk provider on rk3588
|
|||
The HDMI0 PHY can be used as a clock provider on RK3588, hence add the
|
||||
missing #clock-cells property.
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 1 +
|
||||
arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -2985,6 +2985,7 @@ hdptxphy_hdmi0: phy@fed60000 {
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
@@ -2709,6 +2709,7 @@ hdptxphy_hdmi0: phy@fed60000 {
|
||||
reg = <0x0 0xfed60000 0x0 0x2000>;
|
||||
clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>, <&cru PCLK_HDPTX0>;
|
||||
clock-names = "ref", "apb";
|
|
@ -4,14 +4,14 @@ Date: Mon, 13 May 2024 20:29:49 +0300
|
|||
Subject: arm64: dts: rockchip: rk3588: add VDPU and RGA2 nodes
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 11 ++++++++++
|
||||
arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 11 ++++++++++
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -726,6 +726,17 @@ mmu600_php: iommu@fcb00000 {
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
|
||||
@@ -566,6 +566,17 @@ mmu600_php: iommu@fcb00000 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
|
@ -86,40 +86,6 @@ index 111111111111..222222222222 100644
|
|||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Detlev Casanova <detlev.casanova@collabora.com>
|
||||
Date: Fri, 3 May 2024 14:28:12 -0400
|
||||
Subject: arm64: dts: rockchip: Add VOP clock resets for rk3588s
|
||||
|
||||
This adds the needed clock resets for all rk3588(s) based SOCs.
|
||||
|
||||
Signed-off-by: Detlev Casanova <detlev.casanova@collabora.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
|
||||
@@ -1429,6 +1429,14 @@ vop: vop@fdd90000 {
|
||||
"pclk_vop";
|
||||
iommus = <&vop_mmu>;
|
||||
power-domains = <&power RK3588_PD_VOP>;
|
||||
+ resets = <&cru SRST_D_VOP0>,
|
||||
+ <&cru SRST_D_VOP1>,
|
||||
+ <&cru SRST_D_VOP2>,
|
||||
+ <&cru SRST_D_VOP3>;
|
||||
+ reset-names = "dclk_vp0",
|
||||
+ "dclk_vp1",
|
||||
+ "dclk_vp2",
|
||||
+ "dclk_vp3";
|
||||
rockchip,grf = <&sys_grf>;
|
||||
rockchip,vop-grf = <&vop_grf>;
|
||||
rockchip,vo1-grf = <&vo1_grf>;
|
||||
--
|
||||
Armbian
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Detlev Casanova <detlev.casanova@collabora.com>
|
||||
Date: Mon, 6 May 2024 13:54:01 -0400
|
|
@ -32,7 +32,7 @@ index 111111111111..222222222222 100644
|
|||
BRCMF_FW_ENTRY(BRCM_CC_4377_CHIP_ID, 0xFFFFFFFF, 4377B3), /* revision ID 4 */
|
||||
BRCMF_FW_ENTRY(BRCM_CC_4378_CHIP_ID, 0x0000000F, 4378B1), /* revision ID 3 */
|
||||
BRCMF_FW_ENTRY(BRCM_CC_4378_CHIP_ID, 0xFFFFFFE0, 4378B3), /* revision ID 5 */
|
||||
@@ -1720,7 +1722,7 @@ static int brcmf_pcie_download_fw_nvram(struct brcmf_pciedev_info *devinfo,
|
||||
@@ -1715,7 +1717,7 @@ static int brcmf_pcie_download_fw_nvram(struct brcmf_pciedev_info *devinfo,
|
||||
memcpy_toio(devinfo->tcm + address, nvram, nvram_len);
|
||||
brcmf_fw_nvram_free(nvram);
|
||||
|
||||
|
@ -41,7 +41,7 @@ index 111111111111..222222222222 100644
|
|||
size_t rand_len = BRCMF_RANDOM_SEED_LENGTH;
|
||||
struct brcmf_random_seed_footer footer = {
|
||||
.length = cpu_to_le32(rand_len),
|
||||
@@ -2700,6 +2702,7 @@ static const struct pci_device_id brcmf_pcie_devid_table[] = {
|
||||
@@ -2695,6 +2697,7 @@ static const struct pci_device_id brcmf_pcie_devid_table[] = {
|
||||
BRCMF_PCIE_DEVICE(BRCM_PCIE_4366_5G_DEVICE_ID, BCA),
|
||||
BRCMF_PCIE_DEVICE(BRCM_PCIE_4371_DEVICE_ID, WCC),
|
||||
BRCMF_PCIE_DEVICE(BRCM_PCIE_43596_DEVICE_ID, CYW),
|
|
@ -23,7 +23,7 @@ index 111111111111..222222222222 100644
|
|||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/firmware.h>
|
||||
@@ -2413,6 +2414,7 @@ brcmf_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
||||
@@ -2408,6 +2409,7 @@ brcmf_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
||||
struct brcmf_pciedev *pcie_bus_dev;
|
||||
struct brcmf_core *core;
|
||||
struct brcmf_bus *bus;
|
||||
|
@ -31,7 +31,7 @@ index 111111111111..222222222222 100644
|
|||
|
||||
if (!id) {
|
||||
id = pci_match_id(brcmf_pcie_devid_table, pdev);
|
||||
@@ -2424,6 +2426,14 @@ brcmf_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
||||
@@ -2419,6 +2421,14 @@ brcmf_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
||||
|
||||
brcmf_dbg(PCIE, "Enter %x:%x\n", pdev->vendor, pdev->device);
|
||||
|
|
@ -11,7 +11,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/d
|
|||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
@@ -371,8 +371,7 @@ &sdhci {
|
||||
@@ -408,8 +408,7 @@ &sdhci {
|
||||
no-sdio;
|
||||
no-sd;
|
||||
non-removable;
|
||||
|
@ -21,8 +21,8 @@ index 111111111111..222222222222 100644
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -412,6 +411,10 @@ &sdio {
|
||||
status = "okay";
|
||||
@@ -463,6 +462,10 @@ flash@0 {
|
||||
};
|
||||
};
|
||||
|
||||
+&tsadc {
|
|
@ -22,7 +22,7 @@ index 111111111111..222222222222 100644
|
|||
#include "rk3588.dtsi"
|
||||
|
||||
/ {
|
||||
@@ -185,6 +186,20 @@ &gpu {
|
||||
@@ -192,6 +193,20 @@ &gpu {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -43,7 +43,7 @@ index 111111111111..222222222222 100644
|
|||
&i2c0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c0m2_xfer>;
|
||||
@@ -837,3 +852,18 @@ &usb_host1_xhci {
|
||||
@@ -861,3 +876,18 @@ &usb_host1_xhci {
|
||||
&usb_host2_xhci {
|
||||
status = "okay";
|
||||
};
|
|
@ -24,7 +24,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/d
|
|||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
|
||||
@@ -186,6 +186,11 @@ &gpu {
|
||||
@@ -193,6 +193,11 @@ &gpu {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
@ -19,7 +19,7 @@ index 111111111111..222222222222 100644
|
|||
#include "rk3588s.dtsi"
|
||||
|
||||
/ {
|
||||
@@ -765,3 +766,32 @@ &usb_host1_ohci {
|
||||
@@ -778,3 +779,32 @@ &usb_host1_ohci {
|
||||
&usb_host2_xhci {
|
||||
status = "okay";
|
||||
};
|
|
@ -23,7 +23,7 @@ index 111111111111..222222222222 100644
|
|||
&mdio1 {
|
||||
rgmii_phy1: ethernet-phy@1 {
|
||||
/* RTL8211F */
|
||||
@@ -434,6 +439,7 @@ rk806_dvs3_null: dvs3-null-pins {
|
||||
@@ -447,6 +452,7 @@ rk806_dvs3_null: dvs3-null-pins {
|
||||
regulators {
|
||||
vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
|
||||
regulator-name = "vdd_gpu_s0";
|
|
@ -4,8 +4,8 @@ Date: Thu, 16 Nov 2023 18:15:09 +0300
|
|||
Subject: arm64: dts: Add missing nodes to Orange Pi 5 Plus
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts | 182 +++++++++-
|
||||
1 file changed, 181 insertions(+), 1 deletion(-)
|
||||
arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts | 203 +++++++++-
|
||||
1 file changed, 202 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts b/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-plus.dts
|
||||
index 111111111111..222222222222 100644
|
||||
|
@ -130,7 +130,7 @@ index 111111111111..222222222222 100644
|
|||
};
|
||||
};
|
||||
|
||||
@@ -408,6 +482,14 @@ hp_detect: hp-detect {
|
||||
@@ -408,6 +488,14 @@ hp_detect: hp-detect {
|
||||
};
|
||||
|
||||
usb {
|
||||
|
@ -145,7 +145,7 @@ index 111111111111..222222222222 100644
|
|||
vcc5v0_usb20_en: vcc5v0-usb20-en {
|
||||
rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
@@ -803,6 +885,22 @@ &tsadc {
|
||||
@@ -803,6 +891,22 @@ &tsadc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -168,7 +168,7 @@ index 111111111111..222222222222 100644
|
|||
&u2phy2 {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -831,6 +929,35 @@ &uart9 {
|
||||
@@ -831,6 +935,35 @@ &uart9 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -204,7 +204,7 @@ index 111111111111..222222222222 100644
|
|||
&usb_host0_ehci {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -839,6 +966,20 @@ &usb_host0_ohci {
|
||||
@@ -839,6 +972,20 @@ &usb_host0_ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
Loading…
Reference in New Issue