Skip to content

Commit

Permalink
Merge pull request #574 from lumag/qcom-yocto-armv7a
Browse files Browse the repository at this point in the history
linux-yocto: initial support for qcom-armv7a machine
  • Loading branch information
lumag authored Feb 8, 2024
2 parents 0e58b10 + 40dfce9 commit d726797
Show file tree
Hide file tree
Showing 9 changed files with 286 additions and 1 deletion.
19 changes: 19 additions & 0 deletions recipes-kernel/linux/linux-yocto/bsp/qcom-armv7a/qcom-apq8064.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: MIT

CONFIG_ARCH_MSM8960=y
CONFIG_MSM_GCC_8960=y
CONFIG_MSM_LCC_8960=y
CONFIG_MSM_MMCC_8960=y
CONFIG_PINCTRL_APQ8064=y

CONFIG_PHY_QCOM_APQ8064_SATA=y

CONFIG_QCOM_CLK_RPM=y
CONFIG_REGULATOR_QCOM_RPM=y
CONFIG_RPMSG_QCOM_GLINK_RPM=y
CONFIG_RPMSG_QCOM_GLINK_SMEM=y

# legacy boards
CONFIG_RPMSG_QCOM_SMD=y

CONFIG_MSM_IOMMU=y
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# SPDX-License-Identifier: MIT

#kconf hardware qcom-rpm.cfg
kconf hardware qcom-apq8064.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# SPDX-License-Identifier: MIT

define KMACHINE qcom-armv7a
define KTYPE standard
define KARCH arm

include ktypes/standard/standard.scc nocfg
branch qcom-armv7a

include qcom-armv7a.scc

#include features/bluetooth/bluetooth.scc
include features/cgroups/cgroups.scc
include features/transparent-hugepage/transparent-hugepage.cfg
include features/usb-net/usb-net.scc

include cfg/fs/devtmpfs.scc
include cfg/fs/debugfs.scc
include cfg/fs/ext2.scc
include cfg/fs/ext4.scc
include cfg/fs/vfat.scc

include cfg/timer/no_hz.scc

#kconf hardware qcom-extra.cfg
19 changes: 19 additions & 0 deletions recipes-kernel/linux/linux-yocto/bsp/qcom-armv7a/qcom-armv7a.scc
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: MIT

kconf hardware qcom.cfg

include qcom-apq8064.scc
#include qcom-msm8974.scc

include features/i2c/i2c.scc
include features/hrt/hrt.scc
include features/net/net.scc
include features/pci/pci.scc
include features/power/arm.scc
include features/spi/spi.scc
include features/usb/usb-base.scc
include features/leds/leds.scc
include features/pwm/pwm.scc

include cfg/timer/rtc.scc
include cfg/dmaengine.scc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# SPDX-License-Identifier: MIT

CONFIG_ARCH_MSM8974=y
CONFIG_MSM_GCC_8974=y
CONFIG_MSM_MMCC_8974=y
CONFIG_INTERCONNECT_QCOM_MSM8974=y
CONFIG_PINCTRL_MSM8X74=y

CONFIG_EXTCON_QCOM_SPMI_MISC=y
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# SPDX-License-Identifier: MIT

kconf hardware qcom-rpm.cfg
kconf hardware qcom-msm8974.cfg
204 changes: 204 additions & 0 deletions recipes-kernel/linux/linux-yocto/bsp/qcom-armv7a/qcom.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,204 @@
# SPDX-License-Identifier: MIT

CONFIG_ARCH_QCOM=y
CONFIG_ARM_QCOM_CPUFREQ_NVMEM=y
CONFIG_CMA=y
CONFIG_DMA_CMA=y
CONFIG_ARM_THUMBEE=y
CONFIG_VFP=y
CONFIG_NEON=y
CONFIG_VDSO=y

CONFIG_SMP=y
CONFIG_SCHED_MC=y

CONFIG_ARM_APPENDED_DTB=y
CONFIG_ARM_ATAG_DTB_COMPAT=y

# CONFIG_ARM_CPUIDLE is not set
CONFIG_ARM_QCOM_SPM_CPUIDLE=y

CONFIG_QCOM_SMSM=y

CONFIG_QRTR=y
CONFIG_QRTR_SMD=y
CONFIG_QRTR_MHI=m

CONFIG_BT=m
CONFIG_BT_HCIUART=m
CONFIG_BT_HCIUART_QCA=y

CONFIG_COMMON_CLK_QCOM=y
CONFIG_KRAITCC=y
CONFIG_KPSS_XCC=y

CONFIG_QCOM_GSBI=y

CONFIG_CRYPTO_DEV_QCE=m
CONFIG_CRYPTO_DEV_QCOM_RNG=y

CONFIG_HWSPINLOCK=y
CONFIG_HWSPINLOCK_QCOM=y

CONFIG_INTERCONNECT=y
CONFIG_INTERCONNECT_QCOM=y

CONFIG_MAILBOX=y

CONFIG_MHI_BUS=m

CONFIG_NVMEM=y
CONFIG_NVMEM_QCOM_QFPROM=y

CONFIG_PCIE_QCOM=y

CONFIG_PINCTRL_MSM=y
CONFIG_PINCTRL_QCOM_SPMI_PMIC=y
CONFIG_PINCTRL_QCOM_SSBI_PMIC=y

CONFIG_QCOM_Q6V5_ADSP=m
CONFIG_QCOM_Q6V5_MSS=m
CONFIG_QCOM_Q6V5_PAS=m
CONFIG_QCOM_SYSMON=m
CONFIG_QCOM_Q6V5_WCSS=m
CONFIG_QCOM_WCNSS_PIL=m

