Compare commits
15
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e39f44a534 | ||
|
|
e5093e14b8 | ||
|
|
1fdfc60c36 | ||
|
|
d175b10ef2 | ||
|
|
fc7a6b020b | ||
|
|
d424c71493 | ||
|
|
b4b9abc4fe | ||
|
|
f97ec6d74a | ||
|
|
878e7179f1 | ||
|
|
2779c51baf | ||
|
|
ca8d40f727 | ||
|
|
5b7d971d3e | ||
|
|
a9e97f5aa6 | ||
|
|
d6344ca124 | ||
|
|
b081572252 |
No files matched your search
@@ -1,8 +1,8 @@
|
||||
# Maintainer: Adam Thiede <me@adamthiede.com>
|
||||
# Co-Maintainer: Jenneron <jenneron@protonmail.com>
|
||||
pkgname=linux-postmarketos-mediatek-mt8173
|
||||
pkgver=6.10.10
|
||||
pkgrel=2
|
||||
pkgver=6.11.1
|
||||
pkgrel=0
|
||||
pkgdesc="Mainline kernel fork for Mediatek MT8173 devices"
|
||||
arch="aarch64"
|
||||
_carch="arm64"
|
||||
@@ -37,6 +37,7 @@ source="
|
||||
https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-${pkgver//_/-}.tar.xz
|
||||
$_config
|
||||
fix-mmc-order.patch
|
||||
revert-drm-change.patch
|
||||
"
|
||||
builddir="$srcdir/linux-${_kernver//_/-}"
|
||||
|
||||
@@ -66,7 +67,8 @@ package() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
affaa3690150ca13f0ee14f91f0e09a5ad3340a7ea6404e34286dfb4bd4fdfe12fcac47e83da7878681bf28a8a8b78e0b315e1563408885dbb07aac5bd2e4dce linux-6.10.10.tar.xz
|
||||
44c35de93ea3bfe214585c4b8909613b17a6e280765ab84352e3d07490a42403e3e68ab7f26eb9442004a1ee7f78ef0fd6ebdeab01561ac84a8073d817ca3434 config-postmarketos-mediatek-mt8173.aarch64
|
||||
026b8fe7a1eaacf832e9d0da08861869542248ef89daade3292d1e11b886788e2b1e4c8828b0509c454aedfdc7f22e9afbb446033072ebabf8c02fd5f5bf0d7f linux-6.11.1.tar.xz
|
||||
18f9f5d61a02558cc3a8fbc6311d6d05853e62bac5592ee24c4314d8e63bc2fc50914607cdabbb9e6a9d4c3d3a95100bfc71326387bc2303fa78773e33a042bd config-postmarketos-mediatek-mt8173.aarch64
|
||||
c86f8dfc32165a32381d45a4c8b6811ebf43f01b5d8a48fbe227cf5084cfefe24b32264c1c150cb49115db4759a2d21ad48b37dcaac78367d226e9cc2a5ba849 fix-mmc-order.patch
|
||||
837e3cbd28f5948beb6f71ce6c39cd738ce5916596c9c3d9727621b7441268a415ec8487dc6b8ae936ac9193bbbd23ebcf023419357e1e1ec5b9d1a9ffc52452 revert-drm-change.patch
|
||||
"
|
||||
+75
-18
@@ -1,21 +1,18 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm64 6.10.10 Kernel Configuration
|
||||
# Linux/arm64 6.11.1 Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="gcc (Alpine 14.2.0) 14.2.0"
|
||||
CONFIG_CC_VERSION_TEXT="aarch64-alpine-linux-musl-gcc (Alpine 14.2.0) 14.2.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
CONFIG_GCC_VERSION=140200
|
||||
CONFIG_CLANG_VERSION=0
|
||||
CONFIG_AS_IS_GNU=y
|
||||
CONFIG_AS_VERSION=24301
|
||||
CONFIG_AS_VERSION=24200
|
||||
CONFIG_LD_IS_BFD=y
|
||||
CONFIG_LD_VERSION=24301
|
||||
CONFIG_LD_VERSION=24200
|
||||
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_TOOLS_SUPPORT_RELR=y
|
||||
CONFIG_CC_HAS_ASM_INLINE=y
|
||||
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
|
||||
CONFIG_PAHOLE_VERSION=0
|
||||
@@ -178,7 +175,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
|
||||
@@ -537,6 +534,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
|
||||
|
||||
@@ -759,7 +757,6 @@ CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
|
||||
CONFIG_ARCH_USE_MEMREMAP_PROT=y
|
||||
# CONFIG_LOCK_EVENT_COUNTS is not set
|
||||
CONFIG_ARCH_HAS_RELR=y
|
||||
CONFIG_RELR=y
|
||||
CONFIG_HAVE_PREEMPT_DYNAMIC=y
|
||||
CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y
|
||||
CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
|
||||
@@ -811,7 +808,6 @@ CONFIG_BLK_CGROUP_PUNT_BIO=y
|
||||
CONFIG_BLK_DEV_BSG_COMMON=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 is not set
|
||||
CONFIG_BLK_DEV_THROTTLING=y
|
||||
@@ -898,6 +894,7 @@ CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=y
|
||||
CONFIG_ZSWAP_ZPOOL_DEFAULT="zbud"
|
||||
CONFIG_ZBUD=y
|
||||
CONFIG_Z3FOLD=y
|
||||
CONFIG_HAVE_ZSMALLOC=y
|
||||
CONFIG_ZSMALLOC=y
|
||||
# CONFIG_ZSMALLOC_STAT is not set
|
||||
CONFIG_ZSMALLOC_CHAIN_SIZE=8
|
||||
@@ -909,6 +906,7 @@ CONFIG_SLUB=y
|
||||
CONFIG_SLAB_MERGE_DEFAULT=y
|
||||
# CONFIG_SLAB_FREELIST_RANDOM is not set
|
||||
# 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
|
||||
@@ -1405,6 +1403,7 @@ CONFIG_NET_DSA_TAG_BRCM_PREPEND=m
|
||||
# CONFIG_NET_DSA_TAG_LAN9303 is not set
|
||||
# CONFIG_NET_DSA_TAG_SJA1105 is not set
|
||||
# CONFIG_NET_DSA_TAG_TRAILER is not set
|
||||
# CONFIG_NET_DSA_TAG_VSC73XX_8021Q is not set
|
||||
# CONFIG_NET_DSA_TAG_XRS700X is not set
|
||||
CONFIG_VLAN_8021Q=m
|
||||
CONFIG_VLAN_8021Q_GVRP=y
|
||||
@@ -1722,7 +1721,6 @@ CONFIG_PCI_HOST_COMMON=y
|
||||
CONFIG_PCI_HOST_GENERIC=y
|
||||
# CONFIG_PCIE_MEDIATEK is not set
|
||||
# CONFIG_PCIE_MEDIATEK_GEN3 is not set
|
||||
# CONFIG_PCIE_MICROCHIP_HOST is not set
|
||||
CONFIG_PCI_XGENE=y
|
||||
CONFIG_PCI_XGENE_MSI=y
|
||||
# CONFIG_PCIE_XILINX is not set
|
||||
@@ -1751,6 +1749,12 @@ CONFIG_PCIE_KIRIN=y
|
||||
# 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
|
||||
|
||||
#
|
||||
@@ -2192,6 +2196,7 @@ CONFIG_EEPROM_93CX6=m
|
||||
CONFIG_UACCE=m
|
||||
# CONFIG_PVPANIC is not set
|
||||
# CONFIG_GP_PCI1XXXX is not set
|
||||
# CONFIG_KEBA_CP500 is not set
|
||||
# end of Misc devices
|
||||
|
||||
#
|
||||
@@ -2580,6 +2585,7 @@ CONFIG_SKY2=y
|
||||
# CONFIG_PRESTERA is not set
|
||||
# CONFIG_NET_VENDOR_MEDIATEK is not set
|
||||
# CONFIG_NET_VENDOR_MELLANOX is not set
|
||||
# CONFIG_NET_VENDOR_META is not set
|
||||
# CONFIG_NET_VENDOR_MICREL is not set
|
||||
# CONFIG_NET_VENDOR_MICROCHIP is not set
|
||||
# CONFIG_NET_VENDOR_MICROSEMI is not set
|
||||
@@ -2776,6 +2782,7 @@ CONFIG_MDIO_BUS_MUX_MMIOREG=m
|
||||
#
|
||||
# PCS device drivers
|
||||
#
|
||||
# CONFIG_PCS_XPCS is not set
|
||||
# end of PCS device drivers
|
||||
|
||||
# CONFIG_PPP is not set
|
||||
@@ -2847,6 +2854,7 @@ CONFIG_ATH10K_SDIO=m
|
||||
# CONFIG_ATH10K_USB is not set
|
||||
CONFIG_ATH10K_DEBUG=y
|
||||
CONFIG_ATH10K_DEBUGFS=y
|
||||
CONFIG_ATH10K_LEDS=y
|
||||
# CONFIG_ATH10K_SPECTRAL is not set
|
||||
# CONFIG_ATH10K_TRACING is not set
|
||||
CONFIG_WCN36XX=m
|
||||
@@ -2935,6 +2943,7 @@ CONFIG_RTL_CARDS=m
|
||||
# CONFIG_RTL8192EE is not set
|
||||
# CONFIG_RTL8821AE is not set
|
||||
# CONFIG_RTL8192CU is not set
|
||||
# CONFIG_RTL8192DU is not set
|
||||
CONFIG_RTL8XXXU=m
|
||||
# CONFIG_RTL8XXXU_UNTESTED is not set
|
||||
# CONFIG_RTW88 is not set
|
||||
@@ -3476,6 +3485,7 @@ CONFIG_SPI_MEM=y
|
||||
# CONFIG_SPI_CADENCE is not set
|
||||
CONFIG_SPI_CADENCE_QUADSPI=y
|
||||
# CONFIG_SPI_CADENCE_XSPI is not set
|
||||
# CONFIG_SPI_CH341 is not set
|
||||
CONFIG_SPI_DESIGNWARE=m
|
||||
CONFIG_SPI_DW_DMA=y
|
||||
# CONFIG_SPI_DW_PCI is not set
|
||||
@@ -3564,6 +3574,7 @@ CONFIG_PINCTRL_MAX77620=y
|
||||
CONFIG_PINCTRL_SINGLE=y
|
||||
# CONFIG_PINCTRL_STMFX is not set
|
||||
# CONFIG_PINCTRL_SX150X is not set
|
||||
# CONFIG_PINCTRL_IMX_SCMI is not set
|
||||
|
||||
#
|
||||
# MediaTek pinctrl drivers
|
||||
@@ -3692,6 +3703,12 @@ CONFIG_GPIO_MAX77620=y
|
||||
# CONFIG_GPIO_SIM is not set
|
||||
# end of Virtual GPIO drivers
|
||||
|
||||
#
|
||||
# GPIO Debugging utilities
|
||||
#
|
||||
# CONFIG_GPIO_VIRTUSER is not set
|
||||
# end of GPIO Debugging utilities
|
||||
|
||||
# CONFIG_W1 is not set
|
||||
CONFIG_POWER_RESET=y
|
||||
# CONFIG_POWER_RESET_GPIO is not set
|
||||
@@ -3706,6 +3723,7 @@ CONFIG_POWER_RESET_SYSCON=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
|
||||
@@ -3727,6 +3745,7 @@ CONFIG_BATTERY_BQ27XXX_I2C=y
|
||||
# CONFIG_AXP20X_POWER is not set
|
||||
# CONFIG_BATTERY_MAX17040 is not set
|
||||
CONFIG_BATTERY_MAX17042=m
|
||||
# CONFIG_BATTERY_MAX1720X is not set
|
||||
# CONFIG_CHARGER_ISP1704 is not set
|
||||
# CONFIG_CHARGER_MAX8903 is not set
|
||||
# CONFIG_CHARGER_LP8727 is not set
|
||||
@@ -3791,6 +3810,7 @@ CONFIG_SENSORS_ARM_SCPI=y
|
||||
# CONFIG_SENSORS_CHIPCAP2 is not set
|
||||
# CONFIG_SENSORS_CORSAIR_CPRO is not set
|
||||
# CONFIG_SENSORS_CORSAIR_PSU is not set
|
||||
CONFIG_SENSORS_CROS_EC=y
|
||||
# CONFIG_SENSORS_DRIVETEMP is not set
|
||||
# CONFIG_SENSORS_DS620 is not set
|
||||
# CONFIG_SENSORS_DS1621 is not set
|
||||
@@ -3910,6 +3930,7 @@ CONFIG_SENSORS_PWM_FAN=m
|
||||
CONFIG_SENSORS_INA2XX=m
|
||||
# CONFIG_SENSORS_INA238 is not set
|
||||
CONFIG_SENSORS_INA3221=m
|
||||
# CONFIG_SENSORS_SPD5118 is not set
|
||||
# CONFIG_SENSORS_TC74 is not set
|
||||
# CONFIG_SENSORS_THMC50 is not set
|
||||
# CONFIG_SENSORS_TMP102 is not set
|
||||
@@ -4058,6 +4079,7 @@ CONFIG_MFD_HI6421_PMIC=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=y
|
||||
@@ -4134,11 +4156,14 @@ CONFIG_MFD_SYSCON=y
|
||||
CONFIG_MFD_ROHM_BD718XX=y
|
||||
# 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 is not set
|
||||
CONFIG_MFD_WCD934X=m
|
||||
# CONFIG_MFD_ATC260X_I2C is not set
|
||||
# CONFIG_MFD_QCOM_PM8008 is not set
|
||||
# CONFIG_MFD_CS40L50_I2C is not set
|
||||
# CONFIG_MFD_CS40L50_SPI is not set
|
||||
# CONFIG_RAVE_SP_CORE is not set
|
||||
# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
|
||||
# CONFIG_MFD_RSMU_I2C is not set
|
||||
@@ -4436,6 +4461,7 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y
|
||||
#
|
||||
# Chips&Media media platform drivers
|
||||
#
|
||||
# CONFIG_VIDEO_E5010_JPEG_ENC is not set
|
||||
|
||||
#
|
||||
# Intel media platform drivers
|
||||
@@ -4477,6 +4503,11 @@ CONFIG_VIDEO_MEDIATEK_VPU=m
|
||||
# Qualcomm media platform drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Raspberry Pi media platform drivers
|
||||
#
|
||||
# CONFIG_VIDEO_RASPBERRYPI_PISP_BE is not set
|
||||
|
||||
#
|
||||
# Renesas media platform drivers
|
||||
#
|
||||
@@ -4541,6 +4572,8 @@ CONFIG_VIDEO_CAMERA_SENSOR=y
|
||||
# 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 is not set
|
||||
# CONFIG_VIDEO_HI846 is not set
|
||||
@@ -4550,6 +4583,7 @@ CONFIG_VIDEO_CAMERA_SENSOR=y
|
||||
CONFIG_VIDEO_IMX219=m
|
||||
# CONFIG_VIDEO_IMX258 is not set
|
||||
# CONFIG_VIDEO_IMX274 is not set
|
||||
# CONFIG_VIDEO_IMX283 is not set
|
||||
# CONFIG_VIDEO_IMX290 is not set
|
||||
# CONFIG_VIDEO_IMX296 is not set
|
||||
# CONFIG_VIDEO_IMX319 is not set
|
||||
@@ -4605,7 +4639,7 @@ CONFIG_VIDEO_OV5645=m
|
||||
# CONFIG_VIDEO_S5C73M3 is not set
|
||||
# CONFIG_VIDEO_S5K5BAF is not set
|
||||
# CONFIG_VIDEO_S5K6A3 is not set
|
||||
# CONFIG_VIDEO_ST_VGXY61 is not set
|
||||
# CONFIG_VIDEO_VGXY61 is not set
|
||||
# CONFIG_VIDEO_CCS is not set
|
||||
# CONFIG_VIDEO_ET8EK8 is not set
|
||||
|
||||
@@ -4648,6 +4682,8 @@ CONFIG_VIDEO_OV5645=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
|
||||
|
||||
#
|
||||
@@ -4740,18 +4776,21 @@ CONFIG_DRM_KMS_HELPER=y
|
||||
CONFIG_DRM_FBDEV_EMULATION=y
|
||||
CONFIG_DRM_FBDEV_OVERALLOC=100
|
||||
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
|
||||
CONFIG_DRM_DISPLAY_HELPER=y
|
||||
CONFIG_DRM_DISPLAY_DP_AUX_BUS=y
|
||||
CONFIG_DRM_DISPLAY_HELPER=y
|
||||
CONFIG_DRM_BRIDGE_CONNECTOR=y
|
||||
# CONFIG_DRM_DISPLAY_DP_AUX_CEC is not set
|
||||
# CONFIG_DRM_DISPLAY_DP_AUX_CHARDEV is not set
|
||||
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=y
|
||||
CONFIG_DRM_GPUVM=y
|
||||
CONFIG_DRM_VRAM_HELPER=m
|
||||
CONFIG_DRM_TTM_HELPER=m
|
||||
CONFIG_DRM_GEM_DMA_HELPER=m
|
||||
CONFIG_DRM_GEM_DMA_HELPER=y
|
||||
CONFIG_DRM_GEM_SHMEM_HELPER=y
|
||||
CONFIG_DRM_SCHED=y
|
||||
|
||||
@@ -4805,11 +4844,13 @@ CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=y
|
||||
# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
|
||||
# CONFIG_DRM_PANEL_DSI_CM is not set
|
||||
CONFIG_DRM_PANEL_LVDS=y
|
||||
# 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 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9805 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9806E is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9882T is not set
|
||||
# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
|
||||
@@ -4822,6 +4863,7 @@ CONFIG_DRM_PANEL_INNOLUX_P079ZCA=y
|
||||
CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04=y
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
|
||||
# CONFIG_DRM_PANEL_LINCOLNTECH_LCD197 is not set
|
||||
# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
|
||||
# CONFIG_DRM_PANEL_LG_LG4573 is not set
|
||||
# CONFIG_DRM_PANEL_LG_SW43408 is not set
|
||||
@@ -5044,6 +5086,7 @@ CONFIG_BACKLIGHT_PWM=y
|
||||
# CONFIG_BACKLIGHT_QCOM_WLED is not set
|
||||
# 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 is not set
|
||||
@@ -5283,6 +5326,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
|
||||
# CONFIG_SND_SOC_AK4458 is not set
|
||||
# CONFIG_SND_SOC_AK4554 is not set
|
||||
CONFIG_SND_SOC_AK4613=m
|
||||
# CONFIG_SND_SOC_AK4619 is not set
|
||||
# CONFIG_SND_SOC_AK4642 is not set
|
||||
# CONFIG_SND_SOC_AK5386 is not set
|
||||
# CONFIG_SND_SOC_AK5558 is not set
|
||||
@@ -5326,6 +5370,7 @@ CONFIG_SND_SOC_CROS_EC_CODEC=m
|
||||
# CONFIG_SND_SOC_CS4341 is not set
|
||||
# CONFIG_SND_SOC_CS4349 is not set
|
||||
# CONFIG_SND_SOC_CS53L30 is not set
|
||||
# CONFIG_SND_SOC_CS530X_I2C is not set
|
||||
# CONFIG_SND_SOC_CX2072X is not set
|
||||
# CONFIG_SND_SOC_DA7213 is not set
|
||||
CONFIG_SND_SOC_DA7219=m
|
||||
@@ -5333,6 +5378,7 @@ CONFIG_SND_SOC_DMIC=m
|
||||
CONFIG_SND_SOC_HDMI_CODEC=y
|
||||
CONFIG_SND_SOC_ES7134=m
|
||||
CONFIG_SND_SOC_ES7241=m
|
||||
# CONFIG_SND_SOC_ES8311 is not set
|
||||
# CONFIG_SND_SOC_ES8316 is not set
|
||||
# CONFIG_SND_SOC_ES8326 is not set
|
||||
# CONFIG_SND_SOC_ES8328_I2C is not set
|
||||
@@ -5380,6 +5426,7 @@ CONFIG_SND_SOC_RT1015P=m
|
||||
# CONFIG_SND_SOC_RT1308_SDW is not set
|
||||
# CONFIG_SND_SOC_RT1316_SDW is not set
|
||||
# CONFIG_SND_SOC_RT1318_SDW is not set
|
||||
# CONFIG_SND_SOC_RT1320_SDW is not set
|
||||
CONFIG_SND_SOC_RT5514=m
|
||||
# CONFIG_SND_SOC_RT5616 is not set
|
||||
# CONFIG_SND_SOC_RT5631 is not set
|
||||
@@ -5446,6 +5493,7 @@ CONFIG_SND_SOC_WCD_CLASSH=m
|
||||
CONFIG_SND_SOC_WCD9335=m
|
||||
CONFIG_SND_SOC_WCD_MBHC=m
|
||||
CONFIG_SND_SOC_WCD934X=m
|
||||
# CONFIG_SND_SOC_WCD937X_SDW is not set
|
||||
# CONFIG_SND_SOC_WCD938X_SDW is not set
|
||||
# CONFIG_SND_SOC_WCD939X_SDW is not set
|
||||
# CONFIG_SND_SOC_WM8510 is not set
|
||||
@@ -6113,6 +6161,7 @@ CONFIG_LEDS_CLASS_MULTICOLOR=m
|
||||
# CONFIG_LEDS_BCM6328 is not set
|
||||
# CONFIG_LEDS_BCM6358 is not set
|
||||
# CONFIG_LEDS_CR0014114 is not set
|
||||
CONFIG_LEDS_CROS_EC=m
|
||||
# CONFIG_LEDS_EL15203000 is not set
|
||||
# CONFIG_LEDS_LM3530 is not set
|
||||
# CONFIG_LEDS_LM3532 is not set
|
||||
@@ -6189,6 +6238,7 @@ CONFIG_LEDS_TRIGGER_PANIC=y
|
||||
# CONFIG_LEDS_TRIGGER_NETDEV is not set
|
||||
CONFIG_LEDS_TRIGGER_PATTERN=y
|
||||
# CONFIG_LEDS_TRIGGER_TTY is not set
|
||||
# CONFIG_LEDS_TRIGGER_INPUT_EVENTS is not set
|
||||
|
||||
#
|
||||
# Simple LED drivers
|
||||
@@ -6538,10 +6588,10 @@ CONFIG_CROS_EC_TYPEC=m
|
||||
# CONFIG_CROS_HPS_I2C is not set
|
||||
CONFIG_CROS_USBPD_LOGGER=m
|
||||
CONFIG_CROS_USBPD_NOTIFY=y
|
||||
# CONFIG_CZNIC_PLATFORMS is not set
|
||||
# CONFIG_MELLANOX_PLATFORM is not set
|
||||
CONFIG_SURFACE_PLATFORMS=y
|
||||
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
|
||||
@@ -7017,6 +7067,7 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
|
||||
# CONFIG_AD7291 is not set
|
||||
# CONFIG_AD7292 is not set
|
||||
# CONFIG_AD7298 is not set
|
||||
# CONFIG_AD7380 is not set
|
||||
# CONFIG_AD7476 is not set
|
||||
# CONFIG_AD7606_IFACE_PARALLEL is not set
|
||||
# CONFIG_AD7606_IFACE_SPI is not set
|
||||
@@ -7031,7 +7082,6 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
|
||||
# CONFIG_AD7949 is not set
|
||||
# CONFIG_AD799X is not set
|
||||
# CONFIG_AD9467 is not set
|
||||
# CONFIG_ADI_AXI_ADC is not set
|
||||
# CONFIG_AXP20X_ADC is not set
|
||||
# CONFIG_AXP288_ADC is not set
|
||||
# CONFIG_CC10001_ADC is not set
|
||||
@@ -7057,6 +7107,7 @@ CONFIG_MAX9611=m
|
||||
# CONFIG_MCP3422 is not set
|
||||
# CONFIG_MCP3564 is not set
|
||||
# CONFIG_MCP3911 is not set
|
||||
# CONFIG_MEDIATEK_MT6359_AUXADC is not set
|
||||
# CONFIG_MEDIATEK_MT6360_ADC is not set
|
||||
CONFIG_MEDIATEK_MT6577_AUXADC=m
|
||||
# CONFIG_NAU7802 is not set
|
||||
@@ -7075,6 +7126,7 @@ CONFIG_QCOM_SPMI_ADC5=m
|
||||
# CONFIG_TI_ADC128S052 is not set
|
||||
# CONFIG_TI_ADC161S626 is not set
|
||||
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
|
||||
@@ -7126,6 +7178,7 @@ CONFIG_TI_ADS1015=m
|
||||
# CONFIG_ATLAS_EZO_SENSOR is not set
|
||||
# CONFIG_BME680 is not set
|
||||
# CONFIG_CCS811 is not set
|
||||
# CONFIG_ENS160 is not set
|
||||
# CONFIG_IAQCORE is not set
|
||||
# CONFIG_PMS7003 is not set
|
||||
# CONFIG_SCD30_CORE is not set
|
||||
@@ -7179,7 +7232,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_SPI is not set
|
||||
# CONFIG_AD5696_I2C is not set
|
||||
@@ -7375,6 +7427,7 @@ CONFIG_SENSORS_ISL29018=m
|
||||
CONFIG_VCNL4000=m
|
||||
# CONFIG_VCNL4035 is not set
|
||||
# CONFIG_VEML6030 is not set
|
||||
# CONFIG_VEML6040 is not set
|
||||
# CONFIG_VEML6070 is not set
|
||||
# CONFIG_VEML6075 is not set
|
||||
# CONFIG_VL6180 is not set
|
||||
@@ -7540,6 +7593,7 @@ CONFIG_PWM=y
|
||||
CONFIG_PWM_CROS_EC=y
|
||||
# CONFIG_PWM_DWC is not set
|
||||
# CONFIG_PWM_FSL_FTM is not set
|
||||
# CONFIG_PWM_GPIO is not set
|
||||
CONFIG_PWM_MTK_DISP=y
|
||||
CONFIG_PWM_MEDIATEK=y
|
||||
# CONFIG_PWM_PCA9685 is not set
|
||||
@@ -7555,7 +7609,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
|
||||
CONFIG_MST_IRQ=y
|
||||
@@ -7702,6 +7758,7 @@ CONFIG_PM_OPP=y
|
||||
CONFIG_SLIMBUS=m
|
||||
CONFIG_SLIM_QCOM_CTRL=m
|
||||
CONFIG_INTERCONNECT=y
|
||||
# CONFIG_INTERCONNECT_MTK is not set
|
||||
# CONFIG_COUNTER is not set
|
||||
# CONFIG_MOST is not set
|
||||
# CONFIG_PECI is not set
|
||||
@@ -7796,6 +7853,7 @@ CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
|
||||
#
|
||||
CONFIG_NETFS_SUPPORT=y
|
||||
# CONFIG_NETFS_STATS is not set
|
||||
# CONFIG_NETFS_DEBUG is not set
|
||||
# CONFIG_FSCACHE is not set
|
||||
# end of Caches
|
||||
|
||||
@@ -8120,7 +8178,6 @@ CONFIG_CRYPTO_ECC=m
|
||||
CONFIG_CRYPTO_ECDH=m
|
||||
# CONFIG_CRYPTO_ECDSA is not set
|
||||
# CONFIG_CRYPTO_ECRDSA is not set
|
||||
# CONFIG_CRYPTO_SM2 is not set
|
||||
# CONFIG_CRYPTO_CURVE25519 is not set
|
||||
# end of Public-key cryptography
|
||||
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
From 94cb0ae98fc7e8e0ad0dc4e0d8f0dde2beb681a8 Mon Sep 17 00:00:00 2001
|
||||
From: Adam Thiede <me@adamthiede.com>
|
||||
Date: Mon, 30 Sep 2024 08:08:23 -0500
|
||||
Subject: [PATCH] Revert "drm/mediatek: Support DRM plane alpha in OVL"
|
||||
|
||||
This reverts commit bc46eb5d5d7780782c70c7915f59ed25a908d550.
|
||||
---
|
||||
drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 6 ++----
|
||||
1 file changed, 2 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
|
||||
index 9d6d9fd8342e41..3cf02b4eaff6d1 100644
|
||||
--- a/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
|
||||
+++ b/drivers/gpu/drm/mediatek/mtk_disp_ovl.c
|
||||
@@ -453,10 +453,8 @@ void mtk_ovl_layer_config(struct device *dev, unsigned int idx,
|
||||
}
|
||||
|
||||
con = ovl_fmt_convert(ovl, fmt);
|
||||
- if (state->base.fb) {
|
||||
- con |= OVL_CON_AEN;
|
||||
- con |= state->base.alpha & OVL_CON_ALPHA;
|
||||
- }
|
||||
+ if (state->base.fb && state->base.fb->format->has_alpha)
|
||||
+ con |= OVL_CON_AEN | OVL_CON_ALPHA;
|
||||
|
||||
/* CONST_BLD must be enabled for XRGB formats although the alpha channel
|
||||
* can be ignored, or OVL will still read the value from memory.
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
From d4332814a2b716a54a743412559cd98cb050d652 Mon Sep 17 00:00:00 2001
|
||||
From b1aa006649db47a3a7f4f8a0cb9867bc553d9609 Mon Sep 17 00:00:00 2001
|
||||
From: Martijn Braam <martijn@brixit.nl>
|
||||
Date: Sat, 20 Apr 2019 01:19:48 +0200
|
||||
Subject: [PATCH] dts: add dontbeevil (pinephone devkit)
|
||||
@@ -17,7 +17,7 @@ Subject: [PATCH] dts: add dontbeevil (pinephone devkit)
|
||||
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-dontbeevil.dts
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
|
||||
index 38867649c063..5cddf8655d64 100644
|
||||
index 0a0ec8a39259..0fb55ce917d7 100644
|
||||
--- a/arch/arm64/boot/dts/allwinner/Makefile
|
||||
+++ b/arch/arm64/boot/dts/allwinner/Makefile
|
||||
@@ -1,6 +1,8 @@
|
||||
@@ -532,5 +532,5 @@ index 000000000000..15a91f2d6202
|
||||
+ status = "disabled";
|
||||
+};
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
From 915dabee2a8213d0fc343179e815d4639c184d32 Mon Sep 17 00:00:00 2001
|
||||
From 5c671df3771c2ccda1e3537949050bab1d012e8f Mon Sep 17 00:00:00 2001
|
||||
From: Martijn Braam <martijn@brixit.nl>
|
||||
Date: Tue, 20 Oct 2020 14:42:01 +0200
|
||||
Subject: [PATCH] dts: add pinetab-dev (old display panel)
|
||||
@@ -10,7 +10,7 @@ Subject: [PATCH] dts: add pinetab-dev (old display panel)
|
||||
create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab-dev.dts
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
|
||||
index 5cddf8655d64..8cfed65e268d 100644
|
||||
index 0fb55ce917d7..c17cc1afa402 100644
|
||||
--- a/arch/arm64/boot/dts/allwinner/Makefile
|
||||
+++ b/arch/arm64/boot/dts/allwinner/Makefile
|
||||
@@ -17,6 +17,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinephone-1.2.dtb
|
||||
@@ -57,5 +57,5 @@ index 000000000000..1e287f2fb9f3
|
||||
+ };
|
||||
+};
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 388517c7e13be56a364e48820e64a7f9376b1248 Mon Sep 17 00:00:00 2001
|
||||
From c52f6eb387d094ea181bb156440b9f5014361b39 Mon Sep 17 00:00:00 2001
|
||||
From: Oliver Smith <ollieparanoid@postmarketos.org>
|
||||
Date: Tue, 20 Oct 2020 11:11:48 +0200
|
||||
Subject: [PATCH] dts: pinetab: add missing ohci1
|
||||
@@ -13,7 +13,7 @@ https://gitlab.com/pine64-org/linux/-/commit/69ae7087ec51b09bb6a0afb53dddb5eb030
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts
|
||||
index 37466d70bb25..29e527e499db 100644
|
||||
index 419fe19b4a6f..e30034a1553b 100644
|
||||
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts
|
||||
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts
|
||||
@@ -311,6 +311,10 @@ &ohci0 {
|
||||
@@ -28,5 +28,5 @@ index 37466d70bb25..29e527e499db 100644
|
||||
status = "okay";
|
||||
};
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
From eba1ff43e3bb9c7624f9678e7e9528663f89380e Mon Sep 17 00:00:00 2001
|
||||
From 91f8fcf39d8465ba7d6c8147650eb564915225e6 Mon Sep 17 00:00:00 2001
|
||||
From: Martijn Braam <martijn@brixit.nl>
|
||||
Date: Tue, 20 Oct 2020 14:44:51 +0200
|
||||
Subject: [PATCH] dts: pinetab: make audio routing consistent with
|
||||
@@ -9,7 +9,7 @@ Subject: [PATCH] dts: pinetab: make audio routing consistent with
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts
|
||||
index 29e527e499db..230eedb39d50 100644
|
||||
index e30034a1553b..b2a3c0f97ce1 100644
|
||||
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts
|
||||
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts
|
||||
@@ -494,13 +494,13 @@ &sound {
|
||||
@@ -32,5 +32,5 @@ index 29e527e499db..230eedb39d50 100644
|
||||
"ADCR", "Right ADC",
|
||||
"Internal Microphone Left", "MBIAS",
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
From 2ee09f1d8da9d5fcf7b2579525c87151ee0896a2 Mon Sep 17 00:00:00 2001
|
||||
From 48e55b423aa0347751c58c90c5d6846943736122 Mon Sep 17 00:00:00 2001
|
||||
From: Clayton Craft <clayton@craftyguy.net>
|
||||
Date: Wed, 16 Dec 2020 20:16:14 -0800
|
||||
Subject: [PATCH] dts: pinephone: drop modem-power node
|
||||
@@ -139,7 +139,7 @@ index ec4927dfe9dc..57b651d695af 100644
|
||||
+ gpios = <&r_pio 0 6 GPIO_ACTIVE_LOW>; /* PL6 */
|
||||
+};
|
||||
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
|
||||
index fe7f2113a727..68392dee4407 100644
|
||||
index dcd392fe6027..24b7f01fd901 100644
|
||||
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
|
||||
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
|
||||
@@ -310,6 +310,17 @@ ec25_codec: ec25-codec {
|
||||
@@ -160,7 +160,7 @@ index fe7f2113a727..68392dee4407 100644
|
||||
i2c_csi: i2c-csi {
|
||||
compatible = "i2c-gpio";
|
||||
sda-gpios = <&pio 4 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; /* PE13 */
|
||||
@@ -382,6 +393,7 @@ reg_usb_5v: usb-5v {
|
||||
@@ -389,6 +400,7 @@ reg_usb_5v: usb-5v {
|
||||
reg_vbat_bb: vbat-bb {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vbat-bb";
|
||||
@@ -169,5 +169,5 @@ index fe7f2113a727..68392dee4407 100644
|
||||
regulator-max-microvolt = <3500000>;
|
||||
gpio = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
+5
-5
@@ -1,4 +1,4 @@
|
||||
From dee9e527e2f59edf679dffbd0dad2179be9e9965 Mon Sep 17 00:00:00 2001
|
||||
From 39c6fba7dd220d7349e0a425e9aaaabe979dd924 Mon Sep 17 00:00:00 2001
|
||||
From: JuniorJPDJ <git@juniorjpdj.pl>
|
||||
Date: Tue, 23 Mar 2021 12:27:30 +0100
|
||||
Subject: [PATCH] drm: panel: simple: Add Hannstar TQTM070CB501
|
||||
@@ -8,10 +8,10 @@ Subject: [PATCH] drm: panel: simple: Add Hannstar TQTM070CB501
|
||||
1 file changed, 27 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
|
||||
index 20e3df1c59d4..d37108020fb7 100644
|
||||
index bf40057c5cf3..55a8d221b002 100644
|
||||
--- a/drivers/gpu/drm/panel/panel-simple.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-simple.c
|
||||
@@ -2344,6 +2344,30 @@ static const struct panel_desc hannstar_hsd101pww2 = {
|
||||
@@ -2381,6 +2381,30 @@ static const struct panel_desc hannstar_hsd101pww2 = {
|
||||
.connector_type = DRM_MODE_CONNECTOR_LVDS,
|
||||
};
|
||||
|
||||
@@ -42,7 +42,7 @@ index 20e3df1c59d4..d37108020fb7 100644
|
||||
static const struct drm_display_mode hitachi_tx23d38vm0caa_mode = {
|
||||
.clock = 33333,
|
||||
.hdisplay = 800,
|
||||
@@ -4513,6 +4537,9 @@ static const struct of_device_id platform_of_match[] = {
|
||||
@@ -4717,6 +4741,9 @@ static const struct of_device_id platform_of_match[] = {
|
||||
}, {
|
||||
.compatible = "hit,tx23d38vm0caa",
|
||||
.data = &hitachi_tx23d38vm0caa
|
||||
@@ -53,5 +53,5 @@ index 20e3df1c59d4..d37108020fb7 100644
|
||||
.compatible = "innolux,at043tn24",
|
||||
.data = &innolux_at043tn24,
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
From 538c7faf1059027cb62f2e5ec4931a8fccaa3976 Mon Sep 17 00:00:00 2001
|
||||
From 21d71ed910712ed81eef6cf6254d89fe6d49c3a1 Mon Sep 17 00:00:00 2001
|
||||
From: JuniorJPDJ <git@juniorjpdj.pl>
|
||||
Date: Tue, 23 Mar 2021 12:29:37 +0100
|
||||
Subject: [PATCH] ARM: dts: sun6i: Add GoClever Orion 70L tablet
|
||||
@@ -10,10 +10,10 @@ Subject: [PATCH] ARM: dts: sun6i: Add GoClever Orion 70L tablet
|
||||
create mode 100644 arch/arm/boot/dts/allwinner/sun6i-a31s-goclever-gcta741l.dts
|
||||
|
||||
diff --git a/arch/arm/boot/dts/allwinner/Makefile b/arch/arm/boot/dts/allwinner/Makefile
|
||||
index 7c7fb94d2153..097614b95ff2 100644
|
||||
index 54b156fca9bf..77593039273c 100644
|
||||
--- a/arch/arm/boot/dts/allwinner/Makefile
|
||||
+++ b/arch/arm/boot/dts/allwinner/Makefile
|
||||
@@ -110,6 +110,7 @@ dtb-$(CONFIG_MACH_SUN6I) += \
|
||||
@@ -111,6 +111,7 @@ dtb-$(CONFIG_MACH_SUN6I) += \
|
||||
sun6i-a31-mele-a1000g-quad.dtb \
|
||||
sun6i-a31s-colorfly-e708-q1.dtb \
|
||||
sun6i-a31s-cs908.dtb \
|
||||
@@ -131,5 +131,5 @@ index 000000000000..4fcba20ffe48
|
||||
+ status = "okay";
|
||||
+};
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
+5
-5
@@ -1,4 +1,4 @@
|
||||
From c8bf750c05bff5c271c1f51135d75e5641b0c58a Mon Sep 17 00:00:00 2001
|
||||
From 6aa3e90d38c53c76b31ecc33e190605f0b63d554 Mon Sep 17 00:00:00 2001
|
||||
From: JuniorJPDJ <git@juniorjpdj.pl>
|
||||
Date: Thu, 25 Mar 2021 19:11:22 +0100
|
||||
Subject: [PATCH] drm: panel: simple: Add Hannstar HSD070IDW1-A
|
||||
@@ -8,10 +8,10 @@ Subject: [PATCH] drm: panel: simple: Add Hannstar HSD070IDW1-A
|
||||
1 file changed, 27 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
|
||||
index d37108020fb7..b269ddadd64f 100644
|
||||
index 55a8d221b002..abdf57dc2a63 100644
|
||||
--- a/drivers/gpu/drm/panel/panel-simple.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-simple.c
|
||||
@@ -2264,6 +2264,30 @@ static const struct panel_desc giantplus_gpm940b0 = {
|
||||
@@ -2301,6 +2301,30 @@ static const struct panel_desc giantplus_gpm940b0 = {
|
||||
.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE,
|
||||
};
|
||||
|
||||
@@ -42,7 +42,7 @@ index d37108020fb7..b269ddadd64f 100644
|
||||
static const struct display_timing hannstar_hsd070pww1_timing = {
|
||||
.pixelclock = { 64300000, 71100000, 82000000 },
|
||||
.hactive = { 1280, 1280, 1280 },
|
||||
@@ -4525,6 +4549,9 @@ static const struct of_device_id platform_of_match[] = {
|
||||
@@ -4729,6 +4753,9 @@ static const struct of_device_id platform_of_match[] = {
|
||||
}, {
|
||||
.compatible = "giantplus,gpm940b0",
|
||||
.data = &giantplus_gpm940b0,
|
||||
@@ -53,5 +53,5 @@ index d37108020fb7..b269ddadd64f 100644
|
||||
.compatible = "hannstar,hsd070pww1",
|
||||
.data = &hannstar_hsd070pww1,
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
From 4b4c85b0a093be28ec9a8a72ef3a3f764fb28e03 Mon Sep 17 00:00:00 2001
|
||||
From b346724c85c5d7852eab9b9902fd2f761185df7c Mon Sep 17 00:00:00 2001
|
||||
From: JuniorJPDJ <git@juniorjpdj.pl>
|
||||
Date: Thu, 25 Mar 2021 19:18:58 +0100
|
||||
Subject: [PATCH] ARM: dts: sun6i: Add Lark FreeMe 70.2S tablet
|
||||
@@ -10,7 +10,7 @@ Subject: [PATCH] ARM: dts: sun6i: Add Lark FreeMe 70.2S tablet
|
||||
create mode 100644 arch/arm/boot/dts/allwinner/sun4i-a10-lark-freeme-70-2s.dts
|
||||
|
||||
diff --git a/arch/arm/boot/dts/allwinner/Makefile b/arch/arm/boot/dts/allwinner/Makefile
|
||||
index 097614b95ff2..902b8f6752a0 100644
|
||||
index 77593039273c..ddc3b0deab8c 100644
|
||||
--- a/arch/arm/boot/dts/allwinner/Makefile
|
||||
+++ b/arch/arm/boot/dts/allwinner/Makefile
|
||||
@@ -36,6 +36,7 @@ dtb-$(CONFIG_MACH_SUN4I) += \
|
||||
@@ -274,5 +274,5 @@ index 000000000000..5f17902410c1
|
||||
+ status = "okay";
|
||||
+};
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 125b782564a7dac6e6d1137e8103e2613b12600e Mon Sep 17 00:00:00 2001
|
||||
From cd0734143da954f0a4bda9c40b353d55f9cacf66 Mon Sep 17 00:00:00 2001
|
||||
From: Jernej Skrabec <jernej.skrabec@siol.net>
|
||||
Date: Sat, 24 Aug 2019 01:36:44 +0200
|
||||
Subject: [PATCH] eMMC workaround
|
||||
@@ -34,5 +34,5 @@ index e9370c736497..a4abd589e95d 100644
|
||||
|
||||
ret = mmc_of_parse(mmc);
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
From c824f1e06e282be26c78918cb15f2dd1c6687e5e Mon Sep 17 00:00:00 2001
|
||||
From e166f056c5a77c2258f8c1581d9b34de76f4a839 Mon Sep 17 00:00:00 2001
|
||||
From: Maxim Karasev <begs@disroot.org>
|
||||
Date: Sat, 4 Sep 2021 14:56:01 +0300
|
||||
Subject: [PATCH] arm64: dts: allwinner: orangepi-3: fix ethernet
|
||||
@@ -10,7 +10,7 @@ patch from LibreELEC tree.
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts
|
||||
index 218c26c59429..a424eded0016 100644
|
||||
index 332a9fe83ccd..6e53dadf543e 100644
|
||||
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts
|
||||
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts
|
||||
@@ -145,7 +145,7 @@ hdmi_out_con: endpoint {
|
||||
@@ -34,5 +34,5 @@ index 218c26c59429..a424eded0016 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.45.0
|
||||
2.46.1
|
||||
|
||||
-295
@@ -1,295 +0,0 @@
|
||||
From b9e47d013dac71b2f6d6c877222aa128138c3099 Mon Sep 17 00:00:00 2001
|
||||
From: Denis Burkov <hitechshell@mail.ru>
|
||||
Date: Mon, 11 Mar 2024 18:23:39 +0500
|
||||
Subject: [PATCH] ARM: dts: allwinner: sun5i-a13-pocketbook-614-plus: Add
|
||||
initial devicetree
|
||||
|
||||
---
|
||||
arch/arm/boot/dts/allwinner/Makefile | 2 +
|
||||
.../sun5i-a13-pocketbook-614-plus.dts | 254 ++++++++++++++++++
|
||||
2 files changed, 256 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/allwinner/sun5i-a13-pocketbook-614-plus.dts
|
||||
|
||||
diff --git a/arch/arm/boot/dts/allwinner/Makefile b/arch/arm/boot/dts/allwinner/Makefile
|
||||
index 902b8f6752a0..f7eb88a5709b 100644
|
||||
--- a/arch/arm/boot/dts/allwinner/Makefile
|
||||
+++ b/arch/arm/boot/dts/allwinner/Makefile
|
||||
@@ -62,6 +62,7 @@ dtb-$(CONFIG_MACH_SUN5I) += \
|
||||
sun5i-a13-olinuxino.dtb \
|
||||
sun5i-a13-olinuxino-micro.dtb \
|
||||
sun5i-a13-pocketbook-touch-lux-3.dtb \
|
||||
+ sun5i-a13-pocketbook-614-plus.dtb \
|
||||
sun5i-a13-q8-tablet.dtb \
|
||||
sun5i-a13-utoo-p66.dtb \
|
||||
sun5i-gr8-chip-pro.dtb \
|
||||
@@ -83,6 +84,7 @@ dtb-$(CONFIG_MACH_SUN5I) += \
|
||||
sun5i-a13-olinuxino.dtb \
|
||||
sun5i-a13-olinuxino-micro.dtb \
|
||||
sun5i-a13-pocketbook-touch-lux-3.dtb \
|
||||
+ sun5i-a13-pocketbook-614-plus.dtb \
|
||||
sun5i-a13-q8-tablet.dtb \
|
||||
sun5i-a13-utoo-p66.dtb \
|
||||
sun5i-gr8-chip-pro.dtb \
|
||||
diff --git a/arch/arm/boot/dts/allwinner/sun5i-a13-pocketbook-614-plus.dts b/arch/arm/boot/dts/allwinner/sun5i-a13-pocketbook-614-plus.dts
|
||||
new file mode 100644
|
||||
index 000000000000..cad9ce5f2a6f
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/allwinner/sun5i-a13-pocketbook-614-plus.dts
|
||||
@@ -0,0 +1,254 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0+
|
||||
+/*
|
||||
+ * Copyright 2024 Denis Burkov <hitechshell@mail.ru>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+#include "sun5i-a13.dtsi"
|
||||
+#include "sunxi-common-regulators.dtsi"
|
||||
+#include <dt-bindings/gpio/gpio.h>
|
||||
+#include <dt-bindings/input/input.h>
|
||||
+#include <dt-bindings/interrupt-controller/irq.h>
|
||||
+
|
||||
+/ {
|
||||
+ model = "PocketBook 614 Plus";
|
||||
+ compatible = "pocketbook,614-plus", "allwinner,sun5i-a13";
|
||||
+
|
||||
+ aliases {
|
||||
+ serial0 = &uart1;
|
||||
+ i2c0 = &i2c0;
|
||||
+ i2c1 = &i2c1;
|
||||
+ i2c2 = &i2c2;
|
||||
+ rtc0 = &pcf8563;
|
||||
+ };
|
||||
+
|
||||
+ chosen {
|
||||
+ stdout-path = "serial0:115200n8";
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&led_pins_pocketbook>;
|
||||
+
|
||||
+ led {
|
||||
+ gpios = <&pio 4 8 GPIO_ACTIVE_LOW>; /* PE8 */
|
||||
+ default-state = "on";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ autorepeat;
|
||||
+ label = "GPIO Keys";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pocketbook_btn_pins>;
|
||||
+
|
||||
+ key-right {
|
||||
+ label = "Right";
|
||||
+ linux,code = <KEY_NEXT>;
|
||||
+ gpios = <&pio 6 9 GPIO_ACTIVE_LOW>; /* PG9 */
|
||||
+ };
|
||||
+
|
||||
+ key-left {
|
||||
+ label = "Left";
|
||||
+ linux,code = <KEY_PREVIOUS>;
|
||||
+ gpios = <&pio 6 10 GPIO_ACTIVE_LOW>; /* PG10 */
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ reg_3v3_mmc0: regulator-mmc0 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vdd-mmc0";
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pocketbook_reg_mmc0_pin>;
|
||||
+ gpio = <&pio 4 4 GPIO_ACTIVE_LOW>; /* PE4 */
|
||||
+ vin-supply = <®_vcc3v3>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&cpu0 {
|
||||
+ cpu-supply = <®_dcdc2>;
|
||||
+};
|
||||
+
|
||||
+&ehci0 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&i2c0 {
|
||||
+ status = "okay";
|
||||
+
|
||||
+ axp209: pmic@34 {
|
||||
+ compatible = "x-powers,axp209";
|
||||
+ reg = <0x34>;
|
||||
+ interrupts = <0>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+#include "axp209.dtsi"
|
||||
+
|
||||
+&i2c1 {
|
||||
+ status = "okay";
|
||||
+
|
||||
+ pcf8563: rtc@51 {
|
||||
+ compatible = "nxp,pcf8563";
|
||||
+ reg = <0x51>;
|
||||
+ #clock-cells = <0>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&i2c2 {
|
||||
+ status = "okay";
|
||||
+
|
||||
+ /* Touchpanel is connected here. */
|
||||
+};
|
||||
+
|
||||
+&lradc {
|
||||
+ vref-supply = <®_ldo2>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ button-300 {
|
||||
+ label = "Down";
|
||||
+ linux,code = <KEY_DOWN>;
|
||||
+ channel = <0>;
|
||||
+ voltage = <300000>;
|
||||
+ };
|
||||
+
|
||||
+ button-700 {
|
||||
+ label = "Up";
|
||||
+ linux,code = <KEY_UP>;
|
||||
+ channel = <0>;
|
||||
+ voltage = <700000>;
|
||||
+ };
|
||||
+
|
||||
+ button-1000 {
|
||||
+ label = "Left";
|
||||
+ linux,code = <KEY_LEFT>;
|
||||
+ channel = <0>;
|
||||
+ voltage = <1000000>;
|
||||
+ };
|
||||
+
|
||||
+ button-1200 {
|
||||
+ label = "Menu";
|
||||
+ linux,code = <KEY_MENU>;
|
||||
+ channel = <0>;
|
||||
+ voltage = <1200000>;
|
||||
+ };
|
||||
+
|
||||
+ button-1500 {
|
||||
+ label = "Right";
|
||||
+ linux,code = <KEY_RIGHT>;
|
||||
+ channel = <0>;
|
||||
+ voltage = <1500000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&mmc0 {
|
||||
+ vmmc-supply = <®_3v3_mmc0>;
|
||||
+ bus-width = <4>;
|
||||
+ cd-gpios = <&pio 6 0 GPIO_ACTIVE_LOW>; /* PG0 */
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&mmc2 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&mmc2_4bit_pc_pins>;
|
||||
+ vmmc-supply = <®_vcc3v3>;
|
||||
+ bus-width = <4>;
|
||||
+ non-removable;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&ohci0 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&otg_sram {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&pio {
|
||||
+ led_pins_pocketbook: led-pin {
|
||||
+ pins = "PE8";
|
||||
+ function = "gpio_out";
|
||||
+ };
|
||||
+ pocketbook_btn_pins: pocketbook_btn_pins {
|
||||
+ pins = "PG9", "PG10";
|
||||
+ function = "gpio_in";
|
||||
+ bias-pull-up;
|
||||
+ };
|
||||
+ pocketbook_reg_mmc0_pin: pocketbook_reg_mmc0_pin {
|
||||
+ pins = "PE4";
|
||||
+ function = "gpio_out";
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+®_dcdc2 {
|
||||
+ regulator-always-on;
|
||||
+ regulator-min-microvolt = <1000000>;
|
||||
+ regulator-max-microvolt = <1500000>;
|
||||
+ regulator-name = "vdd-cpu";
|
||||
+};
|
||||
+
|
||||
+®_dcdc3 {
|
||||
+ regulator-always-on;
|
||||
+ regulator-min-microvolt = <1000000>;
|
||||
+ regulator-max-microvolt = <1400000>;
|
||||
+ regulator-name = "vdd-int-dll";
|
||||
+};
|
||||
+
|
||||
+®_ldo1 {
|
||||
+ regulator-name = "vdd-rtc";
|
||||
+};
|
||||
+
|
||||
+®_ldo2 {
|
||||
+ regulator-always-on;
|
||||
+ regulator-min-microvolt = <3000000>;
|
||||
+ regulator-max-microvolt = <3000000>;
|
||||
+ regulator-name = "avcc";
|
||||
+};
|
||||
+
|
||||
+®_ldo3 {
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ regulator-name = "vcc-wifi";
|
||||
+};
|
||||
+
|
||||
+®_usb0_vbus {
|
||||
+ status = "okay";
|
||||
+ gpio = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
|
||||
+};
|
||||
+
|
||||
+®_usb1_vbus {
|
||||
+ gpio = <&pio 6 11 GPIO_ACTIVE_HIGH>; /* PG11 */
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&uart1 {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&uart1_pg_pins>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_otg {
|
||||
+ dr_mode = "otg";
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_power_supply {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&battery_power_supply {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usbphy {
|
||||
+ usb0_id_det-gpios = <&pio 6 2 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PG2 */
|
||||
+ usb0_vbus_det-gpios = <&axp_gpio 1 GPIO_ACTIVE_HIGH>;
|
||||
+ usb0_vbus-supply = <®_usb0_vbus>;
|
||||
+ usb1_vbus-supply = <®_usb1_vbus>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
--
|
||||
2.45.0
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
# Maintainer: Jan Jasper de Kroon <jajadekroon@gmail.com>
|
||||
# Co-Maintainer: Arnav Singh <me@arnavion.dev>
|
||||
# Maintainer: Arnav Singh <me@arnavion.dev>
|
||||
# Co-Maintainer: Jan Jasper de Kroon <jajadekroon@gmail.com>
|
||||
_flavor=postmarketos-allwinner
|
||||
_config="config-$_flavor.$CARCH"
|
||||
pkgname=linux-$_flavor
|
||||
pkgver=6.9.10_git20240721
|
||||
pkgrel=5
|
||||
_tag="orange-pi-6.9-20240721-2345"
|
||||
pkgver=6.11.0_git20240915
|
||||
pkgrel=0
|
||||
_tag="orange-pi-6.11-20240915-2344"
|
||||
pkgdesc="Kernel fork with Pine64 patches (megi's tree, slightly patched)"
|
||||
arch="aarch64 armv7"
|
||||
url="https://megous.com/git/linux/"
|
||||
@@ -43,7 +43,6 @@ source="$pkgname-$_tag.tar.gz::https://codeberg.org/megi/linux/archive/$_tag.tar
|
||||
0009-ARM-dts-sun6i-Add-Lark-FreeMe-70.2S-tablet.patch
|
||||
0010-eMMC-workaround.patch
|
||||
0011-arm64-dts-allwinner-orangepi-3-fix-ethernet.patch
|
||||
0012-ARM-dts-allwinner-sun5i-a13-pocketbook-614-plus-Add-.patch
|
||||
"
|
||||
builddir="$srcdir/linux"
|
||||
|
||||
@@ -80,19 +79,18 @@ package() {
|
||||
INSTALL_DTBS_PATH="$pkgdir/boot/dtbs"
|
||||
}
|
||||
sha512sums="
|
||||
c6081383741fe883d8f6e223caa45d7ecf179f4cd0c759432bbbb2e43603088840393a0cf58735ab5dda4dbf5e2655d8c9b053a74b029ac4768c200ff6ca6f65 linux-postmarketos-allwinner-orange-pi-6.9-20240721-2345.tar.gz
|
||||
3281e69061af98020adf412773a187cb3245b26e0dc22c29a08f37c64360e8ad23a5ea2c4cc19365e2c2ed07d7aae0d63e9e116a9f0badb25584dfe763f3476c config-postmarketos-allwinner.aarch64
|
||||
0011646badbea59ecc670667252d0f6b9fe84c05e43cd3583f7730de526d072f29f47100f65d17dbf84d1284ed6b6cae8eb9d7b6a8df33a178cdfa376402b2e1 config-postmarketos-allwinner.armv7
|
||||
a1fe1a21c34062eb92b6a4a9d2ef330d0e745859af283ccf05fc899ec263f9d452c1399c29620a0e4c748eca4b0c13645668b2fc0dc72f5703426d472f1294be 0001-dts-add-dontbeevil-pinephone-devkit.patch
|
||||
0ef26b34fa834c119ebff6daa27b1dd3fac27448d6a40c0b2022a00c239dad0ef3e2b3ab3f9eec5460f921c9c6ea21db360adc175a7e658d5c34c5d0aacc498f 0002-dts-add-pinetab-dev-old-display-panel.patch
|
||||
d37d929100a9de9431cc3cef6b714b61b5af9633e35a2880fcc8b60279fdc9ab65198fa70d01e070a9f263818d994b9b851973bb079ddea1ca66d2b7964f365d 0003-dts-pinetab-add-missing-ohci1.patch
|
||||
e368935e8e1a2380b0b42961ca65e7ebb842916e80b7b3e96211d5091413d5b8112e60f2437f82795e9c21183411f81daf1f2806b7a93b0c03dca0a64e25f079 0004-dts-pinetab-make-audio-routing-consistent-with-pinep.patch
|
||||
e4dd137537cecc8cfbb2152120134ee4fb19b930ed0e66313c414fb14061f9d2dd4c280cfbde722f8f39531868823c8f12ec79e45800f5c6e0ded03475557f79 0005-dts-pinephone-drop-modem-power-node.patch
|
||||
0234490da9ea6d172ccea95092ab8a0623d2b57d43b0066d0b77a096b4a5e2a02047579f12b09d2e6bc1b77a3f9ea67dc26e9d5c02b947a7126f822132c85d30 0006-drm-panel-simple-Add-Hannstar-TQTM070CB501.patch
|
||||
09e8a2b06b45bb0be75a4c09f6a9d165861a950bf6ed1cd91faa493710dd9fdc0aa35a38e23a731bb3f281c30c353310e4a17cdea3ddc6ab7ec3436722eb3b07 0007-ARM-dts-sun6i-Add-GoClever-Orion-70L-tablet.patch
|
||||
96d7b7d8161dcd7379092b6aec531ca47ee0566c308057aec2f934256f67ee9f3dcd2fb7ca592b056a5305600ea4125932c96f2c244966d7d46f9b1f3fb77052 0008-drm-panel-simple-Add-Hannstar-HSD070IDW1-A.patch
|
||||
22cf608d79337aee6354e7db6bf1f177a6b4ab89f7b26da46e0cf2e280978ace7203829a0e87675449ef41b488ab114cedd5ab911e326b87fa823a0073c8d1fc 0009-ARM-dts-sun6i-Add-Lark-FreeMe-70.2S-tablet.patch
|
||||
898f1227fe27e38706ea8e6e2846cbc9bded328090ddb457733cf6417f2e1da5bac2d9caa753b29a0667a2733a937b9d447b666a070462a93d1cfea3f88daea7 0010-eMMC-workaround.patch
|
||||
4acfd79aa2978d6b8078fbd7649a2dda4ef5a1e03b52d7e034a7cc40b5a7349c4dc741fab9cb7722fa61eb022fd270719ed5257ac8487796c9e2b1135a123e86 0011-arm64-dts-allwinner-orangepi-3-fix-ethernet.patch
|
||||
0770f510a12f8ec29fa2798682b0687438f733634df0b339876b8181c08cd154904412aa88d5dd5df336803da3a4f5c274cba5008be533e036dc5deb3c41fb17 0012-ARM-dts-allwinner-sun5i-a13-pocketbook-614-plus-Add-.patch
|
||||
8ade8d4c15c9cd1e27a2cc5a93d98e50597824d98995d69ab1b428677ad9e8232704184f9eafd36986f88b783d39735c16210b542aa346d37679a2ccfcfca835 linux-postmarketos-allwinner-orange-pi-6.11-20240915-2344.tar.gz
|
||||
d6b6ac843e93aa26c0d9ec1c03d2d3d71200bc802119d7e7bd76efabeb30fd2cfdfabb22a60ee5e078a13f9a56bd09531ee8acc43e293565f9bd24383ae8573f config-postmarketos-allwinner.aarch64
|
||||
8d918a9f28a3e47feebcf53732b0c20d9c0f1068ccda01cbd5d1d2c8c41183899d8fbfb95f773ad9468d863ceaeaf9d35cfb09603d4b5c52f55673efad98bf2b config-postmarketos-allwinner.armv7
|
||||
54bb653f2eec755d831e4c3c7d5a202c09e8d738335d79664879fea6783c54ea74a935259e77bbbe748138a17e92f421ab3e6bd5b07f7e970fd7b22deebcb84b 0001-dts-add-dontbeevil-pinephone-devkit.patch
|
||||
1bfff7c0bd3c6761520c444968b9d61b9c43a733d398628dbe12134858a2803b4761117cd2946e86595a3dd2cbffb395c075502dafa40d9fa97e298f49701eb2 0002-dts-add-pinetab-dev-old-display-panel.patch
|
||||
91d10d8d377e3f957f76b634a2e075a8927462621610a12be3fbb7e233580bfbb41e0bc5dab06d16eb59fda54a61c4d0415de7b07a7a3de4b46c7f33d7c00aa3 0003-dts-pinetab-add-missing-ohci1.patch
|
||||
27f740236f9612616984bb25fee9970b5874b1f4560fdad45738174953cc00c6b6632e6beb384c84d7d18333c1788a49c20ba32ab360a0a7deda17fbadcaf838 0004-dts-pinetab-make-audio-routing-consistent-with-pinep.patch
|
||||
ac775aef3fcece0d1bb18dd6df40e84ed616549a9f4369da196bc3f92da9eaab1d388e8c38ae8082bcf18884f7cda9e8a226fa79442af3bdfade8acfcab88685 0005-dts-pinephone-drop-modem-power-node.patch
|
||||
0fe41ef47ace057d4f4bdab2c9f8c908ea4f16f6b118432c71c2a2ad467286532a62dffdbfe0e46781619eca449f11a6d8b13c18e1859a9aaa8a3208156e75a9 0006-drm-panel-simple-Add-Hannstar-TQTM070CB501.patch
|
||||
029d2e5863af00bbfe1e6a7fa2455d8773a475434881f528d9c868a9b04c6173c13e9dc63d51920142a89f6d66d6e49d8d14577b243d6c15427dfe2bf2788a8d 0007-ARM-dts-sun6i-Add-GoClever-Orion-70L-tablet.patch
|
||||
fa4da8e9b43dfa217afb49fe7c83d7a0a59b1a1bef31d7228c8c5560df36c61bfaaff4134d31655c24e791106a7e75b6797d91f487b802133136d8cb79b32572 0008-drm-panel-simple-Add-Hannstar-HSD070IDW1-A.patch
|
||||
7393d67d1144c61bc327a6ce571d4c2b043576a356a74ec74384afc667bc044ecbeb57d2218523b83f84bc873b1b3ae3161b7f8270113953092bb55bbeb89aeb 0009-ARM-dts-sun6i-Add-Lark-FreeMe-70.2S-tablet.patch
|
||||
1d922045f835beec1e1a652ae6c2cf7c0081d114bfa4a9bf03c6fdbd79827d9600aae7c79b0740b354bf5aa9c1bd131ced5e939fb1b3e01777e93fcd17dd4f19 0010-eMMC-workaround.patch
|
||||
359cda536862c90f0a5c7e87e12448982650c9451921cbad6d611887031ac2c6d0b619666c557acadedf12bc8c27511f118deb97b8e88c76fd09bc18462ed844 0011-arm64-dts-allwinner-orangepi-3-fix-ethernet.patch
|
||||
"
|
||||
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm64 6.9.10 Kernel Configuration
|
||||
# Linux/arm64 6.11.0 Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="aarch64-alpine-linux-musl-gcc (Alpine 14.2.0) 14.2.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
@@ -115,7 +115,7 @@ CONFIG_TICK_CPU_ACCOUNTING=y
|
||||
# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
|
||||
CONFIG_IRQ_TIME_ACCOUNTING=y
|
||||
CONFIG_HAVE_SCHED_AVG_IRQ=y
|
||||
CONFIG_SCHED_THERMAL_PRESSURE=y
|
||||
CONFIG_SCHED_HW_PRESSURE=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
CONFIG_BSD_PROCESS_ACCT_V3=y
|
||||
CONFIG_TASKSTATS=y
|
||||
@@ -137,6 +137,7 @@ CONFIG_RCU_EXPERT=y
|
||||
CONFIG_TREE_SRCU=y
|
||||
CONFIG_TASKS_RCU_GENERIC=y
|
||||
# CONFIG_FORCE_TASKS_RCU is not set
|
||||
CONFIG_NEED_TASKS_RCU=y
|
||||
CONFIG_TASKS_RCU=y
|
||||
# CONFIG_FORCE_TASKS_RUDE_RCU is not set
|
||||
CONFIG_TASKS_RUDE_RCU=y
|
||||
@@ -179,11 +180,12 @@ CONFIG_CC_NO_ARRAY_BOUNDS=y
|
||||
CONFIG_GCC_NO_STRINGOP_OVERFLOW=y
|
||||
CONFIG_CC_NO_STRINGOP_OVERFLOW=y
|
||||
CONFIG_ARCH_SUPPORTS_INT128=y
|
||||
CONFIG_SLAB_OBJ_EXT=y
|
||||
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
|
||||
@@ -241,7 +243,6 @@ CONFIG_POSIX_TIMERS=y
|
||||
CONFIG_PRINTK=y
|
||||
CONFIG_BUG=y
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_BASE_FULL=y
|
||||
CONFIG_FUTEX=y
|
||||
CONFIG_FUTEX_PI=y
|
||||
CONFIG_EPOLL=y
|
||||
@@ -258,7 +259,6 @@ CONFIG_RSEQ=y
|
||||
CONFIG_CACHESTAT_SYSCALL=y
|
||||
CONFIG_KALLSYMS=y
|
||||
# CONFIG_KALLSYMS_SELFTEST is not set
|
||||
CONFIG_KALLSYMS_BASE_RELATIVE=y
|
||||
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
|
||||
CONFIG_HAVE_PERF_EVENTS=y
|
||||
|
||||
@@ -311,6 +311,7 @@ CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y
|
||||
# Platform selection
|
||||
#
|
||||
# CONFIG_ARCH_ACTIONS is not set
|
||||
# CONFIG_ARCH_AIROHA is not set
|
||||
CONFIG_ARCH_SUNXI=y
|
||||
# CONFIG_ARCH_ALPINE is not set
|
||||
# CONFIG_ARCH_APPLE is not set
|
||||
@@ -391,6 +392,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_ERRATUM_3194386=y
|
||||
CONFIG_CAVIUM_ERRATUM_22375=y
|
||||
CONFIG_CAVIUM_ERRATUM_23154=y
|
||||
CONFIG_CAVIUM_ERRATUM_27456=y
|
||||
@@ -528,6 +530,7 @@ CONFIG_CMDLINE="console=ttyAMA0"
|
||||
CONFIG_CMDLINE_FROM_BOOTLOADER=y
|
||||
# CONFIG_CMDLINE_FORCE is not set
|
||||
# CONFIG_EFI is not set
|
||||
# CONFIG_COMPRESSED_INSTALL is not set
|
||||
# end of Boot options
|
||||
|
||||
#
|
||||
@@ -694,6 +697,7 @@ CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
|
||||
CONFIG_ARCH_WANT_PMD_MKWRITE=y
|
||||
CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
|
||||
CONFIG_MODULES_USE_ELF_RELA=y
|
||||
CONFIG_ARCH_WANTS_EXECMEM_LATE=y
|
||||
CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y
|
||||
CONFIG_SOFTIRQ_ON_OWN_STACK=y
|
||||
CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
|
||||
@@ -731,6 +735,7 @@ CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
|
||||
CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
|
||||
CONFIG_ARCH_HAVE_TRACE_MMIO_ACCESS=y
|
||||
CONFIG_ARCH_HAS_HW_PTE_YOUNG=y
|
||||
CONFIG_ARCH_HAS_KERNEL_FPU_SUPPORT=y
|
||||
|
||||
#
|
||||
# GCOV-based kernel profiling
|
||||
@@ -750,7 +755,6 @@ CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
|
||||
# end of General architecture-dependent options
|
||||
|
||||
CONFIG_RT_MUTEXES=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
CONFIG_MODULES=y
|
||||
# CONFIG_MODULE_DEBUG is not set
|
||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||
@@ -776,11 +780,9 @@ CONFIG_BLK_CGROUP_PUNT_BIO=y
|
||||
CONFIG_BLK_DEV_BSG_COMMON=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 is not set
|
||||
CONFIG_BLK_DEV_THROTTLING=y
|
||||
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
|
||||
# CONFIG_BLK_WBT is not set
|
||||
# CONFIG_BLK_CGROUP_IOLATENCY is not set
|
||||
# CONFIG_BLK_CGROUP_IOCOST is not set
|
||||
@@ -845,6 +847,7 @@ CONFIG_COREDUMP=y
|
||||
#
|
||||
CONFIG_SWAP=y
|
||||
# CONFIG_ZSWAP is not set
|
||||
CONFIG_HAVE_ZSMALLOC=y
|
||||
CONFIG_ZSMALLOC=m
|
||||
CONFIG_ZSMALLOC_STAT=y
|
||||
CONFIG_ZSMALLOC_CHAIN_SIZE=8
|
||||
@@ -856,6 +859,7 @@ CONFIG_SLUB=y
|
||||
CONFIG_SLAB_MERGE_DEFAULT=y
|
||||
# CONFIG_SLAB_FREELIST_RANDOM is not set
|
||||
# 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
|
||||
@@ -867,7 +871,7 @@ CONFIG_SPARSEMEM=y
|
||||
CONFIG_SPARSEMEM_EXTREME=y
|
||||
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
|
||||
CONFIG_SPARSEMEM_VMEMMAP=y
|
||||
CONFIG_HAVE_FAST_GUP=y
|
||||
CONFIG_HAVE_GUP_FAST=y
|
||||
CONFIG_ARCH_KEEP_MEMBLOCK=y
|
||||
CONFIG_MEMORY_ISOLATION=y
|
||||
CONFIG_EXCLUSIVE_SYSTEM_RAM=y
|
||||
@@ -897,6 +901,7 @@ CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
|
||||
# CONFIG_TRANSPARENT_HUGEPAGE_NEVER is not set
|
||||
CONFIG_THP_SWAP=y
|
||||
# CONFIG_READ_ONLY_THP_FOR_FS is not set
|
||||
CONFIG_PGTABLE_HAS_HUGE_LEAVES=y
|
||||
CONFIG_CMA=y
|
||||
# CONFIG_CMA_DEBUGFS is not set
|
||||
# CONFIG_CMA_SYSFS is not set
|
||||
@@ -927,6 +932,7 @@ CONFIG_LRU_GEN_WALKS_MMU=y
|
||||
CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y
|
||||
CONFIG_PER_VMA_LOCK=y
|
||||
CONFIG_LOCK_MM_AND_FIND_VMA=y
|
||||
CONFIG_EXECMEM=y
|
||||
|
||||
#
|
||||
# Data Access Monitoring
|
||||
@@ -1860,6 +1866,7 @@ CONFIG_VXLAN=m
|
||||
# CONFIG_GENEVE is not set
|
||||
# CONFIG_BAREUDP is not set
|
||||
# CONFIG_GTP is not set
|
||||
# CONFIG_PFCP is not set
|
||||
# CONFIG_AMT is not set
|
||||
# CONFIG_MACSEC is not set
|
||||
# CONFIG_NETCONSOLE is not set
|
||||
@@ -1895,6 +1902,7 @@ CONFIG_SUN4I_EMAC=y
|
||||
# CONFIG_NET_VENDOR_LITEX is not set
|
||||
# CONFIG_NET_VENDOR_MARVELL is not set
|
||||
# CONFIG_NET_VENDOR_MELLANOX is not set
|
||||
CONFIG_NET_VENDOR_META=y
|
||||
# CONFIG_NET_VENDOR_MICREL is not set
|
||||
# CONFIG_NET_VENDOR_MICROCHIP is not set
|
||||
# CONFIG_NET_VENDOR_MICROSEMI is not set
|
||||
@@ -1941,6 +1949,7 @@ CONFIG_FIXED_PHY=y
|
||||
#
|
||||
# MII PHY device drivers
|
||||
#
|
||||
# CONFIG_AIR_EN8811H_PHY is not set
|
||||
# CONFIG_AMD_PHY is not set
|
||||
# CONFIG_ADIN_PHY is not set
|
||||
# CONFIG_ADIN1100_PHY is not set
|
||||
@@ -1983,6 +1992,7 @@ CONFIG_MICROCHIP_PHY=m
|
||||
CONFIG_REALTEK_PHY=m
|
||||
# CONFIG_RENESAS_PHY is not set
|
||||
# CONFIG_ROCKCHIP_PHY is not set
|
||||
# CONFIG_RK630_PHY is not set
|
||||
CONFIG_SMSC_PHY=m
|
||||
# CONFIG_STE10XP is not set
|
||||
# CONFIG_TERANETICS_PHY is not set
|
||||
@@ -2089,6 +2099,7 @@ CONFIG_ATH10K_CE=y
|
||||
# CONFIG_ATH10K_USB is not set
|
||||
# CONFIG_ATH10K_DEBUG is not set
|
||||
# CONFIG_ATH10K_DEBUGFS is not set
|
||||
CONFIG_ATH10K_LEDS=y
|
||||
# CONFIG_ATH10K_TRACING is not set
|
||||
# CONFIG_WCN36XX is not set
|
||||
# CONFIG_ATH11K is not set
|
||||
@@ -2134,6 +2145,7 @@ CONFIG_WLAN_VENDOR_REALTEK=y
|
||||
# CONFIG_RTL8187 is not set
|
||||
CONFIG_RTL_CARDS=m
|
||||
# CONFIG_RTL8192CU is not set
|
||||
# CONFIG_RTL8192DU is not set
|
||||
# CONFIG_RTL8XXXU is not set
|
||||
# CONFIG_RTW88 is not set
|
||||
# CONFIG_RTW89 is not set
|
||||
@@ -2464,6 +2476,7 @@ CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
|
||||
CONFIG_DEVMEM=y
|
||||
CONFIG_DEVPORT=y
|
||||
CONFIG_TCG_TPM=y
|
||||
# CONFIG_TCG_TPM2_HMAC is not set
|
||||
# CONFIG_TCG_TIS is not set
|
||||
# CONFIG_TCG_TIS_I2C is not set
|
||||
# CONFIG_TCG_TIS_I2C_CR50 is not set
|
||||
@@ -2681,6 +2694,12 @@ CONFIG_GPIO_PCA953X_IRQ=y
|
||||
# CONFIG_GPIO_SIM is not set
|
||||
# end of Virtual GPIO drivers
|
||||
|
||||
#
|
||||
# GPIO Debugging utilities
|
||||
#
|
||||
# CONFIG_GPIO_VIRTUSER is not set
|
||||
# end of GPIO Debugging utilities
|
||||
|
||||
# CONFIG_W1 is not set
|
||||
CONFIG_POWER_RESET=y
|
||||
# CONFIG_POWER_RESET_GPIO is not set
|
||||
@@ -2694,6 +2713,7 @@ CONFIG_POWER_RESET_SYSCON=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
|
||||
@@ -2717,6 +2737,7 @@ CONFIG_BATTERY_AXP20X=y
|
||||
CONFIG_AXP20X_POWER=y
|
||||
# CONFIG_BATTERY_MAX17040 is not set
|
||||
# CONFIG_BATTERY_MAX17042 is not set
|
||||
# CONFIG_BATTERY_MAX1720X is not set
|
||||
# CONFIG_CHARGER_ISP1704 is not set
|
||||
# CONFIG_CHARGER_MAX8903 is not set
|
||||
# CONFIG_CHARGER_LP8727 is not set
|
||||
@@ -2753,7 +2774,6 @@ CONFIG_HWMON=y
|
||||
#
|
||||
# CONFIG_SENSORS_AD7414 is not set
|
||||
# CONFIG_SENSORS_AD7418 is not set
|
||||
# CONFIG_SENSORS_ADM1021 is not set
|
||||
# CONFIG_SENSORS_ADM1025 is not set
|
||||
# CONFIG_SENSORS_ADM1026 is not set
|
||||
# CONFIG_SENSORS_ADM1029 is not set
|
||||
@@ -2819,7 +2839,6 @@ CONFIG_SENSORS_ARM_SCPI=y
|
||||
# CONFIG_SENSORS_MAX6620 is not set
|
||||
# CONFIG_SENSORS_MAX6621 is not set
|
||||
# CONFIG_SENSORS_MAX6639 is not set
|
||||
# CONFIG_SENSORS_MAX6642 is not set
|
||||
# CONFIG_SENSORS_MAX6650 is not set
|
||||
# CONFIG_SENSORS_MAX6697 is not set
|
||||
# CONFIG_SENSORS_MAX31790 is not set
|
||||
@@ -2885,6 +2904,7 @@ CONFIG_SENSORS_ARM_SCPI=y
|
||||
# CONFIG_SENSORS_INA2XX is not set
|
||||
# CONFIG_SENSORS_INA238 is not set
|
||||
# CONFIG_SENSORS_INA3221 is not set
|
||||
# CONFIG_SENSORS_SPD5118 is not set
|
||||
# CONFIG_SENSORS_TC74 is not set
|
||||
# CONFIG_SENSORS_THMC50 is not set
|
||||
# CONFIG_SENSORS_TMP102 is not set
|
||||
@@ -3007,6 +3027,7 @@ CONFIG_MFD_AXP20X_RSB=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
|
||||
@@ -3074,10 +3095,12 @@ CONFIG_MFD_SYSCON=y
|
||||
# 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 is not set
|
||||
# CONFIG_MFD_ATC260X_I2C is not set
|
||||
# CONFIG_MFD_QCOM_PM8008 is not set
|
||||
# CONFIG_MFD_CS40L50_I2C is not set
|
||||
# CONFIG_RAVE_SP_CORE is not set
|
||||
# CONFIG_MFD_RSMU_I2C is not set
|
||||
# end of Multifunction device drivers
|
||||
@@ -3150,6 +3173,7 @@ CONFIG_REGULATOR_PWM=y
|
||||
# CONFIG_REGULATOR_RTQ6752 is not set
|
||||
# CONFIG_REGULATOR_RTQ2208 is not set
|
||||
# CONFIG_REGULATOR_SLG51000 is not set
|
||||
CONFIG_REGULATOR_SUN20I=y
|
||||
# CONFIG_REGULATOR_SY8106A is not set
|
||||
# CONFIG_REGULATOR_SY8824X is not set
|
||||
# CONFIG_REGULATOR_SY8827N is not set
|
||||
@@ -3339,6 +3363,7 @@ CONFIG_VIDEO_MEM2MEM_DEINTERLACE=y
|
||||
#
|
||||
# Chips&Media media platform drivers
|
||||
#
|
||||
# CONFIG_VIDEO_E5010_JPEG_ENC is not set
|
||||
|
||||
#
|
||||
# Intel media platform drivers
|
||||
@@ -3372,6 +3397,11 @@ CONFIG_VIDEO_MEM2MEM_DEINTERLACE=y
|
||||
# Qualcomm media platform drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Raspberry Pi media platform drivers
|
||||
#
|
||||
# CONFIG_VIDEO_RASPBERRYPI_PISP_BE is not set
|
||||
|
||||
#
|
||||
# Renesas media platform drivers
|
||||
#
|
||||
@@ -3431,6 +3461,8 @@ CONFIG_VIDEO_CAMERA_SENSOR=y
|
||||
# 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_MIPI is not set
|
||||
# CONFIG_VIDEO_HI556 is not set
|
||||
# CONFIG_VIDEO_HI846 is not set
|
||||
@@ -3440,6 +3472,7 @@ CONFIG_VIDEO_CAMERA_SENSOR=y
|
||||
# CONFIG_VIDEO_IMX219 is not set
|
||||
# CONFIG_VIDEO_IMX258 is not set
|
||||
# CONFIG_VIDEO_IMX274 is not set
|
||||
# CONFIG_VIDEO_IMX283 is not set
|
||||
# CONFIG_VIDEO_IMX290 is not set
|
||||
# CONFIG_VIDEO_IMX296 is not set
|
||||
# CONFIG_VIDEO_IMX319 is not set
|
||||
@@ -3494,7 +3527,7 @@ CONFIG_VIDEO_OV5640=m
|
||||
# CONFIG_VIDEO_RJ54N1 is not set
|
||||
# CONFIG_VIDEO_S5K5BAF is not set
|
||||
# CONFIG_VIDEO_S5K6A3 is not set
|
||||
# CONFIG_VIDEO_ST_VGXY61 is not set
|
||||
# CONFIG_VIDEO_VGXY61 is not set
|
||||
# CONFIG_VIDEO_CCS is not set
|
||||
# CONFIG_VIDEO_ET8EK8 is not set
|
||||
# CONFIG_VIDEO_HM5065 is not set
|
||||
@@ -3635,6 +3668,8 @@ CONFIG_VIDEO_GC2145=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
|
||||
# end of Media ancillary drivers
|
||||
|
||||
@@ -3652,9 +3687,9 @@ CONFIG_DRM_FBDEV_EMULATION=y
|
||||
CONFIG_DRM_FBDEV_OVERALLOC=100
|
||||
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
|
||||
CONFIG_DRM_DISPLAY_HELPER=y
|
||||
# CONFIG_DRM_DISPLAY_DP_AUX_CEC is not set
|
||||
# CONFIG_DRM_DISPLAY_DP_AUX_CHARDEV is not set
|
||||
CONFIG_DRM_DISPLAY_HDMI_HELPER=y
|
||||
# CONFIG_DRM_DP_AUX_CHARDEV is not set
|
||||
# CONFIG_DRM_DP_CEC is not set
|
||||
CONFIG_DRM_GEM_DMA_HELPER=y
|
||||
CONFIG_DRM_GEM_SHMEM_HELPER=y
|
||||
CONFIG_DRM_SCHED=y
|
||||
@@ -3701,9 +3736,11 @@ CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=y
|
||||
CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D=y
|
||||
# CONFIG_DRM_PANEL_DSI_CM is not set
|
||||
# CONFIG_DRM_PANEL_LVDS is not set
|
||||
# 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_ILI9805 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9806E is not set
|
||||
CONFIG_DRM_PANEL_ILITEK_ILI9881C=y
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9882T is not set
|
||||
# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
|
||||
@@ -3715,6 +3752,8 @@ CONFIG_DRM_PANEL_ILITEK_ILI9881C=y
|
||||
# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
|
||||
# CONFIG_DRM_PANEL_LINCOLNTECH_LCD197 is not set
|
||||
# CONFIG_DRM_PANEL_LG_SW43408 is not set
|
||||
# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
|
||||
# CONFIG_DRM_PANEL_NEWVISION_NV3051D is not set
|
||||
# CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set
|
||||
@@ -3731,9 +3770,11 @@ CONFIG_DRM_PANEL_ILITEK_ILI9881C=y
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM692E5 is not set
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM69380 is not set
|
||||
# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E3FA7 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
|
||||
@@ -3821,6 +3862,7 @@ CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
|
||||
# CONFIG_DRM_PL111 is not set
|
||||
CONFIG_DRM_LIMA=y
|
||||
CONFIG_DRM_PANFROST=y
|
||||
# CONFIG_DRM_PANTHOR is not set
|
||||
# CONFIG_DRM_TIDSS is not set
|
||||
# CONFIG_DRM_GUD is not set
|
||||
# CONFIG_DRM_SSD130X is not set
|
||||
@@ -3876,6 +3918,7 @@ CONFIG_BACKLIGHT_PWM=y
|
||||
# CONFIG_BACKLIGHT_QCOM_WLED is not set
|
||||
# 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 is not set
|
||||
@@ -4034,6 +4077,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=m
|
||||
# CONFIG_SND_SOC_AK4458 is not set
|
||||
# CONFIG_SND_SOC_AK4554 is not set
|
||||
CONFIG_SND_SOC_AK4613=m
|
||||
# CONFIG_SND_SOC_AK4619 is not set
|
||||
# CONFIG_SND_SOC_AK4642 is not set
|
||||
# CONFIG_SND_SOC_AK5386 is not set
|
||||
# CONFIG_SND_SOC_AK5558 is not set
|
||||
@@ -4070,6 +4114,7 @@ CONFIG_SND_SOC_BT_SCO=m
|
||||
# CONFIG_SND_SOC_CS4341 is not set
|
||||
# CONFIG_SND_SOC_CS4349 is not set
|
||||
# CONFIG_SND_SOC_CS53L30 is not set
|
||||
# CONFIG_SND_SOC_CS530X_I2C is not set
|
||||
# CONFIG_SND_SOC_CX2072X is not set
|
||||
# CONFIG_SND_SOC_DA7213 is not set
|
||||
CONFIG_SND_SOC_DMIC=m
|
||||
@@ -4077,13 +4122,13 @@ CONFIG_SND_SOC_HDMI_CODEC=m
|
||||
CONFIG_SND_SOC_EC25=m
|
||||
# CONFIG_SND_SOC_ES7134 is not set
|
||||
# CONFIG_SND_SOC_ES7241 is not set
|
||||
# CONFIG_SND_SOC_ES8311 is not set
|
||||
# CONFIG_SND_SOC_ES8316 is not set
|
||||
# CONFIG_SND_SOC_ES8326 is not set
|
||||
# CONFIG_SND_SOC_ES8328_I2C is not set
|
||||
# CONFIG_SND_SOC_GTM601 is not set
|
||||
# CONFIG_SND_SOC_HDA is not set
|
||||
# CONFIG_SND_SOC_ICS43432 is not set
|
||||
# CONFIG_SND_SOC_INNO_RK3036 is not set
|
||||
# CONFIG_SND_SOC_MAX98088 is not set
|
||||
# CONFIG_SND_SOC_MAX98090 is not set
|
||||
# CONFIG_SND_SOC_MAX98357A is not set
|
||||
@@ -4106,7 +4151,7 @@ CONFIG_SND_SOC_EC25=m
|
||||
# CONFIG_SND_SOC_PCM3168A_I2C is not set
|
||||
# CONFIG_SND_SOC_PCM5102A is not set
|
||||
# CONFIG_SND_SOC_PCM512x_I2C is not set
|
||||
# CONFIG_SND_SOC_RK3328 is not set
|
||||
# CONFIG_SND_SOC_PCM6240 is not set
|
||||
# CONFIG_SND_SOC_RT5616 is not set
|
||||
# CONFIG_SND_SOC_RT5631 is not set
|
||||
# CONFIG_SND_SOC_RT5640 is not set
|
||||
@@ -4309,6 +4354,7 @@ CONFIG_HID_MULTITOUCH=y
|
||||
# CONFIG_HID_U2FZERO is not set
|
||||
CONFIG_HID_WACOM=m
|
||||
# CONFIG_HID_WIIMOTE is not set
|
||||
# CONFIG_HID_WINWING is not set
|
||||
# CONFIG_HID_XINMO is not set
|
||||
# CONFIG_HID_ZEROPLUS is not set
|
||||
# CONFIG_HID_ZYDACRON is not set
|
||||
@@ -4561,7 +4607,7 @@ CONFIG_USB_HSIC_USB3503=y
|
||||
# CONFIG_USB_HSIC_USB4604 is not set
|
||||
# CONFIG_USB_LINK_LAYER_TEST is not set
|
||||
# CONFIG_USB_CHAOSKEY is not set
|
||||
# CONFIG_USB_ONBOARD_HUB is not set
|
||||
# CONFIG_USB_ONBOARD_DEV is not set
|
||||
|
||||
#
|
||||
# USB Physical Layer drivers
|
||||
@@ -4579,6 +4625,7 @@ CONFIG_USB_GADGET=y
|
||||
# CONFIG_USB_GADGET_DEBUG_FS is not set
|
||||
CONFIG_USB_GADGET_VBUS_DRAW=2
|
||||
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
|
||||
# CONFIG_U_SERIAL_CONSOLE is not set
|
||||
|
||||
#
|
||||
# USB Peripheral Controller
|
||||
@@ -4598,6 +4645,8 @@ CONFIG_USB_BDC_UDC=y
|
||||
# end of USB Peripheral Controller
|
||||
|
||||
CONFIG_USB_LIBCOMPOSITE=y
|
||||
CONFIG_USB_F_ACM=y
|
||||
CONFIG_USB_U_SERIAL=y
|
||||
CONFIG_USB_U_ETHER=y
|
||||
CONFIG_USB_F_NCM=y
|
||||
CONFIG_USB_F_ECM=y
|
||||
@@ -4791,6 +4840,7 @@ CONFIG_LEDS_SGM3140=y
|
||||
# CONFIG_LEDS_LM3601X is not set
|
||||
# CONFIG_LEDS_RT4505 is not set
|
||||
# CONFIG_LEDS_RT8515 is not set
|
||||
# CONFIG_LEDS_SY7802 is not set
|
||||
|
||||
#
|
||||
# RGB LED drivers
|
||||
@@ -4817,8 +4867,8 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
|
||||
CONFIG_LEDS_TRIGGER_PANIC=y
|
||||
# CONFIG_LEDS_TRIGGER_NETDEV is not set
|
||||
CONFIG_LEDS_TRIGGER_PATTERN=y
|
||||
# CONFIG_LEDS_TRIGGER_AUDIO is not set
|
||||
# CONFIG_LEDS_TRIGGER_TTY is not set
|
||||
# CONFIG_LEDS_TRIGGER_INPUT_EVENTS is not set
|
||||
|
||||
#
|
||||
# Simple LED drivers
|
||||
@@ -4878,6 +4928,7 @@ CONFIG_RTC_INTF_DEV=y
|
||||
# CONFIG_RTC_DRV_S35390A is not set
|
||||
# CONFIG_RTC_DRV_FM3130 is not set
|
||||
# CONFIG_RTC_DRV_RX8010 is not set
|
||||
# CONFIG_RTC_DRV_RX8111 is not set
|
||||
# CONFIG_RTC_DRV_RX8581 is not set
|
||||
# CONFIG_RTC_DRV_RX8025 is not set
|
||||
# CONFIG_RTC_DRV_EM3027 is not set
|
||||
@@ -5012,7 +5063,6 @@ CONFIG_VHOST_MENU=y
|
||||
# CONFIG_GREYBUS is not set
|
||||
# CONFIG_COMEDI is not set
|
||||
CONFIG_STAGING=y
|
||||
# CONFIG_PRISM2_USB is not set
|
||||
# CONFIG_RTLLIB is not set
|
||||
CONFIG_RTL8723BS=m
|
||||
# CONFIG_R8712U is not set
|
||||
@@ -5068,8 +5118,10 @@ CONFIG_VIDEO_SUNXI_CEDRUS=y
|
||||
CONFIG_RTL8723CS=m
|
||||
# CONFIG_GOLDFISH is not set
|
||||
# CONFIG_CHROME_PLATFORMS is not set
|
||||
# CONFIG_CZNIC_PLATFORMS is not set
|
||||
# CONFIG_MELLANOX_PLATFORM is not set
|
||||
# CONFIG_SURFACE_PLATFORMS is not set
|
||||
CONFIG_ARM64_PLATFORM_DEVICES=y
|
||||
CONFIG_HAVE_CLK=y
|
||||
CONFIG_HAVE_CLK_PREPARE=y
|
||||
CONFIG_COMMON_CLK=y
|
||||
@@ -5135,6 +5187,7 @@ CONFIG_SUN50I_ERRATUM_UNKNOWN1=y
|
||||
CONFIG_MAILBOX=y
|
||||
CONFIG_ARM_MHU=y
|
||||
# CONFIG_ARM_MHU_V2 is not set
|
||||
# CONFIG_ARM_MHU_V3 is not set
|
||||
CONFIG_PLATFORM_MHU=y
|
||||
# CONFIG_PL320_MBOX is not set
|
||||
# CONFIG_ALTERA_MBOX is not set
|
||||
@@ -5357,7 +5410,6 @@ CONFIG_BMC150_ACCEL_I2C=m
|
||||
# CONFIG_AD7291 is not set
|
||||
# CONFIG_AD7606_IFACE_PARALLEL is not set
|
||||
# CONFIG_AD799X is not set
|
||||
# CONFIG_ADI_AXI_ADC is not set
|
||||
CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_AXP288_ADC is not set
|
||||
# CONFIG_CC10001_ADC is not set
|
||||
@@ -5382,6 +5434,7 @@ CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_SUN20I_GPADC is not set
|
||||
# CONFIG_TI_ADC081C is not set
|
||||
# CONFIG_TI_ADS1015 is not set
|
||||
# CONFIG_TI_ADS1119 is not set
|
||||
# CONFIG_TI_ADS7924 is not set
|
||||
# CONFIG_TI_ADS1100 is not set
|
||||
# CONFIG_VF610_ADC is not set
|
||||
@@ -5420,6 +5473,7 @@ CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_ATLAS_EZO_SENSOR is not set
|
||||
# CONFIG_BME680 is not set
|
||||
# CONFIG_CCS811 is not set
|
||||
# CONFIG_ENS160 is not set
|
||||
# CONFIG_IAQCORE is not set
|
||||
# CONFIG_PMS7003 is not set
|
||||
# CONFIG_SCD30_CORE is not set
|
||||
@@ -5558,6 +5612,7 @@ CONFIG_INV_MPU6050_I2C=m
|
||||
# CONFIG_AL3010 is not set
|
||||
# CONFIG_AL3320A is not set
|
||||
# CONFIG_APDS9300 is not set
|
||||
# CONFIG_APDS9306 is not set
|
||||
# CONFIG_APDS9960 is not set
|
||||
# CONFIG_AS73211 is not set
|
||||
# CONFIG_BH1750 is not set
|
||||
@@ -5602,6 +5657,7 @@ CONFIG_STK3310=m
|
||||
# CONFIG_VCNL4000 is not set
|
||||
# CONFIG_VCNL4035 is not set
|
||||
# CONFIG_VEML6030 is not set
|
||||
# CONFIG_VEML6040 is not set
|
||||
# CONFIG_VEML6070 is not set
|
||||
# CONFIG_VEML6075 is not set
|
||||
# CONFIG_VL6180 is not set
|
||||
@@ -5734,10 +5790,10 @@ CONFIG_IIO_ST_MAGN_I2C_3AXIS=m
|
||||
# end of Temperature sensors
|
||||
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_SYSFS=y
|
||||
# CONFIG_PWM_ATMEL_TCB is not set
|
||||
# CONFIG_PWM_CLK is not set
|
||||
# CONFIG_PWM_FSL_FTM is not set
|
||||
# CONFIG_PWM_GPIO is not set
|
||||
# CONFIG_PWM_PCA9685 is not set
|
||||
CONFIG_PWM_SUN4I=y
|
||||
# CONFIG_PWM_XILINX is not set
|
||||
@@ -5750,7 +5806,9 @@ CONFIG_ARM_GIC=y
|
||||
CONFIG_ARM_GIC_MAX_NR=1
|
||||
CONFIG_ARM_GIC_V3=y
|
||||
CONFIG_ARM_GIC_V3_ITS=y
|
||||
CONFIG_IRQ_MSI_LIB=y
|
||||
# CONFIG_AL_FIC is not set
|
||||
# CONFIG_LAN966X_OIC is not set
|
||||
CONFIG_SUN6I_R_INTC=y
|
||||
CONFIG_SUNXI_NMI_INTC=y
|
||||
# CONFIG_XILINX_INTC is not set
|
||||
@@ -5958,9 +6016,9 @@ CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
|
||||
#
|
||||
CONFIG_NETFS_SUPPORT=m
|
||||
# CONFIG_NETFS_STATS is not set
|
||||
# CONFIG_NETFS_DEBUG is not set
|
||||
CONFIG_FSCACHE=y
|
||||
# CONFIG_FSCACHE_STATS is not set
|
||||
# CONFIG_FSCACHE_DEBUG is not set
|
||||
CONFIG_CACHEFILES=m
|
||||
# CONFIG_CACHEFILES_DEBUG is not set
|
||||
# CONFIG_CACHEFILES_ERROR_INJECTION is not set
|
||||
@@ -6269,7 +6327,6 @@ CONFIG_CRYPTO_ECC=m
|
||||
CONFIG_CRYPTO_ECDH=m
|
||||
# CONFIG_CRYPTO_ECDSA is not set
|
||||
# CONFIG_CRYPTO_ECRDSA is not set
|
||||
# CONFIG_CRYPTO_SM2 is not set
|
||||
# CONFIG_CRYPTO_CURVE25519 is not set
|
||||
# end of Public-key cryptography
|
||||
|
||||
@@ -6390,7 +6447,6 @@ CONFIG_CRYPTO_USER_API_SKCIPHER=m
|
||||
# CONFIG_CRYPTO_USER_API_RNG is not set
|
||||
# CONFIG_CRYPTO_USER_API_AEAD is not set
|
||||
# CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE is not set
|
||||
# CONFIG_CRYPTO_STATS is not set
|
||||
# end of Userspace interface
|
||||
|
||||
CONFIG_CRYPTO_HASH_INFO=y
|
||||
@@ -6565,13 +6621,13 @@ CONFIG_NEED_DMA_MAP_STATE=y
|
||||
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
|
||||
CONFIG_DMA_DECLARE_COHERENT=y
|
||||
CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
|
||||
CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y
|
||||
CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
|
||||
CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
|
||||
CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
|
||||
CONFIG_SWIOTLB=y
|
||||
# CONFIG_SWIOTLB_DYNAMIC is not set
|
||||
CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y
|
||||
CONFIG_DMA_NEED_SYNC=y
|
||||
# CONFIG_DMA_RESTRICTED_POOL is not set
|
||||
CONFIG_DMA_NONCOHERENT_MMAP=y
|
||||
CONFIG_DMA_COHERENT_POOL=y
|
||||
@@ -6598,6 +6654,7 @@ CONFIG_NLATTR=y
|
||||
CONFIG_CLZ_TAB=y
|
||||
# CONFIG_IRQ_POLL is not set
|
||||
CONFIG_MPILIB=y
|
||||
CONFIG_DIMLIB=y
|
||||
CONFIG_LIBFDT=y
|
||||
CONFIG_OID_REGISTRY=y
|
||||
CONFIG_HAVE_GENERIC_VDSO=y
|
||||
@@ -6690,6 +6747,7 @@ CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
|
||||
# CONFIG_DEBUG_VM_PGTABLE is not set
|
||||
CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
|
||||
CONFIG_DEBUG_MEMORY_INIT=y
|
||||
# CONFIG_MEM_ALLOC_PROFILING is not set
|
||||
CONFIG_HAVE_ARCH_KASAN=y
|
||||
CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
|
||||
CONFIG_HAVE_ARCH_KASAN_HW_TAGS=y
|
||||
@@ -6716,6 +6774,7 @@ CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
|
||||
# Scheduler Debugging
|
||||
#
|
||||
CONFIG_SCHED_INFO=y
|
||||
# CONFIG_SCHEDSTATS is not set
|
||||
# end of Scheduler Debugging
|
||||
|
||||
# CONFIG_DEBUG_TIMEKEEPING is not set
|
||||
@@ -6744,6 +6803,7 @@ CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
|
||||
# CONFIG_RCU_CPU_STALL_CPUTIME is not set
|
||||
# end of RCU Debugging
|
||||
|
||||
CONFIG_USER_STACKTRACE_SUPPORT=y
|
||||
CONFIG_NOP_TRACER=y
|
||||
CONFIG_HAVE_FUNCTION_TRACER=y
|
||||
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
|
||||
@@ -6799,6 +6859,7 @@ CONFIG_FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY=y
|
||||
# CONFIG_RING_BUFFER_BENCHMARK is not set
|
||||
# CONFIG_TRACE_EVAL_MAP_FILE is not set
|
||||
# CONFIG_FTRACE_RECORD_RECURSION is not set
|
||||
# CONFIG_FTRACE_VALIDATE_RCU_IS_WATCHING is not set
|
||||
# CONFIG_FTRACE_STARTUP_TEST is not set
|
||||
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
|
||||
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm 6.9.10 Kernel Configuration
|
||||
# Linux/arm 6.11.0 Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="armv7-alpine-linux-musleabihf-gcc (Alpine 14.2.0) 14.2.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
@@ -115,7 +115,7 @@ CONFIG_PREEMPTION=y
|
||||
CONFIG_TICK_CPU_ACCOUNTING=y
|
||||
# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
|
||||
# CONFIG_IRQ_TIME_ACCOUNTING is not set
|
||||
CONFIG_SCHED_THERMAL_PRESSURE=y
|
||||
CONFIG_SCHED_HW_PRESSURE=y
|
||||
# CONFIG_BSD_PROCESS_ACCT is not set
|
||||
# CONFIG_TASKSTATS is not set
|
||||
CONFIG_PSI=y
|
||||
@@ -134,6 +134,7 @@ CONFIG_TREE_SRCU=y
|
||||
CONFIG_NEED_SRCU_NMI_SAFE=y
|
||||
CONFIG_TASKS_RCU_GENERIC=y
|
||||
# CONFIG_FORCE_TASKS_RCU is not set
|
||||
CONFIG_NEED_TASKS_RCU=y
|
||||
CONFIG_TASKS_RCU=y
|
||||
# CONFIG_FORCE_TASKS_RUDE_RCU is not set
|
||||
CONFIG_TASKS_RUDE_RCU=y
|
||||
@@ -172,11 +173,12 @@ CONFIG_GCC10_NO_ARRAY_BOUNDS=y
|
||||
CONFIG_CC_NO_ARRAY_BOUNDS=y
|
||||
CONFIG_GCC_NO_STRINGOP_OVERFLOW=y
|
||||
CONFIG_CC_NO_STRINGOP_OVERFLOW=y
|
||||
CONFIG_SLAB_OBJ_EXT=y
|
||||
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
|
||||
@@ -218,6 +220,7 @@ CONFIG_RD_ZSTD=y
|
||||
CONFIG_INITRAMFS_PRESERVE_MTIME=y
|
||||
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
|
||||
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
|
||||
CONFIG_HAVE_LD_DEAD_CODE_DATA_ELIMINATION=y
|
||||
CONFIG_LD_ORPHAN_WARN=y
|
||||
CONFIG_LD_ORPHAN_WARN_LEVEL="warn"
|
||||
CONFIG_SYSCTL=y
|
||||
@@ -231,7 +234,6 @@ CONFIG_POSIX_TIMERS=y
|
||||
CONFIG_PRINTK=y
|
||||
CONFIG_BUG=y
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_BASE_FULL=y
|
||||
CONFIG_FUTEX=y
|
||||
CONFIG_FUTEX_PI=y
|
||||
CONFIG_EPOLL=y
|
||||
@@ -248,7 +250,6 @@ CONFIG_RSEQ=y
|
||||
CONFIG_CACHESTAT_SYSCALL=y
|
||||
CONFIG_KALLSYMS=y
|
||||
# CONFIG_KALLSYMS_SELFTEST is not set
|
||||
CONFIG_KALLSYMS_BASE_RELATIVE=y
|
||||
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
|
||||
CONFIG_HAVE_PERF_EVENTS=y
|
||||
CONFIG_PERF_USE_VMALLOC=y
|
||||
@@ -481,6 +482,7 @@ CONFIG_ARCH_FLATMEM_ENABLE=y
|
||||
CONFIG_ARCH_SPARSEMEM_ENABLE=y
|
||||
CONFIG_HIGHMEM=y
|
||||
CONFIG_HIGHPTE=y
|
||||
CONFIG_ARM_PAN=y
|
||||
CONFIG_CPU_SW_DOMAIN_PAN=y
|
||||
CONFIG_HW_PERF_EVENTS=y
|
||||
CONFIG_ARM_MODULE_PLTS=y
|
||||
@@ -633,10 +635,12 @@ CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
|
||||
CONFIG_SECCOMP=y
|
||||
CONFIG_SECCOMP_FILTER=y
|
||||
# CONFIG_SECCOMP_CACHE_DEBUG is not set
|
||||
CONFIG_HAVE_ARCH_STACKLEAK=y
|
||||
CONFIG_HAVE_STACKPROTECTOR=y
|
||||
CONFIG_STACKPROTECTOR=y
|
||||
CONFIG_STACKPROTECTOR_STRONG=y
|
||||
CONFIG_LTO_NONE=y
|
||||
CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
|
||||
CONFIG_HAVE_CONTEXT_TRACKING_USER=y
|
||||
CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
|
||||
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
|
||||
@@ -687,7 +691,6 @@ CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
|
||||
# end of General architecture-dependent options
|
||||
|
||||
CONFIG_RT_MUTEXES=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
CONFIG_MODULES=y
|
||||
# CONFIG_MODULE_DEBUG is not set
|
||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||
@@ -712,11 +715,9 @@ CONFIG_BLK_CGROUP_PUNT_BIO=y
|
||||
CONFIG_BLK_DEV_BSG_COMMON=y
|
||||
# CONFIG_BLK_DEV_BSGLIB is not set
|
||||
CONFIG_BLK_DEV_INTEGRITY=y
|
||||
CONFIG_BLK_DEV_INTEGRITY_T10=y
|
||||
CONFIG_BLK_DEV_WRITE_MOUNTED=y
|
||||
# CONFIG_BLK_DEV_ZONED is not set
|
||||
CONFIG_BLK_DEV_THROTTLING=y
|
||||
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
|
||||
# CONFIG_BLK_WBT is not set
|
||||
# CONFIG_BLK_CGROUP_IOLATENCY is not set
|
||||
# CONFIG_BLK_CGROUP_IOCOST is not set
|
||||
@@ -774,6 +775,7 @@ CONFIG_COREDUMP=y
|
||||
#
|
||||
CONFIG_SWAP=y
|
||||
# CONFIG_ZSWAP is not set
|
||||
CONFIG_HAVE_ZSMALLOC=y
|
||||
CONFIG_ZSMALLOC=m
|
||||
CONFIG_ZSMALLOC_STAT=y
|
||||
CONFIG_ZSMALLOC_CHAIN_SIZE=8
|
||||
@@ -785,6 +787,7 @@ CONFIG_SLUB=y
|
||||
CONFIG_SLAB_MERGE_DEFAULT=y
|
||||
# CONFIG_SLAB_FREELIST_RANDOM is not set
|
||||
# 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
|
||||
@@ -832,6 +835,7 @@ CONFIG_LRU_GEN_ENABLED=y
|
||||
CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y
|
||||
CONFIG_PER_VMA_LOCK=y
|
||||
CONFIG_LOCK_MM_AND_FIND_VMA=y
|
||||
CONFIG_EXECMEM=y
|
||||
|
||||
#
|
||||
# Data Access Monitoring
|
||||
@@ -1730,6 +1734,7 @@ CONFIG_VXLAN=m
|
||||
# CONFIG_GENEVE is not set
|
||||
# CONFIG_BAREUDP is not set
|
||||
# CONFIG_GTP is not set
|
||||
# CONFIG_PFCP is not set
|
||||
# CONFIG_MACSEC is not set
|
||||
# CONFIG_NETCONSOLE is not set
|
||||
CONFIG_TUN=y
|
||||
@@ -1779,6 +1784,7 @@ CONFIG_NET_VENDOR_ADI=y
|
||||
CONFIG_NET_VENDOR_MELLANOX=y
|
||||
# CONFIG_MLXSW_CORE is not set
|
||||
# CONFIG_MLXFW is not set
|
||||
CONFIG_NET_VENDOR_META=y
|
||||
# CONFIG_NET_VENDOR_MICREL is not set
|
||||
# CONFIG_NET_VENDOR_MICROCHIP is not set
|
||||
CONFIG_NET_VENDOR_MICROSEMI=y
|
||||
@@ -1830,6 +1836,7 @@ CONFIG_FIXED_PHY=y
|
||||
#
|
||||
# MII PHY device drivers
|
||||
#
|
||||
# CONFIG_AIR_EN8811H_PHY is not set
|
||||
# CONFIG_AMD_PHY is not set
|
||||
# CONFIG_ADIN_PHY is not set
|
||||
# CONFIG_ADIN1100_PHY is not set
|
||||
@@ -1872,6 +1879,7 @@ CONFIG_MICREL_PHY=y
|
||||
CONFIG_REALTEK_PHY=y
|
||||
# CONFIG_RENESAS_PHY is not set
|
||||
# CONFIG_ROCKCHIP_PHY is not set
|
||||
# CONFIG_RK630_PHY is not set
|
||||
# CONFIG_SMSC_PHY is not set
|
||||
# CONFIG_STE10XP is not set
|
||||
# CONFIG_TERANETICS_PHY is not set
|
||||
@@ -2040,6 +2048,7 @@ CONFIG_ATH10K_SDIO=m
|
||||
CONFIG_ATH10K_USB=m
|
||||
# CONFIG_ATH10K_DEBUG is not set
|
||||
CONFIG_ATH10K_DEBUGFS=y
|
||||
CONFIG_ATH10K_LEDS=y
|
||||
CONFIG_ATH10K_SPECTRAL=y
|
||||
# CONFIG_ATH10K_TRACING is not set
|
||||
CONFIG_WCN36XX=m
|
||||
@@ -2137,6 +2146,7 @@ CONFIG_WLAN_VENDOR_REALTEK=y
|
||||
# CONFIG_RTL8187 is not set
|
||||
CONFIG_RTL_CARDS=m
|
||||
# CONFIG_RTL8192CU is not set
|
||||
# CONFIG_RTL8192DU is not set
|
||||
CONFIG_RTL8XXXU=m
|
||||
CONFIG_RTL8XXXU_UNTESTED=y
|
||||
CONFIG_RTW88=m
|
||||
@@ -2567,6 +2577,7 @@ CONFIG_SPI_MASTER=y
|
||||
# CONFIG_SPI_BITBANG is not set
|
||||
# CONFIG_SPI_CADENCE is not set
|
||||
# CONFIG_SPI_CADENCE_QUADSPI is not set
|
||||
# CONFIG_SPI_CH341 is not set
|
||||
# CONFIG_SPI_DESIGNWARE is not set
|
||||
# CONFIG_SPI_GPIO is not set
|
||||
# CONFIG_SPI_FSL_SPI is not set
|
||||
@@ -2744,8 +2755,15 @@ CONFIG_GPIO_CDEV_V1=y
|
||||
# CONFIG_GPIO_SIM is not set
|
||||
# end of Virtual GPIO drivers
|
||||
|
||||
#
|
||||
# GPIO Debugging utilities
|
||||
#
|
||||
# CONFIG_GPIO_VIRTUSER is not set
|
||||
# end of GPIO Debugging utilities
|
||||
|
||||
# CONFIG_W1 is not set
|
||||
# CONFIG_POWER_RESET 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
|
||||
@@ -2767,6 +2785,7 @@ CONFIG_BATTERY_AXP20X=y
|
||||
CONFIG_AXP20X_POWER=y
|
||||
# CONFIG_BATTERY_MAX17040 is not set
|
||||
# CONFIG_BATTERY_MAX17042 is not set
|
||||
# CONFIG_BATTERY_MAX1720X is not set
|
||||
# CONFIG_CHARGER_ISP1704 is not set
|
||||
# CONFIG_CHARGER_MAX8903 is not set
|
||||
# CONFIG_CHARGER_LP8727 is not set
|
||||
@@ -2804,7 +2823,6 @@ CONFIG_HWMON=y
|
||||
# CONFIG_SENSORS_AD7314 is not set
|
||||
# CONFIG_SENSORS_AD7414 is not set
|
||||
# CONFIG_SENSORS_AD7418 is not set
|
||||
# CONFIG_SENSORS_ADM1021 is not set
|
||||
# CONFIG_SENSORS_ADM1025 is not set
|
||||
# CONFIG_SENSORS_ADM1026 is not set
|
||||
# CONFIG_SENSORS_ADM1029 is not set
|
||||
@@ -2874,7 +2892,6 @@ CONFIG_HWMON=y
|
||||
# CONFIG_SENSORS_MAX6620 is not set
|
||||
# CONFIG_SENSORS_MAX6621 is not set
|
||||
# CONFIG_SENSORS_MAX6639 is not set
|
||||
# CONFIG_SENSORS_MAX6642 is not set
|
||||
# CONFIG_SENSORS_MAX6650 is not set
|
||||
# CONFIG_SENSORS_MAX6697 is not set
|
||||
# CONFIG_SENSORS_MAX31790 is not set
|
||||
@@ -2942,6 +2959,7 @@ CONFIG_HWMON=y
|
||||
# CONFIG_SENSORS_INA2XX is not set
|
||||
# CONFIG_SENSORS_INA238 is not set
|
||||
# CONFIG_SENSORS_INA3221 is not set
|
||||
# CONFIG_SENSORS_SPD5118 is not set
|
||||
# CONFIG_SENSORS_TC74 is not set
|
||||
# CONFIG_SENSORS_THMC50 is not set
|
||||
# CONFIG_SENSORS_TMP102 is not set
|
||||
@@ -3068,6 +3086,7 @@ CONFIG_MFD_AXP20X_RSB=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
|
||||
@@ -3144,10 +3163,13 @@ CONFIG_MFD_SYSCON=y
|
||||
# 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 is not set
|
||||
# CONFIG_MFD_ATC260X_I2C is not set
|
||||
# CONFIG_MFD_QCOM_PM8008 is not set
|
||||
# CONFIG_MFD_CS40L50_I2C is not set
|
||||
# CONFIG_MFD_CS40L50_SPI is not set
|
||||
# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
|
||||
# CONFIG_MFD_RSMU_I2C is not set
|
||||
# CONFIG_MFD_RSMU_SPI is not set
|
||||
@@ -3218,6 +3240,7 @@ CONFIG_REGULATOR_GPIO=y
|
||||
# CONFIG_REGULATOR_RTQ6752 is not set
|
||||
# CONFIG_REGULATOR_RTQ2208 is not set
|
||||
# CONFIG_REGULATOR_SLG51000 is not set
|
||||
CONFIG_REGULATOR_SUN20I=y
|
||||
# CONFIG_REGULATOR_SY8106A is not set
|
||||
# CONFIG_REGULATOR_SY8824X is not set
|
||||
# CONFIG_REGULATOR_SY8827N is not set
|
||||
@@ -3346,6 +3369,7 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y
|
||||
#
|
||||
# Chips&Media media platform drivers
|
||||
#
|
||||
# CONFIG_VIDEO_E5010_JPEG_ENC is not set
|
||||
|
||||
#
|
||||
# Intel media platform drivers
|
||||
@@ -3379,6 +3403,11 @@ CONFIG_V4L_MEM2MEM_DRIVERS=y
|
||||
# Qualcomm media platform drivers
|
||||
#
|
||||
|
||||
#
|
||||
# Raspberry Pi media platform drivers
|
||||
#
|
||||
# CONFIG_VIDEO_RASPBERRYPI_PISP_BE is not set
|
||||
|
||||
#
|
||||
# Renesas media platform drivers
|
||||
#
|
||||
@@ -3456,6 +3485,8 @@ CONFIG_VIDEO_IR_I2C=y
|
||||
# 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
|
||||
|
||||
#
|
||||
@@ -3483,9 +3514,10 @@ CONFIG_DRM_FBDEV_EMULATION=y
|
||||
CONFIG_DRM_FBDEV_OVERALLOC=100
|
||||
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
|
||||
CONFIG_DRM_DISPLAY_HELPER=y
|
||||
# CONFIG_DRM_DISPLAY_DP_AUX_CEC is not set
|
||||
# CONFIG_DRM_DISPLAY_DP_AUX_CHARDEV is not set
|
||||
CONFIG_DRM_DISPLAY_HDMI_HELPER=y
|
||||
# CONFIG_DRM_DP_AUX_CHARDEV is not set
|
||||
# CONFIG_DRM_DP_CEC is not set
|
||||
CONFIG_DRM_DISPLAY_HDMI_STATE_HELPER=y
|
||||
CONFIG_DRM_GEM_DMA_HELPER=y
|
||||
CONFIG_DRM_GEM_SHMEM_HELPER=y
|
||||
CONFIG_DRM_SCHED=y
|
||||
@@ -3541,11 +3573,13 @@ CONFIG_DRM_PANEL=y
|
||||
# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
|
||||
# CONFIG_DRM_PANEL_DSI_CM is not set
|
||||
CONFIG_DRM_PANEL_LVDS=y
|
||||
# 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 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9805 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9806E is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9882T is not set
|
||||
# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
|
||||
@@ -3558,8 +3592,10 @@ CONFIG_DRM_PANEL_LVDS=y
|
||||
# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
|
||||
# CONFIG_DRM_PANEL_LINCOLNTECH_LCD197 is not set
|
||||
# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
|
||||
# CONFIG_DRM_PANEL_LG_LG4573 is not set
|
||||
# CONFIG_DRM_PANEL_LG_SW43408 is not set
|
||||
# CONFIG_DRM_PANEL_MAGNACHIP_D53E6EA8966 is not set
|
||||
# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
|
||||
# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
|
||||
@@ -3581,11 +3617,13 @@ CONFIG_DRM_PANEL_LVDS=y
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM692E5 is not set
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM69380 is not set
|
||||
# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E3FA7 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set
|
||||
@@ -3690,6 +3728,7 @@ CONFIG_DRM_DW_HDMI=y
|
||||
# CONFIG_DRM_TVE200 is not set
|
||||
CONFIG_DRM_LIMA=y
|
||||
# CONFIG_DRM_PANFROST is not set
|
||||
# CONFIG_DRM_PANTHOR is not set
|
||||
# CONFIG_DRM_MCDE is not set
|
||||
# CONFIG_DRM_TIDSS is not set
|
||||
# CONFIG_DRM_GUD is not set
|
||||
@@ -3744,6 +3783,7 @@ CONFIG_BACKLIGHT_PWM=y
|
||||
# CONFIG_BACKLIGHT_QCOM_WLED is not set
|
||||
# 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 is not set
|
||||
@@ -3901,6 +3941,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
|
||||
# CONFIG_SND_SOC_AK4458 is not set
|
||||
# CONFIG_SND_SOC_AK4554 is not set
|
||||
# CONFIG_SND_SOC_AK4613 is not set
|
||||
# CONFIG_SND_SOC_AK4619 is not set
|
||||
# CONFIG_SND_SOC_AK4642 is not set
|
||||
# CONFIG_SND_SOC_AK5386 is not set
|
||||
# CONFIG_SND_SOC_AK5558 is not set
|
||||
@@ -3941,12 +3982,14 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
|
||||
# CONFIG_SND_SOC_CS4341 is not set
|
||||
# CONFIG_SND_SOC_CS4349 is not set
|
||||
# CONFIG_SND_SOC_CS53L30 is not set
|
||||
# CONFIG_SND_SOC_CS530X_I2C is not set
|
||||
# CONFIG_SND_SOC_CX2072X is not set
|
||||
# CONFIG_SND_SOC_DA7213 is not set
|
||||
# CONFIG_SND_SOC_DMIC is not set
|
||||
# CONFIG_SND_SOC_EC25 is not set
|
||||
# CONFIG_SND_SOC_ES7134 is not set
|
||||
# CONFIG_SND_SOC_ES7241 is not set
|
||||
# CONFIG_SND_SOC_ES8311 is not set
|
||||
# CONFIG_SND_SOC_ES8316 is not set
|
||||
# CONFIG_SND_SOC_ES8326 is not set
|
||||
# CONFIG_SND_SOC_ES8328_I2C is not set
|
||||
@@ -3955,7 +3998,6 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
|
||||
# CONFIG_SND_SOC_HDA is not set
|
||||
# CONFIG_SND_SOC_ICS43432 is not set
|
||||
# CONFIG_SND_SOC_IDT821034 is not set
|
||||
# CONFIG_SND_SOC_INNO_RK3036 is not set
|
||||
# CONFIG_SND_SOC_MAX98088 is not set
|
||||
# CONFIG_SND_SOC_MAX98090 is not set
|
||||
# CONFIG_SND_SOC_MAX98357A is not set
|
||||
@@ -3982,8 +4024,8 @@ CONFIG_SND_SOC_I2C_AND_SPI=y
|
||||
# CONFIG_SND_SOC_PCM5102A is not set
|
||||
# CONFIG_SND_SOC_PCM512x_I2C is not set
|
||||
# CONFIG_SND_SOC_PCM512x_SPI is not set
|
||||
# CONFIG_SND_SOC_PCM6240 is not set
|
||||
# CONFIG_SND_SOC_PEB2466 is not set
|
||||
# CONFIG_SND_SOC_RK3328 is not set
|
||||
# CONFIG_SND_SOC_RT5616 is not set
|
||||
# CONFIG_SND_SOC_RT5631 is not set
|
||||
# CONFIG_SND_SOC_RT5640 is not set
|
||||
@@ -4192,6 +4234,7 @@ CONFIG_HID_MONTEREY=y
|
||||
# CONFIG_HID_UDRAW_PS3 is not set
|
||||
CONFIG_HID_WACOM=m
|
||||
# CONFIG_HID_WIIMOTE is not set
|
||||
# CONFIG_HID_WINWING is not set
|
||||
# CONFIG_HID_XINMO is not set
|
||||
# CONFIG_HID_ZEROPLUS is not set
|
||||
# CONFIG_HID_ZYDACRON is not set
|
||||
@@ -4368,7 +4411,7 @@ CONFIG_APPLE_MFI_FASTCHARGE=m
|
||||
# CONFIG_USB_HSIC_USB3503 is not set
|
||||
# CONFIG_USB_HSIC_USB4604 is not set
|
||||
# CONFIG_USB_LINK_LAYER_TEST is not set
|
||||
# CONFIG_USB_ONBOARD_HUB is not set
|
||||
# CONFIG_USB_ONBOARD_DEV is not set
|
||||
|
||||
#
|
||||
# USB Physical Layer drivers
|
||||
@@ -4410,6 +4453,7 @@ CONFIG_USB_MAX3420_UDC=m
|
||||
# end of USB Peripheral Controller
|
||||
|
||||
CONFIG_USB_LIBCOMPOSITE=m
|
||||
CONFIG_USB_F_ACM=m
|
||||
CONFIG_USB_U_SERIAL=m
|
||||
CONFIG_USB_U_ETHER=m
|
||||
CONFIG_USB_U_AUDIO=m
|
||||
@@ -4617,8 +4661,8 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
|
||||
# CONFIG_LEDS_TRIGGER_PANIC is not set
|
||||
# CONFIG_LEDS_TRIGGER_NETDEV is not set
|
||||
CONFIG_LEDS_TRIGGER_PATTERN=y
|
||||
# CONFIG_LEDS_TRIGGER_AUDIO is not set
|
||||
# CONFIG_LEDS_TRIGGER_TTY is not set
|
||||
# CONFIG_LEDS_TRIGGER_INPUT_EVENTS is not set
|
||||
|
||||
#
|
||||
# Simple LED drivers
|
||||
@@ -4674,6 +4718,7 @@ CONFIG_RTC_DRV_PCF8563=m
|
||||
# CONFIG_RTC_DRV_S35390A is not set
|
||||
# CONFIG_RTC_DRV_FM3130 is not set
|
||||
# CONFIG_RTC_DRV_RX8010 is not set
|
||||
# CONFIG_RTC_DRV_RX8111 is not set
|
||||
# CONFIG_RTC_DRV_RX8581 is not set
|
||||
# CONFIG_RTC_DRV_RX8025 is not set
|
||||
# CONFIG_RTC_DRV_EM3027 is not set
|
||||
@@ -4789,7 +4834,6 @@ CONFIG_DMABUF_HEAPS_CMA=y
|
||||
CONFIG_UIO=m
|
||||
CONFIG_UIO_PDRV_GENIRQ=m
|
||||
CONFIG_UIO_DMEM_GENIRQ=m
|
||||
# CONFIG_UIO_PRUSS is not set
|
||||
# CONFIG_VFIO is not set
|
||||
# CONFIG_VIRT_DRIVERS is not set
|
||||
CONFIG_VIRTIO_MENU=y
|
||||
@@ -4808,7 +4852,6 @@ CONFIG_VHOST_MENU=y
|
||||
# CONFIG_GREYBUS is not set
|
||||
# CONFIG_COMEDI is not set
|
||||
CONFIG_STAGING=y
|
||||
CONFIG_PRISM2_USB=m
|
||||
CONFIG_RTLLIB=m
|
||||
CONFIG_RTLLIB_CRYPTO_CCMP=m
|
||||
CONFIG_RTLLIB_CRYPTO_TKIP=m
|
||||
@@ -4868,12 +4911,12 @@ CONFIG_VIDEO_SUNXI_CEDRUS=y
|
||||
# CONFIG_LTE_GDM724X is not set
|
||||
# CONFIG_FB_TFT is not set
|
||||
# CONFIG_KS7010 is not set
|
||||
# CONFIG_PI433 is not set
|
||||
# CONFIG_XIL_AXIS_FIFO is not set
|
||||
# CONFIG_FIELDBUS_DEV is not set
|
||||
CONFIG_RTL8723CS=m
|
||||
# CONFIG_GOLDFISH is not set
|
||||
# CONFIG_CHROME_PLATFORMS is not set
|
||||
# CONFIG_CZNIC_PLATFORMS is not set
|
||||
# CONFIG_MELLANOX_PLATFORM is not set
|
||||
CONFIG_HAVE_CLK=y
|
||||
CONFIG_HAVE_CLK_PREPARE=y
|
||||
@@ -4943,6 +4986,7 @@ CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
|
||||
# end of Clock Source drivers
|
||||
|
||||
CONFIG_MAILBOX=y
|
||||
# CONFIG_ARM_MHU_V3 is not set
|
||||
# CONFIG_PLATFORM_MHU is not set
|
||||
# CONFIG_ALTERA_MBOX is not set
|
||||
# CONFIG_MAILBOX_TEST is not set
|
||||
@@ -5139,12 +5183,14 @@ CONFIG_MMA7660=m
|
||||
# CONFIG_AD7091R5 is not set
|
||||
# CONFIG_AD7091R8 is not set
|
||||
# CONFIG_AD7124 is not set
|
||||
# CONFIG_AD7173 is not set
|
||||
# CONFIG_AD7192 is not set
|
||||
# CONFIG_AD7266 is not set
|
||||
# CONFIG_AD7280 is not set
|
||||
# CONFIG_AD7291 is not set
|
||||
# CONFIG_AD7292 is not set
|
||||
# CONFIG_AD7298 is not set
|
||||
# CONFIG_AD7380 is not set
|
||||
# CONFIG_AD7476 is not set
|
||||
# CONFIG_AD7606_IFACE_PARALLEL is not set
|
||||
# CONFIG_AD7606_IFACE_SPI is not set
|
||||
@@ -5155,10 +5201,10 @@ CONFIG_MMA7660=m
|
||||
# CONFIG_AD7793 is not set
|
||||
# CONFIG_AD7887 is not set
|
||||
# CONFIG_AD7923 is not set
|
||||
# CONFIG_AD7944 is not set
|
||||
# CONFIG_AD7949 is not set
|
||||
# CONFIG_AD799X is not set
|
||||
# CONFIG_AD9467 is not set
|
||||
# CONFIG_ADI_AXI_ADC is not set
|
||||
CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_AXP288_ADC is not set
|
||||
# CONFIG_CC10001_ADC is not set
|
||||
@@ -5198,6 +5244,7 @@ CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_TI_ADC128S052 is not set
|
||||
# CONFIG_TI_ADC161S626 is not set
|
||||
# CONFIG_TI_ADS1015 is not set
|
||||
# CONFIG_TI_ADS1119 is not set
|
||||
# CONFIG_TI_ADS7924 is not set
|
||||
# CONFIG_TI_ADS1100 is not set
|
||||
# CONFIG_TI_ADS1298 is not set
|
||||
@@ -5249,6 +5296,7 @@ CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_ATLAS_EZO_SENSOR is not set
|
||||
# CONFIG_BME680 is not set
|
||||
# CONFIG_CCS811 is not set
|
||||
# CONFIG_ENS160 is not set
|
||||
# CONFIG_IAQCORE is not set
|
||||
# CONFIG_SCD30_CORE is not set
|
||||
# CONFIG_SCD4X is not set
|
||||
@@ -5289,6 +5337,7 @@ CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_AD5593R is not set
|
||||
# CONFIG_AD5504 is not set
|
||||
# CONFIG_AD5624R_SPI is not set
|
||||
# CONFIG_AD9739A is not set
|
||||
# CONFIG_LTC2688 is not set
|
||||
# CONFIG_AD5686_SPI is not set
|
||||
# CONFIG_AD5696_I2C is not set
|
||||
@@ -5429,6 +5478,7 @@ CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_AL3010 is not set
|
||||
# CONFIG_AL3320A is not set
|
||||
# CONFIG_APDS9300 is not set
|
||||
# CONFIG_APDS9306 is not set
|
||||
# CONFIG_APDS9960 is not set
|
||||
# CONFIG_AS73211 is not set
|
||||
# CONFIG_BH1750 is not set
|
||||
@@ -5473,6 +5523,7 @@ CONFIG_AXP20X_ADC=y
|
||||
# CONFIG_VCNL4000 is not set
|
||||
# CONFIG_VCNL4035 is not set
|
||||
# CONFIG_VEML6030 is not set
|
||||
# CONFIG_VEML6040 is not set
|
||||
# CONFIG_VEML6070 is not set
|
||||
# CONFIG_VEML6075 is not set
|
||||
# CONFIG_VL6180 is not set
|
||||
@@ -5614,10 +5665,10 @@ CONFIG_AXP20X_ADC=y
|
||||
# end of Temperature sensors
|
||||
|
||||
CONFIG_PWM=y
|
||||
CONFIG_PWM_SYSFS=y
|
||||
# CONFIG_PWM_ATMEL_TCB is not set
|
||||
# CONFIG_PWM_CLK is not set
|
||||
# CONFIG_PWM_FSL_FTM is not set
|
||||
# CONFIG_PWM_GPIO is not set
|
||||
# CONFIG_PWM_PCA9685 is not set
|
||||
CONFIG_PWM_SUN4I=y
|
||||
# CONFIG_PWM_XILINX is not set
|
||||
@@ -5629,6 +5680,7 @@ CONFIG_IRQCHIP=y
|
||||
CONFIG_ARM_GIC=y
|
||||
CONFIG_ARM_GIC_MAX_NR=1
|
||||
# CONFIG_AL_FIC is not set
|
||||
# CONFIG_LAN966X_OIC is not set
|
||||
CONFIG_SUN4I_INTC=y
|
||||
CONFIG_SUN6I_R_INTC=y
|
||||
CONFIG_SUNXI_NMI_INTC=y
|
||||
@@ -5686,6 +5738,7 @@ CONFIG_PHY_SUN50I_USB3=y
|
||||
# CONFIG_ARM_CCI_PMU is not set
|
||||
# CONFIG_ARM_CCN is not set
|
||||
CONFIG_ARM_PMU=y
|
||||
CONFIG_ARM_V7_PMU=y
|
||||
# CONFIG_ARM_PMUV3 is not set
|
||||
# end of Performance monitor support
|
||||
|
||||
@@ -5813,9 +5866,9 @@ CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
|
||||
#
|
||||
CONFIG_NETFS_SUPPORT=m
|
||||
# CONFIG_NETFS_STATS is not set
|
||||
# CONFIG_NETFS_DEBUG is not set
|
||||
CONFIG_FSCACHE=y
|
||||
# CONFIG_FSCACHE_STATS is not set
|
||||
# CONFIG_FSCACHE_DEBUG is not set
|
||||
CONFIG_CACHEFILES=m
|
||||
# CONFIG_CACHEFILES_DEBUG is not set
|
||||
# CONFIG_CACHEFILES_ERROR_INJECTION is not set
|
||||
@@ -6025,6 +6078,7 @@ 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_GCC_PLUGIN_STACKLEAK is not set
|
||||
# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
|
||||
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
|
||||
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
|
||||
@@ -6093,7 +6147,6 @@ CONFIG_CRYPTO_ECC=y
|
||||
CONFIG_CRYPTO_ECDH=y
|
||||
# CONFIG_CRYPTO_ECDSA is not set
|
||||
# CONFIG_CRYPTO_ECRDSA is not set
|
||||
# CONFIG_CRYPTO_SM2 is not set
|
||||
# CONFIG_CRYPTO_CURVE25519 is not set
|
||||
# end of Public-key cryptography
|
||||
|
||||
@@ -6211,7 +6264,6 @@ CONFIG_CRYPTO_USER_API_SKCIPHER=m
|
||||
# CONFIG_CRYPTO_USER_API_RNG is not set
|
||||
# CONFIG_CRYPTO_USER_API_AEAD is not set
|
||||
# CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE is not set
|
||||
# CONFIG_CRYPTO_STATS is not set
|
||||
# end of Userspace interface
|
||||
|
||||
CONFIG_CRYPTO_HASH_INFO=y
|
||||
@@ -6377,6 +6429,7 @@ CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
|
||||
CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y
|
||||
CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
|
||||
CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
|
||||
CONFIG_DMA_NEED_SYNC=y
|
||||
CONFIG_DMA_NONCOHERENT_MMAP=y
|
||||
CONFIG_ARCH_HAS_DMA_ALLOC=y
|
||||
CONFIG_DMA_CMA=y
|
||||
@@ -6401,6 +6454,7 @@ CONFIG_NLATTR=y
|
||||
CONFIG_CLZ_TAB=y
|
||||
# CONFIG_IRQ_POLL is not set
|
||||
CONFIG_MPILIB=y
|
||||
CONFIG_DIMLIB=y
|
||||
CONFIG_LIBFDT=y
|
||||
CONFIG_OID_REGISTRY=y
|
||||
CONFIG_HAVE_GENERIC_VDSO=y
|
||||
@@ -6484,6 +6538,7 @@ CONFIG_HAVE_DEBUG_KMEMLEAK=y
|
||||
# CONFIG_SHRINKER_DEBUG is not set
|
||||
CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
|
||||
CONFIG_DEBUG_MEMORY_INIT=y
|
||||
# CONFIG_MEM_ALLOC_PROFILING is not set
|
||||
CONFIG_HAVE_ARCH_KASAN=y
|
||||
CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
|
||||
CONFIG_CC_HAS_KASAN_GENERIC=y
|
||||
@@ -6506,6 +6561,7 @@ CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
|
||||
#
|
||||
# Scheduler Debugging
|
||||
#
|
||||
# CONFIG_SCHEDSTATS is not set
|
||||
# end of Scheduler Debugging
|
||||
|
||||
# CONFIG_DEBUG_TIMEKEEPING is not set
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
pkgname=device-purism-librem5dev
|
||||
pkgdesc="Purism Librem 5 Devkit"
|
||||
pkgver=2
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
@@ -60,7 +60,7 @@ package() {
|
||||
install -D -m644 "$srcdir"/modprobe.d_rsi.conf "$pkgdir"/etc/modprobe.d/rsi.conf
|
||||
install -D -m644 "$srcdir"/00-mesa.sh "$pkgdir"/etc/profile.d/00-mesa.sh
|
||||
install -D -m644 "$srcdir"/flash_script.lst "$pkgdir"/usr/share/uuu/flash_script.lst
|
||||
install -D -m644 "$_confdir"/default/hwdb/80-librem5.hwdb "$pkgdir"/lib/udev/hwdb.d/80-librem5.hwdb
|
||||
install -D -m644 "$_confdir"/default/hwdb/80-librem5.hwdb "$pkgdir"/usr/lib/udev/hwdb.d/80-librem5.hwdb
|
||||
install -D -m644 "$_confdir"/debian/librem5-base-defaults.librem5-devkit-sgtl5000.udev \
|
||||
"$pkgdir"/usr/lib/udev/rules.d/librem5-base-defaults.librem5-devkit-sgtl5000.udev
|
||||
install -D -m644 "$_confdir"/debian/librem5-base-defaults.librem5-pm.udev \
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
pkgname=device-sony-ps4
|
||||
pkgdesc="Sony Playstation 4 Original"
|
||||
pkgver=1
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="x86_64"
|
||||
options="!check !archcheck"
|
||||
depends="
|
||||
linux-sony-ps4
|
||||
postmarketos-base
|
||||
grub-efi-x86
|
||||
"
|
||||
makedepends="devicepkg-dev"
|
||||
source="
|
||||
deviceinfo
|
||||
modules-initfs
|
||||
"
|
||||
subpackages="$pkgname-nonfree-firmware:nonfree_firmware"
|
||||
|
||||
build() {
|
||||
devicepkg_build $startdir $pkgname
|
||||
}
|
||||
|
||||
package() {
|
||||
devicepkg_package $startdir $pkgname
|
||||
}
|
||||
|
||||
nonfree_firmware() {
|
||||
pkgdesc="Wi-Fi and bluetooth firmware"
|
||||
depends="linux-firmware-mrvl"
|
||||
mkdir "$subpkgdir"
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
065faa7aed5acc1a8e15e1fe1e06929b57dc11030b7c842e7a46f7d4fae310ce3796a2d760a95222177c0d1d23f1e6cd982c3241a06e50c6d4961e69d3ce4450 deviceinfo
|
||||
24ed2457630757df9e69b3216b883c3032848b3cc692fd5cf0252baa6dc0dbea33e95b20767a9cb36e8461a8e79e65d50cc5ecd3a6801dc3e8e90951a34138aa modules-initfs
|
||||
"
|
||||
@@ -0,0 +1,24 @@
|
||||
# Reference: <https://postmarketos.org/deviceinfo>
|
||||
# Please use double quotes only. You can source this file in shell
|
||||
# scripts.
|
||||
|
||||
deviceinfo_format_version="0"
|
||||
deviceinfo_name="Sony Playstation 4"
|
||||
deviceinfo_manufacturer="Sony"
|
||||
deviceinfo_codename="sony-ps4"
|
||||
deviceinfo_year="2013"
|
||||
deviceinfo_arch="x86_64"
|
||||
deviceinfo_gpu_accelerated="true"
|
||||
|
||||
# Device related
|
||||
deviceinfo_chassis="desktop"
|
||||
deviceinfo_keyboard="false"
|
||||
deviceinfo_external_storage="true"
|
||||
deviceinfo_screen_width="1920"
|
||||
deviceinfo_screen_height="1080"
|
||||
deviceinfo_framebuffer_landscape="true"
|
||||
# Bootloader related
|
||||
deviceinfo_flash_method="none"
|
||||
deviceinfo_kernel_cmdline="panic=0 clocksource=tsc consoleblank=0 drm.debug=0 drm.edid_firmware=edid/my_edid.bin"
|
||||
deviceinfo_partition_type="gpt"
|
||||
deviceinfo_boot_filesystem="fat32"
|
||||
@@ -0,0 +1 @@
|
||||
hid-steam
|
||||
@@ -2,7 +2,7 @@
|
||||
# Kernel config based on: arch/arm64/configs/defconfig
|
||||
|
||||
pkgname=linux-next
|
||||
pkgver=6.12_git20240930
|
||||
pkgver=6.12_git20241001
|
||||
pkgrel=2
|
||||
_nextver="${pkgver#*_git}"
|
||||
pkgdesc="Linux next kernel"
|
||||
@@ -69,7 +69,7 @@ package() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
9edf7524d6d9240ecc0fc34e26f0710e7a54ceed6e61fe730b9c7c16b33030335232b2916772004b8a9ae71ed7b9e22114facf656c960d38d98bedfff717441d linux-next-next-20240930.tar.gz
|
||||
127c9be0262ba82bfd39977085a70bf0f16d523bde1823dda151a78e9b262b4b33efe5543f27d3f745a4ee4ecf911b57a01adac3970ad306a05582cb61119aef linux-next-next-20241001.tar.gz
|
||||
adbb506c0a2d676b1964a5d7c693f72338541ebd0cacee62e4579d43163c468d95607d73bf7439fb55b4d6bfa0dd42578b07ee20965aa03c2a9d8022cb3ae267 devices.config
|
||||
a30df186f06519e2f519bfe622bbd46caec6c2473a1fd3df370320a661d53882b49cfb2b3be7edd92fabdb4a8e6e3419194e8d43cca3cf4ab1615275dab4fee4 pmos.config
|
||||
"
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,37 @@
|
||||
From e9382715a310fc01a375e6e3eff7b185ce4277b4 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Mon, 20 Dec 2021 14:01:45 +0100
|
||||
Subject: [PATCH 04/22] feat: temperature sensors
|
||||
|
||||
---
|
||||
drivers/hwmon/fam15h_power.c | 1 +
|
||||
drivers/hwmon/k10temp.c | 1 +
|
||||
2 files changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/hwmon/fam15h_power.c b/drivers/hwmon/fam15h_power.c
|
||||
index 521534d5c1e5..5b84627c7942 100644
|
||||
--- a/drivers/hwmon/fam15h_power.c
|
||||
+++ b/drivers/hwmon/fam15h_power.c
|
||||
@@ -486,6 +486,7 @@ static const struct pci_device_id fam15h_power_id_table[] = {
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_M70H_NB_F4) },
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_NB_F4) },
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_M30H_NB_F4) },
|
||||
+ { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_M41H_F4) },
|
||||
{}
|
||||
};
|
||||
MODULE_DEVICE_TABLE(pci, fam15h_power_id_table);
|
||||
diff --git a/drivers/hwmon/k10temp.c b/drivers/hwmon/k10temp.c
|
||||
index 3618a924e78e..478672b391cb 100644
|
||||
--- a/drivers/hwmon/k10temp.c
|
||||
+++ b/drivers/hwmon/k10temp.c
|
||||
@@ -487,6 +487,7 @@ static const struct pci_device_id k10temp_id_table[] = {
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_NB_F3) },
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_M10H_F3) },
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_M30H_NB_F3) },
|
||||
+ { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_M41H_F3) },
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_M60H_NB_F3) },
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_M70H_NB_F3) },
|
||||
{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_NB_F3) },
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,147 @@
|
||||
From 0d69fe3288f2c3444a25c72847a6d670ab07c77b Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Mon, 20 Dec 2021 14:56:09 +0100
|
||||
Subject: [PATCH 05/22] feat: sdhci support
|
||||
|
||||
---
|
||||
drivers/mmc/host/sdhci-pci-core.c | 67 +++++++++++++++++++++++++++++++
|
||||
drivers/mmc/host/sdhci-pci.h | 2 +
|
||||
2 files changed, 69 insertions(+)
|
||||
|
||||
diff --git a/drivers/mmc/host/sdhci-pci-core.c b/drivers/mmc/host/sdhci-pci-core.c
|
||||
index 8736e04fa73c..d50a3658820d 100644
|
||||
--- a/drivers/mmc/host/sdhci-pci-core.c
|
||||
+++ b/drivers/mmc/host/sdhci-pci-core.c
|
||||
@@ -37,6 +37,10 @@
|
||||
|
||||
#include "cqhci.h"
|
||||
|
||||
+#ifdef CONFIG_X86_PS4
|
||||
+#include <asm/ps4.h>
|
||||
+#endif
|
||||
+
|
||||
#include "sdhci.h"
|
||||
#include "sdhci-pci.h"
|
||||
|
||||
@@ -319,6 +323,54 @@ static const struct sdhci_pci_fixes sdhci_intel_qrk = {
|
||||
.quirks = SDHCI_QUIRK_NO_HISPD_BIT,
|
||||
};
|
||||
|
||||
+#ifdef CONFIG_X86_PS4
|
||||
+static int aeolia_probe(struct sdhci_pci_chip *chip)
|
||||
+{
|
||||
+ chip->num_slots = 1;
|
||||
+ chip->first_bar = 0;
|
||||
+ if (apcie_status() == 0)
|
||||
+ return -EPROBE_DEFER;
|
||||
+
|
||||
+ chip->pdev->class &= ~0x0000FF;
|
||||
+ chip->pdev->class |= PCI_SDHCI_IFDMA;
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int aeolia_probe_slot(struct sdhci_pci_slot *slot)
|
||||
+{
|
||||
+ int err = apcie_assign_irqs(slot->chip->pdev, 1);
|
||||
+ if (err <= 0) {
|
||||
+ dev_err(&slot->chip->pdev->dev, "failed to get IRQ: %d\n", err);
|
||||
+ return -ENODEV;
|
||||
+ }
|
||||
+ slot->host->irq = slot->chip->pdev->irq;
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static void aeolia_remove_slot(struct sdhci_pci_slot *slot, int dead)
|
||||
+{
|
||||
+ apcie_free_irqs(slot->chip->pdev->irq, 1);
|
||||
+}
|
||||
+
|
||||
+static int aeolia_enable_dma(struct sdhci_pci_slot *slot)
|
||||
+{
|
||||
+ if (pci_set_dma_mask(slot->chip->pdev, DMA_BIT_MASK(31))) {
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+ if (pci_set_consistent_dma_mask(slot->chip->pdev, DMA_BIT_MASK(31))) {
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static const struct sdhci_pci_fixes sdhci_aeolia = {
|
||||
+ .probe = aeolia_probe,
|
||||
+ .probe_slot = aeolia_probe_slot,
|
||||
+ .remove_slot = aeolia_remove_slot,
|
||||
+ .enable_dma = aeolia_enable_dma,
|
||||
+};
|
||||
+#endif
|
||||
+
|
||||
static int mrst_hc_probe_slot(struct sdhci_pci_slot *slot)
|
||||
{
|
||||
slot->host->mmc->caps |= MMC_CAP_8_BIT_DATA;
|
||||
@@ -1974,6 +2026,12 @@ static const struct pci_device_id pci_ids[] = {
|
||||
SDHCI_PCI_DEVICE(O2, SEABIRD1, o2),
|
||||
SDHCI_PCI_DEVICE(ARASAN, PHY_EMMC, arasan),
|
||||
SDHCI_PCI_DEVICE(SYNOPSYS, DWC_MSHC, snps),
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ SDHCI_PCI_DEVICE(SONY, AEOLIA_SDHCI, aeolia),
|
||||
+ SDHCI_PCI_DEVICE(SONY, BELIZE_SDHCI, aeolia),
|
||||
+ // TODO (ps4patches): What is this doing in comments?
|
||||
+ //SDHCI_PCI_DEVICE(SONY, BAIKAL_SDHCI, aeolia),
|
||||
+ #endif
|
||||
SDHCI_PCI_DEVICE(GLI, 9750, gl9750),
|
||||
SDHCI_PCI_DEVICE(GLI, 9755, gl9755),
|
||||
SDHCI_PCI_DEVICE(GLI, 9763E, gl9763e),
|
||||
@@ -2008,6 +2066,10 @@ int sdhci_pci_enable_dma(struct sdhci_host *host)
|
||||
|
||||
pci_set_master(pdev);
|
||||
|
||||
+ if (slot->chip->fixes && slot->chip->fixes->enable_dma) {
|
||||
+ return slot->chip->fixes->enable_dma(slot);
|
||||
+ }
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2361,6 +2423,7 @@ static int sdhci_pci_probe(struct pci_dev *pdev,
|
||||
chip->allow_runtime_pm = chip->fixes->allow_runtime_pm;
|
||||
}
|
||||
chip->num_slots = slots;
|
||||
+ chip->first_bar = first_bar;
|
||||
chip->pm_retune = true;
|
||||
chip->rpm_retune = true;
|
||||
|
||||
@@ -2375,7 +2438,11 @@ static int sdhci_pci_probe(struct pci_dev *pdev,
|
||||
slots = chip->num_slots; /* Quirk may have changed this */
|
||||
|
||||
for (i = 0; i < slots; i++) {
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ slot = sdhci_pci_probe_slot(pdev, chip, chip->first_bar, i);
|
||||
+ #else
|
||||
slot = sdhci_pci_probe_slot(pdev, chip, first_bar, i);
|
||||
+ #endif
|
||||
if (IS_ERR(slot)) {
|
||||
for (i--; i >= 0; i--)
|
||||
sdhci_pci_remove_slot(chip->slots[i]);
|
||||
diff --git a/drivers/mmc/host/sdhci-pci.h b/drivers/mmc/host/sdhci-pci.h
|
||||
index dcd99d5057ee..8caa7acbddb0 100644
|
||||
--- a/drivers/mmc/host/sdhci-pci.h
|
||||
+++ b/drivers/mmc/host/sdhci-pci.h
|
||||
@@ -140,6 +140,7 @@ struct sdhci_pci_fixes {
|
||||
int (*probe_slot) (struct sdhci_pci_slot *);
|
||||
int (*add_host) (struct sdhci_pci_slot *);
|
||||
void (*remove_slot) (struct sdhci_pci_slot *, int);
|
||||
+ int (*enable_dma) (struct sdhci_pci_slot *);
|
||||
|
||||
#ifdef CONFIG_PM_SLEEP
|
||||
int (*suspend) (struct sdhci_pci_chip *);
|
||||
@@ -181,6 +182,7 @@ struct sdhci_pci_chip {
|
||||
const struct sdhci_pci_fixes *fixes;
|
||||
|
||||
int num_slots; /* Slots on controller */
|
||||
+ int first_bar; /* First valid BAR */
|
||||
struct sdhci_pci_slot *slots[MAX_SLOTS]; /* Pointers to host slots */
|
||||
};
|
||||
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,323 @@
|
||||
From 905b33761e7344f07d4b2270896ebaa298d55047 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Mon, 20 Dec 2021 15:29:54 +0100
|
||||
Subject: [PATCH 06/22] feat: ethernet support
|
||||
|
||||
---
|
||||
drivers/net/ethernet/marvell/sky2.c | 164 +++++++++++++++++++++++++---
|
||||
drivers/net/ethernet/marvell/sky2.h | 3 +
|
||||
2 files changed, 150 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/ethernet/marvell/sky2.c b/drivers/net/ethernet/marvell/sky2.c
|
||||
index e9fc74e54b22..66ee6f8ab1bd 100644
|
||||
--- a/drivers/net/ethernet/marvell/sky2.c
|
||||
+++ b/drivers/net/ethernet/marvell/sky2.c
|
||||
@@ -38,6 +38,11 @@
|
||||
|
||||
#include <asm/irq.h>
|
||||
|
||||
+#ifdef CONFIG_X86_PS4
|
||||
+#include <asm/ps4.h>
|
||||
+#include "../../../ps4/aeolia.h"
|
||||
+#endif
|
||||
+
|
||||
#include "sky2.h"
|
||||
|
||||
#define DRV_NAME "sky2"
|
||||
@@ -134,6 +139,9 @@ static const struct pci_device_id sky2_id_table[] = {
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4380) }, /* 88E8057 */
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4381) }, /* 88E8059 */
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4382) }, /* 88E8079 */
|
||||
+ { PCI_DEVICE(PCI_VENDOR_ID_SONY, PCI_DEVICE_ID_SONY_AEOLIA_GBE) },
|
||||
+ { PCI_DEVICE(PCI_VENDOR_ID_SONY, PCI_DEVICE_ID_SONY_BELIZE_GBE) },
|
||||
+ { PCI_DEVICE(PCI_VENDOR_ID_SONY, PCI_DEVICE_ID_SONY_BAIKAL_GBE) },
|
||||
{ 0 }
|
||||
};
|
||||
|
||||
@@ -154,7 +162,7 @@ static int gm_phy_write(struct sky2_hw *hw, unsigned port, u16 reg, u16 val)
|
||||
|
||||
gma_write16(hw, port, GM_SMI_DATA, val);
|
||||
gma_write16(hw, port, GM_SMI_CTRL,
|
||||
- GM_SMI_CT_PHY_AD(PHY_ADDR_MARV) | GM_SMI_CT_REG_AD(reg));
|
||||
+ GM_SMI_CT_PHY_AD(hw->phy_addr) | GM_SMI_CT_REG_AD(reg));
|
||||
|
||||
for (i = 0; i < PHY_RETRIES; i++) {
|
||||
u16 ctrl = gma_read16(hw, port, GM_SMI_CTRL);
|
||||
@@ -179,7 +187,7 @@ static int __gm_phy_read(struct sky2_hw *hw, unsigned port, u16 reg, u16 *val)
|
||||
{
|
||||
int i;
|
||||
|
||||
- gma_write16(hw, port, GM_SMI_CTRL, GM_SMI_CT_PHY_AD(PHY_ADDR_MARV)
|
||||
+ gma_write16(hw, port, GM_SMI_CTRL, GM_SMI_CT_PHY_AD(hw->phy_addr)
|
||||
| GM_SMI_CT_REG_AD(reg) | GM_SMI_CT_OP_RD);
|
||||
|
||||
for (i = 0; i < PHY_RETRIES; i++) {
|
||||
@@ -1375,7 +1383,7 @@ static int sky2_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
|
||||
|
||||
switch (cmd) {
|
||||
case SIOCGMIIPHY:
|
||||
- data->phy_id = PHY_ADDR_MARV;
|
||||
+ data->phy_id = hw->phy_addr;
|
||||
|
||||
fallthrough;
|
||||
case SIOCGMIIREG: {
|
||||
@@ -3234,6 +3242,24 @@ static void sky2_reset(struct sky2_hw *hw)
|
||||
int i;
|
||||
u32 hwe_mask = Y2_HWE_ALL_MASK;
|
||||
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (pdev->vendor == PCI_VENDOR_ID_SONY &&
|
||||
+ pdev->device == PCI_DEVICE_ID_SONY_AEOLIA_GBE) {
|
||||
+ u32 val1, val2;
|
||||
+
|
||||
+ sky2_write32(hw, 0x60, 0x32100);
|
||||
+ sky2_write32(hw, 0x64, 6);
|
||||
+ sky2_write32(hw, 0x68, 0x63b9c);
|
||||
+ sky2_write32(hw, 0x6c, 0x300);
|
||||
+ val1 = sky2_read32(hw, 0x158);
|
||||
+ val2 = sky2_read32(hw, 0x160);
|
||||
+ val1 &= ~0x33333333;
|
||||
+ val2 &= ~0xCC00000;
|
||||
+ sky2_write32(hw, 0x158, val1);
|
||||
+ sky2_write32(hw, 0x160, val2);
|
||||
+ }
|
||||
+ #endif
|
||||
+
|
||||
/* disable ASF */
|
||||
if (hw->chip_id == CHIP_ID_YUKON_EX
|
||||
|| hw->chip_id == CHIP_ID_YUKON_SUPR) {
|
||||
@@ -3298,6 +3324,13 @@ static void sky2_reset(struct sky2_hw *hw)
|
||||
sky2_pci_write32(hw, PCI_DEV_REG3, P_CLK_MACSEC_DIS);
|
||||
}
|
||||
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (pdev->vendor == PCI_VENDOR_ID_SONY &&
|
||||
+ pdev->device == PCI_DEVICE_ID_SONY_AEOLIA_GBE) {
|
||||
+ ; /* Do not perform phy resets on aeolia, it will hang */
|
||||
+ } else
|
||||
+ #endif
|
||||
+
|
||||
if (hw->chip_id == CHIP_ID_YUKON_OPT ||
|
||||
hw->chip_id == CHIP_ID_YUKON_PRM ||
|
||||
hw->chip_id == CHIP_ID_YUKON_OP_2) {
|
||||
@@ -3582,7 +3615,7 @@ static int sky2_get_link_ksettings(struct net_device *dev,
|
||||
u32 supported, advertising;
|
||||
|
||||
supported = sky2_supported_modes(hw);
|
||||
- cmd->base.phy_address = PHY_ADDR_MARV;
|
||||
+ cmd->base.phy_address = hw->phy_addr;
|
||||
if (sky2_is_copper(hw)) {
|
||||
cmd->base.port = PORT_TP;
|
||||
cmd->base.speed = sky2->speed;
|
||||
@@ -4726,6 +4759,44 @@ static const struct net_device_ops sky2_netdev_ops[2] = {
|
||||
},
|
||||
};
|
||||
|
||||
+#ifdef CONFIG_X86_PS4
|
||||
+/* NOTE: This region is no longer referenced by current ps4 x86 code. */
|
||||
+/* However it still contains the mac address. */
|
||||
+static void aeolia_get_mac_address(struct sky2_hw *hw, unsigned char *addr) {
|
||||
+ u8 default_addr[ETH_ALEN] = { 0x52, 0x54, 0x00, 0xf0, 0xff, 0x0f };
|
||||
+ unsigned int mem_devfn = PCI_DEVFN(PCI_SLOT(hw->pdev->devfn), AEOLIA_FUNC_ID_MEM);
|
||||
+ struct pci_dev *mem_dev;
|
||||
+ phys_addr_t bp_base;
|
||||
+ void __iomem *bp;
|
||||
+
|
||||
+ memcpy(addr, default_addr, sizeof(default_addr));
|
||||
+
|
||||
+ mem_dev = pci_get_slot(hw->pdev->bus, mem_devfn);
|
||||
+ if (!mem_dev) {
|
||||
+ dev_err(&hw->pdev->dev, "sky2: could not get handle to mem device\n");
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ bp_base = pci_resource_start(mem_dev, 5) + APCIE_SPM_BP_BASE;
|
||||
+ if (!request_mem_region(bp_base, APCIE_SPM_BP_SIZE, "spm.bp")) {
|
||||
+ dev_err(&hw->pdev->dev, "sky2: failed to request bootparam SPM region\n");
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ bp = ioremap(bp_base, APCIE_SPM_BP_SIZE);
|
||||
+ if (!bp) {
|
||||
+ dev_err(&hw->pdev->dev, "sky2: failed to map bootparam portion of SPM\n");
|
||||
+ goto release_bp;
|
||||
+ }
|
||||
+
|
||||
+ memcpy_fromio(addr, bp, ETH_ALEN);
|
||||
+
|
||||
+ iounmap(bp);
|
||||
+release_bp:
|
||||
+ release_mem_region(bp_base, APCIE_SPM_BP_SIZE);
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
/* Initialize network device */
|
||||
static struct net_device *sky2_init_netdev(struct sky2_hw *hw, unsigned port,
|
||||
int highmem, int wol)
|
||||
@@ -4798,26 +4869,34 @@ static struct net_device *sky2_init_netdev(struct sky2_hw *hw, unsigned port,
|
||||
else
|
||||
dev->max_mtu = ETH_JUMBO_MTU;
|
||||
|
||||
- /* try to get mac address in the following order:
|
||||
- * 1) from device tree data
|
||||
- * 2) from internal registers set by bootloader
|
||||
- */
|
||||
- ret = of_get_mac_address(hw->pdev->dev.of_node, dev->dev_addr);
|
||||
- if (ret)
|
||||
- memcpy_fromio(dev->dev_addr, hw->regs + B2_MAC_1 + port * 8,
|
||||
- ETH_ALEN);
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (hw->pdev->vendor == PCI_VENDOR_ID_SONY) {
|
||||
+ aeolia_get_mac_address(hw, dev->dev_addr);
|
||||
+ } else
|
||||
+ #endif
|
||||
+ {
|
||||
+ /* try to get mac address in the following order:
|
||||
+ * 1) from device tree data
|
||||
+ * 2) from internal registers set by bootloader
|
||||
+ */
|
||||
+ ret = of_get_mac_address(hw->pdev->dev.of_node, dev->dev_addr);
|
||||
+ if (ret)
|
||||
+ memcpy_fromio(dev->dev_addr,
|
||||
+ hw->regs + B2_MAC_1 + port * 8, ETH_ALEN);
|
||||
+ }
|
||||
|
||||
/* if the address is invalid, use a random value */
|
||||
if (!is_valid_ether_addr(dev->dev_addr)) {
|
||||
struct sockaddr sa = { AF_UNSPEC };
|
||||
|
||||
- dev_warn(&hw->pdev->dev, "Invalid MAC address, defaulting to random\n");
|
||||
+ dev_warn(&hw->pdev->dev,
|
||||
+ "Invalid MAC address, defaulting to random\n");
|
||||
eth_hw_addr_random(dev);
|
||||
memcpy(sa.sa_data, dev->dev_addr, ETH_ALEN);
|
||||
if (sky2_set_mac_address(dev, &sa))
|
||||
- dev_warn(&hw->pdev->dev, "Failed to set MAC address.\n");
|
||||
+ dev_warn(&hw->pdev->dev,
|
||||
+ "Failed to set MAC address.\n");
|
||||
}
|
||||
-
|
||||
return dev;
|
||||
}
|
||||
|
||||
@@ -4957,6 +5036,12 @@ static int sky2_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
u32 reg;
|
||||
char buf1[16];
|
||||
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ /* This will return negative on non-PS4 platforms */
|
||||
+ if (apcie_status() == 0)
|
||||
+ return -EPROBE_DEFER;
|
||||
+ #endif
|
||||
+
|
||||
err = pci_enable_device(pdev);
|
||||
if (err) {
|
||||
dev_err(&pdev->dev, "cannot enable PCI device\n");
|
||||
@@ -4988,6 +5073,16 @@ static int sky2_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
|
||||
pci_set_master(pdev);
|
||||
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (pdev->vendor == PCI_VENDOR_ID_SONY) {
|
||||
+ if (pci_set_dma_mask(pdev, DMA_BIT_MASK(31)) < 0 ||
|
||||
+ pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(31)) < 0) {
|
||||
+ dev_err(&pdev->dev, "no usable DMA configuration\n");
|
||||
+ goto err_out_free_regions;
|
||||
+ }
|
||||
+ } else
|
||||
+ #endif
|
||||
+
|
||||
if (sizeof(dma_addr_t) > sizeof(u32) &&
|
||||
!(err = dma_set_mask(&pdev->dev, DMA_BIT_MASK(64)))) {
|
||||
using_dac = 1;
|
||||
@@ -5036,6 +5131,16 @@ static int sky2_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
goto err_out_free_hw;
|
||||
}
|
||||
|
||||
+ hw->phy_addr = PHY_ADDR_MARV;
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (pdev->vendor == PCI_VENDOR_ID_SONY &&
|
||||
+ pdev->device == PCI_DEVICE_ID_SONY_AEOLIA_GBE) {
|
||||
+ /* aeolia supports some sort of "l2 switch" */
|
||||
+ /* it has normal phy at addr 1 with a possibly-active switch at addr 2 */
|
||||
+ hw->phy_addr = 1;
|
||||
+ }
|
||||
+ #endif
|
||||
+
|
||||
err = sky2_init(hw);
|
||||
if (err)
|
||||
goto err_out_iounmap;
|
||||
@@ -5064,6 +5169,19 @@ static int sky2_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
if (disable_msi == -1)
|
||||
disable_msi = !!dmi_check_system(msi_blacklist);
|
||||
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (pdev->vendor == PCI_VENDOR_ID_SONY &&
|
||||
+ apcie_assign_irqs(pdev, 1) > 0) {
|
||||
+ err = sky2_test_msi(hw);
|
||||
+ if (err) {
|
||||
+ apcie_free_irqs(pdev->irq, 1);
|
||||
+ /* PS4 requires MSI, so if it fails, bail out. */
|
||||
+ goto err_out_free_netdev;
|
||||
+ }
|
||||
+ hw->flags |= SKY2_HW_USE_AEOLIA_MSI;
|
||||
+ } else
|
||||
+ #endif
|
||||
+
|
||||
if (!disable_msi && pci_enable_msi(pdev) == 0) {
|
||||
err = sky2_test_msi(hw);
|
||||
if (err) {
|
||||
@@ -5120,8 +5238,14 @@ static int sky2_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
err_out_unregister:
|
||||
unregister_netdev(dev);
|
||||
err_out_free_netdev:
|
||||
- if (hw->flags & SKY2_HW_USE_MSI)
|
||||
- pci_disable_msi(pdev);
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (hw->flags & SKY2_HW_USE_AEOLIA_MSI)
|
||||
+ apcie_free_irqs(pdev->irq, 1);
|
||||
+ else
|
||||
+ #endif
|
||||
+ if (hw->flags & SKY2_HW_USE_MSI)
|
||||
+ pci_disable_msi(pdev);
|
||||
+
|
||||
free_netdev(dev);
|
||||
err_out_free_pci:
|
||||
dma_free_coherent(&pdev->dev,
|
||||
@@ -5168,6 +5292,12 @@ static void sky2_remove(struct pci_dev *pdev)
|
||||
free_irq(pdev->irq, hw);
|
||||
}
|
||||
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (hw->flags & SKY2_HW_USE_AEOLIA_MSI)
|
||||
+ apcie_free_irqs(pdev->irq, 1);
|
||||
+ else
|
||||
+ #endif
|
||||
+
|
||||
if (hw->flags & SKY2_HW_USE_MSI)
|
||||
pci_disable_msi(pdev);
|
||||
dma_free_coherent(&pdev->dev,
|
||||
diff --git a/drivers/net/ethernet/marvell/sky2.h b/drivers/net/ethernet/marvell/sky2.h
|
||||
index ddec1627f1a7..eeb3a5a8b029 100644
|
||||
--- a/drivers/net/ethernet/marvell/sky2.h
|
||||
+++ b/drivers/net/ethernet/marvell/sky2.h
|
||||
@@ -2289,6 +2289,8 @@ struct sky2_hw {
|
||||
#define SKY2_HW_RSS_CHKSUM 0x00000400 /* RSS requires chksum */
|
||||
#define SKY2_HW_IRQ_SETUP 0x00000800
|
||||
|
||||
+#define SKY2_HW_USE_AEOLIA_MSI 0x00001000
|
||||
+
|
||||
u8 chip_id;
|
||||
u8 chip_rev;
|
||||
u8 pmd_type;
|
||||
@@ -2303,6 +2305,7 @@ struct sky2_hw {
|
||||
struct work_struct restart_work;
|
||||
wait_queue_head_t msi_wait;
|
||||
|
||||
+ u8 phy_addr;
|
||||
char irq_name[];
|
||||
};
|
||||
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,701 @@
|
||||
From 915809af6ee266c1c7792a0be01ae4da02d4766f Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Mon, 20 Dec 2021 16:30:44 +0100
|
||||
Subject: [PATCH 07/22] feat: usb support
|
||||
|
||||
---
|
||||
drivers/usb/host/Kconfig | 8 +
|
||||
drivers/usb/host/Makefile | 1 +
|
||||
drivers/usb/host/xhci-aeolia.c | 585 +++++++++++++++++++++++++++++++++
|
||||
drivers/usb/host/xhci-aeolia.h | 14 +
|
||||
drivers/usb/host/xhci.c | 30 +-
|
||||
5 files changed, 624 insertions(+), 14 deletions(-)
|
||||
create mode 100644 drivers/usb/host/xhci-aeolia.c
|
||||
create mode 100644 drivers/usb/host/xhci-aeolia.h
|
||||
|
||||
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
|
||||
index c4736d1d020c..92107bda6004 100644
|
||||
--- a/drivers/usb/host/Kconfig
|
||||
+++ b/drivers/usb/host/Kconfig
|
||||
@@ -104,6 +104,14 @@ config USB_XHCI_TEGRA
|
||||
Say 'Y' to enable the support for the xHCI host controller
|
||||
found in NVIDIA Tegra124 and later SoCs.
|
||||
|
||||
+
|
||||
+config USB_XHCI_AEOLIA
|
||||
+ tristate "xHCI support for Sony PS4 (Aeolia)"
|
||||
+ depends on X86_PS4
|
||||
+ help
|
||||
+ Say 'Y' to enable the support for the xHCI host controller
|
||||
+ found in the Sony PlayStation 4.
|
||||
+
|
||||
endif # USB_XHCI_HCD
|
||||
|
||||
config USB_EHCI_BRCMSTB
|
||||
diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile
|
||||
index 171de4df50bd..d0365fbf8b45 100644
|
||||
--- a/drivers/usb/host/Makefile
|
||||
+++ b/drivers/usb/host/Makefile
|
||||
@@ -73,6 +73,7 @@ obj-$(CONFIG_USB_XHCI_PLATFORM) += xhci-plat-hcd.o
|
||||
obj-$(CONFIG_USB_XHCI_HISTB) += xhci-histb.o
|
||||
obj-$(CONFIG_USB_XHCI_MTK) += xhci-mtk-hcd.o
|
||||
obj-$(CONFIG_USB_XHCI_TEGRA) += xhci-tegra.o
|
||||
+obj-$(CONFIG_USB_XHCI_AEOLIA) += xhci-aeolia.o
|
||||
obj-$(CONFIG_USB_SL811_HCD) += sl811-hcd.o
|
||||
obj-$(CONFIG_USB_SL811_CS) += sl811_cs.o
|
||||
obj-$(CONFIG_USB_U132_HCD) += u132-hcd.o
|
||||
diff --git a/drivers/usb/host/xhci-aeolia.c b/drivers/usb/host/xhci-aeolia.c
|
||||
new file mode 100644
|
||||
index 000000000000..a9b345284495
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/xhci-aeolia.c
|
||||
@@ -0,0 +1,585 @@
|
||||
+/*
|
||||
+ * xhci-aeoliat.c - xHCI host controller driver for Aeolia (Sony PS4)
|
||||
+ *
|
||||
+ * Borrows code from xhci-pci.c, hcd-pci.c, and xhci-plat.c.
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU General Public License
|
||||
+ * version 2 as published by the Free Software Foundation.
|
||||
+ */
|
||||
+
|
||||
+#include <linux/pci.h>
|
||||
+#include <linux/slab.h>
|
||||
+#include <linux/module.h>
|
||||
+#include <linux/acpi.h>
|
||||
+#include <asm/ps4.h>
|
||||
+#include "xhci-aeolia.h"
|
||||
+#include "../../ps4/aeolia.h"
|
||||
+
|
||||
+#include "xhci.h"
|
||||
+
|
||||
+static const char hcd_name[] = "xhci_aeolia";
|
||||
+
|
||||
+static struct hc_driver __read_mostly xhci_aeolia_hc_driver;
|
||||
+
|
||||
+#define NR_DEVICES 3
|
||||
+
|
||||
+struct aeolia_xhci {
|
||||
+ // TODO (ps4patches): Belize, enable in ahci commit
|
||||
+ // struct ata_host *host;
|
||||
+ int nr_irqs;
|
||||
+ struct usb_hcd *hcd[NR_DEVICES];
|
||||
+};
|
||||
+
|
||||
+static int xhci_aeolia_setup(struct usb_hcd *hcd);
|
||||
+
|
||||
+static const struct xhci_driver_overrides xhci_aeolia_overrides __initconst = {
|
||||
+ .extra_priv_size = sizeof(struct xhci_hcd),
|
||||
+ .reset = xhci_aeolia_setup,
|
||||
+};
|
||||
+
|
||||
+static void xhci_aeolia_quirks(struct device *dev, struct xhci_hcd *xhci)
|
||||
+{
|
||||
+ /*
|
||||
+ * Do not try to enable MSIs, we provide the MSIs ourselves
|
||||
+ * Do not touch DMA mask, we need a custom one
|
||||
+ */
|
||||
+ xhci->quirks |= XHCI_PLAT | XHCI_PLAT_DMA;
|
||||
+}
|
||||
+
|
||||
+/* called during probe() after chip reset completes */
|
||||
+static int xhci_aeolia_setup(struct usb_hcd *hcd)
|
||||
+{
|
||||
+ return xhci_gen_setup(hcd, xhci_aeolia_quirks);
|
||||
+}
|
||||
+
|
||||
+static int xhci_aeolia_probe_one(struct pci_dev *dev, int index)
|
||||
+{
|
||||
+ int retval;
|
||||
+ struct aeolia_xhci *axhci = pci_get_drvdata(dev);
|
||||
+ struct hc_driver *driver = &xhci_aeolia_hc_driver;
|
||||
+ struct usb_hcd *hcd;
|
||||
+ struct xhci_hcd *xhci;
|
||||
+ int irq = (axhci->nr_irqs > 1) ? (dev->irq + index) : dev->irq;
|
||||
+
|
||||
+ // ok...adding this printk appears to have introduced a delay that fixed
|
||||
+ // bringup of the middle host controller, so w/e for now...
|
||||
+
|
||||
+ printk("xhci_aeolia_probe_one %d, controller is %x\n", index, dev->device);
|
||||
+
|
||||
+ hcd = usb_create_hcd(driver, &dev->dev, pci_name(dev));
|
||||
+ pci_set_drvdata(dev, axhci); /* usb_create_hcd clobbers this */
|
||||
+ if (!hcd)
|
||||
+ return -ENOMEM;
|
||||
+
|
||||
+ hcd->rsrc_start = pci_resource_start(dev, 2 * index);
|
||||
+ hcd->rsrc_len = pci_resource_len(dev, 2 * index);
|
||||
+
|
||||
+ /*
|
||||
+ * TODO (ps4patches): Belize, enable in ahci commit
|
||||
+ if (!devm_request_mem_region(&dev->dev, hcd->rsrc_start, hcd->rsrc_len,
|
||||
+ driver->description)) {
|
||||
+ */
|
||||
+
|
||||
+ if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
|
||||
+ driver->description)) {
|
||||
+ dev_dbg(&dev->dev, "controller already in use\n");
|
||||
+ retval = -EBUSY;
|
||||
+ goto put_hcd;
|
||||
+ }
|
||||
+ hcd->regs = pci_ioremap_bar(dev, 2 * index);
|
||||
+ if (hcd->regs == NULL) {
|
||||
+ dev_dbg(&dev->dev, "error mapping memory\n");
|
||||
+ retval = -EFAULT;
|
||||
+ goto release_mem_region;
|
||||
+ }
|
||||
+
|
||||
+ device_wakeup_enable(hcd->self.controller);
|
||||
+
|
||||
+ xhci = hcd_to_xhci(hcd);
|
||||
+ xhci->main_hcd = hcd;
|
||||
+ xhci->shared_hcd = usb_create_shared_hcd(driver, &dev->dev,
|
||||
+ pci_name(dev), hcd);
|
||||
+ if (!xhci->shared_hcd) {
|
||||
+ retval = -ENOMEM;
|
||||
+ goto unmap_registers;
|
||||
+ }
|
||||
+
|
||||
+ retval = usb_add_hcd(hcd, irq, IRQF_SHARED);
|
||||
+ if (retval)
|
||||
+ goto put_usb3_hcd;
|
||||
+
|
||||
+ retval = usb_add_hcd(xhci->shared_hcd, irq, IRQF_SHARED);
|
||||
+ if (retval)
|
||||
+ goto dealloc_usb2_hcd;
|
||||
+
|
||||
+ axhci->hcd[index] = hcd;
|
||||
+
|
||||
+ return 0;
|
||||
+
|
||||
+dealloc_usb2_hcd:
|
||||
+ usb_remove_hcd(hcd);
|
||||
+put_usb3_hcd:
|
||||
+ usb_put_hcd(xhci->shared_hcd);
|
||||
+unmap_registers:
|
||||
+ iounmap(hcd->regs);
|
||||
+release_mem_region:
|
||||
+ //
|
||||
+ // devm_release_mem_region(&dev->dev, hcd->rsrc_start, hcd->rsrc_len);
|
||||
+ release_mem_region(hcd->rsrc_start, hcd->rsrc_len);
|
||||
+put_hcd:
|
||||
+ usb_put_hcd(hcd);
|
||||
+ dev_err(&dev->dev, "init %s(%d) fail, %d\n",
|
||||
+ pci_name(dev), index, retval);
|
||||
+ return retval;
|
||||
+}
|
||||
+
|
||||
+static void xhci_aeolia_remove_one(struct pci_dev *dev, int index)
|
||||
+{
|
||||
+ struct aeolia_xhci *axhci = pci_get_drvdata(dev);
|
||||
+ struct usb_hcd *hcd = axhci->hcd[index];
|
||||
+ struct xhci_hcd *xhci;
|
||||
+
|
||||
+ if (!hcd)
|
||||
+ return;
|
||||
+ xhci = hcd_to_xhci(hcd);
|
||||
+
|
||||
+ usb_remove_hcd(xhci->shared_hcd);
|
||||
+ usb_remove_hcd(hcd);
|
||||
+ usb_put_hcd(xhci->shared_hcd);
|
||||
+ iounmap(hcd->regs);
|
||||
+ usb_put_hcd(hcd);
|
||||
+ axhci->hcd[index] = NULL;
|
||||
+}
|
||||
+
|
||||
+// TODO (ps4patches): Belize, enable in ahci commit
|
||||
+//#define DRV_VERSION "3.0"
|
||||
+//#define DRV_NAME "ahci"
|
||||
+//static const struct ata_port_info ahci_port_info = {
|
||||
+// .flags = AHCI_FLAG_COMMON,
|
||||
+// .pio_mask = ATA_PIO4,
|
||||
+// .udma_mask = ATA_UDMA6,
|
||||
+// .port_ops = &ahci_ops,
|
||||
+//};
|
||||
+//
|
||||
+//static struct scsi_host_template ahci_sht = {
|
||||
+// AHCI_SHT(DRV_NAME),
|
||||
+//};
|
||||
+//
|
||||
+//static bool bus_master;
|
||||
+//static int ahci_init_one(struct pci_dev *pdev)
|
||||
+//{
|
||||
+// struct f_resource* r_mem;
|
||||
+// struct ahci_controller* ctlr;
|
||||
+// struct aeolia_xhci *axhci = pci_get_drvdata(pdev);
|
||||
+// struct ata_port_info pi = ahci_port_info;
|
||||
+// const struct ata_port_info *ppi[] = { &pi, NULL };
|
||||
+// struct ahci_host_priv *hpriv;
|
||||
+// struct ata_host *host;
|
||||
+// int n_ports, i, rc;
|
||||
+// int ahci_pci_bar = 2;
|
||||
+// resource_size_t rsrc_start;
|
||||
+// resource_size_t rsrc_len;
|
||||
+//
|
||||
+// VPRINTK("ENTER\n");
|
||||
+//
|
||||
+// WARN_ON((int)ATA_MAX_QUEUE > AHCI_MAX_CMDS);
|
||||
+//
|
||||
+// ata_print_version_once(&pdev->dev, DRV_VERSION);
|
||||
+//
|
||||
+// /*
|
||||
+// rc = pcim_iomap_regions_request_all(pdev, 1 << ahci_pci_bar, DRV_NAME);
|
||||
+// if (rc == -EBUSY)
|
||||
+// pcim_pin_device(pdev);
|
||||
+// if (rc)
|
||||
+// return rc;
|
||||
+// */
|
||||
+//
|
||||
+// hpriv = devm_kzalloc(&pdev->dev, sizeof(*hpriv), GFP_KERNEL);
|
||||
+// //hpriv = kzalloc(sizeof(*hpriv), GFP_KERNEL);
|
||||
+// if (!hpriv)
|
||||
+// return -ENOMEM;
|
||||
+// hpriv->flags |= (unsigned long)pi.private_data;
|
||||
+//
|
||||
+// //hpriv->mmio = pcim_iomap_table(pdev)[ahci_pci_bar];
|
||||
+// rsrc_start = pci_resource_start(pdev, ahci_pci_bar);
|
||||
+// rsrc_len = pci_resource_len(pdev, ahci_pci_bar);
|
||||
+// //if (!request_mem_region(rsrc_start, rsrc_len, "xhci-ahci.mem")) {
|
||||
+// if (!devm_request_mem_region(&pdev->dev, rsrc_start, rsrc_len, "xhci-ahci.mem")) {
|
||||
+// dev_dbg(&pdev->dev, "controller already in use\n");
|
||||
+// rc = -EBUSY;
|
||||
+// goto put_hpriv;
|
||||
+// }
|
||||
+//
|
||||
+//
|
||||
+// hpriv->mmio = pci_ioremap_bar(pdev, ahci_pci_bar);
|
||||
+// if (hpriv->mmio == NULL) {
|
||||
+// dev_dbg(&pdev->dev, "error mapping memory\n");
|
||||
+// rc = -EFAULT;
|
||||
+// goto release_mem_region;
|
||||
+// }
|
||||
+//
|
||||
+// r_mem = kzalloc(sizeof(*r_mem), GFP_KERNEL);
|
||||
+// if (r_mem) {
|
||||
+// r_mem->r_bustag = 1;//mem
|
||||
+// r_mem->r_bushandle = hpriv->mmio;
|
||||
+//
|
||||
+// ctlr = kzalloc(sizeof(*ctlr), GFP_KERNEL);
|
||||
+// if (ctlr) {
|
||||
+// ctlr->r_mem = r_mem;
|
||||
+// ctlr->dev_id = 0; //or 0x90ca104d;
|
||||
+// ctlr->trace_len = 6;
|
||||
+// bpcie_sata_phy_init(&pdev->dev, ctlr);
|
||||
+// kfree(ctlr);
|
||||
+// }
|
||||
+// kfree(r_mem);
|
||||
+// }
|
||||
+// device_wakeup_enable(&pdev->dev);
|
||||
+//
|
||||
+// /* save initial config */
|
||||
+// ahci_save_initial_config(&pdev->dev, hpriv);
|
||||
+//
|
||||
+// /* prepare host */
|
||||
+// if (hpriv->cap & HOST_CAP_NCQ) {
|
||||
+// pi.flags |= ATA_FLAG_NCQ;
|
||||
+// /*
|
||||
+// * Auto-activate optimization is supposed to be
|
||||
+// * supported on all AHCI controllers indicating NCQ
|
||||
+// * capability, but it seems to be broken on some
|
||||
+// * chipsets including NVIDIAs.
|
||||
+// */
|
||||
+// if (!(hpriv->flags & AHCI_HFLAG_NO_FPDMA_AA))
|
||||
+// pi.flags |= ATA_FLAG_FPDMA_AA;
|
||||
+//
|
||||
+// /*
|
||||
+// * All AHCI controllers should be forward-compatible
|
||||
+// * with the new auxiliary field. This code should be
|
||||
+// * conditionalized if any buggy AHCI controllers are
|
||||
+// * encountered.
|
||||
+// */
|
||||
+// pi.flags |= ATA_FLAG_FPDMA_AUX;
|
||||
+// }
|
||||
+//
|
||||
+// if (hpriv->cap & HOST_CAP_PMP)
|
||||
+// pi.flags |= ATA_FLAG_PMP;
|
||||
+//
|
||||
+// ahci_set_em_messages(hpriv, &pi);
|
||||
+//
|
||||
+// /* CAP.NP sometimes indicate the index of the last enabled
|
||||
+// * port, at other times, that of the last possible port, so
|
||||
+// * determining the maximum port number requires looking at
|
||||
+// * both CAP.NP and port_map.
|
||||
+// */
|
||||
+// n_ports = max(ahci_nr_ports(hpriv->cap), fls(hpriv->port_map));
|
||||
+//
|
||||
+// host = ata_host_alloc_pinfo(&pdev->dev, ppi, n_ports);
|
||||
+// if (!host) {
|
||||
+// rc = -ENOMEM;
|
||||
+// goto unmap_registers;
|
||||
+// }
|
||||
+// axhci->host = host;
|
||||
+// pci_set_drvdata(pdev, axhci);
|
||||
+//
|
||||
+// host->private_data = hpriv;
|
||||
+//
|
||||
+// {
|
||||
+// int index = 1;
|
||||
+// int irq = (axhci->nr_irqs > 1) ? (pdev->irq + index) : pdev->irq;
|
||||
+// hpriv->irq = irq;
|
||||
+// }
|
||||
+//
|
||||
+// if (!(hpriv->cap & HOST_CAP_SSS) || ahci_ignore_sss)
|
||||
+// host->flags |= ATA_HOST_PARALLEL_SCAN;
|
||||
+// else
|
||||
+// dev_info(&pdev->dev, "SSS flag set, parallel bus scan disabled\n");
|
||||
+//
|
||||
+// if (pi.flags & ATA_FLAG_EM)
|
||||
+// ahci_reset_em(host);
|
||||
+//
|
||||
+// for (i = 0; i < host->n_ports; i++) {
|
||||
+// struct ata_port *ap = host->ports[i];
|
||||
+//
|
||||
+// ata_port_pbar_desc(ap, ahci_pci_bar, -1, "abar");
|
||||
+// ata_port_pbar_desc(ap, ahci_pci_bar,
|
||||
+// 0x100 + ap->port_no * 0x80, "port");
|
||||
+//
|
||||
+// /* set enclosure management message type */
|
||||
+// if (ap->flags & ATA_FLAG_EM)
|
||||
+// ap->em_message_type = hpriv->em_msg_type;
|
||||
+//
|
||||
+//
|
||||
+// /* disabled/not-implemented port */
|
||||
+// if (!(hpriv->port_map & (1 << i)))
|
||||
+// ap->ops = &ata_dummy_port_ops;
|
||||
+// }
|
||||
+//
|
||||
+// rc = ahci_reset_controller(host);
|
||||
+// dev_dbg(&pdev->dev, "ahci_reset_controller returned %d\n", rc);
|
||||
+// if (rc)
|
||||
+// goto release_host;
|
||||
+//
|
||||
+// ahci_init_controller(host);
|
||||
+// ahci_print_info(host, "ATA");
|
||||
+//
|
||||
+// if (!bus_master) {
|
||||
+// pci_set_master(pdev);
|
||||
+// bus_master = true;
|
||||
+// }
|
||||
+//
|
||||
+// rc = ahci_host_activate(host, &ahci_sht);
|
||||
+// dev_dbg(&pdev->dev, "ahci_host_activate returned %d\n", rc);
|
||||
+// if (rc) {
|
||||
+// goto host_deactivate;
|
||||
+// }
|
||||
+//
|
||||
+// pm_runtime_put_noidle(&pdev->dev);
|
||||
+// return 0;
|
||||
+//
|
||||
+// host_deactivate:
|
||||
+// release_host:
|
||||
+// unmap_registers:
|
||||
+// iounmap(hpriv->mmio);
|
||||
+// release_mem_region:
|
||||
+//
|
||||
+// release_mem_region(rsrc_start, rsrc_len);
|
||||
+//
|
||||
+// // TODO (ps4patches): Belize, enable in ahci commit
|
||||
+// //devm_release_mem_region(&pdev->dev, rsrc_start, rsrc_len);
|
||||
+// put_hpriv:
|
||||
+// //kfree(hpriv);
|
||||
+// devm_kfree(&pdev->dev, hpriv);
|
||||
+// dev_err(&pdev->dev, "init %s fail, %d\n",
|
||||
+// pci_name(pdev), rc);
|
||||
+// return rc;
|
||||
+//}
|
||||
+//
|
||||
+//static void ahci_remove_one(struct pci_dev *pdev)
|
||||
+//{
|
||||
+// pm_runtime_get_noresume(&pdev->dev);
|
||||
+//
|
||||
+// struct aeolia_xhci *axhci = pci_get_drvdata(pdev);
|
||||
+// if (axhci && axhci->host) {
|
||||
+// ata_host_detach(axhci->host);
|
||||
+// struct ahci_host_priv *hpriv = axhci->host->private_data;
|
||||
+// if (hpriv) {
|
||||
+// iounmap(hpriv->mmio);
|
||||
+// }
|
||||
+// axhci->host = NULL;
|
||||
+// }
|
||||
+//}
|
||||
+
|
||||
+static int xhci_aeolia_probe(struct pci_dev *dev, const struct pci_device_id *id)
|
||||
+{
|
||||
+ int idx;
|
||||
+ int retval;
|
||||
+ struct aeolia_xhci *axhci;
|
||||
+
|
||||
+ if (apcie_status() == 0)
|
||||
+ return -EPROBE_DEFER;
|
||||
+
|
||||
+ if (pci_enable_device(dev) < 0)
|
||||
+ return -ENODEV;
|
||||
+
|
||||
+ axhci = kzalloc(sizeof(*axhci), GFP_KERNEL);
|
||||
+ // TODO (ps4patches): Belize, enable in ahci commit
|
||||
+ // axhci = devm_kzalloc(&dev->dev, sizeof(*axhci), GFP_KERNEL);
|
||||
+ if (!axhci) {
|
||||
+ retval = -ENOMEM;
|
||||
+ goto disable_device;
|
||||
+ }
|
||||
+ pci_set_drvdata(dev, axhci);
|
||||
+
|
||||
+ axhci->nr_irqs = retval = apcie_assign_irqs(dev, NR_DEVICES);
|
||||
+ if (retval < 0) {
|
||||
+ goto free_axhci;
|
||||
+ }
|
||||
+
|
||||
+ // TODO (ps4patches): Belize, disable in ahci commit
|
||||
+ pci_set_master(dev);
|
||||
+
|
||||
+ if (pci_set_dma_mask(dev, DMA_BIT_MASK(31)) ||
|
||||
+ pci_set_consistent_dma_mask(dev, DMA_BIT_MASK(31))) {
|
||||
+ return -ENODEV;
|
||||
+ }
|
||||
+
|
||||
+ // TODO (ps4patches): Belize, enable in ahci commit
|
||||
+// retval = ahci_init_one(dev);
|
||||
+// dev_dbg(&dev->dev, "ahci_init_one returned %d", retval);
|
||||
+// if (!bus_master) {
|
||||
+// pci_set_master(dev);
|
||||
+// bus_master = true;
|
||||
+// }
|
||||
+
|
||||
+ for (idx = 0; idx < NR_DEVICES; idx++) {
|
||||
+ if(dev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI && idx == 1){ //this is for Belize and Baikal
|
||||
+ continue;
|
||||
+ }
|
||||
+ retval = xhci_aeolia_probe_one(dev, idx);
|
||||
+ if (retval)
|
||||
+ goto remove_hcds;
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+
|
||||
+remove_hcds:
|
||||
+ while (idx--)
|
||||
+ xhci_aeolia_remove_one(dev, idx);
|
||||
+ apcie_free_irqs(dev->irq, axhci->nr_irqs);
|
||||
+free_axhci:
|
||||
+ kfree(axhci);
|
||||
+
|
||||
+ // TODO (ps4patches): Belize, disable in ahci commit
|
||||
+ // devm_kfree(&dev->dev, axhci);
|
||||
+ // pci_set_drvdata(dev, NULL);
|
||||
+disable_device:
|
||||
+ pci_disable_device(dev);
|
||||
+ return retval;
|
||||
+}
|
||||
+
|
||||
+static void xhci_aeolia_remove(struct pci_dev *dev)
|
||||
+{
|
||||
+ int idx;
|
||||
+ struct aeolia_xhci *axhci = pci_get_drvdata(dev);
|
||||
+ if (!axhci)
|
||||
+ return;
|
||||
+
|
||||
+ for (idx = 0; idx < NR_DEVICES; idx++) {
|
||||
+ if(dev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI) {
|
||||
+ if(idx != 1)
|
||||
+ xhci_aeolia_remove_one(dev, idx);
|
||||
+ // TODO (ps4patches): Belize, enable in ahci commit
|
||||
+ // else
|
||||
+ // ahci_remove_one(dev);
|
||||
+ }
|
||||
+ else
|
||||
+ xhci_aeolia_remove_one(dev, idx);
|
||||
+ }
|
||||
+
|
||||
+ apcie_free_irqs(dev->irq, axhci->nr_irqs);
|
||||
+
|
||||
+ // TODO (ps4patches): Belize, remove in ahci commit
|
||||
+ kfree(axhci);
|
||||
+
|
||||
+ pci_disable_device(dev);
|
||||
+}
|
||||
+
|
||||
+// TODO (ps4patches): Belize, enable in ahci commit
|
||||
+//static void xhci_hcd_pci_shutdown(struct pci_dev *dev){
|
||||
+// struct aeolia_xhci *axhci;
|
||||
+// struct usb_hcd *hcd;
|
||||
+// int idx;
|
||||
+//
|
||||
+// axhci = pci_get_drvdata(dev);
|
||||
+// if (!axhci)
|
||||
+// return;
|
||||
+//
|
||||
+// for (idx = 0; idx < NR_DEVICES; idx++) {
|
||||
+// if(dev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI) {
|
||||
+// if(idx != 1) {
|
||||
+// hcd = axhci->hcd[idx];
|
||||
+// if (hcd) {
|
||||
+// if (test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags) && hcd->driver->shutdown) {
|
||||
+// hcd->driver->shutdown(hcd);
|
||||
+// if (usb_hcd_is_primary_hcd(hcd) && hcd->irq > 0)
|
||||
+// free_irq(hcd->irq, hcd);
|
||||
+// }
|
||||
+// }
|
||||
+// }
|
||||
+// }
|
||||
+// }
|
||||
+//}
|
||||
+
|
||||
+
|
||||
+static const struct pci_device_id pci_ids[] = {
|
||||
+ { PCI_DEVICE(PCI_VENDOR_ID_SONY, PCI_DEVICE_ID_SONY_AEOLIA_XHCI) },
|
||||
+ { PCI_DEVICE(PCI_VENDOR_ID_SONY, PCI_DEVICE_ID_SONY_BELIZE_XHCI) },
|
||||
+ { PCI_DEVICE(PCI_VENDOR_ID_SONY, PCI_DEVICE_ID_SONY_BAIKAL_XHCI) },
|
||||
+ { /* end: all zeroes */ }
|
||||
+};
|
||||
+MODULE_DEVICE_TABLE(pci, pci_ids);
|
||||
+
|
||||
+#ifdef CONFIG_PM_SLEEP
|
||||
+static int xhci_aeolia_suspend(struct device *dev)
|
||||
+{
|
||||
+ int idx;
|
||||
+ struct aeolia_xhci *axhci = dev_get_drvdata(dev);
|
||||
+ struct xhci_hcd *xhci;
|
||||
+ int retval;
|
||||
+ struct pci_dev *pdev = to_pci_dev(dev);
|
||||
+
|
||||
+ for (idx = 0; idx < NR_DEVICES; idx++) {
|
||||
+ if(pdev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI && idx == 1)
|
||||
+ continue;
|
||||
+ xhci = hcd_to_xhci(axhci->hcd[idx]);
|
||||
+ retval = xhci_suspend(xhci, device_may_wakeup(dev));
|
||||
+ if (retval < 0)
|
||||
+ goto resume;
|
||||
+ }
|
||||
+ return 0;
|
||||
+
|
||||
+resume:
|
||||
+ while (idx--) {
|
||||
+ xhci = hcd_to_xhci(axhci->hcd[idx]);
|
||||
+ xhci_resume(xhci, 0);
|
||||
+ }
|
||||
+ return retval;
|
||||
+}
|
||||
+
|
||||
+static int xhci_aeolia_resume(struct device *dev)
|
||||
+{
|
||||
+ int idx;
|
||||
+ struct aeolia_xhci *axhci = dev_get_drvdata(dev);
|
||||
+ struct xhci_hcd *xhci;
|
||||
+ int retval;
|
||||
+ struct pci_dev *pdev = to_pci_dev(dev);
|
||||
+
|
||||
+ for (idx = 0; idx < NR_DEVICES; idx++) {
|
||||
+ if(pdev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI && idx == 1)
|
||||
+ continue;
|
||||
+ xhci = hcd_to_xhci(axhci->hcd[idx]);
|
||||
+ retval = xhci_resume(xhci, 0);
|
||||
+ if (retval < 0)
|
||||
+ return retval;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static const struct dev_pm_ops xhci_aeolia_pm_ops = {
|
||||
+ SET_SYSTEM_SLEEP_PM_OPS(xhci_aeolia_suspend, xhci_aeolia_resume)
|
||||
+};
|
||||
+#endif
|
||||
+
|
||||
+/* pci driver glue; this is a "new style" PCI driver module */
|
||||
+static struct pci_driver xhci_aeolia_driver = {
|
||||
+ .name = "xhci_aeolia",
|
||||
+ .id_table = pci_ids,
|
||||
+
|
||||
+ .probe = xhci_aeolia_probe,
|
||||
+ .remove = xhci_aeolia_remove,
|
||||
+ /* suspend and resume implemented later */
|
||||
+
|
||||
+ .shutdown = usb_hcd_pci_shutdown,
|
||||
+ // TODO (ps4patches): Belize, enable in ahci commit
|
||||
+ //.shutdown = xhci_hcd_pci_shutdown,
|
||||
+#ifdef CONFIG_PM_SLEEP
|
||||
+ .driver = {
|
||||
+ .pm = &xhci_aeolia_pm_ops
|
||||
+ },
|
||||
+#endif
|
||||
+};
|
||||
+
|
||||
+static int __init xhci_aeolia_init(void)
|
||||
+{
|
||||
+ xhci_init_driver(&xhci_aeolia_hc_driver, &xhci_aeolia_overrides);
|
||||
+ return pci_register_driver(&xhci_aeolia_driver);
|
||||
+}
|
||||
+module_init(xhci_aeolia_init);
|
||||
+
|
||||
+static void __exit xhci_aeolia_exit(void)
|
||||
+{
|
||||
+ pci_unregister_driver(&xhci_aeolia_driver);
|
||||
+}
|
||||
+module_exit(xhci_aeolia_exit);
|
||||
+
|
||||
+MODULE_DESCRIPTION("xHCI Aeolia Host Controller Driver");
|
||||
+MODULE_LICENSE("GPL");
|
||||
diff --git a/drivers/usb/host/xhci-aeolia.h b/drivers/usb/host/xhci-aeolia.h
|
||||
new file mode 100644
|
||||
index 000000000000..2b711d6a92ca
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/xhci-aeolia.h
|
||||
@@ -0,0 +1,14 @@
|
||||
+/*
|
||||
+ * xhci-aeolia.h
|
||||
+ *
|
||||
+ * Created on: 31 Oct 2019
|
||||
+ * Author: visicva
|
||||
+ */
|
||||
+
|
||||
+#ifndef DRIVERS_USB_HOST_XHCI_AEOLIA_H_
|
||||
+#define DRIVERS_USB_HOST_XHCI_AEOLIA_H_
|
||||
+
|
||||
+#include "../../ata/ahci.h"
|
||||
+#include <linux/irqdomain.h>
|
||||
+
|
||||
+#endif /* DRIVERS_USB_HOST_XHCI_AEOLIA_H_ */
|
||||
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
|
||||
index 1fd2f6a850eb..1c8fb48c7095 100644
|
||||
--- a/drivers/usb/host/xhci.c
|
||||
+++ b/drivers/usb/host/xhci.c
|
||||
@@ -5373,20 +5373,22 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
|
||||
|
||||
/* Set dma_mask and coherent_dma_mask to 64-bits,
|
||||
* if xHC supports 64-bit addressing */
|
||||
- if (HCC_64BIT_ADDR(xhci->hcc_params) &&
|
||||
- !dma_set_mask(dev, DMA_BIT_MASK(64))) {
|
||||
- xhci_dbg(xhci, "Enabling 64-bit DMA addresses.\n");
|
||||
- dma_set_coherent_mask(dev, DMA_BIT_MASK(64));
|
||||
- } else {
|
||||
- /*
|
||||
- * This is to avoid error in cases where a 32-bit USB
|
||||
- * controller is used on a 64-bit capable system.
|
||||
- */
|
||||
- retval = dma_set_mask(dev, DMA_BIT_MASK(32));
|
||||
- if (retval)
|
||||
- return retval;
|
||||
- xhci_dbg(xhci, "Enabling 32-bit DMA addresses.\n");
|
||||
- dma_set_coherent_mask(dev, DMA_BIT_MASK(32));
|
||||
+ if (!(xhci->quirks & XHCI_PLAT_DMA)) {
|
||||
+ if (HCC_64BIT_ADDR(xhci->hcc_params) &&
|
||||
+ !dma_set_mask(dev, DMA_BIT_MASK(64))) {
|
||||
+ xhci_dbg(xhci, "Enabling 64-bit DMA addresses.\n");
|
||||
+ dma_set_coherent_mask(dev, DMA_BIT_MASK(64));
|
||||
+ } else {
|
||||
+ /*
|
||||
+ * This is to avoid error in cases where a 32-bit USB
|
||||
+ * controller is used on a 64-bit capable system.
|
||||
+ */
|
||||
+ retval = dma_set_mask(dev, DMA_BIT_MASK(32));
|
||||
+ if (retval)
|
||||
+ return retval;
|
||||
+ xhci_dbg(xhci, "Enabling 32-bit DMA addresses.\n");
|
||||
+ dma_set_coherent_mask(dev, DMA_BIT_MASK(32));
|
||||
+ }
|
||||
}
|
||||
|
||||
xhci_dbg(xhci, "Calling HCD init\n");
|
||||
--
|
||||
2.45.1
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
+158
@@ -0,0 +1,158 @@
|
||||
From 0bd681355cbd557d93a6cc62e0b816ed661095c9 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Tue, 21 Dec 2021 19:22:42 +0100
|
||||
Subject: [PATCH 09/22] feat: trying to modernize ps4-apcie so it works with
|
||||
kernel 5.15
|
||||
|
||||
---
|
||||
arch/x86/include/asm/irqdomain.h | 1 +
|
||||
arch/x86/kernel/apic/vector.c | 11 ++++++++-
|
||||
drivers/iommu/amd/iommu.c | 2 ++
|
||||
drivers/pci/probe.c | 6 +++++
|
||||
drivers/ps4/ps4-apcie.c | 40 ++++++++++++++++++++++++--------
|
||||
5 files changed, 49 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/arch/x86/include/asm/irqdomain.h b/arch/x86/include/asm/irqdomain.h
|
||||
index 125c23b7bad3..2f8410292efc 100644
|
||||
--- a/arch/x86/include/asm/irqdomain.h
|
||||
+++ b/arch/x86/include/asm/irqdomain.h
|
||||
@@ -14,6 +14,7 @@ enum {
|
||||
|
||||
extern int x86_fwspec_is_ioapic(struct irq_fwspec *fwspec);
|
||||
extern int x86_fwspec_is_hpet(struct irq_fwspec *fwspec);
|
||||
+extern int x86_fwspec_is_aeolia(struct irq_fwspec *fwspec);
|
||||
|
||||
extern struct irq_domain *x86_vector_domain;
|
||||
|
||||
diff --git a/arch/x86/kernel/apic/vector.c b/arch/x86/kernel/apic/vector.c
|
||||
index c132daabe615..af7339aaa843 100644
|
||||
--- a/arch/x86/kernel/apic/vector.c
|
||||
+++ b/arch/x86/kernel/apic/vector.c
|
||||
@@ -676,6 +676,15 @@ int x86_fwspec_is_hpet(struct irq_fwspec *fwspec)
|
||||
return 0;
|
||||
}
|
||||
|
||||
+int x86_fwspec_is_aeolia(struct irq_fwspec *fwspec)
|
||||
+{
|
||||
+ if (is_fwnode_irqchip(fwspec->fwnode)) {
|
||||
+ const char *fwname = fwnode_get_name(fwspec->fwnode);
|
||||
+ return fwname && !strncmp(fwname, "Aeolia-MSI", 10);
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static int x86_vector_select(struct irq_domain *d, struct irq_fwspec *fwspec,
|
||||
enum irq_domain_bus_token bus_token)
|
||||
{
|
||||
@@ -687,7 +696,7 @@ static int x86_vector_select(struct irq_domain *d, struct irq_fwspec *fwspec,
|
||||
if (apic->apic_id_valid(32768))
|
||||
return 0;
|
||||
|
||||
- return x86_fwspec_is_ioapic(fwspec) || x86_fwspec_is_hpet(fwspec);
|
||||
+ return x86_fwspec_is_ioapic(fwspec) || x86_fwspec_is_hpet(fwspec) || x86_fwspec_is_aeolia(fwspec);
|
||||
}
|
||||
|
||||
static const struct irq_domain_ops x86_vector_domain_ops = {
|
||||
diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c
|
||||
index 5ceaaabb4f9d..f20dc0c7b78f 100644
|
||||
--- a/drivers/iommu/amd/iommu.c
|
||||
+++ b/drivers/iommu/amd/iommu.c
|
||||
@@ -3294,6 +3294,8 @@ static int irq_remapping_select(struct irq_domain *d, struct irq_fwspec *fwspec,
|
||||
devid = get_ioapic_devid(fwspec->param[0]);
|
||||
else if (x86_fwspec_is_hpet(fwspec))
|
||||
devid = get_hpet_devid(fwspec->param[0]);
|
||||
+ else if(x86_fwspec_is_aeolia(fwspec))
|
||||
+ devid = fwspec->param[0];
|
||||
|
||||
if (devid < 0)
|
||||
return 0;
|
||||
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
|
||||
index 5fe5e84fab40..288b49cc49a5 100644
|
||||
--- a/drivers/pci/probe.c
|
||||
+++ b/drivers/pci/probe.c
|
||||
@@ -2638,6 +2638,12 @@ int pci_scan_slot(struct pci_bus *bus, int devfn)
|
||||
nr++;
|
||||
|
||||
for (fn = next_fn(bus, dev, 0); fn > 0; fn = next_fn(bus, dev, fn)) {
|
||||
+ if (PCI_SLOT(devfn) != AEOLIA_SLOT_NUM &&
|
||||
+ pci_bus_read_dev_vendor_id(bus, devfn + fn, &l, 60*1000) &&
|
||||
+ (l & 0xffff) == PCI_VENDOR_ID_SONY) {
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
dev = pci_scan_single_device(bus, devfn + fn);
|
||||
if (dev) {
|
||||
if (!pci_dev_is_added(dev))
|
||||
diff --git a/drivers/ps4/ps4-apcie.c b/drivers/ps4/ps4-apcie.c
|
||||
index d5e87d1ee74e..d9c36f7715bb 100644
|
||||
--- a/drivers/ps4/ps4-apcie.c
|
||||
+++ b/drivers/ps4/ps4-apcie.c
|
||||
@@ -219,28 +219,47 @@ static struct msi_domain_info apcie_msi_domain_info = {
|
||||
|
||||
static struct irq_domain *apcie_create_irq_domain(struct apcie_dev *sc)
|
||||
{
|
||||
- struct irq_domain *domain;
|
||||
+ struct msi_domain_info *domain_info;
|
||||
+ struct irq_domain *domain, *parent;
|
||||
struct fwnode_handle *fn;
|
||||
+ struct irq_fwspec fwspec;
|
||||
|
||||
sc_dbg("apcie_create_irq_domain\n");
|
||||
if (x86_vector_domain == NULL)
|
||||
return NULL;
|
||||
|
||||
- apcie_msi_domain_info.chip_data = (void *)sc;
|
||||
- apcie_msi_domain_info.flags |= MSI_FLAG_MULTI_PCI_MSI;
|
||||
- apcie_msi_controller.name = "IR-Aeolia-MSI";
|
||||
+ domain_info = kzalloc(sizeof(*domain_info), GFP_KERNEL);
|
||||
+ if (!domain_info)
|
||||
+ return NULL;
|
||||
+
|
||||
+ *domain_info = apcie_msi_domain_info;
|
||||
+ domain_info->chip_data = (void *)sc;
|
||||
|
||||
- fn = irq_domain_alloc_named_fwnode(apcie_msi_controller.name);
|
||||
- if (!fn)
|
||||
+ fn = irq_domain_alloc_named_id_fwnode(apcie_msi_controller.name, pci_dev_id(sc->pdev));
|
||||
+ if (!fn) {
|
||||
+ kfree(domain_info);
|
||||
return NULL;
|
||||
- domain = pci_msi_create_irq_domain(fn, &apcie_msi_domain_info,
|
||||
- x86_vector_domain);
|
||||
+ }
|
||||
+
|
||||
+ fwspec.fwnode = fn;
|
||||
+ fwspec.param_count = 1;
|
||||
+
|
||||
+ // It should be correct to put the pci device id in here
|
||||
+ fwspec.param[0] = pci_dev_id(sc->pdev);
|
||||
|
||||
+ parent = irq_find_matching_fwspec(&fwspec, DOMAIN_BUS_ANY);
|
||||
+ if (!parent) {
|
||||
+ parent = x86_vector_domain;
|
||||
+ } else {
|
||||
+ apcie_msi_domain_info.flags |= MSI_FLAG_MULTI_PCI_MSI;
|
||||
+ apcie_msi_controller.name = "IR-Aeolia-MSI";
|
||||
+ }
|
||||
+
|
||||
+ domain = msi_create_irq_domain(fn, domain_info, parent);
|
||||
if (!domain) {
|
||||
irq_domain_free_fwnode(fn);
|
||||
+ kfree(domain_info);
|
||||
pr_warn("Failed to initialize IR-Aeolia-MSI irqdomain.\n");
|
||||
- } else {
|
||||
- domain->flags |= IRQ_DOMAIN_MSI_NOMASK_QUIRK;
|
||||
}
|
||||
|
||||
return domain;
|
||||
@@ -283,6 +302,7 @@ int apcie_assign_irqs(struct pci_dev *dev, int nvec)
|
||||
info.type = X86_IRQ_ALLOC_TYPE_PCI_MSI;
|
||||
/* IRQs "come from" function 4 as far as the IOMMU/system see */
|
||||
//info.msi_dev = sc->pdev;
|
||||
+ info.desc = alloc_msi_entry(&dev->dev, nvec, NULL);
|
||||
/* Our hwirq number is function << 8 plus subfunction.
|
||||
* Subfunction is usually 0 and implicitly increments per hwirq,
|
||||
* but can also be 0xff to indicate that this is a shared IRQ. */
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,680 @@
|
||||
From 92a4a84d51795f0a765a0dc6b3db08ca60b74805 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Fri, 24 Dec 2021 22:40:25 +0100
|
||||
Subject: [PATCH 10/22] feat: working state, broken gpu
|
||||
|
||||
---
|
||||
drivers/ata/ahci.c | 289 ++++++++++++++++++++++++++
|
||||
drivers/ata/ahci.h | 28 +++
|
||||
drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 6 +
|
||||
drivers/iommu/amd/iommu.c | 1 +
|
||||
drivers/ps4/aeolia.h | 8 +-
|
||||
drivers/ps4/ps4-apcie.c | 95 ++++++---
|
||||
6 files changed, 392 insertions(+), 35 deletions(-)
|
||||
|
||||
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
|
||||
index 149ee16fd022..5ba41c18b295 100644
|
||||
--- a/drivers/ata/ahci.c
|
||||
+++ b/drivers/ata/ahci.c
|
||||
@@ -34,6 +34,10 @@
|
||||
#include <linux/io-64-nonatomic-lo-hi.h>
|
||||
#include "ahci.h"
|
||||
|
||||
+#ifdef CONFIG_X86_PS4
|
||||
+#include <asm/ps4.h>
|
||||
+#endif
|
||||
+
|
||||
#define DRV_NAME "ahci"
|
||||
#define DRV_VERSION "3.0"
|
||||
|
||||
@@ -605,6 +609,11 @@ static const struct pci_device_id ahci_pci_tbl[] = {
|
||||
/* Enmotus */
|
||||
{ PCI_DEVICE(0x1c44, 0x8000), board_ahci },
|
||||
|
||||
+ /* Sony (PS4) */
|
||||
+ { PCI_VDEVICE(SONY, PCI_DEVICE_ID_SONY_AEOLIA_AHCI), board_ahci },
|
||||
+ { PCI_VDEVICE(SONY, PCI_DEVICE_ID_SONY_BELIZE_AHCI), board_ahci },
|
||||
+ { PCI_VDEVICE(SONY, PCI_DEVICE_ID_SONY_BAIKAL_AHCI), board_ahci },
|
||||
+
|
||||
/* Loongson */
|
||||
{ PCI_VDEVICE(LOONGSON, 0x7a08), board_ahci },
|
||||
|
||||
@@ -954,6 +963,23 @@ static int ahci_configure_dma_masks(struct pci_dev *pdev, int using_dac)
|
||||
if (pdev->dma_mask && pdev->dma_mask < DMA_BIT_MASK(32))
|
||||
return 0;
|
||||
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (pdev->vendor == PCI_VENDOR_ID_SONY) {
|
||||
+ rc = dma_set_mask(&pdev->dev, DMA_BIT_MASK(31));
|
||||
+ if (rc) {
|
||||
+ dev_err(&pdev->dev, "31-bit DMA enable failed\n");
|
||||
+ return rc;
|
||||
+ }
|
||||
+ rc = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(31));
|
||||
+ if (rc) {
|
||||
+ dev_err(&pdev->dev,
|
||||
+ "31-bit consistent DMA enable failed\n");
|
||||
+ return rc;
|
||||
+ }
|
||||
+ return 0;
|
||||
+ }
|
||||
+ #endif
|
||||
+
|
||||
rc = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(dma_bits));
|
||||
if (rc)
|
||||
dev_err(&pdev->dev, "DMA enable failed\n");
|
||||
@@ -1574,6 +1600,12 @@ static int ahci_init_msi(struct pci_dev *pdev, unsigned int n_ports,
|
||||
{
|
||||
int nvec;
|
||||
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (pdev->vendor == PCI_VENDOR_ID_SONY) {
|
||||
+ return apcie_assign_irqs(pdev, n_ports);
|
||||
+ }
|
||||
+ #endif
|
||||
+
|
||||
if (hpriv->flags & AHCI_HFLAG_NO_MSI)
|
||||
return -ENODEV;
|
||||
|
||||
@@ -1700,6 +1732,13 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
|
||||
WARN_ON((int)ATA_MAX_QUEUE > AHCI_MAX_CMDS);
|
||||
|
||||
+
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ /* This will return negative on non-PS4 platforms */
|
||||
+ if (apcie_status() == 0)
|
||||
+ return -EPROBE_DEFER;
|
||||
+ #endif
|
||||
+
|
||||
ata_print_version_once(&pdev->dev, DRV_VERSION);
|
||||
|
||||
/* The AHCI driver can only drive the SATA ports, the PATA driver
|
||||
@@ -1947,8 +1986,258 @@ static void ahci_remove_one(struct pci_dev *pdev)
|
||||
NULL);
|
||||
pm_runtime_get_noresume(&pdev->dev);
|
||||
ata_pci_remove_one(pdev);
|
||||
+
|
||||
+ #ifdef CONFIG_X86_PS4
|
||||
+ if (pdev->vendor == PCI_VENDOR_ID_SONY) {
|
||||
+ apcie_free_irqs(pdev->irq, 1);
|
||||
+ }
|
||||
+ #endif
|
||||
+}
|
||||
+
|
||||
+#ifdef CONFIG_X86_PS4
|
||||
+void bpcie_sata_phy_init(struct device *dev, struct ahci_controller *ctlr)
|
||||
+{
|
||||
+ int i;
|
||||
+ u32 v;
|
||||
+ u32 v2;
|
||||
+ bool is_phy_gen_3;
|
||||
+ unsigned int trace_length;
|
||||
+
|
||||
+ dev_info(dev, "Belize SATA PHY init\n");
|
||||
+
|
||||
+ for (i = 0; i < 100; i++) {
|
||||
+ udelay(10000);
|
||||
+ }
|
||||
+
|
||||
+ //step 1
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x81);
|
||||
+
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffff00) | 1);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xa5);
|
||||
+
|
||||
+ //step 2
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+
|
||||
+ if (ctlr->dev_id == 0x90ca104d || ctlr->dev_id == 0x909f104d || ctlr->dev_id == 0x90d9104d) {
|
||||
+ is_phy_gen_3 = false;
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v & 0xfffff3ff);
|
||||
+ } else {
|
||||
+ u32 v2 = bpcie_ahci_read(ctlr->r_mem, 0);
|
||||
+ if ((v2 & 0xf00000) != 0x300000) {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff3ff) | 0x400);
|
||||
+ is_phy_gen_3 = false;
|
||||
+ } else {
|
||||
+ dev_info(dev,"PHY SET GEN3\n");
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff3ff) | 0x800);
|
||||
+ is_phy_gen_3 = true;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ //--- step 3 ---
|
||||
+ if (ctlr->trace_len == 0) {
|
||||
+ trace_length = 6;
|
||||
+ } else {
|
||||
+ trace_length = ctlr->trace_len & 0x1f;
|
||||
+ if (trace_length >= 0x13) {
|
||||
+ trace_length = 6;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ dev_info(dev,"Belize SATA PHY Trace length : %d\n",trace_length);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xa3);
|
||||
+
|
||||
+ //--- step 4 ---
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff3ff) | 0x800);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xd0);
|
||||
+
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff800) | 0x441);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xe1);
|
||||
+
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffff8f) | 0x60);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xd0);
|
||||
+
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffff3fff) | 0x8000);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xf1);
|
||||
+
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff3ff) | 0x400);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x48);
|
||||
+
|
||||
+ //--- step 5 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, 0x62d8);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xe);
|
||||
+
|
||||
+ //--- step 6 ---
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v & 0xffffdfff);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x8d);
|
||||
+
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v | 1);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x8f);
|
||||
+
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v | 1);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x91);
|
||||
+
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v | 1);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x8d);
|
||||
+
|
||||
+ //--- step 7 ---
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ if (trace_length >= 0xe) {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffffc1) | 0x28);
|
||||
+ } else {
|
||||
+ if (trace_length < 0xb) {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffffc1) | 8);
|
||||
+ } else {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffffc1) | 0x10);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x8f);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffffc1) | 0x12);
|
||||
+
|
||||
+ //--- step 8 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x91);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ if (trace_length < 5) {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffffc1) | 0x24);
|
||||
+ } else {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffffc1) | 0x2a);
|
||||
+ }
|
||||
+
|
||||
+ //--- step 9 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xff);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, 1);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x97);
|
||||
+
|
||||
+ //--- step 10 ---
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ if (is_phy_gen_3) {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffff80) | 0xd3);
|
||||
+ } else {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffff80) | 0xee);
|
||||
+ }
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x95);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffff00) | 0xee);
|
||||
+
|
||||
+ //--- step 11 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xff);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, 0);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x8d);
|
||||
+
|
||||
+ //--- step 12 ---
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ if (trace_length < 0xe) {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff87f) | 0x900);
|
||||
+ } else {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff87f) | 0xe00);
|
||||
+ }
|
||||
+
|
||||
+ //--- step 13 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x8f);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff07f) | 0x900);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x91);
|
||||
+
|
||||
+ //--- step 14 ---
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ if (is_phy_gen_3) {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff87f) | 0xd00);
|
||||
+ } else {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xfffff87f) | 0xe80);
|
||||
+ }
|
||||
+
|
||||
+ //--- step 15 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 200);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v & 0xffffefff);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 10);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v & 0xffffefff);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x82);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v | 0x1000);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xc9);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v | 0x1000);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x84);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffffffc0) | 0xc);
|
||||
+
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x8d);
|
||||
+
|
||||
+ //--- step 16 ---
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ v = v & 0xffff0fff;
|
||||
+ if (trace_length < 0xe) {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v | 0x8000);
|
||||
+ } else {
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, v);
|
||||
+ }
|
||||
+
|
||||
+ //--- step 17 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0x8f);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x17c, (v & 0xffff0fff) | 0x8000);
|
||||
+
|
||||
+ //--- step 18 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0xa0, 0);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0xa4);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0xa4, v | 0x40);
|
||||
+
|
||||
+ //--- step 19 ---
|
||||
+ if (ctlr->dev_id != 0x909f104d && ctlr->dev_id != 0x90ca104d && ctlr->dev_id != 0x90d9104d) {
|
||||
+ v2 = 0x73000000;
|
||||
+ } else {
|
||||
+ v2 = 0x30000000;
|
||||
+ }
|
||||
+
|
||||
+ //--- step 20 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0xa0, 4);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0xa4);
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0xa4, (v & 0x88ffffff) | v2);
|
||||
+
|
||||
+ //--- step 21 ---
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0xa4);
|
||||
+
|
||||
+ //--- step 22 ---
|
||||
+ for (i = 0; i < 100; i++) {
|
||||
+ udelay(10000);
|
||||
+ }
|
||||
+
|
||||
+ //--- step 23 ---
|
||||
+ bpcie_ahci_write(ctlr->r_mem, 0x178, 0xf9);
|
||||
+ v = bpcie_ahci_read(ctlr->r_mem, 0x17c);
|
||||
+
|
||||
+ if (is_phy_gen_3) {
|
||||
+ dev_info(dev,"Align 90=0x%02x\n",v & 0x7f);
|
||||
+ }
|
||||
+ //done!
|
||||
}
|
||||
|
||||
+EXPORT_SYMBOL_GPL(bpcie_sata_phy_init);
|
||||
+#endif
|
||||
+
|
||||
module_pci_driver(ahci_pci_driver);
|
||||
|
||||
MODULE_AUTHOR("Jeff Garzik");
|
||||
diff --git a/drivers/ata/ahci.h b/drivers/ata/ahci.h
|
||||
index 60ae707a88cc..efdfac788727 100644
|
||||
--- a/drivers/ata/ahci.h
|
||||
+++ b/drivers/ata/ahci.h
|
||||
@@ -447,4 +447,32 @@ static inline int ahci_nr_ports(u32 cap)
|
||||
return (cap & 0x1f) + 1;
|
||||
}
|
||||
|
||||
+#ifdef CONFIG_X86_PS4
|
||||
+struct f_resource{
|
||||
+ u64 resource_i_ptr;
|
||||
+ u64 r_bustag;
|
||||
+ void __iomem * r_bushandle;
|
||||
+};
|
||||
+
|
||||
+struct ahci_controller{
|
||||
+ void *dev;
|
||||
+ int dev_id;
|
||||
+ struct f_resource *r_mem;
|
||||
+ u32 trace_len;
|
||||
+};
|
||||
+
|
||||
+void bpcie_sata_phy_init(struct device *dev, struct ahci_controller *ctlr);
|
||||
+
|
||||
+static inline void bpcie_ahci_write(struct f_resource *r_mem, u32 offset, u32 val) {
|
||||
+ iowrite32(val, r_mem->r_bushandle + offset);
|
||||
+}
|
||||
+
|
||||
+static inline u32 bpcie_ahci_read(struct f_resource *r_mem, u32 offset) {
|
||||
+ return ioread32(r_mem->r_bushandle + offset);
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+
|
||||
+
|
||||
+
|
||||
#endif /* _AHCI_H */
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
|
||||
index 752b66d7d0df..5e249922a72a 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
|
||||
@@ -1068,6 +1068,10 @@ static int gmc_v7_0_sw_init(void *handle)
|
||||
if (r)
|
||||
return r;
|
||||
|
||||
+
|
||||
+ dev_info(adev->dev, "Done gart\n");
|
||||
+
|
||||
+
|
||||
/*
|
||||
* number of VMs
|
||||
* VMID 0 is reserved for System
|
||||
@@ -1093,6 +1097,8 @@ static int gmc_v7_0_sw_init(void *handle)
|
||||
return -ENOMEM;
|
||||
atomic_set(&adev->gmc.vm_fault_info_updated, 0);
|
||||
|
||||
+ dev_info(adev->dev, "Done init\n");
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c
|
||||
index f20dc0c7b78f..4d36261e88a9 100644
|
||||
--- a/drivers/iommu/amd/iommu.c
|
||||
+++ b/drivers/iommu/amd/iommu.c
|
||||
@@ -3300,6 +3300,7 @@ static int irq_remapping_select(struct irq_domain *d, struct irq_fwspec *fwspec,
|
||||
if (devid < 0)
|
||||
return 0;
|
||||
|
||||
+ pr_err("Remapping Selected: %x\n", devid);
|
||||
iommu = amd_iommu_rlookup_table[devid];
|
||||
return iommu && iommu->ir_domain == d;
|
||||
}
|
||||
diff --git a/drivers/ps4/aeolia.h b/drivers/ps4/aeolia.h
|
||||
index 13df4b9a4fef..5319822ca818 100644
|
||||
--- a/drivers/ps4/aeolia.h
|
||||
+++ b/drivers/ps4/aeolia.h
|
||||
@@ -151,11 +151,11 @@ struct apcie_dev {
|
||||
struct apcie_icc_dev icc;
|
||||
};
|
||||
|
||||
-#define sc_err(...) dev_err(&sc->pdev->dev, __VA_ARGS__)
|
||||
-#define sc_warn(...) dev_warn(&sc->pdev->dev, __VA_ARGS__)
|
||||
-#define sc_notice(...) dev_notice(&sc->pdev->dev, __VA_ARGS__)
|
||||
+#define sc_err(...) dev_info(&sc->pdev->dev, __VA_ARGS__)
|
||||
+#define sc_warn(...) dev_info(&sc->pdev->dev, __VA_ARGS__)
|
||||
+#define sc_notice(...) dev_info(&sc->pdev->dev, __VA_ARGS__)
|
||||
#define sc_info(...) dev_info(&sc->pdev->dev, __VA_ARGS__)
|
||||
-#define sc_dbg(...) dev_dbg(&sc->pdev->dev, __VA_ARGS__)
|
||||
+#define sc_dbg(...) dev_info(&sc->pdev->dev, __VA_ARGS__)
|
||||
|
||||
static inline int apcie_irqnum(struct apcie_dev *sc, int index)
|
||||
{
|
||||
diff --git a/drivers/ps4/ps4-apcie.c b/drivers/ps4/ps4-apcie.c
|
||||
index d9c36f7715bb..f4e3a380d591 100644
|
||||
--- a/drivers/ps4/ps4-apcie.c
|
||||
+++ b/drivers/ps4/ps4-apcie.c
|
||||
@@ -18,6 +18,11 @@
|
||||
|
||||
#include "aeolia.h"
|
||||
|
||||
+
|
||||
+#define MSI_DATA_VECTOR_SHIFT 0
|
||||
+#define MSI_DATA_VECTOR(v) (((u8)v) << MSI_DATA_VECTOR_SHIFT)
|
||||
+#define MSI_DATA_VECTOR_MASK 0xffffff00
|
||||
+
|
||||
/* #define QEMU_HACK_NO_IOMMU */
|
||||
|
||||
/* Number of implemented MSI registers per function */
|
||||
@@ -63,12 +68,20 @@ static void apcie_config_msi(struct apcie_dev *sc, u32 func, u32 subfunc,
|
||||
|
||||
glue_clear_mask(sc, APCIE_REG_MSI_CONTROL, APCIE_REG_MSI_CONTROL_ENABLE);
|
||||
/* Unknown */
|
||||
+ sc_dbg("glue_write32 to offset, value (%08x, %08x, %08x)\n", sc->bar4, APCIE_REG_MSI(0x8), 0xffffffff);
|
||||
glue_write32(sc, APCIE_REG_MSI(0x8), 0xffffffff);
|
||||
/* Unknown */
|
||||
+ sc_dbg("glue_write32 to offset, value (%08x, %08x, %08x)\n", sc->bar4, APCIE_REG_MSI(0xc + (func << 2)), 0xB7FFFF00 + func * 16);
|
||||
glue_write32(sc, APCIE_REG_MSI(0xc + (func << 2)), 0xB7FFFF00 + func * 16);
|
||||
+
|
||||
+ sc_dbg("glue_write32 to offset, value (%08x, %08x, %08x)\n", sc->bar4, APCIE_REG_MSI_ADDR(func), addr);
|
||||
glue_write32(sc, APCIE_REG_MSI_ADDR(func), addr);
|
||||
/* Unknown */
|
||||
+
|
||||
+ sc_dbg("glue_write32 to offset, value (%08x, %08x, %08x)\n", sc->bar4, APCIE_REG_MSI(0xcc + (func << 2)), 0);
|
||||
glue_write32(sc, APCIE_REG_MSI(0xcc + (func << 2)), 0);
|
||||
+
|
||||
+ sc_dbg("glue_write32 to offset, value (%08x, %08x, %08x)\n", sc->bar4, APCIE_REG_MSI_DATA_HI(func), data & 0xffe0);
|
||||
glue_write32(sc, APCIE_REG_MSI_DATA_HI(func), data & 0xffe0);
|
||||
|
||||
if (func < 4) {
|
||||
@@ -84,6 +97,8 @@ static void apcie_config_msi(struct apcie_dev *sc, u32 func, u32 subfunc,
|
||||
} else {
|
||||
offset = 0xa0 + ((func - 5) << 4) + (subfunc << 2);
|
||||
}
|
||||
+
|
||||
+ sc_dbg("glue_write32 to offset, value (%08x, %08x, %08x)\n", sc->bar4, APCIE_REG_MSI_DATA_LO(offset), data & 0x1f);
|
||||
glue_write32(sc, APCIE_REG_MSI_DATA_LO(offset), data & 0x1f);
|
||||
|
||||
if (func == AEOLIA_FUNC_ID_PCIE)
|
||||
@@ -149,9 +164,17 @@ static void apcie_msi_calc_mask(struct irq_data *data) {
|
||||
static void apcie_irq_msi_compose_msg(struct irq_data *data,
|
||||
struct msi_msg *msg)
|
||||
{
|
||||
- __irq_msi_compose_msg(irqd_cfg(data), msg, false);
|
||||
-}
|
||||
+ struct irq_cfg *cfg = irqd_cfg(data);
|
||||
|
||||
+ memset(msg, 0, sizeof(*msg));
|
||||
+ msg->address_hi = X86_MSI_BASE_ADDRESS_HIGH;
|
||||
+ msg->address_lo = 0xfee00000;// Just do it like this for now
|
||||
+
|
||||
+ // I know this is absolute horseshit, but it matches a known working kernel
|
||||
+ msg->data = data->irq - 1;
|
||||
+
|
||||
+ pr_err("apcie_irq_msi_compose_msg\n");
|
||||
+}
|
||||
|
||||
static struct irq_chip apcie_msi_controller = {
|
||||
.name = "Aeolia-MSI",
|
||||
@@ -162,7 +185,7 @@ static struct irq_chip apcie_msi_controller = {
|
||||
.irq_retrigger = irq_chip_retrigger_hierarchy,
|
||||
.irq_compose_msi_msg = apcie_irq_msi_compose_msg,
|
||||
.irq_write_msi_msg = apcie_msi_write_msg,
|
||||
- .flags = IRQCHIP_SKIP_SET_WAKE,
|
||||
+ .flags = IRQCHIP_SKIP_SET_WAKE | IRQCHIP_AFFINITY_PRE_STARTUP,
|
||||
};
|
||||
|
||||
static irq_hw_number_t apcie_msi_get_hwirq(struct msi_domain_info *info,
|
||||
@@ -176,7 +199,7 @@ static int apcie_msi_init(struct irq_domain *domain,
|
||||
irq_hw_number_t hwirq, msi_alloc_info_t *arg)
|
||||
{
|
||||
struct irq_data *data;
|
||||
- pr_devel("apcie_msi_init(%p, %p, %d, 0x%lx, %p)\n", domain, info, virq, hwirq, arg);
|
||||
+ pr_err("apcie_msi_init(%p, %p, %d, 0x%lx, %p)\n", domain, info, virq, hwirq, arg);
|
||||
|
||||
data = irq_domain_get_irq_data(domain, virq);
|
||||
irq_domain_set_info(domain, virq, hwirq, info->chip, info->chip_data,
|
||||
@@ -188,23 +211,25 @@ static int apcie_msi_init(struct irq_domain *domain,
|
||||
static void apcie_msi_free(struct irq_domain *domain,
|
||||
struct msi_domain_info *info, unsigned int virq)
|
||||
{
|
||||
- pr_devel("apcie_msi_free(%d)\n", virq);
|
||||
+ pr_err("apcie_msi_free(%d)\n", virq);
|
||||
}
|
||||
|
||||
-int apcie_msi_prepare(struct irq_domain *domain, struct device *dev, int nvec,
|
||||
- msi_alloc_info_t *arg)
|
||||
+
|
||||
+static void apcie_set_desc(msi_alloc_info_t *arg, struct msi_desc *desc)
|
||||
{
|
||||
- init_irq_alloc_info(arg, NULL);
|
||||
+ arg->desc = desc;
|
||||
+ struct pci_dev* device = msi_desc_to_pci_dev(desc);
|
||||
|
||||
- arg->type = X86_IRQ_ALLOC_TYPE_PCI_MSI;
|
||||
- arg->flags |= MSI_FLAG_MULTI_PCI_MSI;
|
||||
+ arg->hwirq = PCI_FUNC(device->devfn) << 8;
|
||||
|
||||
- return 0;
|
||||
+#ifndef QEMU_HACK_NO_IOMMU
|
||||
+ arg->hwirq |= 0xFF;
|
||||
+#endif
|
||||
}
|
||||
|
||||
static struct msi_domain_ops apcie_msi_domain_ops = {
|
||||
.get_hwirq = apcie_msi_get_hwirq,
|
||||
- .msi_prepare = apcie_msi_prepare,
|
||||
+ .set_desc = apcie_set_desc,
|
||||
.msi_init = apcie_msi_init,
|
||||
.msi_free = apcie_msi_free,
|
||||
};
|
||||
@@ -219,7 +244,6 @@ static struct msi_domain_info apcie_msi_domain_info = {
|
||||
|
||||
static struct irq_domain *apcie_create_irq_domain(struct apcie_dev *sc)
|
||||
{
|
||||
- struct msi_domain_info *domain_info;
|
||||
struct irq_domain *domain, *parent;
|
||||
struct fwnode_handle *fn;
|
||||
struct irq_fwspec fwspec;
|
||||
@@ -228,19 +252,15 @@ static struct irq_domain *apcie_create_irq_domain(struct apcie_dev *sc)
|
||||
if (x86_vector_domain == NULL)
|
||||
return NULL;
|
||||
|
||||
- domain_info = kzalloc(sizeof(*domain_info), GFP_KERNEL);
|
||||
- if (!domain_info)
|
||||
- return NULL;
|
||||
-
|
||||
- *domain_info = apcie_msi_domain_info;
|
||||
- domain_info->chip_data = (void *)sc;
|
||||
+ apcie_msi_domain_info.chip_data = (void *)sc;
|
||||
|
||||
fn = irq_domain_alloc_named_id_fwnode(apcie_msi_controller.name, pci_dev_id(sc->pdev));
|
||||
if (!fn) {
|
||||
- kfree(domain_info);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
+ sc_dbg("devid = %d\n", pci_dev_id(sc->pdev));
|
||||
+
|
||||
fwspec.fwnode = fn;
|
||||
fwspec.param_count = 1;
|
||||
|
||||
@@ -249,17 +269,19 @@ static struct irq_domain *apcie_create_irq_domain(struct apcie_dev *sc)
|
||||
|
||||
parent = irq_find_matching_fwspec(&fwspec, DOMAIN_BUS_ANY);
|
||||
if (!parent) {
|
||||
+ sc_dbg("no parent \n");
|
||||
parent = x86_vector_domain;
|
||||
+ } else if (parent == x86_vector_domain) {
|
||||
+ sc_dbg("no parent \n");
|
||||
} else {
|
||||
apcie_msi_domain_info.flags |= MSI_FLAG_MULTI_PCI_MSI;
|
||||
apcie_msi_controller.name = "IR-Aeolia-MSI";
|
||||
}
|
||||
|
||||
- domain = msi_create_irq_domain(fn, domain_info, parent);
|
||||
+ domain = msi_create_irq_domain(fn, &apcie_msi_domain_info, parent);
|
||||
if (!domain) {
|
||||
irq_domain_free_fwnode(fn);
|
||||
- kfree(domain_info);
|
||||
- pr_warn("Failed to initialize IR-Aeolia-MSI irqdomain.\n");
|
||||
+ pr_warn("Failed to initialize Aeolia-MSI irqdomain.\n");
|
||||
}
|
||||
|
||||
return domain;
|
||||
@@ -302,15 +324,17 @@ int apcie_assign_irqs(struct pci_dev *dev, int nvec)
|
||||
info.type = X86_IRQ_ALLOC_TYPE_PCI_MSI;
|
||||
/* IRQs "come from" function 4 as far as the IOMMU/system see */
|
||||
//info.msi_dev = sc->pdev;
|
||||
- info.desc = alloc_msi_entry(&dev->dev, nvec, NULL);
|
||||
+ info.devid = pci_dev_id(sc->pdev);
|
||||
+
|
||||
+ int i, base = 0;
|
||||
+ struct msi_desc *desc;
|
||||
+ struct device* bare_dev = &sc->pdev->dev;
|
||||
+
|
||||
/* Our hwirq number is function << 8 plus subfunction.
|
||||
* Subfunction is usually 0 and implicitly increments per hwirq,
|
||||
* but can also be 0xff to indicate that this is a shared IRQ. */
|
||||
- //https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?id=3b9c1d377d67072d1d8a2373b4969103cca00dab
|
||||
info.hwirq = PCI_FUNC(dev->devfn) << 8;
|
||||
|
||||
- dev_dbg(&dev->dev, "apcie_assign_irqs(%d)\n", nvec);
|
||||
-
|
||||
#ifndef QEMU_HACK_NO_IOMMU
|
||||
info.flags = X86_IRQ_ALLOC_CONTIGUOUS_VECTORS;
|
||||
if (!(apcie_msi_domain_info.flags & MSI_FLAG_MULTI_PCI_MSI)) {
|
||||
@@ -319,14 +343,23 @@ int apcie_assign_irqs(struct pci_dev *dev, int nvec)
|
||||
}
|
||||
#endif
|
||||
|
||||
+ desc = alloc_msi_entry(bare_dev, 1, NULL);
|
||||
+
|
||||
+ info.desc = desc;
|
||||
+ info.data = sc;
|
||||
+
|
||||
+ dev_info(&dev->dev, "apcie_assign_irqs(%d) (%d)\n", nvec, info.hwirq);
|
||||
+
|
||||
ret = irq_domain_alloc_irqs(sc->irqdomain, nvec, NUMA_NO_NODE, &info);
|
||||
if (ret >= 0) {
|
||||
+ dev_info(&dev->dev, "irq_domain_alloc_irqs = %x\n", ret);
|
||||
dev->irq = ret;
|
||||
+ desc->irq = ret;
|
||||
ret = nvec;
|
||||
}
|
||||
|
||||
fail:
|
||||
- dev_dbg(&dev->dev, "apcie_assign_irqs returning %d\n", ret);
|
||||
+ dev_info(&dev->dev, "apcie_assign_irqs returning %d\n", ret);
|
||||
if (sc_dev)
|
||||
pci_dev_put(sc_dev);
|
||||
return ret;
|
||||
@@ -494,10 +527,10 @@ static int apcie_probe(struct pci_dev *dev, const struct pci_device_id *id) {
|
||||
|
||||
if ((ret = apcie_glue_init(sc)) < 0)
|
||||
goto free_bars;
|
||||
- if ((ret = apcie_uart_init(sc)) < 0)
|
||||
- goto remove_glue;
|
||||
+ //if ((ret = apcie_uart_init(sc)) < 0)
|
||||
+ // goto remove_glue;
|
||||
if ((ret = apcie_icc_init(sc)) < 0)
|
||||
- goto remove_uart;
|
||||
+ goto remove_glue;
|
||||
|
||||
apcie_initialized = true;
|
||||
return 0;
|
||||
--
|
||||
2.45.1
|
||||
|
||||
+126
@@ -0,0 +1,126 @@
|
||||
From ed61a42f4a35bf12c7a78642f7d814f50b936f57 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Sat, 25 Dec 2021 16:13:58 +0100
|
||||
Subject: [PATCH 11/22] fix: incorrectly applied patches and missing patches
|
||||
|
||||
---
|
||||
drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 3 +++
|
||||
.../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 2 ++
|
||||
drivers/gpu/drm/radeon/cik.c | 14 +++++++-------
|
||||
drivers/ps4/ps4-apcie.c | 1 +
|
||||
4 files changed, 13 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
|
||||
index d81187445ebe..8513dd006ad5 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
|
||||
@@ -1400,11 +1400,14 @@ static int gfx_v7_0_init_microcode(struct amdgpu_device *adev)
|
||||
(adev->asic_type == CHIP_GLADIUS)) {
|
||||
snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mec2.bin", chip_name);
|
||||
err = request_firmware(&adev->gfx.mec2_fw, fw_name, adev->dev);
|
||||
+ if (err)
|
||||
{
|
||||
pr_err("gfx7: Failed to open firmware \"%s\"\n", fw_name);
|
||||
goto out;
|
||||
}
|
||||
+
|
||||
err = amdgpu_ucode_validate(adev->gfx.mec2_fw);
|
||||
+ if (err)
|
||||
{
|
||||
pr_err("gfx7: Failed to validate ucode firmware \"%s\"\n", fw_name);
|
||||
goto out;
|
||||
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
|
||||
index d88513d0aca0..0ddcd498a68b 100644
|
||||
--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
|
||||
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
|
||||
@@ -1860,6 +1860,8 @@ struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev)
|
||||
|
||||
switch (dev->device_info->asic_family) {
|
||||
/* HWS is not available on Hawaii. */
|
||||
+ case CHIP_LIVERPOOL:
|
||||
+ case CHIP_GLADIUS:
|
||||
case CHIP_HAWAII:
|
||||
/* HWS depends on CWSR for timely dequeue. CWSR is not
|
||||
* available on Tonga.
|
||||
diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
|
||||
index f6ca400c006f..a0b83b91fdac 100644
|
||||
--- a/drivers/gpu/drm/radeon/cik.c
|
||||
+++ b/drivers/gpu/drm/radeon/cik.c
|
||||
@@ -8251,7 +8251,7 @@ int cik_irq_process(struct radeon_device *rdev)
|
||||
return IRQ_NONE;
|
||||
|
||||
rptr = rdev->ih.rptr;
|
||||
- DRM_DEBUG("cik_irq_process start: rptr %d, wptr %d\n", rptr, wptr);
|
||||
+ //DRM_DEBUG("cik_irq_process start: rptr %d, wptr %d\n", rptr, wptr);
|
||||
|
||||
/* Order reading of wptr vs. reading of IH ring data */
|
||||
rmb();
|
||||
@@ -8294,7 +8294,7 @@ int cik_irq_process(struct radeon_device *rdev)
|
||||
|
||||
break;
|
||||
default:
|
||||
- DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
+ //DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@@ -8324,7 +8324,7 @@ int cik_irq_process(struct radeon_device *rdev)
|
||||
|
||||
break;
|
||||
default:
|
||||
- DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
+ //DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@@ -8354,7 +8354,7 @@ int cik_irq_process(struct radeon_device *rdev)
|
||||
|
||||
break;
|
||||
default:
|
||||
- DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
+ //DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@@ -8384,7 +8384,7 @@ int cik_irq_process(struct radeon_device *rdev)
|
||||
|
||||
break;
|
||||
default:
|
||||
- DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
+ //DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@@ -8414,7 +8414,7 @@ int cik_irq_process(struct radeon_device *rdev)
|
||||
|
||||
break;
|
||||
default:
|
||||
- DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
+ //DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
@@ -8444,7 +8444,7 @@ int cik_irq_process(struct radeon_device *rdev)
|
||||
|
||||
break;
|
||||
default:
|
||||
- DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
+ //DRM_DEBUG("Unhandled interrupt: %d %d\n", src_id, src_data);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
diff --git a/drivers/ps4/ps4-apcie.c b/drivers/ps4/ps4-apcie.c
|
||||
index f4e3a380d591..fd27a4f38e61 100644
|
||||
--- a/drivers/ps4/ps4-apcie.c
|
||||
+++ b/drivers/ps4/ps4-apcie.c
|
||||
@@ -527,6 +527,7 @@ static int apcie_probe(struct pci_dev *dev, const struct pci_device_id *id) {
|
||||
|
||||
if ((ret = apcie_glue_init(sc)) < 0)
|
||||
goto free_bars;
|
||||
+ // TODO (ps4patches): figure out why this dies a horrible and painful death.
|
||||
//if ((ret = apcie_uart_init(sc)) < 0)
|
||||
// goto remove_glue;
|
||||
if ((ret = apcie_icc_init(sc)) < 0)
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,188 @@
|
||||
From b009aedae1dd07fa3c761e7ddcc92071dd792853 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Tue, 28 Dec 2021 17:53:53 +0100
|
||||
Subject: [PATCH 12/22] fix: radeon drivers
|
||||
|
||||
---
|
||||
drivers/gpu/drm/radeon/cik.c | 30 +++++++++++++--------------
|
||||
drivers/gpu/drm/radeon/ps4_bridge.c | 23 +++++++++++---------
|
||||
drivers/gpu/drm/radeon/radeon.h | 2 +-
|
||||
drivers/gpu/drm/radeon/radeon_audio.c | 2 +-
|
||||
4 files changed, 30 insertions(+), 27 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
|
||||
index a0b83b91fdac..ce9799517ff4 100644
|
||||
--- a/drivers/gpu/drm/radeon/cik.c
|
||||
+++ b/drivers/gpu/drm/radeon/cik.c
|
||||
@@ -1038,7 +1038,20 @@ static const u32 kalindi_rlc_save_restore_register_list[] =
|
||||
(0x0e00 << 16) | (0x9600 >> 2),
|
||||
};
|
||||
|
||||
-static const u32 liverpool_rlc_save_restore_register_li
|
||||
+static const u32 bonaire_golden_spm_registers[] =
|
||||
+{
|
||||
+ 0x30800, 0xe0ffffff, 0xe0000000
|
||||
+};
|
||||
+
|
||||
+static const u32 bonaire_golden_common_registers[] =
|
||||
+{
|
||||
+ 0xc770, 0xffffffff, 0x00000800,
|
||||
+ 0xc774, 0xffffffff, 0x00000800,
|
||||
+ 0xc798, 0xffffffff, 0x00007fbf,
|
||||
+ 0xc79c, 0xffffffff, 0x00007faf
|
||||
+};
|
||||
+
|
||||
+static const u32 liverpool_rlc_save_restore_register_list[] =
|
||||
{
|
||||
(0x0600 << 16) | 0x263d,
|
||||
0x00000000,
|
||||
@@ -1453,19 +1466,6 @@ static const u32 liverpool_rlc_save_restore_register_li
|
||||
(0x0e00 << 16) | 0x230d,
|
||||
};
|
||||
|
||||
-static const u32 bonaire_golden_spm_registers[] =
|
||||
-{
|
||||
- 0x30800, 0xe0ffffff, 0xe0000000
|
||||
-};
|
||||
-
|
||||
-static const u32 bonaire_golden_common_registers[] =
|
||||
-{
|
||||
- 0xc770, 0xffffffff, 0x00000800,
|
||||
- 0xc774, 0xffffffff, 0x00000800,
|
||||
- 0xc798, 0xffffffff, 0x00007fbf,
|
||||
- 0xc79c, 0xffffffff, 0x00007faf
|
||||
-};
|
||||
-
|
||||
static const u32 bonaire_golden_registers[] =
|
||||
{
|
||||
0x3354, 0x00000333, 0x00000333,
|
||||
@@ -1616,7 +1616,7 @@ static const u32 liverpool_golden_common_registers[] =
|
||||
0x5004, 0x00002000, 0x00002000, /* GARLIC_FLUSH_CNTL */
|
||||
};
|
||||
|
||||
-onst u32 liverpool_golden_registers[] =
|
||||
+static const u32 liverpool_golden_registers[] =
|
||||
{
|
||||
0xc420, 0xffffffff, 0xfffffffc, /* RLC_CGTT_MGCG_OVERRIDE */
|
||||
0x30800, 0xffffffff, 0xe0000000, /* GRBM_GFX_INDEX */
|
||||
diff --git a/drivers/gpu/drm/radeon/ps4_bridge.c b/drivers/gpu/drm/radeon/ps4_bridge.c
|
||||
index 1c1cb0b4dabb..6f6e354e182d 100644
|
||||
--- a/drivers/gpu/drm/radeon/ps4_bridge.c
|
||||
+++ b/drivers/gpu/drm/radeon/ps4_bridge.c
|
||||
@@ -13,11 +13,14 @@
|
||||
|
||||
#include <asm/ps4.h>
|
||||
|
||||
+#include <drm/drm_bridge.h>
|
||||
#include <drm/drm_crtc.h>
|
||||
#include <drm/drm_crtc_helper.h>
|
||||
#include <drm/drm_atomic_helper.h>
|
||||
#include <drm/drm_edid.h>
|
||||
-#include <drm/drmP.h>
|
||||
+#include <drm/drm_print.h>
|
||||
+
|
||||
+#include <linux/pci.h>
|
||||
|
||||
#include "radeon_mode.h"
|
||||
#include "ObjectID.h"
|
||||
@@ -95,7 +98,6 @@
|
||||
# define HDCPEN_ENC_EN 0x03
|
||||
# define HDCPEN_ENC_DIS 0x05
|
||||
|
||||
-#define PCI_VENDOR_ID_AMD 0x1002
|
||||
#define PCI_DEVICE_ID_CUH_11XX 0x9920
|
||||
#define PCI_DEVICE_ID_CUH_12XX 0x9922
|
||||
#define PCI_DEVICE_ID_CUH_2XXX 0x9923
|
||||
@@ -269,8 +271,8 @@ static inline struct radeon_ps4_bridge *
|
||||
}
|
||||
|
||||
static void radeon_ps4_bridge_mode_set(struct drm_bridge *bridge,
|
||||
- struct drm_display_mode *mode,
|
||||
- struct drm_display_mode *adjusted_mode)
|
||||
+ const struct drm_display_mode *mode,
|
||||
+ const struct drm_display_mode *adjusted_mode)
|
||||
{
|
||||
struct radeon_ps4_bridge *mn_bridge = bridge_to_radeon_ps4_bridge(bridge);
|
||||
|
||||
@@ -357,7 +359,7 @@ static void radeon_ps4_bridge_enable(struct drm_bridge *bridge)
|
||||
struct radeon_ps4_bridge *mn_bridge = bridge_to_radeon_ps4_bridge(bridge);
|
||||
struct drm_connector *connector = mn_bridge->connector;
|
||||
struct drm_device *dev = connector->dev;
|
||||
- struct pci_dev *pdev = dev->pdev;
|
||||
+ struct pci_dev *pdev = to_pci_dev(dev->dev);
|
||||
u8 dp[3];
|
||||
|
||||
if (!mn_bridge->mode) {
|
||||
@@ -638,21 +640,21 @@ static const struct drm_display_mode mode_480p = {
|
||||
DRM_MODE("640x480", DRM_MODE_TYPE_DRIVER, 25175, 640, 656,
|
||||
752, 800, 0, 480, 490, 492, 525, 0,
|
||||
DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC),
|
||||
- .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3
|
||||
+ .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3
|
||||
};
|
||||
/* 4 - 1280x720@60Hz */
|
||||
static const struct drm_display_mode mode_720p = {
|
||||
DRM_MODE("1280x720", DRM_MODE_TYPE_DRIVER, 74250, 1280, 1390,
|
||||
1430, 1650, 0, 720, 725, 730, 750, 0,
|
||||
DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC),
|
||||
- .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9
|
||||
+ .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9
|
||||
};
|
||||
/* 16 - 1920x1080@60Hz */
|
||||
static const struct drm_display_mode mode_1080p = {
|
||||
DRM_MODE("1920x1080", DRM_MODE_TYPE_DRIVER, 148500, 1920, 2008,
|
||||
2052, 2200, 0, 1080, 1084, 1089, 1125, 0,
|
||||
DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC),
|
||||
- .vrefresh = 60, .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9
|
||||
+ .picture_aspect_ratio = HDMI_PICTURE_ASPECT_16_9
|
||||
};
|
||||
|
||||
int radeon_ps4_bridge_get_modes(struct drm_connector *connector)
|
||||
@@ -669,7 +671,7 @@ int radeon_ps4_bridge_get_modes(struct drm_connector *connector)
|
||||
//newmode = drm_mode_duplicate(dev, &mode_480p);
|
||||
//drm_mode_probed_add(connector, newmode);
|
||||
|
||||
- drm_mode_connector_update_edid_property(connector, NULL);
|
||||
+ drm_connector_update_edid_property(connector, NULL);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -718,7 +720,8 @@ int radeon_ps4_bridge_mode_valid(struct drm_connector *connector,
|
||||
return MODE_OK;
|
||||
}
|
||||
|
||||
-static int radeon_ps4_bridge_attach(struct drm_bridge *bridge)
|
||||
+static int radeon_ps4_bridge_attach(struct drm_bridge *bridge,
|
||||
+ enum drm_bridge_attach_flags flags)
|
||||
{
|
||||
/* struct radeon_ps4_bridge *mn_bridge = bridge_to_radeon_ps4_bridge(bridge); */
|
||||
|
||||
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
|
||||
index 314fd436f3c9..05cbdf9e6dfe 100644
|
||||
--- a/drivers/gpu/drm/radeon/radeon.h
|
||||
+++ b/drivers/gpu/drm/radeon/radeon.h
|
||||
@@ -2679,7 +2679,7 @@ void r100_pll_errata_after_index(struct radeon_device *rdev);
|
||||
#define ASIC_IS_DCE81(rdev) ((rdev->family == CHIP_KAVERI))
|
||||
#define ASIC_IS_DCE82(rdev) ((rdev->family == CHIP_BONAIRE))
|
||||
#define ASIC_IS_DCE83(rdev) ((rdev->family == CHIP_KABINI) || \
|
||||
- (rdev->family == CHIP_MULLINS || \
|
||||
+ (rdev->family == CHIP_MULLINS) || \
|
||||
(rdev->family == CHIP_LIVERPOOL))
|
||||
|
||||
#define ASIC_IS_LOMBOK(rdev) ((rdev->pdev->device == 0x6849) || \
|
||||
diff --git a/drivers/gpu/drm/radeon/radeon_audio.c b/drivers/gpu/drm/radeon/radeon_audio.c
|
||||
index ba877d0b73fd..3bca01e82835 100644
|
||||
--- a/drivers/gpu/drm/radeon/radeon_audio.c
|
||||
+++ b/drivers/gpu/drm/radeon/radeon_audio.c
|
||||
@@ -244,7 +244,7 @@ int radeon_audio_init(struct radeon_device *rdev)
|
||||
|
||||
rdev->audio.enabled = true;
|
||||
|
||||
- if (ASIC_IS_DCE83(rdev)) /* KB: 2 streams, 3 endpoints */
|
||||
+ if (ASIC_IS_DCE83(rdev)) /* KB: 2 streams, 3 endpoints */
|
||||
rdev->audio.num_pins = 3;
|
||||
else if (ASIC_IS_DCE81(rdev)) /* KV: 4 streams, 7 endpoints */
|
||||
rdev->audio.num_pins = 7;
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
From 1b9c84e8afd63df84109a717f6fe3076f2990841 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Tue, 28 Dec 2021 18:49:46 +0100
|
||||
Subject: [PATCH 13/22] fix: amdgpu drivers
|
||||
|
||||
---
|
||||
drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c | 2 +-
|
||||
drivers/gpu/drm/amd/amdgpu/atombios_dp.c | 2 +-
|
||||
drivers/gpu/drm/amd/amdgpu/atombios_encoders.c | 2 +-
|
||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c
|
||||
index 619d4c771176..dc517dc8ae94 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.c
|
||||
@@ -41,7 +41,7 @@ static void amdgpu_maybe_add_bridge(struct drm_connector *connector,
|
||||
struct drm_encoder *encoder)
|
||||
{
|
||||
struct drm_device *dev = connector->dev;
|
||||
- struct amdgpu_device *adev = dev->dev_private;
|
||||
+ struct amdgpu_device *adev = drm_to_adev(dev);
|
||||
|
||||
if (adev->asic_type == CHIP_LIVERPOOL || adev->asic_type == CHIP_GLADIUS) {
|
||||
ps4_bridge_register(connector, encoder);
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/atombios_dp.c b/drivers/gpu/drm/amd/amdgpu/atombios_dp.c
|
||||
index 33987ecdc517..a41352dbe298 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/atombios_dp.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/atombios_dp.c
|
||||
@@ -262,7 +262,7 @@ static int amdgpu_atombios_dp_get_dp_link_config(struct drm_connector *connector
|
||||
unsigned lane_num, i, max_pix_clock;
|
||||
struct amdgpu_connector *amdgpu_connector = to_amdgpu_connector(connector);
|
||||
struct drm_device *dev = amdgpu_connector->base.dev;
|
||||
- struct amdgpu_device *adev = dev->dev_private;
|
||||
+ struct amdgpu_device *adev = drm_to_adev(dev);
|
||||
|
||||
/* Liverpool is always connected to an encoder that needs 4 lanes */
|
||||
if (adev->asic_type == CHIP_LIVERPOOL)
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/atombios_encoders.c b/drivers/gpu/drm/amd/amdgpu/atombios_encoders.c
|
||||
index 5bd8a782feb5..801178479719 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/atombios_encoders.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/atombios_encoders.c
|
||||
@@ -446,7 +446,7 @@ int amdgpu_atombios_encoder_get_encoder_mode(struct drm_encoder *encoder)
|
||||
struct amdgpu_connector_atom_dig *dig_connector;
|
||||
|
||||
struct drm_device *dev = encoder->dev;
|
||||
- struct amdgpu_device *adev = dev->dev_private;
|
||||
+ struct amdgpu_device *adev = drm_to_adev(dev);
|
||||
|
||||
/* dp bridges are always DP */
|
||||
if ((amdgpu_encoder_get_dp_bridge_encoder_id(encoder) != ENCODER_OBJECT_ID_NONE) ||
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,191 @@
|
||||
From 3b2f7c502e713f75cd73793657eb58b55121d8c6 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Wed, 29 Dec 2021 14:16:57 +0100
|
||||
Subject: [PATCH 14/22] fix: re-add legacy bridge functions
|
||||
|
||||
---
|
||||
config | 2 +-
|
||||
drivers/gpu/drm/amd/amdgpu/ps4_bridge.c | 20 +++++++------
|
||||
drivers/gpu/drm/drm_crtc_helper.c | 37 +++++++++++++++++++++++++
|
||||
3 files changed, 50 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/config b/config
|
||||
index 9b3e8c78ecf1..ceaac7d2d935 100644
|
||||
--- a/config
|
||||
+++ b/config
|
||||
@@ -2262,7 +2262,7 @@ CONFIG_DRM_SCHED=y
|
||||
CONFIG_DRM_AMDGPU=y
|
||||
# CONFIG_DRM_AMDGPU_SI is not set
|
||||
CONFIG_DRM_AMDGPU_CIK=y
|
||||
-CONFIG_DRM_AMDGPU_USERPTR=y
|
||||
+# CONFIG_DRM_AMDGPU_USERPTR is not set
|
||||
|
||||
#
|
||||
# ACP (Audio CoProcessor) Configuration
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/ps4_bridge.c b/drivers/gpu/drm/amd/amdgpu/ps4_bridge.c
|
||||
index 86af15c134c4..d63ae6dddbb2 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/ps4_bridge.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/ps4_bridge.c
|
||||
@@ -11,6 +11,10 @@
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
+
|
||||
+// TODO (ps4patches): Make functions atomic,
|
||||
+// https://lore.kernel.org/linux-arm-kernel/20211020181901.2114645-5-sam@ravnborg.org/
|
||||
+
|
||||
#include <asm/ps4.h>
|
||||
|
||||
#include <drm/drm_crtc.h>
|
||||
@@ -676,7 +680,7 @@ int ps4_bridge_get_modes(struct drm_connector *connector)
|
||||
{
|
||||
struct drm_device *dev = connector->dev;
|
||||
struct drm_display_mode *newmode;
|
||||
- DRM_DEBUG_KMS("ps4_bridge_get_modes\n");
|
||||
+ pr_info("ps4_bridge_get_modes\n");
|
||||
|
||||
newmode = drm_mode_duplicate(dev, &mode_1080p);
|
||||
drm_mode_probed_add(connector, newmode);
|
||||
@@ -687,7 +691,7 @@ int ps4_bridge_get_modes(struct drm_connector *connector)
|
||||
//drm_mode_probed_add(connector, newmode);
|
||||
|
||||
drm_connector_update_edid_property(connector, NULL);
|
||||
-
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -738,7 +742,6 @@ int ps4_bridge_mode_valid(struct drm_connector *connector,
|
||||
static int ps4_bridge_attach(struct drm_bridge *bridge,
|
||||
enum drm_bridge_attach_flags flags)
|
||||
{
|
||||
- // TODO (ps4patches): Why is this in comments?
|
||||
/* struct ps4_bridge *mn_bridge = bridge_to_ps4_bridge(bridge); */
|
||||
|
||||
return 0;
|
||||
@@ -761,16 +764,17 @@ int ps4_bridge_register(struct drm_connector *connector,
|
||||
|
||||
mn_bridge->encoder = encoder;
|
||||
mn_bridge->connector = connector;
|
||||
+ mn_bridge->bridge.type = DRM_MODE_CONNECTOR_HDMIA;
|
||||
mn_bridge->bridge.funcs = &ps4_bridge_funcs;
|
||||
- ret = drm_bridge_attach(mn_bridge->encoder, &mn_bridge->bridge, NULL, 0);
|
||||
+
|
||||
+ // TODO (ps4patches): This seems to be the new way of adding bridges
|
||||
+ drm_bridge_add(&mn_bridge->bridge);
|
||||
+
|
||||
+ ret = drm_bridge_attach(mn_bridge->encoder, &mn_bridge->bridge, NULL, DRM_BRIDGE_ATTACH_NO_CONNECTOR);
|
||||
if (ret) {
|
||||
DRM_ERROR("Failed to initialize bridge with drm\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
- //encoder->bridge = &mn_bridge->bridge;
|
||||
- // TODO (ps4patches): This seems to be the new way of adding bridges
|
||||
- drm_bridge_add(&mn_bridge->bridge);
|
||||
-
|
||||
return 0;
|
||||
}
|
||||
diff --git a/drivers/gpu/drm/drm_crtc_helper.c b/drivers/gpu/drm/drm_crtc_helper.c
|
||||
index bff917531f33..17bf9a7ff546 100644
|
||||
--- a/drivers/gpu/drm/drm_crtc_helper.c
|
||||
+++ b/drivers/gpu/drm/drm_crtc_helper.c
|
||||
@@ -162,10 +162,15 @@ drm_encoder_disable(struct drm_encoder *encoder)
|
||||
if (!encoder_funcs)
|
||||
return;
|
||||
|
||||
+ struct drm_bridge* bridge = drm_bridge_chain_get_first_bridge(encoder);
|
||||
+ drm_bridge_chain_disable(bridge);
|
||||
+
|
||||
if (encoder_funcs->disable)
|
||||
(*encoder_funcs->disable)(encoder);
|
||||
else if (encoder_funcs->dpms)
|
||||
(*encoder_funcs->dpms)(encoder, DRM_MODE_DPMS_OFF);
|
||||
+
|
||||
+ drm_bridge_chain_post_disable(bridge);
|
||||
}
|
||||
|
||||
static void __drm_helper_disable_unused_functions(struct drm_device *dev)
|
||||
@@ -322,6 +327,14 @@ bool drm_crtc_helper_set_mode(struct drm_crtc *crtc,
|
||||
if (!encoder_funcs)
|
||||
continue;
|
||||
|
||||
+ struct drm_bridge* bridge = drm_bridge_chain_get_first_bridge(encoder);
|
||||
+ ret = drm_bridge_chain_mode_fixup(bridge,
|
||||
+ mode, adjusted_mode);
|
||||
+ if (!ret) {
|
||||
+ DRM_DEBUG_KMS("Bridge fixup failed\n");
|
||||
+ goto done;
|
||||
+ }
|
||||
+
|
||||
encoder_funcs = encoder->helper_private;
|
||||
if (encoder_funcs->mode_fixup) {
|
||||
if (!(ret = encoder_funcs->mode_fixup(encoder, mode,
|
||||
@@ -353,9 +366,14 @@ bool drm_crtc_helper_set_mode(struct drm_crtc *crtc,
|
||||
if (!encoder_funcs)
|
||||
continue;
|
||||
|
||||
+ struct drm_bridge* bridge = drm_bridge_chain_get_first_bridge(encoder);
|
||||
+ drm_bridge_chain_disable(bridge);
|
||||
+
|
||||
/* Disable the encoders as the first thing we do. */
|
||||
if (encoder_funcs->prepare)
|
||||
encoder_funcs->prepare(encoder);
|
||||
+
|
||||
+ drm_bridge_chain_post_disable(bridge);
|
||||
}
|
||||
|
||||
drm_crtc_prepare_encoders(dev);
|
||||
@@ -382,6 +400,9 @@ bool drm_crtc_helper_set_mode(struct drm_crtc *crtc,
|
||||
encoder->base.id, encoder->name, mode->name);
|
||||
if (encoder_funcs->mode_set)
|
||||
encoder_funcs->mode_set(encoder, mode, adjusted_mode);
|
||||
+
|
||||
+ struct drm_bridge* bridge = drm_bridge_chain_get_first_bridge(encoder);
|
||||
+ drm_bridge_chain_mode_set(bridge, mode, adjusted_mode);
|
||||
}
|
||||
|
||||
/* Now enable the clocks, plane, pipe, and connectors that we set up. */
|
||||
@@ -396,8 +417,13 @@ bool drm_crtc_helper_set_mode(struct drm_crtc *crtc,
|
||||
if (!encoder_funcs)
|
||||
continue;
|
||||
|
||||
+ struct drm_bridge* bridge = drm_bridge_chain_get_first_bridge(encoder);
|
||||
+ drm_bridge_chain_pre_enable(bridge);
|
||||
+
|
||||
if (encoder_funcs->commit)
|
||||
encoder_funcs->commit(encoder);
|
||||
+
|
||||
+ drm_bridge_chain_enable(bridge);
|
||||
}
|
||||
|
||||
/* Calculate and store various constants which
|
||||
@@ -816,14 +842,25 @@ static int drm_helper_choose_encoder_dpms(struct drm_encoder *encoder)
|
||||
/* Helper which handles bridge ordering around encoder dpms */
|
||||
static void drm_helper_encoder_dpms(struct drm_encoder *encoder, int mode)
|
||||
{
|
||||
+ struct drm_bridge* bridge = drm_bridge_chain_get_first_bridge(encoder);
|
||||
const struct drm_encoder_helper_funcs *encoder_funcs;
|
||||
|
||||
encoder_funcs = encoder->helper_private;
|
||||
if (!encoder_funcs)
|
||||
return;
|
||||
|
||||
+ if (mode == DRM_MODE_DPMS_ON)
|
||||
+ drm_bridge_chain_pre_enable(bridge);
|
||||
+ else
|
||||
+ drm_bridge_chain_disable(bridge);
|
||||
+
|
||||
if (encoder_funcs->dpms)
|
||||
encoder_funcs->dpms(encoder, mode);
|
||||
+
|
||||
+ if (mode == DRM_MODE_DPMS_ON)
|
||||
+ drm_bridge_chain_enable(bridge);
|
||||
+ else
|
||||
+ drm_bridge_chain_post_disable(bridge);
|
||||
}
|
||||
|
||||
static int drm_helper_choose_crtc_dpms(struct drm_crtc *crtc)
|
||||
--
|
||||
2.45.1
|
||||
|
||||
+644
@@ -0,0 +1,644 @@
|
||||
From 00879e27dddefbe1c062f53b4eec0e9166780a2a Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Wed, 29 Dec 2021 15:43:55 +0100
|
||||
Subject: [PATCH 15/22] feat: potentially added belize ahci support in a
|
||||
universal way
|
||||
|
||||
---
|
||||
drivers/usb/host/xhci-aeolia.c | 543 ++++++++++++++++-----------------
|
||||
1 file changed, 268 insertions(+), 275 deletions(-)
|
||||
|
||||
diff --git a/drivers/usb/host/xhci-aeolia.c b/drivers/usb/host/xhci-aeolia.c
|
||||
index a9b345284495..1401af61430c 100644
|
||||
--- a/drivers/usb/host/xhci-aeolia.c
|
||||
+++ b/drivers/usb/host/xhci-aeolia.c
|
||||
@@ -25,8 +25,7 @@ static struct hc_driver __read_mostly xhci_aeolia_hc_driver;
|
||||
#define NR_DEVICES 3
|
||||
|
||||
struct aeolia_xhci {
|
||||
- // TODO (ps4patches): Belize, enable in ahci commit
|
||||
- // struct ata_host *host;
|
||||
+ struct ata_host *host;
|
||||
int nr_irqs;
|
||||
struct usb_hcd *hcd[NR_DEVICES];
|
||||
};
|
||||
@@ -75,14 +74,8 @@ static int xhci_aeolia_probe_one(struct pci_dev *dev, int index)
|
||||
hcd->rsrc_start = pci_resource_start(dev, 2 * index);
|
||||
hcd->rsrc_len = pci_resource_len(dev, 2 * index);
|
||||
|
||||
- /*
|
||||
- * TODO (ps4patches): Belize, enable in ahci commit
|
||||
if (!devm_request_mem_region(&dev->dev, hcd->rsrc_start, hcd->rsrc_len,
|
||||
driver->description)) {
|
||||
- */
|
||||
-
|
||||
- if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
|
||||
- driver->description)) {
|
||||
dev_dbg(&dev->dev, "controller already in use\n");
|
||||
retval = -EBUSY;
|
||||
goto put_hcd;
|
||||
@@ -124,9 +117,7 @@ static int xhci_aeolia_probe_one(struct pci_dev *dev, int index)
|
||||
unmap_registers:
|
||||
iounmap(hcd->regs);
|
||||
release_mem_region:
|
||||
- //
|
||||
- // devm_release_mem_region(&dev->dev, hcd->rsrc_start, hcd->rsrc_len);
|
||||
- release_mem_region(hcd->rsrc_start, hcd->rsrc_len);
|
||||
+ devm_release_mem_region(&dev->dev, hcd->rsrc_start, hcd->rsrc_len);
|
||||
put_hcd:
|
||||
usb_put_hcd(hcd);
|
||||
dev_err(&dev->dev, "init %s(%d) fail, %d\n",
|
||||
@@ -147,226 +138,225 @@ static void xhci_aeolia_remove_one(struct pci_dev *dev, int index)
|
||||
usb_remove_hcd(xhci->shared_hcd);
|
||||
usb_remove_hcd(hcd);
|
||||
usb_put_hcd(xhci->shared_hcd);
|
||||
- iounmap(hcd->regs);
|
||||
+
|
||||
+ // TODO (ps4patches): Does this really need to be disabled?
|
||||
+ if(dev->device == PCI_DEVICE_ID_SONY_BELIZE_XHCI) {
|
||||
+ iounmap(hcd->regs);
|
||||
+ }
|
||||
usb_put_hcd(hcd);
|
||||
axhci->hcd[index] = NULL;
|
||||
}
|
||||
|
||||
-// TODO (ps4patches): Belize, enable in ahci commit
|
||||
-//#define DRV_VERSION "3.0"
|
||||
-//#define DRV_NAME "ahci"
|
||||
-//static const struct ata_port_info ahci_port_info = {
|
||||
-// .flags = AHCI_FLAG_COMMON,
|
||||
-// .pio_mask = ATA_PIO4,
|
||||
-// .udma_mask = ATA_UDMA6,
|
||||
-// .port_ops = &ahci_ops,
|
||||
-//};
|
||||
-//
|
||||
-//static struct scsi_host_template ahci_sht = {
|
||||
-// AHCI_SHT(DRV_NAME),
|
||||
-//};
|
||||
-//
|
||||
-//static bool bus_master;
|
||||
-//static int ahci_init_one(struct pci_dev *pdev)
|
||||
-//{
|
||||
-// struct f_resource* r_mem;
|
||||
-// struct ahci_controller* ctlr;
|
||||
-// struct aeolia_xhci *axhci = pci_get_drvdata(pdev);
|
||||
-// struct ata_port_info pi = ahci_port_info;
|
||||
-// const struct ata_port_info *ppi[] = { &pi, NULL };
|
||||
-// struct ahci_host_priv *hpriv;
|
||||
-// struct ata_host *host;
|
||||
-// int n_ports, i, rc;
|
||||
-// int ahci_pci_bar = 2;
|
||||
-// resource_size_t rsrc_start;
|
||||
-// resource_size_t rsrc_len;
|
||||
-//
|
||||
-// VPRINTK("ENTER\n");
|
||||
-//
|
||||
-// WARN_ON((int)ATA_MAX_QUEUE > AHCI_MAX_CMDS);
|
||||
-//
|
||||
-// ata_print_version_once(&pdev->dev, DRV_VERSION);
|
||||
-//
|
||||
-// /*
|
||||
-// rc = pcim_iomap_regions_request_all(pdev, 1 << ahci_pci_bar, DRV_NAME);
|
||||
-// if (rc == -EBUSY)
|
||||
-// pcim_pin_device(pdev);
|
||||
-// if (rc)
|
||||
-// return rc;
|
||||
-// */
|
||||
-//
|
||||
-// hpriv = devm_kzalloc(&pdev->dev, sizeof(*hpriv), GFP_KERNEL);
|
||||
-// //hpriv = kzalloc(sizeof(*hpriv), GFP_KERNEL);
|
||||
-// if (!hpriv)
|
||||
-// return -ENOMEM;
|
||||
-// hpriv->flags |= (unsigned long)pi.private_data;
|
||||
-//
|
||||
-// //hpriv->mmio = pcim_iomap_table(pdev)[ahci_pci_bar];
|
||||
-// rsrc_start = pci_resource_start(pdev, ahci_pci_bar);
|
||||
-// rsrc_len = pci_resource_len(pdev, ahci_pci_bar);
|
||||
-// //if (!request_mem_region(rsrc_start, rsrc_len, "xhci-ahci.mem")) {
|
||||
-// if (!devm_request_mem_region(&pdev->dev, rsrc_start, rsrc_len, "xhci-ahci.mem")) {
|
||||
-// dev_dbg(&pdev->dev, "controller already in use\n");
|
||||
-// rc = -EBUSY;
|
||||
-// goto put_hpriv;
|
||||
-// }
|
||||
-//
|
||||
-//
|
||||
-// hpriv->mmio = pci_ioremap_bar(pdev, ahci_pci_bar);
|
||||
-// if (hpriv->mmio == NULL) {
|
||||
-// dev_dbg(&pdev->dev, "error mapping memory\n");
|
||||
-// rc = -EFAULT;
|
||||
-// goto release_mem_region;
|
||||
-// }
|
||||
-//
|
||||
-// r_mem = kzalloc(sizeof(*r_mem), GFP_KERNEL);
|
||||
-// if (r_mem) {
|
||||
-// r_mem->r_bustag = 1;//mem
|
||||
-// r_mem->r_bushandle = hpriv->mmio;
|
||||
-//
|
||||
-// ctlr = kzalloc(sizeof(*ctlr), GFP_KERNEL);
|
||||
-// if (ctlr) {
|
||||
-// ctlr->r_mem = r_mem;
|
||||
-// ctlr->dev_id = 0; //or 0x90ca104d;
|
||||
-// ctlr->trace_len = 6;
|
||||
-// bpcie_sata_phy_init(&pdev->dev, ctlr);
|
||||
-// kfree(ctlr);
|
||||
-// }
|
||||
-// kfree(r_mem);
|
||||
-// }
|
||||
-// device_wakeup_enable(&pdev->dev);
|
||||
-//
|
||||
-// /* save initial config */
|
||||
-// ahci_save_initial_config(&pdev->dev, hpriv);
|
||||
-//
|
||||
-// /* prepare host */
|
||||
-// if (hpriv->cap & HOST_CAP_NCQ) {
|
||||
-// pi.flags |= ATA_FLAG_NCQ;
|
||||
-// /*
|
||||
-// * Auto-activate optimization is supposed to be
|
||||
-// * supported on all AHCI controllers indicating NCQ
|
||||
-// * capability, but it seems to be broken on some
|
||||
-// * chipsets including NVIDIAs.
|
||||
-// */
|
||||
-// if (!(hpriv->flags & AHCI_HFLAG_NO_FPDMA_AA))
|
||||
-// pi.flags |= ATA_FLAG_FPDMA_AA;
|
||||
-//
|
||||
-// /*
|
||||
-// * All AHCI controllers should be forward-compatible
|
||||
-// * with the new auxiliary field. This code should be
|
||||
-// * conditionalized if any buggy AHCI controllers are
|
||||
-// * encountered.
|
||||
-// */
|
||||
-// pi.flags |= ATA_FLAG_FPDMA_AUX;
|
||||
-// }
|
||||
-//
|
||||
-// if (hpriv->cap & HOST_CAP_PMP)
|
||||
-// pi.flags |= ATA_FLAG_PMP;
|
||||
-//
|
||||
-// ahci_set_em_messages(hpriv, &pi);
|
||||
-//
|
||||
-// /* CAP.NP sometimes indicate the index of the last enabled
|
||||
-// * port, at other times, that of the last possible port, so
|
||||
-// * determining the maximum port number requires looking at
|
||||
-// * both CAP.NP and port_map.
|
||||
-// */
|
||||
-// n_ports = max(ahci_nr_ports(hpriv->cap), fls(hpriv->port_map));
|
||||
-//
|
||||
-// host = ata_host_alloc_pinfo(&pdev->dev, ppi, n_ports);
|
||||
-// if (!host) {
|
||||
-// rc = -ENOMEM;
|
||||
-// goto unmap_registers;
|
||||
-// }
|
||||
-// axhci->host = host;
|
||||
-// pci_set_drvdata(pdev, axhci);
|
||||
-//
|
||||
-// host->private_data = hpriv;
|
||||
-//
|
||||
-// {
|
||||
-// int index = 1;
|
||||
-// int irq = (axhci->nr_irqs > 1) ? (pdev->irq + index) : pdev->irq;
|
||||
-// hpriv->irq = irq;
|
||||
-// }
|
||||
-//
|
||||
-// if (!(hpriv->cap & HOST_CAP_SSS) || ahci_ignore_sss)
|
||||
-// host->flags |= ATA_HOST_PARALLEL_SCAN;
|
||||
-// else
|
||||
-// dev_info(&pdev->dev, "SSS flag set, parallel bus scan disabled\n");
|
||||
-//
|
||||
-// if (pi.flags & ATA_FLAG_EM)
|
||||
-// ahci_reset_em(host);
|
||||
-//
|
||||
-// for (i = 0; i < host->n_ports; i++) {
|
||||
-// struct ata_port *ap = host->ports[i];
|
||||
-//
|
||||
-// ata_port_pbar_desc(ap, ahci_pci_bar, -1, "abar");
|
||||
-// ata_port_pbar_desc(ap, ahci_pci_bar,
|
||||
-// 0x100 + ap->port_no * 0x80, "port");
|
||||
-//
|
||||
-// /* set enclosure management message type */
|
||||
-// if (ap->flags & ATA_FLAG_EM)
|
||||
-// ap->em_message_type = hpriv->em_msg_type;
|
||||
-//
|
||||
-//
|
||||
-// /* disabled/not-implemented port */
|
||||
-// if (!(hpriv->port_map & (1 << i)))
|
||||
-// ap->ops = &ata_dummy_port_ops;
|
||||
-// }
|
||||
-//
|
||||
-// rc = ahci_reset_controller(host);
|
||||
-// dev_dbg(&pdev->dev, "ahci_reset_controller returned %d\n", rc);
|
||||
-// if (rc)
|
||||
-// goto release_host;
|
||||
-//
|
||||
-// ahci_init_controller(host);
|
||||
-// ahci_print_info(host, "ATA");
|
||||
-//
|
||||
-// if (!bus_master) {
|
||||
-// pci_set_master(pdev);
|
||||
-// bus_master = true;
|
||||
-// }
|
||||
-//
|
||||
-// rc = ahci_host_activate(host, &ahci_sht);
|
||||
-// dev_dbg(&pdev->dev, "ahci_host_activate returned %d\n", rc);
|
||||
-// if (rc) {
|
||||
-// goto host_deactivate;
|
||||
-// }
|
||||
-//
|
||||
-// pm_runtime_put_noidle(&pdev->dev);
|
||||
-// return 0;
|
||||
-//
|
||||
-// host_deactivate:
|
||||
-// release_host:
|
||||
-// unmap_registers:
|
||||
-// iounmap(hpriv->mmio);
|
||||
-// release_mem_region:
|
||||
-//
|
||||
-// release_mem_region(rsrc_start, rsrc_len);
|
||||
-//
|
||||
-// // TODO (ps4patches): Belize, enable in ahci commit
|
||||
-// //devm_release_mem_region(&pdev->dev, rsrc_start, rsrc_len);
|
||||
-// put_hpriv:
|
||||
-// //kfree(hpriv);
|
||||
-// devm_kfree(&pdev->dev, hpriv);
|
||||
-// dev_err(&pdev->dev, "init %s fail, %d\n",
|
||||
-// pci_name(pdev), rc);
|
||||
-// return rc;
|
||||
-//}
|
||||
-//
|
||||
-//static void ahci_remove_one(struct pci_dev *pdev)
|
||||
-//{
|
||||
-// pm_runtime_get_noresume(&pdev->dev);
|
||||
-//
|
||||
-// struct aeolia_xhci *axhci = pci_get_drvdata(pdev);
|
||||
-// if (axhci && axhci->host) {
|
||||
-// ata_host_detach(axhci->host);
|
||||
-// struct ahci_host_priv *hpriv = axhci->host->private_data;
|
||||
-// if (hpriv) {
|
||||
-// iounmap(hpriv->mmio);
|
||||
-// }
|
||||
-// axhci->host = NULL;
|
||||
-// }
|
||||
-//}
|
||||
+#define DRV_VERSION "3.0"
|
||||
+#define DRV_NAME "ahci"
|
||||
+static const struct ata_port_info ahci_port_info = {
|
||||
+ .flags = AHCI_FLAG_COMMON,
|
||||
+ .pio_mask = ATA_PIO4,
|
||||
+ .udma_mask = ATA_UDMA6,
|
||||
+ .port_ops = &ahci_ops,
|
||||
+};
|
||||
+
|
||||
+static struct scsi_host_template ahci_sht = {
|
||||
+ AHCI_SHT(DRV_NAME),
|
||||
+};
|
||||
+
|
||||
+static bool bus_master;
|
||||
+static int ahci_init_one(struct pci_dev *pdev)
|
||||
+{
|
||||
+ struct f_resource* r_mem;
|
||||
+ struct ahci_controller* ctlr;
|
||||
+ struct aeolia_xhci *axhci = pci_get_drvdata(pdev);
|
||||
+ struct ata_port_info pi = ahci_port_info;
|
||||
+ const struct ata_port_info *ppi[] = { &pi, NULL };
|
||||
+ struct ahci_host_priv *hpriv;
|
||||
+ struct ata_host *host;
|
||||
+ int n_ports, i, rc;
|
||||
+ int ahci_pci_bar = 2;
|
||||
+ resource_size_t rsrc_start;
|
||||
+ resource_size_t rsrc_len;
|
||||
+
|
||||
+ VPRINTK("ENTER\n");
|
||||
+
|
||||
+ WARN_ON((int)ATA_MAX_QUEUE > AHCI_MAX_CMDS);
|
||||
+
|
||||
+ ata_print_version_once(&pdev->dev, DRV_VERSION);
|
||||
+
|
||||
+ /*
|
||||
+ rc = pcim_iomap_regions_request_all(pdev, 1 << ahci_pci_bar, DRV_NAME);
|
||||
+ if (rc == -EBUSY)
|
||||
+ pcim_pin_device(pdev);
|
||||
+ if (rc)
|
||||
+ return rc;
|
||||
+ */
|
||||
+
|
||||
+ hpriv = devm_kzalloc(&pdev->dev, sizeof(*hpriv), GFP_KERNEL);
|
||||
+ //hpriv = kzalloc(sizeof(*hpriv), GFP_KERNEL);
|
||||
+ if (!hpriv)
|
||||
+ return -ENOMEM;
|
||||
+ hpriv->flags |= (unsigned long)pi.private_data;
|
||||
+
|
||||
+ //hpriv->mmio = pcim_iomap_table(pdev)[ahci_pci_bar];
|
||||
+ rsrc_start = pci_resource_start(pdev, ahci_pci_bar);
|
||||
+ rsrc_len = pci_resource_len(pdev, ahci_pci_bar);
|
||||
+ //if (!request_mem_region(rsrc_start, rsrc_len, "xhci-ahci.mem")) {
|
||||
+ if (!devm_request_mem_region(&pdev->dev, rsrc_start, rsrc_len, "xhci-ahci.mem")) {
|
||||
+ dev_dbg(&pdev->dev, "controller already in use\n");
|
||||
+ rc = -EBUSY;
|
||||
+ goto put_hpriv;
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+ hpriv->mmio = pci_ioremap_bar(pdev, ahci_pci_bar);
|
||||
+ if (hpriv->mmio == NULL) {
|
||||
+ dev_dbg(&pdev->dev, "error mapping memory\n");
|
||||
+ rc = -EFAULT;
|
||||
+ goto release_mem_region;
|
||||
+ }
|
||||
+
|
||||
+ r_mem = kzalloc(sizeof(*r_mem), GFP_KERNEL);
|
||||
+ if (r_mem) {
|
||||
+ r_mem->r_bustag = 1;//mem
|
||||
+ r_mem->r_bushandle = hpriv->mmio;
|
||||
+
|
||||
+ ctlr = kzalloc(sizeof(*ctlr), GFP_KERNEL);
|
||||
+ if (ctlr) {
|
||||
+ ctlr->r_mem = r_mem;
|
||||
+ ctlr->dev_id = 0; //or 0x90ca104d;
|
||||
+ ctlr->trace_len = 6;
|
||||
+ bpcie_sata_phy_init(&pdev->dev, ctlr);
|
||||
+ kfree(ctlr);
|
||||
+ }
|
||||
+ kfree(r_mem);
|
||||
+ }
|
||||
+ device_wakeup_enable(&pdev->dev);
|
||||
+
|
||||
+ /* save initial config */
|
||||
+ ahci_save_initial_config(&pdev->dev, hpriv);
|
||||
+
|
||||
+ /* prepare host */
|
||||
+ if (hpriv->cap & HOST_CAP_NCQ) {
|
||||
+ pi.flags |= ATA_FLAG_NCQ;
|
||||
+ /*
|
||||
+ * Auto-activate optimization is supposed to be
|
||||
+ * supported on all AHCI controllers indicating NCQ
|
||||
+ * capability, but it seems to be broken on some
|
||||
+ * chipsets including NVIDIAs.
|
||||
+ */
|
||||
+ if (!(hpriv->flags & AHCI_HFLAG_NO_FPDMA_AA))
|
||||
+ pi.flags |= ATA_FLAG_FPDMA_AA;
|
||||
+
|
||||
+ /*
|
||||
+ * All AHCI controllers should be forward-compatible
|
||||
+ * with the new auxiliary field. This code should be
|
||||
+ * conditionalized if any buggy AHCI controllers are
|
||||
+ * encountered.
|
||||
+ */
|
||||
+ pi.flags |= ATA_FLAG_FPDMA_AUX;
|
||||
+ }
|
||||
+
|
||||
+ if (hpriv->cap & HOST_CAP_PMP)
|
||||
+ pi.flags |= ATA_FLAG_PMP;
|
||||
+
|
||||
+ ahci_set_em_messages(hpriv, &pi);
|
||||
+
|
||||
+ /* CAP.NP sometimes indicate the index of the last enabled
|
||||
+ * port, at other times, that of the last possible port, so
|
||||
+ * determining the maximum port number requires looking at
|
||||
+ * both CAP.NP and port_map.
|
||||
+ */
|
||||
+ n_ports = max(ahci_nr_ports(hpriv->cap), fls(hpriv->port_map));
|
||||
+
|
||||
+ host = ata_host_alloc_pinfo(&pdev->dev, ppi, n_ports);
|
||||
+ if (!host) {
|
||||
+ rc = -ENOMEM;
|
||||
+ goto unmap_registers;
|
||||
+ }
|
||||
+ axhci->host = host;
|
||||
+ pci_set_drvdata(pdev, axhci);
|
||||
+
|
||||
+ host->private_data = hpriv;
|
||||
+
|
||||
+ {
|
||||
+ int index = 1;
|
||||
+ int irq = (axhci->nr_irqs > 1) ? (pdev->irq + index) : pdev->irq;
|
||||
+ hpriv->irq = irq;
|
||||
+ }
|
||||
+
|
||||
+ if (!(hpriv->cap & HOST_CAP_SSS) || ahci_ignore_sss)
|
||||
+ host->flags |= ATA_HOST_PARALLEL_SCAN;
|
||||
+ else
|
||||
+ dev_info(&pdev->dev, "SSS flag set, parallel bus scan disabled\n");
|
||||
+
|
||||
+ if (pi.flags & ATA_FLAG_EM)
|
||||
+ ahci_reset_em(host);
|
||||
+
|
||||
+ for (i = 0; i < host->n_ports; i++) {
|
||||
+ struct ata_port *ap = host->ports[i];
|
||||
+
|
||||
+ ata_port_pbar_desc(ap, ahci_pci_bar, -1, "abar");
|
||||
+ ata_port_pbar_desc(ap, ahci_pci_bar,
|
||||
+ 0x100 + ap->port_no * 0x80, "port");
|
||||
+
|
||||
+ /* set enclosure management message type */
|
||||
+ if (ap->flags & ATA_FLAG_EM)
|
||||
+ ap->em_message_type = hpriv->em_msg_type;
|
||||
+
|
||||
+
|
||||
+ /* disabled/not-implemented port */
|
||||
+ if (!(hpriv->port_map & (1 << i)))
|
||||
+ ap->ops = &ata_dummy_port_ops;
|
||||
+ }
|
||||
+
|
||||
+ rc = ahci_reset_controller(host);
|
||||
+ dev_dbg(&pdev->dev, "ahci_reset_controller returned %d\n", rc);
|
||||
+ if (rc)
|
||||
+ goto release_host;
|
||||
+
|
||||
+ ahci_init_controller(host);
|
||||
+ ahci_print_info(host, "ATA");
|
||||
+
|
||||
+ if (!bus_master) {
|
||||
+ pci_set_master(pdev);
|
||||
+ bus_master = true;
|
||||
+ }
|
||||
+
|
||||
+ rc = ahci_host_activate(host, &ahci_sht);
|
||||
+ dev_dbg(&pdev->dev, "ahci_host_activate returned %d\n", rc);
|
||||
+ if (rc) {
|
||||
+ goto host_deactivate;
|
||||
+ }
|
||||
+
|
||||
+ pm_runtime_put_noidle(&pdev->dev);
|
||||
+ return 0;
|
||||
+
|
||||
+ host_deactivate:
|
||||
+ release_host:
|
||||
+ unmap_registers:
|
||||
+ iounmap(hpriv->mmio);
|
||||
+ release_mem_region:
|
||||
+ devm_release_mem_region(&pdev->dev, rsrc_start, rsrc_len);
|
||||
+ put_hpriv:
|
||||
+ //kfree(hpriv);
|
||||
+ devm_kfree(&pdev->dev, hpriv);
|
||||
+ dev_err(&pdev->dev, "init %s fail, %d\n",
|
||||
+ pci_name(pdev), rc);
|
||||
+ return rc;
|
||||
+}
|
||||
+
|
||||
+static void ahci_remove_one(struct pci_dev *pdev)
|
||||
+{
|
||||
+ pm_runtime_get_noresume(&pdev->dev);
|
||||
+
|
||||
+ struct aeolia_xhci *axhci = pci_get_drvdata(pdev);
|
||||
+ if (axhci && axhci->host) {
|
||||
+ ata_host_detach(axhci->host);
|
||||
+ struct ahci_host_priv *hpriv = axhci->host->private_data;
|
||||
+ if (hpriv) {
|
||||
+ iounmap(hpriv->mmio);
|
||||
+ }
|
||||
+ axhci->host = NULL;
|
||||
+ }
|
||||
+}
|
||||
|
||||
static int xhci_aeolia_probe(struct pci_dev *dev, const struct pci_device_id *id)
|
||||
{
|
||||
@@ -380,9 +370,7 @@ static int xhci_aeolia_probe(struct pci_dev *dev, const struct pci_device_id *id
|
||||
if (pci_enable_device(dev) < 0)
|
||||
return -ENODEV;
|
||||
|
||||
- axhci = kzalloc(sizeof(*axhci), GFP_KERNEL);
|
||||
- // TODO (ps4patches): Belize, enable in ahci commit
|
||||
- // axhci = devm_kzalloc(&dev->dev, sizeof(*axhci), GFP_KERNEL);
|
||||
+ axhci = devm_kzalloc(&dev->dev, sizeof(*axhci), GFP_KERNEL);
|
||||
if (!axhci) {
|
||||
retval = -ENOMEM;
|
||||
goto disable_device;
|
||||
@@ -394,21 +382,23 @@ static int xhci_aeolia_probe(struct pci_dev *dev, const struct pci_device_id *id
|
||||
goto free_axhci;
|
||||
}
|
||||
|
||||
- // TODO (ps4patches): Belize, disable in ahci commit
|
||||
- pci_set_master(dev);
|
||||
+ if(dev->device != PCI_DEVICE_ID_SONY_BELIZE_XHCI) {
|
||||
+ pci_set_master(dev);
|
||||
+ }
|
||||
|
||||
if (pci_set_dma_mask(dev, DMA_BIT_MASK(31)) ||
|
||||
pci_set_consistent_dma_mask(dev, DMA_BIT_MASK(31))) {
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
- // TODO (ps4patches): Belize, enable in ahci commit
|
||||
-// retval = ahci_init_one(dev);
|
||||
-// dev_dbg(&dev->dev, "ahci_init_one returned %d", retval);
|
||||
-// if (!bus_master) {
|
||||
-// pci_set_master(dev);
|
||||
-// bus_master = true;
|
||||
-// }
|
||||
+ if(dev->device == PCI_DEVICE_ID_SONY_BELIZE_XHCI) {
|
||||
+ retval = ahci_init_one(dev);
|
||||
+ dev_dbg(&dev->dev, "ahci_init_one returned %d", retval);
|
||||
+ if (!bus_master) {
|
||||
+ pci_set_master(dev);
|
||||
+ bus_master = true;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
for (idx = 0; idx < NR_DEVICES; idx++) {
|
||||
if(dev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI && idx == 1){ //this is for Belize and Baikal
|
||||
@@ -426,11 +416,12 @@ static int xhci_aeolia_probe(struct pci_dev *dev, const struct pci_device_id *id
|
||||
xhci_aeolia_remove_one(dev, idx);
|
||||
apcie_free_irqs(dev->irq, axhci->nr_irqs);
|
||||
free_axhci:
|
||||
- kfree(axhci);
|
||||
+ devm_kfree(&dev->dev, axhci);
|
||||
|
||||
- // TODO (ps4patches): Belize, disable in ahci commit
|
||||
- // devm_kfree(&dev->dev, axhci);
|
||||
- // pci_set_drvdata(dev, NULL);
|
||||
+ // TODO (ps4patches): Don't aeolia and baikal also need this?
|
||||
+ if(dev->device == PCI_DEVICE_ID_SONY_BELIZE_XHCI) {
|
||||
+ pci_set_drvdata(dev, NULL);
|
||||
+ }
|
||||
disable_device:
|
||||
pci_disable_device(dev);
|
||||
return retval;
|
||||
@@ -447,9 +438,8 @@ static void xhci_aeolia_remove(struct pci_dev *dev)
|
||||
if(dev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI) {
|
||||
if(idx != 1)
|
||||
xhci_aeolia_remove_one(dev, idx);
|
||||
- // TODO (ps4patches): Belize, enable in ahci commit
|
||||
- // else
|
||||
- // ahci_remove_one(dev);
|
||||
+ else if (dev->device == PCI_DEVICE_ID_SONY_BELIZE_XHCI)
|
||||
+ ahci_remove_one(dev);
|
||||
}
|
||||
else
|
||||
xhci_aeolia_remove_one(dev, idx);
|
||||
@@ -463,32 +453,38 @@ static void xhci_aeolia_remove(struct pci_dev *dev)
|
||||
pci_disable_device(dev);
|
||||
}
|
||||
|
||||
-// TODO (ps4patches): Belize, enable in ahci commit
|
||||
-//static void xhci_hcd_pci_shutdown(struct pci_dev *dev){
|
||||
-// struct aeolia_xhci *axhci;
|
||||
-// struct usb_hcd *hcd;
|
||||
-// int idx;
|
||||
-//
|
||||
-// axhci = pci_get_drvdata(dev);
|
||||
-// if (!axhci)
|
||||
-// return;
|
||||
-//
|
||||
-// for (idx = 0; idx < NR_DEVICES; idx++) {
|
||||
-// if(dev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI) {
|
||||
-// if(idx != 1) {
|
||||
-// hcd = axhci->hcd[idx];
|
||||
-// if (hcd) {
|
||||
-// if (test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags) && hcd->driver->shutdown) {
|
||||
-// hcd->driver->shutdown(hcd);
|
||||
-// if (usb_hcd_is_primary_hcd(hcd) && hcd->irq > 0)
|
||||
-// free_irq(hcd->irq, hcd);
|
||||
-// }
|
||||
-// }
|
||||
-// }
|
||||
-// }
|
||||
-// }
|
||||
-//}
|
||||
+static void xhci_hcd_pci_shutdown(struct pci_dev *dev){
|
||||
+
|
||||
+ // We want to use the normal shutdown if we aren't belize
|
||||
+ if (dev->device != PCI_DEVICE_ID_SONY_BELIZE_XHCI)
|
||||
+ {
|
||||
+ usb_hcd_pci_shutdown(dev);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ struct aeolia_xhci *axhci;
|
||||
+ struct usb_hcd *hcd;
|
||||
+ int idx;
|
||||
+
|
||||
+ axhci = pci_get_drvdata(dev);
|
||||
+ if (!axhci)
|
||||
+ return;
|
||||
|
||||
+ for (idx = 0; idx < NR_DEVICES; idx++) {
|
||||
+ if(dev->device != PCI_DEVICE_ID_SONY_AEOLIA_XHCI) {
|
||||
+ if(idx != 1) {
|
||||
+ hcd = axhci->hcd[idx];
|
||||
+ if (hcd) {
|
||||
+ if (test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags) && hcd->driver->shutdown) {
|
||||
+ hcd->driver->shutdown(hcd);
|
||||
+ if (usb_hcd_is_primary_hcd(hcd) && hcd->irq > 0)
|
||||
+ free_irq(hcd->irq, hcd);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
|
||||
static const struct pci_device_id pci_ids[] = {
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_SONY, PCI_DEVICE_ID_SONY_AEOLIA_XHCI) },
|
||||
@@ -557,10 +553,7 @@ static struct pci_driver xhci_aeolia_driver = {
|
||||
.probe = xhci_aeolia_probe,
|
||||
.remove = xhci_aeolia_remove,
|
||||
/* suspend and resume implemented later */
|
||||
-
|
||||
- .shutdown = usb_hcd_pci_shutdown,
|
||||
- // TODO (ps4patches): Belize, enable in ahci commit
|
||||
- //.shutdown = xhci_hcd_pci_shutdown,
|
||||
+ .shutdown = xhci_hcd_pci_shutdown,
|
||||
#ifdef CONFIG_PM_SLEEP
|
||||
.driver = {
|
||||
.pm = &xhci_aeolia_pm_ops
|
||||
--
|
||||
2.45.1
|
||||
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
From f94cfdd446ab433ba0e9a0cb074372025de283eb Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Wed, 29 Dec 2021 16:15:26 +0100
|
||||
Subject: [PATCH 16/22] fix: this probably needs to be the amount of interrupts
|
||||
|
||||
---
|
||||
drivers/ps4/ps4-apcie.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/ps4/ps4-apcie.c b/drivers/ps4/ps4-apcie.c
|
||||
index fd27a4f38e61..b0bbc3f9891c 100644
|
||||
--- a/drivers/ps4/ps4-apcie.c
|
||||
+++ b/drivers/ps4/ps4-apcie.c
|
||||
@@ -343,7 +343,7 @@ int apcie_assign_irqs(struct pci_dev *dev, int nvec)
|
||||
}
|
||||
#endif
|
||||
|
||||
- desc = alloc_msi_entry(bare_dev, 1, NULL);
|
||||
+ desc = alloc_msi_entry(bare_dev, nvec, NULL);
|
||||
|
||||
info.desc = desc;
|
||||
info.data = sc;
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
From 62b05b54178ecba3e2d42fbe78b97da94b0fec81 Mon Sep 17 00:00:00 2001
|
||||
From: Ps3ita Team <ps3ita-team@ps3ita.it>
|
||||
Date: Wed, 13 Feb 2019 14:09:55 +0100
|
||||
Subject: [PATCH 17/22] Also on liverpool num_crtc is 6
|
||||
|
||||
---
|
||||
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
|
||||
index aaa6893d8e51..bd9d32217d25 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
|
||||
@@ -404,6 +404,7 @@ static int dce_v8_0_get_num_crtc(struct amdgpu_device *adev)
|
||||
case CHIP_BONAIRE:
|
||||
case CHIP_HAWAII:
|
||||
case CHIP_GLADIUS:
|
||||
+ case CHIP_LIVERPOOL:
|
||||
num_crtc = 6;
|
||||
break;
|
||||
case CHIP_KAVERI:
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
From 0bf01d7fb8556417ca16ce96b230dd2741de8d48 Mon Sep 17 00:00:00 2001
|
||||
From: codedwrench <rick.04.1996@gmail.com>
|
||||
Date: Thu, 30 Dec 2021 15:05:26 +0100
|
||||
Subject: [PATCH 18/22] fix: cherrypick doubled CHIP_LIVERPOOL
|
||||
|
||||
---
|
||||
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
|
||||
index bd9d32217d25..e54b86bd6d99 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
|
||||
@@ -408,7 +408,6 @@ static int dce_v8_0_get_num_crtc(struct amdgpu_device *adev)
|
||||
num_crtc = 6;
|
||||
break;
|
||||
case CHIP_KAVERI:
|
||||
- case CHIP_LIVERPOOL:
|
||||
num_crtc = 4;
|
||||
break;
|
||||
case CHIP_KABINI:
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
From 4e2075413f8a4232857f9a87905f8afc28e74267 Mon Sep 17 00:00:00 2001
|
||||
From: Ps3ita Team <psxitateam@psxita.it>
|
||||
Date: Sat, 30 May 2020 12:04:24 +0200
|
||||
Subject: [PATCH 19/22] Missing break;
|
||||
|
||||
---
|
||||
drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
|
||||
index 8513dd006ad5..3c2e63c2d32b 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
|
||||
@@ -4956,7 +4956,7 @@ static void gfx_v7_0_gpu_early_init(struct amdgpu_device *adev)
|
||||
adev->gfx.config.max_tile_pipes = 8; // Verified
|
||||
adev->gfx.config.max_cu_per_sh = 9; // Probably OK
|
||||
adev->gfx.config.max_sh_per_se = 1; // Verified
|
||||
- adev->gfx.config.max_backends_per_se = 1; // Probably OK?
|
||||
+ adev->gfx.config.max_backends_per_se = 2; // Probably OK?
|
||||
adev->gfx.config.max_texture_channel_caches = 4; // ??
|
||||
adev->gfx.config.max_gprs = 256;
|
||||
adev->gfx.config.max_gs_threads = 32; // ??
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
From 9dbe4ba89c9f330e27257ad50b9da4cf9ff1ac9a Mon Sep 17 00:00:00 2001
|
||||
From: Rick de Bondt <rick_1996@hotmail.com>
|
||||
Date: Fri, 31 Dec 2021 15:19:08 +0100
|
||||
Subject: [PATCH 20/22] fix: needed for video codec support
|
||||
|
||||
---
|
||||
drivers/gpu/drm/amd/amdgpu/cik.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/amd/amdgpu/cik.c b/drivers/gpu/drm/amd/amdgpu/cik.c
|
||||
index 353899a95424..147db89444fd 100644
|
||||
--- a/drivers/gpu/drm/amd/amdgpu/cik.c
|
||||
+++ b/drivers/gpu/drm/amd/amdgpu/cik.c
|
||||
@@ -136,6 +136,8 @@ static int cik_query_video_codecs(struct amdgpu_device *adev, bool encode,
|
||||
case CHIP_KAVERI:
|
||||
case CHIP_KABINI:
|
||||
case CHIP_MULLINS:
|
||||
+ case CHIP_LIVERPOOL:
|
||||
+ case CHIP_GLADIUS:
|
||||
if (encode)
|
||||
*codecs = &cik_video_codecs_encode;
|
||||
else
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
From dc139fd452cfa78583a695b0d4fc2cdec39b31da Mon Sep 17 00:00:00 2001
|
||||
From: crashniels <39709384+crashniels@users.noreply.github.com>
|
||||
Date: Fri, 24 May 2024 19:47:37 +0200
|
||||
Subject: [PATCH 21/22] fix: gcc newer than 11
|
||||
|
||||
https://lore.kernel.org/lkml/20220129010215.781601-1-jforbes@fedoraproject.org/t/
|
||||
---
|
||||
tools/lib/subcmd/subcmd-util.h | 12 +++++++++---
|
||||
1 file changed, 9 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/tools/lib/subcmd/subcmd-util.h b/tools/lib/subcmd/subcmd-util.h
|
||||
index b2aec04fce8f..7009fc176636 100644
|
||||
--- a/tools/lib/subcmd/subcmd-util.h
|
||||
+++ b/tools/lib/subcmd/subcmd-util.h
|
||||
@@ -49,9 +49,15 @@ static NORETURN inline void die(const char *err, ...)
|
||||
|
||||
static inline void *xrealloc(void *ptr, size_t size)
|
||||
{
|
||||
- void *ret = realloc(ptr, size);
|
||||
- if (!ret)
|
||||
- die("Out of memory, realloc failed");
|
||||
+ void *ret;
|
||||
+ if (!size)
|
||||
+ size = 1;
|
||||
+ ret = realloc(ptr, size);
|
||||
+ if (!ret) {
|
||||
+ ret = realloc(ptr, size);
|
||||
+ if (!ret)
|
||||
+ die("Out of memory, realloc failed");
|
||||
+ }
|
||||
return ret;
|
||||
}
|
||||
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
From 77961812e981b14669eb51cfa67181149a9bb64a Mon Sep 17 00:00:00 2001
|
||||
From: crashniels <39709384+crashniels@users.noreply.github.com>
|
||||
Date: Sat, 25 May 2024 19:32:05 +0200
|
||||
Subject: [PATCH 22/22] fix: use upstream values
|
||||
|
||||
---
|
||||
drivers/usb/host/xhci-aeolia.c | 2 +-
|
||||
drivers/usb/host/xhci.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/usb/host/xhci-aeolia.c b/drivers/usb/host/xhci-aeolia.c
|
||||
index 1401af61430c..9ab0be144f42 100644
|
||||
--- a/drivers/usb/host/xhci-aeolia.c
|
||||
+++ b/drivers/usb/host/xhci-aeolia.c
|
||||
@@ -43,7 +43,7 @@ static void xhci_aeolia_quirks(struct device *dev, struct xhci_hcd *xhci)
|
||||
* Do not try to enable MSIs, we provide the MSIs ourselves
|
||||
* Do not touch DMA mask, we need a custom one
|
||||
*/
|
||||
- xhci->quirks |= XHCI_PLAT | XHCI_PLAT_DMA;
|
||||
+ xhci->quirks |= XHCI_PLAT | XHCI_SUSPEND_RESUME_CLKS;
|
||||
}
|
||||
|
||||
/* called during probe() after chip reset completes */
|
||||
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
|
||||
index 1c8fb48c7095..a79e9dc827e4 100644
|
||||
--- a/drivers/usb/host/xhci.c
|
||||
+++ b/drivers/usb/host/xhci.c
|
||||
@@ -5373,7 +5373,7 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
|
||||
|
||||
/* Set dma_mask and coherent_dma_mask to 64-bits,
|
||||
* if xHC supports 64-bit addressing */
|
||||
- if (!(xhci->quirks & XHCI_PLAT_DMA)) {
|
||||
+ if (!(xhci->quirks & XHCI_SUSPEND_RESUME_CLKS)) {
|
||||
if (HCC_64BIT_ADDR(xhci->hcc_params) &&
|
||||
!dma_set_mask(dev, DMA_BIT_MASK(64))) {
|
||||
xhci_dbg(xhci, "Enabling 64-bit DMA addresses.\n");
|
||||
--
|
||||
2.45.1
|
||||
|
||||
@@ -0,0 +1,112 @@
|
||||
pkgname=linux-sony-ps4
|
||||
pkgver=5.15.110
|
||||
pkgrel=0
|
||||
pkgdesc="Sony Playstation 4 kernel fork"
|
||||
arch="x86_64"
|
||||
_flavor="sony-ps4"
|
||||
_carch="x86"
|
||||
url="https://kernel.org"
|
||||
license="GPL-2.0-only"
|
||||
options="!strip !check !tracedeps
|
||||
pmb:cross-native
|
||||
pmb:kconfigcheck-community
|
||||
"
|
||||
makedepends="
|
||||
bash
|
||||
bison
|
||||
elfutils-dev
|
||||
findutils
|
||||
flex
|
||||
linux-headers
|
||||
openssl-dev
|
||||
perl
|
||||
postmarketos-installkernel
|
||||
linux-firmware-mrvl
|
||||
"
|
||||
|
||||
# Source
|
||||
_config="config-$_flavor.$arch"
|
||||
case $pkgver in
|
||||
*.*.*) _kernver=${pkgver%.0};;
|
||||
*.*) _kernver=$pkgver;;
|
||||
esac
|
||||
|
||||
source="
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/snapshot/linux-${_kernver//_/-}.tar.gz
|
||||
$_config
|
||||
|
||||
0001-feat-very-basic-platform-support.patch
|
||||
0002-feat-amdgpu-patches.patch
|
||||
0003-feat-radeon-patches.patch
|
||||
0004-feat-temperature-sensors.patch
|
||||
0005-feat-sdhci-support.patch
|
||||
0006-feat-ethernet-support.patch
|
||||
0007-feat-usb-support.patch
|
||||
0008-feat-configuration.patch
|
||||
0009-feat-trying-to-modernize-ps4-apcie-so-it-works-with-.patch
|
||||
0010-feat-working-state-broken-gpu.patch
|
||||
0011-fix-incorrectly-applied-patches-and-missing-patches.patch
|
||||
0012-fix-radeon-drivers.patch
|
||||
0013-fix-amdgpu-drivers.patch
|
||||
0014-fix-re-add-legacy-bridge-functions.patch
|
||||
0015-feat-potentially-added-belize-ahci-support-in-a-univ.patch
|
||||
0016-fix-this-probably-needs-to-be-the-amount-of-interrup.patch
|
||||
0017-Also-on-liverpool-num_crtc-is-6.patch
|
||||
0018-fix-cherrypick-doubled-CHIP_LIVERPOOL.patch
|
||||
0019-Missing-break.patch
|
||||
0020-fix-needed-for-video-codec-support.patch
|
||||
0021-fix-gcc-newer-than-11.patch
|
||||
0022-fix-use-upstream-values.patch
|
||||
"
|
||||
builddir="$srcdir/linux-${_kernver//_/-}"
|
||||
|
||||
prepare() {
|
||||
default_prepare
|
||||
cp "$srcdir/$_config" .config
|
||||
}
|
||||
|
||||
build() {
|
||||
unset LDFLAGS
|
||||
make ARCH="$_carch" CC="${CC:-gcc}" \
|
||||
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-$_flavor"
|
||||
}
|
||||
|
||||
package() {
|
||||
mkdir -p "$pkgdir"/boot
|
||||
make install modules_install \
|
||||
ARCH="$_carch" \
|
||||
INSTALL_PATH="$pkgdir"/boot \
|
||||
INSTALL_MOD_PATH="$pkgdir" \
|
||||
INSTALL_MOD_STRIP=1
|
||||
rm -f "$pkgdir"/lib/modules/*/build "$pkgdir"/lib/modules/*/source
|
||||
|
||||
install -D "$builddir"/include/config/kernel.release \
|
||||
"$pkgdir"/usr/share/kernel/$_flavor/kernel.release
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
405be3edf5855e45b50fd163542e00f58fab0d80c9e93e9605100107eba79ce4b49b83d5ddda3226665bdbdd1c31ac06b4ef05cf87b31f7cf1ff8adf662f2178 linux-5.15.110.tar.gz
|
||||
1632c7eb73a7341b8fa1981a66bb59fe21aa6d04cad11bbbf85823950451240d942c40c8eb0b7a1301beec00f3375ae84cbb50594cca4f5fa9983fca56f09dae config-sony-ps4.x86_64
|
||||
7d4e6ab0d273b4d121bfb485334ea949abc4466a914ac596edfae716f3f1d5dde896d27b2b29efd77115d732a0256db3b395ab7cf8d91a47d4a3c45778dc753e 0001-feat-very-basic-platform-support.patch
|
||||
e69400cbc1772bc247868004f874c174289747fc36f5df6002664a6813fd24b7fe2dae3b6f6e0647466f89735454914d49316bbb996dd41863bcca1424c5191c 0002-feat-amdgpu-patches.patch
|
||||
cffb257874c4e746c82a06be9b9442df9c2deb897e479c7d75a7d73883a64e0d9f00812e1468d8e3fdd15eda0bcfe92668c96bee2f7e2de57c1088f467b329b4 0003-feat-radeon-patches.patch
|
||||
262b0934845d9c8bc92c6cacf8cbb1fb697830ac386380c27de586766b801c52ce0230755b62f4abd44c39fc0559446749a212d666636102c35d34299d8cf6c5 0004-feat-temperature-sensors.patch
|
||||
536daa2a900ae214a2a1cde277c1ae1b9c4d5a740ddf4a8d2d23e5a4578eeb2e274d89ce917d9705495814580ceceb9cbf69ccb81e14d88ac932f84f1bb4fcad 0005-feat-sdhci-support.patch
|
||||
1f960d7bcb8805f2c86e71125a73e28ba8b6b1dcf230a0994ae140f7874ed3e4d8e6ec867d4bff8fdccbfc94b432ccaf6c01e8774a702984f57bd323bf72c208 0006-feat-ethernet-support.patch
|
||||
7856b33b05a090009dde83a03ec74044ae64100469ac004c94913a895ccd91c1b7c4623bcc08217e04110a79ef599018a9925c308d8f7e9e89791704675dfc0b 0007-feat-usb-support.patch
|
||||
2b28e8059c6845ab3e7b64bc84469936f9d5620331b8738b335fdf11b2fc03d83a06c68b323ebe79d374b23f0264bd9a51e2fd6a323119c68d8edce0ec8fcf25 0008-feat-configuration.patch
|
||||
5ce3347dabc35b419ee71fa1c29ebb1ece570c048439c8cdb43f7503863619c70c2c5af79383bbae23eb7f63e58ac1d4690bd9bced0bb103967392ca19d9f328 0009-feat-trying-to-modernize-ps4-apcie-so-it-works-with-.patch
|
||||
a57142aa46e698e147f1527383006f77c2b6f62a52520dbcdc9da19782ff89252be841dfe6e2b5b9566c396ec15693a8b54c1ea98ae85d514b844642e1456d31 0010-feat-working-state-broken-gpu.patch
|
||||
f922606e57a194dbde0bbf702f328b2bcc4116b7a6bf34eda6781414f5685dfad9a48e21af4c33af154c680a9093085432ccc71d3e083b1aec1c0fbfb5ef8b43 0011-fix-incorrectly-applied-patches-and-missing-patches.patch
|
||||
cb22e3f401178b2801605db766f372a08322248b013f51ede908d0d1ca008c780c98cc53b8252fd473d1def043f44ab8b44530aa9a43d749480517e8e7f33226 0012-fix-radeon-drivers.patch
|
||||
c8c6a9af6de9324ca66be658be59063c85e579420832e5394a778b8af0119894cc5ac2483a11d6dd1f714d6ac15f719f50de841b896b1c9f153a982dd28d307d 0013-fix-amdgpu-drivers.patch
|
||||
1e8af016a999f18ca64d09a2dcf55d4dc961c9b5c78f45c5c5b09e22e97d2c76d65dcf4742c1da2dd557e8c995c23237161553946a9622adf51c4d99c59d9d2d 0014-fix-re-add-legacy-bridge-functions.patch
|
||||
4de5a19976bfcfd6d290256f1ab5eb270d60e037341b8a998d8026751b2d55c911045b6b7034446258a677db668229516995585b8ce8d2ea1a1a49e333ac3164 0015-feat-potentially-added-belize-ahci-support-in-a-univ.patch
|
||||
e18c4f277793181625c3769f3b5d5f264a6c7c2f562ab4e1638e7f8b3a57cc547ee5bc71f44ec182f1c9609b9d848267370fa85531ff483c9a0a5cb52db4bdcc 0016-fix-this-probably-needs-to-be-the-amount-of-interrup.patch
|
||||
aa2d70a0dd8cef198d60de66446deead4b1b1a408f975bff2e733c3f554f555a99c1aca4b02ed58abbc609dc90e7711789dd396d1129bd6f96c30d569485acba 0017-Also-on-liverpool-num_crtc-is-6.patch
|
||||
563b5c3cf8df1f82724b4dd0f21d5231a80c79a7cef5c93de73c6008ff7bd140313b0d7d0f92d4fd95c556ab18087967735c4eade1a98974efa2d3536f2ca01a 0018-fix-cherrypick-doubled-CHIP_LIVERPOOL.patch
|
||||
38da37f52b3c1a77d80f70accc12351ee4c5e8d1302294d523741724d17a62e22cdf64c6dcbc1b472e3967b417d37754ea6faa5c8d5b4218bf731deeaef6e5e5 0019-Missing-break.patch
|
||||
ada724aa09e1b29525e1c6bda38cf68fd4c72b9d6b8f45b1f9000e06e67e2c7806f81c53efce246396b5e7dc0d745dead599fce8b3c4108189fa77b40accaff0 0020-fix-needed-for-video-codec-support.patch
|
||||
70d9dfd868e4da14c0b164f6a3c8450eda733c59b81d19341b54e38ba4faca7943ac3240c5872e08932ffd0b51b0884893d90bec20cd522ce5c0e4c7f37c187a 0021-fix-gcc-newer-than-11.patch
|
||||
1c166aba9d18171b0a610ea8ed4798f0bb32a6f2d73f70d2fb32aa98ed93437b7bc1f264e8c50e9668e77dc85bd5b1128ead9810bfbb082f5cae919cd32e772a 0022-fix-use-upstream-values.patch
|
||||
"
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1,7 +1,7 @@
|
||||
# Maintainer: Henrik Grimler <henrik@grimler.se>
|
||||
pkgname=postmarketos-base-downstream
|
||||
pkgver=2
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="Base package for devices with downstream (vendor) kernels"
|
||||
url="https://postmarketos.org"
|
||||
arch="noarch"
|
||||
@@ -21,8 +21,8 @@ disable_udev_v4l() {
|
||||
# udev if camera firmware is missing and/or fails to load
|
||||
pkgdesc="Package to disable udev video4linux rules"
|
||||
replaces="eudev"
|
||||
mkdir -p "$subpkgdir"/lib/udev/rules.d
|
||||
ln -s /dev/null "$subpkgdir"/lib/udev/rules.d/60-persistent-v4l.rules
|
||||
mkdir -p "$subpkgdir"/usr/lib/udev/rules.d
|
||||
ln -s /dev/null "$subpkgdir"/usr/lib/udev/rules.d/60-persistent-v4l.rules
|
||||
}
|
||||
|
||||
lightdm() {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Maintainer: Petr Hodina <phodina@protonmail.com>
|
||||
pkgname=postmarketos-base-eink
|
||||
pkgver=1
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
pkgdesc="Base package with some opinionated default for e-ink devices"
|
||||
# It's worth emphasising the word "opinionated" here, e-ink has some
|
||||
# obvious differences compared to regular displays, there are cases
|
||||
@@ -28,7 +28,7 @@ builddir="$srcdir/"
|
||||
package() {
|
||||
mkdir -p "$pkgdir"
|
||||
install -Dm644 "$srcdir"/83-backlight.rules \
|
||||
"$pkgdir"/lib/udev/rules.d
|
||||
"$pkgdir"/usr/lib/udev/rules.d
|
||||
}
|
||||
|
||||
gnome() {
|
||||
|
||||
@@ -19,4 +19,5 @@
|
||||
/sbin/udevd
|
||||
/etc/udev/rules.d
|
||||
/lib/udev/rules.d
|
||||
/lib/udev/scsi_id
|
||||
/usr/lib/udev/rules.d
|
||||
/usr/lib/udev/scsi_id
|
||||
@@ -2,7 +2,7 @@
|
||||
# Co-Maintainer: Clayton Craft <clayton@craftyguy.net>
|
||||
pkgname=postmarketos-initramfs
|
||||
pkgver=3.3.5
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="Base files for the postmarketOS initramfs / initramfs-extra"
|
||||
url="https://postmarketos.org"
|
||||
options="!check" # no tests
|
||||
@@ -90,7 +90,7 @@ package() {
|
||||
sha512sums="
|
||||
20bc7a21f4f59548b8179c5cb1fc2b3db64eb355988bce992db3bc4075d65b4135ff9dd7d754215d0402978811494449cce476a26cda6bb2f0f8b53ae8e36bd7 00-default.modules
|
||||
9c0e8f6f61d5da191e03a1aa9d5d0ceb5baf1eae6dbb9bfb0af59817783525119ac8394b135f303f7b6434a3eab0b49185fb90379e06823db847a4999c75ce33 00-initramfs-base.dirs
|
||||
929a8e6cca6b2b4ac6af89fc3912e80315f51c9bf6e9479124ccb7ebe9e99c6c1cafb98d3aa01b0a76a2f6e0071ba3eb86c7a2169a15c2e1788d69458bea3471 00-initramfs-base.files
|
||||
8bf038da4055ab67affad4cfdfdb81ea29fb52def6727d1d207ea3d498cb36562dfc2b1c24fdb886cca4fa936ddd6dcec1b969cbec8abf2f003eed6e5564630f 00-initramfs-base.files
|
||||
c4ce6c9ef5b1aa8fce0937676eb68f0172474cb86f2ab9d839f327b1c58f22ed6ae2a48133dd1c04ede33324ce82f78863f68ab6e62f88b716964b3b84f0ae9e 00-initramfs-extra-base.files
|
||||
7ea2c318e3b63b84ba8eb09e31dd74cdd9c86f5f4d8970ab54bb9213930e913c09728b60d429828007ea2dbb0472fd50dc3daae2efbe307babf854e4d8ecb238 init.sh
|
||||
7518662b584328cc94b108d9283c19c4d551d0a25d51b4fed60b4367c129789a5d895ab68244ec448c92c6818e7cefc68552184b6e9098c8f9b9c7fcf008517d init_functions.sh
|
||||
|
||||
@@ -5,4 +5,5 @@
|
||||
/sbin/udevd
|
||||
/bin/udevadm
|
||||
/etc/udev/rules.d
|
||||
/lib/udev/rules.d
|
||||
/lib/udev/rules.d
|
||||
/usr/lib/udev/rules.d
|
||||
@@ -1,7 +1,7 @@
|
||||
# Maintainer: Caleb Connolly <caleb@connolly.tech>
|
||||
pkgname=postmarketos-mkinitfs-hook-ci
|
||||
pkgver=0.1.0
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="Hook for doing automated CI tests in the initramfs"
|
||||
url="https://postmarketos.org"
|
||||
source="
|
||||
@@ -21,5 +21,5 @@ package() {
|
||||
|
||||
sha512sums="
|
||||
43f9d9a35a57845eb36893a3f20d8ff5f20b93b1c22c7c6e3959b07a41b3c5fe2f9941612620cf006a0018b53edae5fdc7ed3006befc6908c19a5617f322dea3 05-ci.sh
|
||||
35457ab221acd485ebde84fccac2187f36a074554c5f73828f2031f1e8e92ab7b3d46e654f0d7c62c0aa483c1d7f0dc901422fe0398ae0eae6995a2ae539a4af 05-ci.files
|
||||
69507171a4c4aabc2ae0a2d70dd12822dddfc9cd2855c240a28ba4ca16f1daa96c5c4aef57d08e953083874cfffc783a3054dd4a1ad1636d7aa5e4d2d2fbfd7c 05-ci.files
|
||||
"
|
||||
@@ -0,0 +1,7 @@
|
||||
# With 87a596f7867a49fae78c05042a92bea3e5e24b0d all GNOME-based UIs have the
|
||||
# default accent color set to green.
|
||||
#
|
||||
# However only GNOME 47+ supports accent colors. In order to keep consistency
|
||||
# keep blue accent color until GNOME mobile is upgraded to 47+.
|
||||
[org.gnome.desktop.interface]
|
||||
accent-color='blue'
|
||||
@@ -1,8 +1,8 @@
|
||||
# Reference: https://postmarketos.org/uipkg
|
||||
# Maintainer: Newbyte <newbyte@postmarketos.org>
|
||||
pkgname=postmarketos-ui-gnome-mobile
|
||||
pkgver=2
|
||||
pkgrel=7
|
||||
pkgver=3
|
||||
pkgrel=0
|
||||
pkgdesc="(Wayland) Gnome Shell patched to adapt better to phones (Experimental)"
|
||||
url="https://gnome.org/"
|
||||
arch="noarch !armhf !riscv64" # gnome-shell / riscv64: mutter-mobile
|
||||
@@ -34,13 +34,20 @@ _pmb_recommends="
|
||||
gnome-extensions-app
|
||||
"
|
||||
subpackages="$pkgname-openrc"
|
||||
source="firefox-wayland.sh"
|
||||
source="
|
||||
20_postmarketos-blue-accent.gschema.override
|
||||
firefox-wayland.sh
|
||||
"
|
||||
options="!check"
|
||||
|
||||
package() {
|
||||
install -Dm755 \
|
||||
"$srcdir"/firefox-wayland.sh \
|
||||
-t "$pkgdir"/etc/profile.d/
|
||||
|
||||
# TODO: Remove once gnome-mobile is upgraded to 47
|
||||
install -Dm644 "$srcdir"/20_postmarketos-blue-accent.gschema.override \
|
||||
-t "$pkgdir"/usr/share/glib-2.0/schemas/
|
||||
}
|
||||
|
||||
openrc() {
|
||||
@@ -52,5 +59,6 @@ openrc() {
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
224019eb563b62ce3c0cff46f1a4b875b916bd91d3ef866afe4a79da2d4d8b41b86df0e39a598a5dd4dd96483527916b499a66a0b4fddb08e94a7436d6620d5e 20_postmarketos-blue-accent.gschema.override
|
||||
0d9ec58be7dc354e181989c7f08e7d4dd93fefd06a99e784b87fe898479dd47a40dfa9689c6a63ebdc04bf87883a270686aec27f7cc34cb21ec0f370a4afe2d8 firefox-wayland.sh
|
||||
"
|
||||
@@ -0,0 +1,12 @@
|
||||
# With 87a596f7867a49fae78c05042a92bea3e5e24b0d all GNOME-based UIs have the
|
||||
# default accent color set to green.
|
||||
#
|
||||
# Phosh hasn't implemented accent colors and using green accent colors for apps
|
||||
# but not for the shell look inconsistent.
|
||||
#
|
||||
# Therefore set the blue accent color back until phosh has support for accent colors
|
||||
#
|
||||
# Ref: https://gitlab.gnome.org/World/Phosh/phosh/-/merge_requests/1533
|
||||
# Ref: https://gitlab.com/postmarketOS/pmaports/-/issues/3218
|
||||
[org.gnome.desktop.interface]
|
||||
accent-color='blue'
|
||||
@@ -1,8 +1,8 @@
|
||||
# Reference: https://postmarketos.org/uipkg
|
||||
# Maintainer: Newbyte <newbyte@postmarketos.org>
|
||||
pkgname=postmarketos-ui-phosh
|
||||
pkgver=22.3
|
||||
pkgrel=11
|
||||
pkgver=22.4
|
||||
pkgrel=0
|
||||
pkgdesc="(Wayland) Mobile UI initially developed for the Librem 5"
|
||||
url="https://phosh.mobi"
|
||||
arch="noarch !armhf"
|
||||
@@ -28,6 +28,7 @@ _pmb_groups="feedbackd"
|
||||
install="$pkgname.post-install $pkgname.post-upgrade"
|
||||
source="
|
||||
01_postmarketos-ui-phosh.gschema.override
|
||||
20_postmarketos-blue-accent.gschema.override
|
||||
mimeapps.list
|
||||
udiskie.desktop
|
||||
"
|
||||
@@ -41,6 +42,10 @@ package() {
|
||||
"$pkgdir"/usr/share/applications/mimeapps.list
|
||||
install -Dm644 "$srcdir"/udiskie.desktop \
|
||||
"$pkgdir"/etc/xdg/autostart/udiskie.desktop
|
||||
|
||||
# TODO: Remove once Phosh supports accent colors
|
||||
install -Dm644 "$srcdir"/20_postmarketos-blue-accent.gschema.override \
|
||||
-t "$pkgdir"/usr/share/glib-2.0/schemas/
|
||||
}
|
||||
|
||||
openrc() {
|
||||
@@ -63,6 +68,7 @@ systemd() {
|
||||
|
||||
sha512sums="
|
||||
e577b8073df680ccee75ef5b6bb1f2877d5727687d63d6fd9211298e791b6c9f593eb79278c77a4b4918e3c57333c2a012030baf5a3c8d6d16000cc63a030f84 01_postmarketos-ui-phosh.gschema.override
|
||||
b5269303032b35d6e249479eb8870063b862280eca9605522f47d09a3c2266861560934643cf4a39af2d309696bad16b086d8b98e1240bbaef5e6ba3048de1dd 20_postmarketos-blue-accent.gschema.override
|
||||
a741e8db9e4232334b924326c48be4e4c8f7a2382a7608926918a7491c518b2dda551e55a00d4d5fcf58c7950a78dc35d5cc5eaab53ad93a56de40887071f242 mimeapps.list
|
||||
53f5c565b4ca8a12f12b63ec84a0194ef530703565d123203d41582a35a54d66afaf3a676df158ae0effe327dcfc1c6496a082ce9dbe803b2547417c3c3fad6e udiskie.desktop
|
||||
"
|
||||
@@ -1,7 +1,7 @@
|
||||
# Maintainer: Johannes Marbach <n0-0ne+gitlab@mailbox.org>
|
||||
pkgname=unl0kr
|
||||
pkgver=3.2.0
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
_commit_lvgl=ceadda8a468b7d5fa6ba973bd82cf610166278d8
|
||||
pkgdesc="Framebuffer-based disk unlocker for the initramfs based on LVGL"
|
||||
url="https://gitlab.com/postmarketOS/buffybox"
|
||||
@@ -82,12 +82,11 @@ pmtest() {
|
||||
install -Dm644 "$srcdir"/unl0kr.files \
|
||||
"$subpkgdir"/usr/share/mkinitfs/files/30-unl0kr.files
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
83d6724750e6f7e048063863e78251d32a23b1c7aa9e3529a0b176c415bda70c91b83924f6a71cc7f5ca29f019e7a974b406f6e83ff038dae92430b53183d5fa buffybox-3.2.0.tar.gz
|
||||
d3611fe9d55ed105d9567b6019dc49fc0510ac4ed6ca6e15ba0c1bae47f2833d8784b3e008a4dec76dce55bf3809531d07c62e4ba24bafad69c6c54fdd0b70c0 lvgl-ceadda8a468b7d5fa6ba973bd82cf610166278d8.tar.gz
|
||||
7155c2f95dcf3716c0f392cf5717e96f1414c383a1f7c2ed30a1f8518dfe0b17c3c0e0e93f6476a342504aa855404099e2f5444eeb099023491c9a9a26fa3d90 unl0kr.conf
|
||||
521379c06843d31304c7317d083472bb0105da7e9360d7a303cb98c84112919278fa8b50c3781d9cf43bb057b7eb7d52a4f4d900be69a0c0d70f97f2e9843140 unl0kr.files
|
||||
9e3cb41a430f042c59a8a41ee6697a6c85f492092c43b442f720d447f961ea1e0043450283a97e12b982c701654bed4f5ac5d08f4ea4c8e4d365282f72f4f360 unl0kr.files
|
||||
5386f434cd4f1fb9e0d561a8689e5e85d6a8b3c562823122c082d4932d2fb0ad4edcd635f14f0c61e5c8b5e53648c9937b042409c21683007700faea8894c750 unlock.sh
|
||||
407180b49c1a05f12bd6ee6e59dca0a6e74fe7b01f195087dcf2865598c47827d0bb569afdba55defa2f9a16437230fa62aa64f35111508b906bcbf9537acba4 30-unl0kr-test.sh
|
||||
"
|
||||
@@ -8,4 +8,5 @@
|
||||
/sbin/udevd
|
||||
/etc/udev/rules.d
|
||||
/lib/udev/rules.d
|
||||
/usr/lib/udev/rules.d
|
||||
/usr/share/X11/xkb
|
||||
@@ -1,6 +1,6 @@
|
||||
pkgname=gnome-settings-daemon-mobile
|
||||
pkgver=46.0
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="GNOME settings daemon"
|
||||
url="https://gitlab.gnome.org/verdre/gnome-settings-daemon-mobile"
|
||||
arch="all"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
pkgname=iio-sensor-proxy
|
||||
pkgver=9999
|
||||
pkgrel=4
|
||||
pkgrel=5
|
||||
pkgdesc="IIO sensors to D-Bus proxy"
|
||||
url="https://gitlab.freedesktop.org/hadess/iio-sensor-proxy"
|
||||
arch="aarch64"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
pkgname=mutter-mobile
|
||||
pkgver=46.1
|
||||
pkgrel=0
|
||||
pkgrel=1
|
||||
pkgdesc="clutter-based window manager and compositor"
|
||||
url="https://wiki.gnome.org/Projects/Mutter/"
|
||||
# ricsv64: doesn't build currently:
|
||||
|
||||
Reference in new issue
Block a user