mirror of
https://github.com/openwrt/openwrt.git
synced 2026-10-13 21:58:06 +04:00
Add wired support and an eMMC A/B sysupgrade path for the Linksys LN6001.
Write and verify the inactive kernel/rootfs pair before changing the boot
selectors. Confirm an installed boot by clearing the s_env boot counter
and updating its checksum.
Identify the board as IPQ9554, using the shared ipq9574.dtsi and family
fallback compatible. Disable the absent UNIPHY1 block and provide the
board clocks required by eMMC, MDIO and PWM. Let U-Boot populate memory
size, use the default GPIO-key debounce and allow 10 ms for QCA8081 reset
assertion while retaining the 150 ms deassertion delay. Use decimal 28
for the QCA8081 PHY address. The assertion delay follows the QCA8081
precedent in 904aa43865.
Return to common upgrade cleanup and reboot after safe staging failures,
while stopping on uncertain boot selector state.
Hardware specification:
- SoC: Qualcomm IPQ9554
- RAM: 1 GiB DDR4
- Flash: 8 GB Samsung 8GTF4R eMMC
- Ethernet: four 1 GbE LAN ports through QCA8075 over PSGMII
- Ethernet: one 2.5 GbE WAN port through QCA8081
- LEDs: red, green, blue and white PWM status channels
- Buttons: reset and WPS GPIO keys
- UART: 115200 8N1
- Power: 12 V, 2.5 A
- Wireless and Bluetooth: not enabled
Installation:
The initial installation uses serial access and an OpenWrt RAM boot.
Keep a bootable stock slot and start with that slot selected. The updater
accepts only the observed retail GPT geometry, matching bootconfig copies,
boot_part_ready=3, auto_recovery=yes and matching Wi-Fi firmware slots.
It does not repair an inconsistent layout or selector state.
Copy this image to the TFTP server as ln6001-initramfs.itb:
openwrt-qualcommbe-ipq95xx-linksys_ln6001-initramfs-uImage.itb
Connect Ethernet to LAN4 and configure the TFTP server as 192.168.1.254/24.
Interrupt U-Boot autoboot through the serial console and run:
setenv ipaddr 192.168.1.1
setenv serverip 192.168.1.254
setenv netmask 255.255.255.0
tftp 0x4d100000 ln6001-initramfs.itb
bootm 0x4d100000#config@1
Do not save these temporary network settings or write the initramfs FIT
to eMMC. In RAM-booted OpenWrt, transfer the following image to
/tmp/ln6001-sysupgrade.bin:
openwrt-qualcommbe-ipq95xx-linksys_ln6001-squashfs-sysupgrade.bin
Check the selected slot and validate the image, then install:
fw_printenv boot_part boot_part_ready auto_recovery
sysupgrade -T /tmp/ln6001-sysupgrade.bin
sysupgrade -n /tmp/ln6001-sysupgrade.bin
Run the last command only after validation succeeds. boot_part=1 selects
A and installation writes B; boot_part=2 selects B and installation
writes A. Do not force a failed check. The sysupgrade archive is not a
Linksys web-update image. Subsequent OpenWrt sysupgrades use the same
inactive-slot path; omit -n to request preservation of OpenWrt settings.
Recovery:
The serial TFTP/bootm procedure remains available without depending on
the installed rootfs. Before installation, resetting a RAM-only session
returns to the selected existing firmware. After installation, a normal
reboot uses the newly selected slot and does not itself return to stock.
With consistent selector copies and environment, a recovery RAM boot can
run the same checked sysupgrade path. Inconsistent selectors are rejected;
do not bypass these checks. Keep serial access and a bootable other slot.
Partition and MAC address handling:
Discover the existing GPT at runtime and require the retail partition
labels, starts and sizes before writing. Preserve the GPT, bootloader,
devinfo and both Wi-Fi firmware payloads. The upgrade writes the inactive
HLOS/rootfs pair, then updates both bootconfig selector sectors and the
boot_part environment variable. Successful installed boots clear the
boot counter and update its checksum in s_env after verifying the active
slot. A stale checksum on an already-zero counter is repaired as well.
Read hw_mac_addr from devinfo through read-only block NVMEM. Stock LAN
and WAN use the same base address; assign offset zero to all five wired
ports. Configuration persists in a per-slot F2FS overlay.
Validation:
Retail-hardware testing passed RAM boot with U-Boot supplying 1
GiB RAM, and sysupgrade -n from stock-selected A into B followed
by two successful installed boots. The boot-count record
contained a zero count and valid checksum after both boots. F2FS
remained writable and a UCI setting persisted across reboot.
Kernel/rootfs readback matched the image; full stock A hashes and
non-selector protected partition hashes were unchanged.
LAN4 linked at 1 Gbps. WAN-to-WAN testing against a stock LN6001
negotiated 2500 Mbps full duplex at both ends and recovered to
that rate after cable replug without reboot or interface reset.
Normal and full-MTU IPv6 pings passed without loss before and
after replug. Separate four-stream TCP endpoint tests measured
2.313 Gbit/s received by this image and 2.311 Gbit/s by the peer,
then 2.316 Gbit/s received after replug. These are router-local
tests, not forwarding benchmarks. One RX error at the
disconnected checkpoint did not increase during subsequent
traffic; TX and peer RX/TX error counters remained zero.
Fifteen local synthetic tests cover boot-counter checksum
validation and repair, write/readback failures, upgrade guards
and safe return versus deliberate halt. Seven temporary-file
bootcount test groups also passed on the device. Real boot
selectors were not corrupted for failure tests. Image-macro
checks confirm sysupgrade.bin only with the size guard retained.
Signed-off-by: Satoshi Ikeuchi <satosan.ikm@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24736
Signed-off-by: Robert Marko <robimarko@gmail.com>
646 lines
18 KiB
Plaintext
646 lines
18 KiB
Plaintext
CONFIG_64BIT=y
|
|
CONFIG_ARCH_BINFMT_ELF_EXTRA_PHDRS=y
|
|
CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y
|
|
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
|
|
CONFIG_ARCH_FORCE_MAX_ORDER=10
|
|
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
|
|
CONFIG_ARCH_KEEP_MEMBLOCK=y
|
|
CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
|
|
CONFIG_ARCH_MMAP_RND_BITS=18
|
|
CONFIG_ARCH_MMAP_RND_BITS_MAX=24
|
|
CONFIG_ARCH_MMAP_RND_BITS_MIN=18
|
|
CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11
|
|
CONFIG_ARCH_PKEY_BITS=3
|
|
CONFIG_ARCH_PROC_KCORE_TEXT=y
|
|
CONFIG_ARCH_QCOM=y
|
|
CONFIG_ARCH_SPARSEMEM_ENABLE=y
|
|
CONFIG_ARCH_STACKWALK=y
|
|
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
|
CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
|
|
CONFIG_ARCH_WANTS_EXECMEM_LATE=y
|
|
CONFIG_ARCH_WANTS_NO_INSTR=y
|
|
CONFIG_ARCH_WANTS_THP_SWAP=y
|
|
CONFIG_ARM64=y
|
|
CONFIG_ARM64_4K_PAGES=y
|
|
CONFIG_ARM64_GCS=y
|
|
CONFIG_ARM64_PA_BITS=48
|
|
CONFIG_ARM64_PA_BITS_48=y
|
|
CONFIG_ARM64_PLATFORM_DEVICES=y
|
|
CONFIG_ARM64_PTR_AUTH=y
|
|
CONFIG_ARM64_PTR_AUTH_KERNEL=y
|
|
CONFIG_ARM64_SVE=y
|
|
CONFIG_ARM64_TAGGED_ADDR_ABI=y
|
|
CONFIG_ARM64_VA_BITS=39
|
|
CONFIG_ARM64_VA_BITS_39=y
|
|
CONFIG_ARM_AMBA=y
|
|
CONFIG_ARM_ARCH_TIMER=y
|
|
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
|
|
CONFIG_ARM_GIC=y
|
|
CONFIG_ARM_GIC_ITS_PARENT=y
|
|
CONFIG_ARM_GIC_V2M=y
|
|
CONFIG_ARM_GIC_V3=y
|
|
CONFIG_ARM_GIC_V3_ITS=y
|
|
CONFIG_ARM_GIC_V5=y
|
|
# CONFIG_ARM_MHU_V2 is not set
|
|
# CONFIG_ARM_MHU_V3 is not set
|
|
CONFIG_ARM_PSCI_CPUIDLE=y
|
|
CONFIG_ARM_PSCI_FW=y
|
|
# CONFIG_ARM_QCOM_CPUFREQ_HW is not set
|
|
CONFIG_ARM_QCOM_CPUFREQ_NVMEM=y
|
|
CONFIG_AT803X_PHY=y
|
|
CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
|
|
CONFIG_AUXILIARY_BUS=y
|
|
CONFIG_BLK_DEV_LOOP=y
|
|
CONFIG_BLK_DEV_SD=y
|
|
CONFIG_BLK_PM=y
|
|
CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y
|
|
CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
|
|
CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
|
|
# CONFIG_CLK_GLYMUR_DISPCC is not set
|
|
# CONFIG_CLK_GLYMUR_GCC is not set
|
|
# CONFIG_CLK_GLYMUR_TCSRCC is not set
|
|
# CONFIG_CLK_QCM2290_GPUCC is not set
|
|
# CONFIG_CLK_X1E80100_CAMCC is not set
|
|
# CONFIG_CLK_X1E80100_DISPCC is not set
|
|
# CONFIG_CLK_X1E80100_GCC is not set
|
|
# CONFIG_CLK_X1E80100_GPUCC is not set
|
|
# CONFIG_CLK_X1E80100_TCSRCC is not set
|
|
# CONFIG_CLK_X1P42100_GPUCC is not set
|
|
CONFIG_CLONE_BACKWARDS=y
|
|
CONFIG_COMMON_CLK=y
|
|
CONFIG_COMMON_CLK_QCOM=y
|
|
CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1
|
|
# CONFIG_COMPAT_32BIT_TIME is not set
|
|
CONFIG_CONTEXT_TRACKING=y
|
|
CONFIG_CONTEXT_TRACKING_IDLE=y
|
|
CONFIG_COREDUMP=y
|
|
CONFIG_CPUFREQ_DT=y
|
|
CONFIG_CPUFREQ_DT_PLATDEV=y
|
|
CONFIG_CPU_FREQ=y
|
|
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
|
|
CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y
|
|
CONFIG_CPU_FREQ_GOV_ATTR_SET=y
|
|
# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
|
|
# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set
|
|
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
|
|
# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
|
|
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
|
|
# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
|
|
CONFIG_CPU_FREQ_STAT=y
|
|
CONFIG_CPU_FREQ_THERMAL=y
|
|
CONFIG_CPU_IDLE=y
|
|
CONFIG_CPU_IDLE_GOV_MENU=y
|
|
CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
|
|
CONFIG_CPU_LITTLE_ENDIAN=y
|
|
CONFIG_CPU_MITIGATIONS=y
|
|
CONFIG_CPU_PM=y
|
|
CONFIG_CPU_RMAP=y
|
|
CONFIG_CPU_THERMAL=y
|
|
CONFIG_CRC16=y
|
|
CONFIG_CRC32_ARCH=y
|
|
CONFIG_CRC8=y
|
|
CONFIG_CRYPTO_AUTHENC=y
|
|
CONFIG_CRYPTO_CBC=y
|
|
CONFIG_CRYPTO_DEFLATE=y
|
|
CONFIG_CRYPTO_DEV_QCOM_RNG=y
|
|
CONFIG_CRYPTO_ECB=y
|
|
CONFIG_CRYPTO_HASH_INFO=y
|
|
CONFIG_CRYPTO_HW=y
|
|
CONFIG_CRYPTO_LIB_DES=y
|
|
CONFIG_CRYPTO_LIB_GF128MUL=y
|
|
CONFIG_CRYPTO_LIB_SHA1=y
|
|
CONFIG_CRYPTO_LIB_SHA1_ARCH=y
|
|
CONFIG_CRYPTO_LIB_SHA256_ARCH=y
|
|
CONFIG_CRYPTO_LIB_UTILS=y
|
|
CONFIG_CRYPTO_LZO=y
|
|
CONFIG_CRYPTO_RNG=y
|
|
CONFIG_CRYPTO_SHA1=y
|
|
CONFIG_CRYPTO_SHA256=y
|
|
CONFIG_CRYPTO_XTS=y
|
|
CONFIG_CRYPTO_ZSTD=y
|
|
CONFIG_DCACHE_WORD_ACCESS=y
|
|
CONFIG_DEBUG_BUGVERBOSE=y
|
|
CONFIG_DEBUG_INFO=y
|
|
CONFIG_DEV_COREDUMP=y
|
|
CONFIG_DMADEVICES=y
|
|
CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y
|
|
CONFIG_DMA_DIRECT_REMAP=y
|
|
CONFIG_DMA_ENGINE=y
|
|
CONFIG_DMA_NEED_SYNC=y
|
|
CONFIG_DMA_OF=y
|
|
CONFIG_DMA_VIRTUAL_CHANNELS=y
|
|
CONFIG_DTC=y
|
|
CONFIG_DT_IDLE_STATES=y
|
|
CONFIG_EDAC_SUPPORT=y
|
|
CONFIG_EXCLUSIVE_SYSTEM_RAM=y
|
|
CONFIG_FIXED_PHY=y
|
|
CONFIG_FIX_EARLYCON_MEM=y
|
|
CONFIG_FRAME_POINTER=y
|
|
CONFIG_FS_IOMAP=y
|
|
CONFIG_FUNCTION_ALIGNMENT=4
|
|
CONFIG_FUNCTION_ALIGNMENT_4B=y
|
|
CONFIG_FWNODE_MDIO=y
|
|
CONFIG_FW_LOADER_PAGED_BUF=y
|
|
CONFIG_FW_LOADER_SYSFS=y
|
|
CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y
|
|
CONFIG_GENERIC_ALLOCATOR=y
|
|
CONFIG_GENERIC_ARCH_TOPOLOGY=y
|
|
CONFIG_GENERIC_BUG=y
|
|
CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
|
|
CONFIG_GENERIC_CLOCKEVENTS=y
|
|
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
|
|
CONFIG_GENERIC_CPU_AUTOPROBE=y
|
|
CONFIG_GENERIC_CPU_DEVICES=y
|
|
CONFIG_GENERIC_CPU_VULNERABILITIES=y
|
|
CONFIG_GENERIC_CSUM=y
|
|
CONFIG_GENERIC_EARLY_IOREMAP=y
|
|
CONFIG_GENERIC_GETTIMEOFDAY=y
|
|
CONFIG_GENERIC_IDLE_POLL_SETUP=y
|
|
CONFIG_GENERIC_IOREMAP=y
|
|
CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
|
|
CONFIG_GENERIC_IRQ_ENTRY=y
|
|
CONFIG_GENERIC_IRQ_KEXEC_CLEAR_VM_FORWARD=y
|
|
CONFIG_GENERIC_IRQ_SHOW=y
|
|
CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
|
|
CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
|
|
CONFIG_GENERIC_MSI_IRQ=y
|
|
CONFIG_GENERIC_PCI_IOMAP=y
|
|
CONFIG_GENERIC_PHY=y
|
|
CONFIG_GENERIC_PINCONF=y
|
|
CONFIG_GENERIC_PINCTRL_GROUPS=y
|
|
CONFIG_GENERIC_PINMUX_FUNCTIONS=y
|
|
CONFIG_GENERIC_SCHED_CLOCK=y
|
|
CONFIG_GENERIC_SMP_IDLE_THREAD=y
|
|
CONFIG_GENERIC_STRNCPY_FROM_USER=y
|
|
CONFIG_GENERIC_STRNLEN_USER=y
|
|
CONFIG_GENERIC_TIME_VSYSCALL=y
|
|
CONFIG_GLOB=y
|
|
CONFIG_GPIOLIB_IRQCHIP=y
|
|
CONFIG_GPIO_CDEV=y
|
|
CONFIG_HARDIRQS_SW_RESEND=y
|
|
CONFIG_HAS_DMA=y
|
|
CONFIG_HAS_IOMEM=y
|
|
CONFIG_HAS_IOPORT=y
|
|
CONFIG_HAS_IOPORT_MAP=y
|
|
CONFIG_HWMON=y
|
|
CONFIG_HWSPINLOCK=y
|
|
CONFIG_HWSPINLOCK_QCOM=y
|
|
CONFIG_HW_RANDOM=y
|
|
CONFIG_I2C=y
|
|
CONFIG_I2C_BOARDINFO=y
|
|
CONFIG_I2C_CHARDEV=y
|
|
CONFIG_I2C_HELPER_AUTO=y
|
|
# CONFIG_I2C_QCOM_CCI is not set
|
|
CONFIG_I2C_QUP=y
|
|
CONFIG_IIO=y
|
|
CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
|
|
CONFIG_INITRAMFS_SOURCE=""
|
|
CONFIG_INTERCONNECT=y
|
|
CONFIG_INTERCONNECT_CLK=y
|
|
# CONFIG_INTERCONNECT_QCOM is not set
|
|
# CONFIG_IPQ_APSS_5424 is not set
|
|
CONFIG_IPQ_APSS_6018=y
|
|
CONFIG_IPQ_APSS_PLL=y
|
|
# CONFIG_IPQ_CMN_PLL is not set
|
|
# CONFIG_IPQ_GCC_4019 is not set
|
|
# CONFIG_IPQ_GCC_5018 is not set
|
|
# CONFIG_IPQ_GCC_5332 is not set
|
|
# CONFIG_IPQ_GCC_5424 is not set
|
|
# CONFIG_IPQ_GCC_6018 is not set
|
|
# CONFIG_IPQ_GCC_8074 is not set
|
|
# CONFIG_IPQ_GCC_9574 is not set
|
|
# CONFIG_IPQ_NSSCC_QCA8K is not set
|
|
CONFIG_IRQCHIP=y
|
|
CONFIG_IRQ_DOMAIN=y
|
|
CONFIG_IRQ_DOMAIN_HIERARCHY=y
|
|
CONFIG_IRQ_FASTEOI_HIERARCHY_HANDLERS=y
|
|
CONFIG_IRQ_FORCED_THREADING=y
|
|
CONFIG_IRQ_MSI_IOMMU=y
|
|
CONFIG_IRQ_MSI_LIB=y
|
|
CONFIG_IRQ_WORK=y
|
|
# CONFIG_KPSS_XCC is not set
|
|
CONFIG_LEDS_TLC591XX=y
|
|
CONFIG_LIBFDT=y
|
|
CONFIG_LOCK_DEBUGGING_SUPPORT=y
|
|
CONFIG_LOCK_SPIN_ON_OWNER=y
|
|
CONFIG_LRU_GEN_WALKS_MMU=y
|
|
CONFIG_LZO_COMPRESS=y
|
|
CONFIG_LZO_DECOMPRESS=y
|
|
CONFIG_MAILBOX=y
|
|
# CONFIG_MAILBOX_TEST is not set
|
|
CONFIG_MDIO_BUS=y
|
|
CONFIG_MDIO_IPQ4019=y
|
|
# CONFIG_MFD_QCOM_RPM is not set
|
|
CONFIG_MFD_SYSCON=y
|
|
CONFIG_MIGRATION=y
|
|
# CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY is not set
|
|
CONFIG_MMC=y
|
|
CONFIG_MMC_BLOCK=y
|
|
CONFIG_MMC_BLOCK_MINORS=32
|
|
CONFIG_MMC_CQHCI=y
|
|
CONFIG_MMC_SDHCI=y
|
|
CONFIG_MMC_SDHCI_IO_ACCESSORS=y
|
|
CONFIG_MMC_SDHCI_MSM=y
|
|
CONFIG_MMC_SDHCI_PLTFM=y
|
|
CONFIG_MMU_LAZY_TLB_REFCOUNT=y
|
|
CONFIG_MODULES_USE_ELF_RELA=y
|
|
# CONFIG_MSM_GCC_8916 is not set
|
|
# CONFIG_MSM_GCC_8917 is not set
|
|
# CONFIG_MSM_GCC_8939 is not set
|
|
# CONFIG_MSM_GCC_8976 is not set
|
|
# CONFIG_MSM_GCC_8994 is not set
|
|
# CONFIG_MSM_GCC_8996 is not set
|
|
# CONFIG_MSM_GCC_8998 is not set
|
|
# CONFIG_MSM_GPUCC_8998 is not set
|
|
# CONFIG_MSM_MMCC_8996 is not set
|
|
# CONFIG_MSM_MMCC_8998 is not set
|
|
CONFIG_MTD_NAND_CORE=y
|
|
CONFIG_MTD_NAND_ECC=y
|
|
CONFIG_MTD_NAND_ECC_SW_HAMMING=y
|
|
CONFIG_MTD_NAND_QCOM=y
|
|
CONFIG_MTD_QCOMSMEM_PARTS=y
|
|
CONFIG_MTD_RAW_NAND=y
|
|
CONFIG_MTD_SPI_NOR=y
|
|
CONFIG_MTD_UBI=y
|
|
CONFIG_MTD_UBI_BEB_LIMIT=20
|
|
CONFIG_MTD_UBI_BLOCK=y
|
|
CONFIG_MTD_UBI_WL_THRESHOLD=4096
|
|
CONFIG_MUTEX_SPIN_ON_OWNER=y
|
|
CONFIG_NEED_DMA_MAP_STATE=y
|
|
CONFIG_NEED_SG_DMA_LENGTH=y
|
|
CONFIG_NET_EGRESS=y
|
|
CONFIG_NET_FLOW_LIMIT=y
|
|
CONFIG_NET_INGRESS=y
|
|
CONFIG_NET_SELFTESTS=y
|
|
CONFIG_NET_XGRESS=y
|
|
CONFIG_NLS=y
|
|
CONFIG_NO_HZ_COMMON=y
|
|
CONFIG_NO_HZ_IDLE=y
|
|
CONFIG_NR_CPUS=4
|
|
# CONFIG_NSM is not set
|
|
CONFIG_NVMEM=y
|
|
CONFIG_NVMEM_BLOCK=y
|
|
CONFIG_NVMEM_LAYOUTS=y
|
|
CONFIG_NVMEM_LAYOUT_ASCII_ENV=y
|
|
CONFIG_NVMEM_LAYOUT_U_BOOT_ENV=y
|
|
CONFIG_NVMEM_QCOM_QFPROM=y
|
|
# CONFIG_NVMEM_QCOM_SEC_QFPROM is not set
|
|
CONFIG_NVMEM_SYSFS=y
|
|
CONFIG_OF=y
|
|
CONFIG_OF_ADDRESS=y
|
|
CONFIG_OF_EARLY_FLATTREE=y
|
|
CONFIG_OF_FLATTREE=y
|
|
CONFIG_OF_GPIO=y
|
|
CONFIG_OF_IRQ=y
|
|
CONFIG_OF_KOBJ=y
|
|
CONFIG_OF_MDIO=y
|
|
CONFIG_PADATA=y
|
|
CONFIG_PAGE_BLOCK_MAX_ORDER=10
|
|
CONFIG_PAGE_POOL=y
|
|
CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
|
|
CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
|
|
CONFIG_PARTITION_PERCPU=y
|
|
CONFIG_PCI=y
|
|
CONFIG_PCIEAER=y
|
|
CONFIG_PCIEASPM=y
|
|
CONFIG_PCIEASPM_DEFAULT=y
|
|
# CONFIG_PCIEASPM_PERFORMANCE is not set
|
|
# CONFIG_PCIEASPM_POWERSAVE is not set
|
|
# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
|
|
CONFIG_PCIEPORTBUS=y
|
|
CONFIG_PCIE_DW=y
|
|
# CONFIG_PCIE_DW_DEBUGFS is not set
|
|
CONFIG_PCIE_DW_HOST=y
|
|
CONFIG_PCIE_PME=y
|
|
CONFIG_PCIE_QCOM=y
|
|
CONFIG_PCIE_QCOM_COMMON=y
|
|
CONFIG_PCI_DOMAINS=y
|
|
CONFIG_PCI_DOMAINS_GENERIC=y
|
|
CONFIG_PCI_ECAM=y
|
|
CONFIG_PCI_HOST_COMMON=y
|
|
CONFIG_PCI_MSI=y
|
|
CONFIG_PCI_PWRCTRL=y
|
|
CONFIG_PCI_PWRCTRL_SLOT=y
|
|
# CONFIG_PCS_QCOM_IPQ9574 is not set
|
|
CONFIG_PER_VMA_LOCK=y
|
|
CONFIG_PGTABLE_LEVELS=3
|
|
CONFIG_PHYLIB=y
|
|
CONFIG_PHYLIB_LEDS=y
|
|
CONFIG_PHYS_ADDR_T_64BIT=y
|
|
CONFIG_PHY_PACKAGE=y
|
|
# CONFIG_PHY_QCOM_APQ8064_SATA is not set
|
|
# CONFIG_PHY_QCOM_EDP is not set
|
|
# CONFIG_PHY_QCOM_EUSB2_REPEATER is not set
|
|
# CONFIG_PHY_QCOM_IPQ4019_USB is not set
|
|
# CONFIG_PHY_QCOM_IPQ806X_SATA is not set
|
|
# CONFIG_PHY_QCOM_IPQ806X_USB is not set
|
|
# CONFIG_PHY_QCOM_M31_EUSB is not set
|
|
# CONFIG_PHY_QCOM_M31_USB is not set
|
|
# CONFIG_PHY_QCOM_PCIE2 is not set
|
|
CONFIG_PHY_QCOM_QMP=y
|
|
CONFIG_PHY_QCOM_QMP_COMBO=y
|
|
CONFIG_PHY_QCOM_QMP_PCIE=y
|
|
CONFIG_PHY_QCOM_QMP_PCIE_8996=y
|
|
CONFIG_PHY_QCOM_QMP_UFS=y
|
|
CONFIG_PHY_QCOM_QMP_USB=y
|
|
# CONFIG_PHY_QCOM_QMP_USB_LEGACY is not set
|
|
CONFIG_PHY_QCOM_QUSB2=y
|
|
# CONFIG_PHY_QCOM_SGMII_ETH is not set
|
|
# CONFIG_PHY_QCOM_UNIPHY_PCIE_28LP is not set
|
|
# CONFIG_PHY_QCOM_USB_HS_28NM is not set
|
|
# CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2 is not set
|
|
# CONFIG_PHY_QCOM_USB_SS is not set
|
|
# CONFIG_PHY_SNPS_EUSB2 is not set
|
|
CONFIG_PINCTRL=y
|
|
# CONFIG_PINCTRL_GLYMUR is not set
|
|
# CONFIG_PINCTRL_IPQ5018 is not set
|
|
# CONFIG_PINCTRL_IPQ5332 is not set
|
|
# CONFIG_PINCTRL_IPQ5424 is not set
|
|
# CONFIG_PINCTRL_IPQ6018 is not set
|
|
# CONFIG_PINCTRL_IPQ8074 is not set
|
|
# CONFIG_PINCTRL_IPQ9574 is not set
|
|
# CONFIG_PINCTRL_MILOS is not set
|
|
CONFIG_PINCTRL_MSM=y
|
|
# CONFIG_PINCTRL_MSM8916 is not set
|
|
# CONFIG_PINCTRL_MSM8917 is not set
|
|
# CONFIG_PINCTRL_MSM8976 is not set
|
|
# CONFIG_PINCTRL_MSM8994 is not set
|
|
# CONFIG_PINCTRL_MSM8996 is not set
|
|
# CONFIG_PINCTRL_MSM8998 is not set
|
|
# CONFIG_PINCTRL_QCM2290 is not set
|
|
# CONFIG_PINCTRL_QCOM_SSBI_PMIC is not set
|
|
# CONFIG_PINCTRL_QCS404 is not set
|
|
# CONFIG_PINCTRL_QCS615 is not set
|
|
# CONFIG_PINCTRL_QCS8300 is not set
|
|
# CONFIG_PINCTRL_QDU1000 is not set
|
|
# CONFIG_PINCTRL_SA8775P is not set
|
|
# CONFIG_PINCTRL_SAR2130P is not set
|
|
# CONFIG_PINCTRL_SC7180 is not set
|
|
# CONFIG_PINCTRL_SC8280XP is not set
|
|
# CONFIG_PINCTRL_SDM660 is not set
|
|
# CONFIG_PINCTRL_SDM670 is not set
|
|
# CONFIG_PINCTRL_SDM845 is not set
|
|
# CONFIG_PINCTRL_SDX75 is not set
|
|
# CONFIG_PINCTRL_SM4450 is not set
|
|
# CONFIG_PINCTRL_SM6350 is not set
|
|
# CONFIG_PINCTRL_SM6375 is not set
|
|
# CONFIG_PINCTRL_SM7150 is not set
|
|
# CONFIG_PINCTRL_SM8150 is not set
|
|
# CONFIG_PINCTRL_SM8250 is not set
|
|
# CONFIG_PINCTRL_SM8450 is not set
|
|
# CONFIG_PINCTRL_SM8550 is not set
|
|
# CONFIG_PINCTRL_SM8650 is not set
|
|
# CONFIG_PINCTRL_SM8750 is not set
|
|
# CONFIG_PINCTRL_X1E80100 is not set
|
|
CONFIG_PM=y
|
|
CONFIG_PM_CLK=y
|
|
CONFIG_PM_OPP=y
|
|
CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
|
|
CONFIG_POWER_RESET=y
|
|
# CONFIG_POWER_RESET_MSM is not set
|
|
CONFIG_POWER_SUPPLY=y
|
|
CONFIG_PRINTK_TIME=y
|
|
CONFIG_PTP_1588_CLOCK_OPTIONAL=y
|
|
CONFIG_PWM=y
|
|
CONFIG_PWM_IPQ=y
|
|
CONFIG_QCA807X_PHY=y
|
|
CONFIG_QCA808X_PHY=y
|
|
# CONFIG_QCM_DISPCC_2290 is not set
|
|
# CONFIG_QCM_GCC_2290 is not set
|
|
# CONFIG_QCOM_A53PLL is not set
|
|
# CONFIG_QCOM_AOSS_QMP is not set
|
|
CONFIG_QCOM_APCS_IPC=y
|
|
# CONFIG_QCOM_APR is not set
|
|
CONFIG_QCOM_BAM_DMA=y
|
|
# CONFIG_QCOM_CLK_APCC_MSM8996 is not set
|
|
# CONFIG_QCOM_CLK_APCS_MSM8916 is not set
|
|
# CONFIG_QCOM_COMMAND_DB is not set
|
|
# CONFIG_QCOM_CPR is not set
|
|
# CONFIG_QCOM_CPUCP_MBOX is not set
|
|
# CONFIG_QCOM_EBI2 is not set
|
|
# CONFIG_QCOM_FASTRPC is not set
|
|
# CONFIG_QCOM_GENI_SE is not set
|
|
# CONFIG_QCOM_GSBI is not set
|
|
# CONFIG_QCOM_HFPLL is not set
|
|
# CONFIG_QCOM_ICC_BWMON is not set
|
|
# CONFIG_QCOM_IPA is not set
|
|
# CONFIG_QCOM_IPCC is not set
|
|
# CONFIG_QCOM_LLCC is not set
|
|
CONFIG_QCOM_MDT_LOADER=y
|
|
# CONFIG_QCOM_MPM is not set
|
|
CONFIG_QCOM_NET_PHYLIB=y
|
|
# CONFIG_QCOM_OCMEM is not set
|
|
# CONFIG_QCOM_PDC is not set
|
|
CONFIG_QCOM_PIL_INFO=y
|
|
# CONFIG_QCOM_PPE is not set
|
|
# CONFIG_QCOM_Q6V5_ADSP is not set
|
|
CONFIG_QCOM_Q6V5_COMMON=y
|
|
# CONFIG_QCOM_Q6V5_MSS is not set
|
|
# CONFIG_QCOM_Q6V5_PAS is not set
|
|
CONFIG_QCOM_Q6V5_WCSS=y
|
|
# CONFIG_QCOM_QSEECOM is not set
|
|
# CONFIG_QCOM_RAMP_CTRL is not set
|
|
# CONFIG_QCOM_RMTFS_MEM is not set
|
|
# CONFIG_QCOM_RPMH is not set
|
|
# CONFIG_QCOM_RPM_MASTER_STATS is not set
|
|
CONFIG_QCOM_RPROC_COMMON=y
|
|
CONFIG_QCOM_SCM=y
|
|
# CONFIG_QCOM_SMD_RPM is not set
|
|
CONFIG_QCOM_SMEM=y
|
|
CONFIG_QCOM_SMEM_STATE=y
|
|
CONFIG_QCOM_SMP2P=y
|
|
# CONFIG_QCOM_SMSM is not set
|
|
CONFIG_QCOM_SOCINFO=y
|
|
# CONFIG_QCOM_SPM is not set
|
|
# CONFIG_QCOM_STATS is not set
|
|
# CONFIG_QCOM_SYSMON is not set
|
|
CONFIG_QCOM_TSENS=y
|
|
CONFIG_QCOM_TZMEM=y
|
|
CONFIG_QCOM_TZMEM_MODE_GENERIC=y
|
|
# CONFIG_QCOM_TZMEM_MODE_SHMBRIDGE is not set
|
|
# CONFIG_QCOM_WCNSS_CTRL is not set
|
|
# CONFIG_QCOM_WCNSS_PIL is not set
|
|
CONFIG_QCOM_WDT=y
|
|
# CONFIG_QCS_CAMCC_615 is not set
|
|
# CONFIG_QCS_DISPCC_615 is not set
|
|
# CONFIG_QCS_GCC_404 is not set
|
|
# CONFIG_QCS_GCC_615 is not set
|
|
# CONFIG_QCS_GCC_8300 is not set
|
|
# CONFIG_QCS_GPUCC_615 is not set
|
|
# CONFIG_QCS_Q6SSTOP_404 is not set
|
|
# CONFIG_QCS_TURING_404 is not set
|
|
# CONFIG_QCS_VIDEOCC_615 is not set
|
|
# CONFIG_QDU_ECPRICC_1000 is not set
|
|
# CONFIG_QDU_GCC_1000 is not set
|
|
CONFIG_QUEUED_RWLOCKS=y
|
|
CONFIG_QUEUED_SPINLOCKS=y
|
|
CONFIG_RANDSTRUCT_NONE=y
|
|
CONFIG_RAS=y
|
|
CONFIG_RATIONAL=y
|
|
CONFIG_REGMAP=y
|
|
CONFIG_REGMAP_I2C=y
|
|
CONFIG_REGMAP_MMIO=y
|
|
CONFIG_REGULATOR=y
|
|
CONFIG_REGULATOR_FIXED_VOLTAGE=y
|
|
# CONFIG_REGULATOR_VQMMC_IPQ4019 is not set
|
|
CONFIG_RELOCATABLE=y
|
|
CONFIG_REMOTEPROC=y
|
|
CONFIG_REMOTEPROC_CDEV=y
|
|
CONFIG_RESET_CONTROLLER=y
|
|
# CONFIG_RESET_QCOM_AOSS is not set
|
|
# CONFIG_RESET_QCOM_PDC is not set
|
|
CONFIG_RFS_ACCEL=y
|
|
CONFIG_RPMSG=y
|
|
CONFIG_RPMSG_CHAR=y
|
|
# CONFIG_RPMSG_CTRL is not set
|
|
# CONFIG_RPMSG_NS is not set
|
|
CONFIG_RPMSG_QCOM_GLINK=y
|
|
CONFIG_RPMSG_QCOM_GLINK_RPM=y
|
|
CONFIG_RPMSG_QCOM_GLINK_SMEM=y
|
|
CONFIG_RPMSG_QCOM_SMD=y
|
|
# CONFIG_RPMSG_TTY is not set
|
|
CONFIG_RPS=y
|
|
CONFIG_RTC_CLASS=y
|
|
CONFIG_RTC_I2C_AND_SPI=y
|
|
CONFIG_RWSEM_SPIN_ON_OWNER=y
|
|
# CONFIG_SAR_GCC_2130P is not set
|
|
# CONFIG_SAR_GPUCC_2130P is not set
|
|
# CONFIG_SA_CAMCC_8775P is not set
|
|
# CONFIG_SA_DISPCC_8775P is not set
|
|
# CONFIG_SA_GCC_8775P is not set
|
|
# CONFIG_SA_GPUCC_8775P is not set
|
|
# CONFIG_SA_VIDEOCC_8775P is not set
|
|
# CONFIG_SCHED_CORE is not set
|
|
CONFIG_SCHED_HW_PRESSURE=y
|
|
CONFIG_SCHED_MC=y
|
|
CONFIG_SCHED_SMT=y
|
|
CONFIG_SCSI=y
|
|
CONFIG_SCSI_COMMON=y
|
|
# CONFIG_SCSI_LOWLEVEL is not set
|
|
# CONFIG_SCSI_PROC_FS is not set
|
|
# CONFIG_SC_CAMCC_7280 is not set
|
|
# CONFIG_SC_CAMCC_8180X is not set
|
|
# CONFIG_SC_CAMCC_8280XP is not set
|
|
# CONFIG_SC_DISPCC_7180 is not set
|
|
# CONFIG_SC_DISPCC_8280XP is not set
|
|
# CONFIG_SC_GCC_7180 is not set
|
|
# CONFIG_SC_GCC_8280XP is not set
|
|
# CONFIG_SC_GPUCC_7180 is not set
|
|
# CONFIG_SC_LPASSCC_7280 is not set
|
|
# CONFIG_SC_LPASSCC_8280XP is not set
|
|
# CONFIG_SC_LPASS_CORECC_7180 is not set
|
|
# CONFIG_SC_LPASS_CORECC_7280 is not set
|
|
# CONFIG_SC_VIDEOCC_7180 is not set
|
|
# CONFIG_SDM_CAMCC_845 is not set
|
|
# CONFIG_SDM_DISPCC_845 is not set
|
|
# CONFIG_SDM_GCC_660 is not set
|
|
# CONFIG_SDM_GCC_845 is not set
|
|
# CONFIG_SDM_GPUCC_845 is not set
|
|
# CONFIG_SDM_LPASSCC_845 is not set
|
|
# CONFIG_SDM_VIDEOCC_845 is not set
|
|
# CONFIG_SDX_GCC_75 is not set
|
|
CONFIG_SERIAL_8250_FSL=y
|
|
CONFIG_SERIAL_MCTRL_GPIO=y
|
|
CONFIG_SERIAL_MSM=y
|
|
CONFIG_SERIAL_MSM_CONSOLE=y
|
|
CONFIG_SG_POOL=y
|
|
CONFIG_SMP=y
|
|
# CONFIG_SM_CAMCC_4450 is not set
|
|
# CONFIG_SM_CAMCC_6350 is not set
|
|
# CONFIG_SM_CAMCC_7150 is not set
|
|
# CONFIG_SM_CAMCC_8150 is not set
|
|
# CONFIG_SM_CAMCC_8450 is not set
|
|
# CONFIG_SM_CAMCC_8550 is not set
|
|
# CONFIG_SM_CAMCC_8650 is not set
|
|
# CONFIG_SM_CAMCC_MILOS is not set
|
|
# CONFIG_SM_GCC_4450 is not set
|
|
# CONFIG_SM_GCC_7150 is not set
|
|
# CONFIG_SM_GCC_8150 is not set
|
|
# CONFIG_SM_GCC_8250 is not set
|
|
# CONFIG_SM_GCC_8450 is not set
|
|
# CONFIG_SM_GCC_8550 is not set
|
|
# CONFIG_SM_GCC_8650 is not set
|
|
# CONFIG_SM_GCC_8750 is not set
|
|
# CONFIG_SM_GCC_MILOS is not set
|
|
# CONFIG_SM_GPUCC_4450 is not set
|
|
# CONFIG_SM_GPUCC_6115 is not set
|
|
# CONFIG_SM_GPUCC_6125 is not set
|
|
# CONFIG_SM_GPUCC_6350 is not set
|
|
# CONFIG_SM_GPUCC_6375 is not set
|
|
# CONFIG_SM_GPUCC_8150 is not set
|
|
# CONFIG_SM_GPUCC_8250 is not set
|
|
# CONFIG_SM_GPUCC_8350 is not set
|
|
# CONFIG_SM_GPUCC_8450 is not set
|
|
# CONFIG_SM_GPUCC_8550 is not set
|
|
# CONFIG_SM_GPUCC_8650 is not set
|
|
# CONFIG_SM_GPUCC_MILOS is not set
|
|
# CONFIG_SM_LPASSCC_6115 is not set
|
|
# CONFIG_SM_TCSRCC_8550 is not set
|
|
# CONFIG_SM_TCSRCC_8650 is not set
|
|
# CONFIG_SM_TCSRCC_8750 is not set
|
|
# CONFIG_SM_VIDEOCC_6350 is not set
|
|
# CONFIG_SM_VIDEOCC_7150 is not set
|
|
# CONFIG_SM_VIDEOCC_8150 is not set
|
|
# CONFIG_SM_VIDEOCC_8250 is not set
|
|
# CONFIG_SM_VIDEOCC_8350 is not set
|
|
# CONFIG_SM_VIDEOCC_8450 is not set
|
|
# CONFIG_SM_VIDEOCC_8550 is not set
|
|
# CONFIG_SM_VIDEOCC_MILOS is not set
|
|
CONFIG_SOCK_RX_QUEUE_MAPPING=y
|
|
CONFIG_SOC_BUS=y
|
|
CONFIG_SOFTIRQ_ON_OWN_STACK=y
|
|
CONFIG_SPARSEMEM=y
|
|
CONFIG_SPARSEMEM_EXTREME=y
|
|
CONFIG_SPARSEMEM_VMEMMAP=y
|
|
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
|
|
CONFIG_SPARSE_IRQ=y
|
|
CONFIG_SPI=y
|
|
CONFIG_SPI_MASTER=y
|
|
CONFIG_SPI_MEM=y
|
|
# CONFIG_SPI_QPIC_SNAND is not set
|
|
CONFIG_SPI_QUP=y
|
|
CONFIG_SPLIT_PMD_PTLOCKS=y
|
|
CONFIG_SPLIT_PTE_PTLOCKS=y
|
|
CONFIG_SWIOTLB=y
|
|
CONFIG_SWPHY=y
|
|
CONFIG_SYSCTL_EXCEPTION_TRACE=y
|
|
CONFIG_THERMAL=y
|
|
CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
|
|
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
|
|
CONFIG_THERMAL_GOV_STEP_WISE=y
|
|
CONFIG_THERMAL_HWMON=y
|
|
CONFIG_THERMAL_OF=y
|
|
CONFIG_THREAD_INFO_IN_TASK=y
|
|
CONFIG_TICK_CPU_ACCOUNTING=y
|
|
CONFIG_TIMER_OF=y
|
|
CONFIG_TIMER_PROBE=y
|
|
CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
|
|
CONFIG_TREE_RCU=y
|
|
CONFIG_TREE_SRCU=y
|
|
CONFIG_UBIFS_FS=y
|
|
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
|
|
# CONFIG_UCLAMP_TASK is not set
|
|
CONFIG_UNMAP_KERNEL_AT_EL0=y
|
|
CONFIG_USB=y
|
|
CONFIG_USB_COMMON=y
|
|
CONFIG_USB_SUPPORT=y
|
|
CONFIG_USER_STACKTRACE_SUPPORT=y
|
|
CONFIG_VDSO_GETRANDOM=y
|
|
CONFIG_VIRTIO=y
|
|
CONFIG_VIRTIO_ANCHOR=y
|
|
# CONFIG_VIRTIO_BLK is not set
|
|
# CONFIG_VIRTIO_DEBUG is not set
|
|
# CONFIG_VIRTIO_NET is not set
|
|
CONFIG_VMAP_STACK=y
|
|
CONFIG_WANT_DEV_COREDUMP=y
|
|
CONFIG_WATCHDOG_CORE=y
|
|
CONFIG_WATCHDOG_SYSFS=y
|
|
CONFIG_XPS=y
|
|
CONFIG_XXHASH=y
|
|
CONFIG_ZLIB_DEFLATE=y
|
|
CONFIG_ZLIB_INFLATE=y
|
|
CONFIG_ZONE_DMA32=y
|
|
CONFIG_ZSTD_COMMON=y
|
|
CONFIG_ZSTD_COMPRESS=y
|
|
CONFIG_ZSTD_DECOMPRESS=y
|