CONFIG_REMOTEPROC=y

CONFIG_QCOM_APR=m
CONFIG_QCOM_FASTRPC=m
CONFIG_QCOM_IPA=m
CONFIG_QCOM_SMEM=y
CONFIG_QCOM_ICC_BWMON=y

CONFIG_SERIAL_DEV_BUS=y

CONFIG_SOUND=m
CONFIG_SND=m
CONFIG_SND_SOC=m
CONFIG_SND_SOC_QCOM=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SOUNDWIRE=m
CONFIG_SOUNDWIRE_QCOM=m

# CONFIG_MOUSE_PS2 is not set
# CONFIG_KEYBOARD_ATKBD is not set
CONFIG_KEYBOARD_GPIO=y
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PM8941_PWRKEY=y
CONFIG_INPUT_PMIC8XXX_PWRKEY=y
CONFIG_SERIAL_MSM=y
CONFIG_SERIAL_MSM_CONSOLE=y

CONFIG_I2C_QUP=y
CONFIG_SPI_QUP=y

CONFIG_MFD_PM8XXX=y
CONFIG_MFD_QCOM_RPM=y

CONFIG_SPMI=y
CONFIG_SPMI_MSM_PMIC_ARB=y
CONFIG_MFD_SPMI_PMIC=y

CONFIG_POWER_RESET=y
CONFIG_POWER_RESET_MSM=y
CONFIG_POWER_RESET_QCOM_PON=y
CONFIG_REBOOT_MODE=y

CONFIG_IIO=y
CONFIG_QCOM_SPMI_IADC=m

CONFIG_THERMAL=y
CONFIG_THERMAL_HWMON=y
CONFIG_PM_DEVFREQ=y
CONFIG_DEVFREQ_THERMAL=y
CONFIG_QCOM_TSENS=y
CONFIG_QCOM_SPMI_ADC_TM5=m

CONFIG_WATCHDOG_CORE=y
CONFIG_QCOM_WDT=y

CONFIG_SLIMBUS=m

CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_QCOM_SPMI=y
CONFIG_REGULATOR_QCOM_USB_VBUS=y

CONFIG_DRM=y
CONFIG_DRM_MSM=y
CONFIG_DRM_MSM_MDP4=y
CONFIG_DRM_MSM_MDP5=y
# CONFIG_DRM_MSM_DPU is not set
# CONFIG_DRM_MSM_DP is not set
CONFIG_DRM_MSM_DSI=y
CONFIG_DRM_MSM_DSI_28NM_PHY=y
CONFIG_DRM_MSM_DSI_20NM_PHY=y
CONFIG_DRM_MSM_DSI_28NM_8960_PHY=y
# CONFIG_DRM_MSM_DSI_14NM_PHY is not set
# CONFIG_DRM_MSM_DSI_10NM_PHY is not set
# CONFIG_DRM_MSM_DSI_7NM_PHY is not set
CONFIG_DRM_MSM_HDMI=y
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_DISPLAY_CONNECTOR=y

CONFIG_BACKLIGHT_CLASS_DEVICE=y

CONFIG_FB=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_LOGO=y

CONFIG_EXTCON=y

CONFIG_USB_GADGET=y
CONFIG_USB_CONFIGFS=y
CONFIG_USB_CONFIGFS_F_FS=y

CONFIG_USB_XHCI_HCD=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_CHIPIDEA=y
CONFIG_USB_CHIPIDEA_UDC=y
CONFIG_USB_CHIPIDEA_HOST=y
CONFIG_USB_CHIPIDEA_MSM=y

CONFIG_USB_DWC3=y


CONFIG_MMC=y
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_PLTFM=y
CONFIG_MMC_SDHCI_MSM=y

CONFIG_CFG80211=m
CONFIG_MAC80211=m
CONFIG_CRYPTO_MICHAEL_MIC=m

CONFIG_LEDS_CLASS_MULTICOLOR=y
CONFIG_LEDS_QCOM_LPG=y

CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
CONFIG_RTC_DRV_PM8XXX=y

CONFIG_QCOM_BAM_DMA=y
CONFIG_QCOM_LLCC=y
CONFIG_QCOM_OCMEM=y
CONFIG_QCOM_RMTFS_MEM=y
CONFIG_QCOM_SOCINFO=y
CONFIG_QCOM_SPM=y
CONFIG_QCOM_STATS=y
CONFIG_QCOM_WCNSS_CTRL=m
CONFIG_QCOM_SMP2P=y

CONFIG_RESET_QCOM_PDC=y

CONFIG_QCOM_PM8XXX_XOADC=y

CONFIG_GENERIC_PHY=y
CONFIG_PHY_QCOM_QMP=y
# CONFIG_PHY_QCOM_QMP_PCIE is not set
# CONFIG_PHY_QCOM_QMP_UFS is not set
CONFIG_PHY_QCOM_QMP_USB=y
CONFIG_PHY_QCOM_USB_HS=y

CONFIG_SLIM_QCOM_CTRL=m
CONFIG_SLIM_QCOM_NGD_CTRL=m
2 changes: 1 addition & 1 deletion recipes-kernel/linux/linux-yocto_%.bbappend
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# do not override KBRANCH and SRCREV_machine, use default ones.
COMPATIBLE_MACHINE:qcom = "qcom-armv8a"
COMPATIBLE_MACHINE:qcom = "qcom-armv8a|qcom-armv7a"

FILESEXTRAPATHS:prepend:qcom := "${THISDIR}/${PN}:"

Expand Down

0 comments on commit d726797

Please sign in to comment.