This patch is to enable axxiaarm and axxiaarm64 support in 6.6 kernel to support board AXM55XX and AXM56XX.
Signed-off-by: Liwei Song <liwei.s...@windriver.com> --- bsp/axxiaarm/axxia-common.cfg | 98 +++++++++++++++++++++ bsp/axxiaarm/axxiaarm-preempt-rt.scc | 7 ++ bsp/axxiaarm/axxiaarm-standard.scc | 7 ++ bsp/axxiaarm/axxiaarm.cfg | 107 +++++++++++++++++++++++ bsp/axxiaarm/axxiaarm.scc | 12 +++ bsp/axxiaarm/edac.cfg | 17 ++++ bsp/axxiaarm/edac.scc | 4 + bsp/axxiaarm/rapidio.cfg | 26 ++++++ bsp/axxiaarm/rapidio.scc | 4 + bsp/axxiaarm64/axxiaarm64-preempt-rt.scc | 7 ++ bsp/axxiaarm64/axxiaarm64-standard.scc | 7 ++ bsp/axxiaarm64/axxiaarm64.cfg | 83 ++++++++++++++++++ bsp/axxiaarm64/axxiaarm64.scc | 10 +++ bsp/axxiaarm64/edac.cfg | 18 ++++ bsp/axxiaarm64/edac.scc | 4 + 15 files changed, 411 insertions(+) create mode 100644 bsp/axxiaarm/axxia-common.cfg create mode 100644 bsp/axxiaarm/axxiaarm-preempt-rt.scc create mode 100644 bsp/axxiaarm/axxiaarm-standard.scc create mode 100644 bsp/axxiaarm/axxiaarm.cfg create mode 100644 bsp/axxiaarm/axxiaarm.scc create mode 100644 bsp/axxiaarm/edac.cfg create mode 100644 bsp/axxiaarm/edac.scc create mode 100644 bsp/axxiaarm/rapidio.cfg create mode 100644 bsp/axxiaarm/rapidio.scc create mode 100644 bsp/axxiaarm64/axxiaarm64-preempt-rt.scc create mode 100644 bsp/axxiaarm64/axxiaarm64-standard.scc create mode 100644 bsp/axxiaarm64/axxiaarm64.cfg create mode 100644 bsp/axxiaarm64/axxiaarm64.scc create mode 100644 bsp/axxiaarm64/edac.cfg create mode 100644 bsp/axxiaarm64/edac.scc diff --git a/bsp/axxiaarm/axxia-common.cfg b/bsp/axxiaarm/axxia-common.cfg new file mode 100644 index 000000000000..8d311914a36e --- /dev/null +++ b/bsp/axxiaarm/axxia-common.cfg @@ -0,0 +1,98 @@ +CONFIG_ARCH_AXXIA=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARM_ARCH_TIMER=y +CONFIG_PROFILING=y + +# +# Bus support +# +CONFIG_ARM_AMBA=y +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_SYSCALL=y +CONFIG_PCI_MSI=y + + +CONFIG_MTD=y +CONFIG_MTD_OF_PARTS=y +# +# Self-contained MTD device drivers +# +CONFIG_MTD_SPI_NOR=y + +# +# Generic Driver Options +# +CONFIG_FW_LOADER=y +CONFIG_REGMAP=y +CONFIG_REGMAP_MMIO=y + + +# +# Misc devices +# +CONFIG_AXXIA_MTC=y +CONFIG_ARCH_AXXIA_NCR_RESET_CHECK=y +CONFIG_AXXIA_NCR=y +CONFIG_AXXIA_FAULT=y +CONFIG_AXXIA_MDIO=y + +# +# Non-8250 serial port support +# +CONFIG_SERIAL_AMBA_PL011=y +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_AXXIA=y +CONFIG_I2C=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MUX=y +CONFIG_I2C_AXXIA=y + +CONFIG_SPI=y +CONFIG_SPI_PL022=y +CONFIG_SPI_SPIDEV=y + +CONFIG_ATA=y +# +# Hardware I/O ports +# +CONFIG_SERIO_AMBAKMI=y + +# +# EEPROM support +# +CONFIG_EEPROM_AT24=y + +# +# MMC/SD/SDIO Card Drivers +# +CONFIG_MMC=y +CONFIG_MMC_ARMMMCI=y +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MMC_SPI=y + +# +# DMA Devices +# +CONFIG_DMADEVICES=y +CONFIG_AXXIA_DMA=y + +# +# Multifunction device drivers +# +CONFIG_MFD_SYSCON=y + +# +# Memory mapped GPIO drivers: +# +CONFIG_GPIOLIB=y +CONFIG_GPIO_AXXIA=y +CONFIG_GPIO_GENERIC_PLATFORM=y + +# +# Sensors +# +CONFIG_SENSORS_ADT7475=y diff --git a/bsp/axxiaarm/axxiaarm-preempt-rt.scc b/bsp/axxiaarm/axxiaarm-preempt-rt.scc new file mode 100644 index 000000000000..642936478445 --- /dev/null +++ b/bsp/axxiaarm/axxiaarm-preempt-rt.scc @@ -0,0 +1,7 @@ +define KMACHINE axxiaarm +define KTYPE preempt-rt +define KARCH arm + +include ktypes/preempt-rt + +include axxiaarm.scc diff --git a/bsp/axxiaarm/axxiaarm-standard.scc b/bsp/axxiaarm/axxiaarm-standard.scc new file mode 100644 index 000000000000..a18c4eb78881 --- /dev/null +++ b/bsp/axxiaarm/axxiaarm-standard.scc @@ -0,0 +1,7 @@ +define KMACHINE axxiaarm +define KTYPE standard +define KARCH arm + +include ktypes/standard + +include axxiaarm.scc diff --git a/bsp/axxiaarm/axxiaarm.cfg b/bsp/axxiaarm/axxiaarm.cfg new file mode 100644 index 000000000000..cfdb9eda5ad3 --- /dev/null +++ b/bsp/axxiaarm/axxiaarm.cfg @@ -0,0 +1,107 @@ +#......................................................................... +# WARNING +# +# This file is a kernel configuration fragment, and not a full kernel +# configuration file. The final kernel configuration is made up of +# an assembly of processed fragments, each of which is designed to +# capture a specific part of the final configuration (e.g. platform +# configuration, feature configuration, and board specific hardware +# configuration). For more information on kernel configuration, please +# consult the product documentation. +# +#......................................................................... + +# +# Axxia platform type +# +CONFIG_ARCH_AXXIA_GIC=y +CONFIG_ARCH_AXXIA_DT=y +CONFIG_ARM_TIMER_SP804=y + +# +# Processor Features +# +CONFIG_ARM_LPAE=y +CONFIG_SWP_EMULATE=y +CONFIG_OUTER_CACHE=y +CONFIG_OUTER_CACHE_SYNC=y +CONFIG_MIGHT_HAVE_CACHE_L2X0=y +CONFIG_CACHE_L2X0=y + +CONFIG_ARM_ERRATA_798181=y +CONFIG_PL310_ERRATA_588369=y +CONFIG_PL310_ERRATA_727915=y +CONFIG_PL310_ERRATA_753970=y +CONFIG_PL310_ERRATA_769419=y + +# +# Kernel Features +# +CONFIG_SMP=y +CONFIG_HAVE_ARM_ARCH_TIMER=y +CONFIG_HIGHMEM=y +CONFIG_NR_CPUS=16 +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set + +# +# Boot options +# +CONFIG_ARM_APPENDED_DTB=y +CONFIG_ZBOOT_ROM_TEXT=0x0 +CONFIG_ZBOOT_ROM_BSS=0x0 + +# +# At least one emulation must be selected +# +CONFIG_VFP=y +CONFIG_NEON=y + +CONFIG_WATCHDOG=y +CONFIG_ARM_SP805_WATCHDOG=y + +# +# Distributed Switch Architecture drivers +# +CONFIG_ETHERNET=y +CONFIG_AXXIA_NET=y +CONFIG_AXXIA_NET_NUM_RX_DESC=32 +CONFIG_AXXIA_NET_RX_BUF_SZ=131072 +CONFIG_AXXIA_NET_NUM_TX_DESC=32 +CONFIG_AXXIA_NET_TX_BUF_SZ=131072 +CONFIG_SMC91X=y + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=y +CONFIG_DP83640_PHY=y +CONFIG_NETWORK_PHY_TIMESTAMPING=y + +# +# USB GPIO expanders: +# +CONFIG_HWMON_VID=y + +# +# Native drivers +# +CONFIG_SENSORS_JC42=y +CONFIG_PMBUS=y +CONFIG_SENSORS_LTC2978=y + + +# +# USB Host Controller Drivers +# +CONFIG_USB_CI13612_HCD=y + +# +# DMA Devices +# +CONFIG_PL330_DMA=y + +# +# Hardware Spinlock drivers +# +CONFIG_MAILBOX=y +CONFIG_PL320_MBOX=y diff --git a/bsp/axxiaarm/axxiaarm.scc b/bsp/axxiaarm/axxiaarm.scc new file mode 100644 index 000000000000..c0c5f8365716 --- /dev/null +++ b/bsp/axxiaarm/axxiaarm.scc @@ -0,0 +1,12 @@ +# Core arm configuration settings +include arch/arm/arm.scc nopatch + +include features/usb/ehci-hcd.scc +include features/hugetlb/hugetlb.scc +include cfg/usb-mass-storage.scc + +include rapidio.scc +include edac.scc + +kconf hardware axxia-common.cfg +kconf hardware axxiaarm.cfg diff --git a/bsp/axxiaarm/edac.cfg b/bsp/axxiaarm/edac.cfg new file mode 100644 index 000000000000..ffbaadd47913 --- /dev/null +++ b/bsp/axxiaarm/edac.cfg @@ -0,0 +1,17 @@ +#......................................................................... +# WARNING +# +# This file is a kernel configuration fragment, and not a full kernel +# configuration file. The final kernel configuration is made up of +# an assembly of processed fragments, each of which is designed to +# capture a specific part of the final configuration (e.g. platform +# configuration, feature configuration, and board specific hardware +# configuration). For more information on kernel configuration, please +# consult the product documentation. +# +#......................................................................... + +CONFIG_EDAC=y +CONFIG_EDAC_AXXIA_SYSMEM_5500=y +CONFIG_EDAC_AXXIA_L3_5500=y +CONFIG_EDAC_AXXIA_L2_CPU_5500=y diff --git a/bsp/axxiaarm/edac.scc b/bsp/axxiaarm/edac.scc new file mode 100644 index 000000000000..d644aa32ac50 --- /dev/null +++ b/bsp/axxiaarm/edac.scc @@ -0,0 +1,4 @@ +define KFEATURE_DESCRIPTION "Enable EDAC driver support for System Memory, L3 cache, L2 cache and CPU" +define KFEATURE_COMPATIBILITY all + +kconf hardware edac.cfg diff --git a/bsp/axxiaarm/rapidio.cfg b/bsp/axxiaarm/rapidio.cfg new file mode 100644 index 000000000000..1faf3daa938f --- /dev/null +++ b/bsp/axxiaarm/rapidio.cfg @@ -0,0 +1,26 @@ +#......................................................................... +# WARNING +# +# This file is a kernel configuration fragment, and not a full kernel +# configuration file. The final kernel configuration is made up of +# an assembly of processed fragments, each of which is designed to +# capture a specific part of the final configuration (e.g. platform +# configuration, feature configuration, and board specific hardware +# configuration). For more information on kernel configuration, please +# consult the product documentation. +# +#......................................................................... + +CONFIG_RAPIDIO=y +CONFIG_AXXIA_RIO=y +CONFIG_RIO_MAINT_WIN_SIZE=0x1000000 +CONFIG_AXXIA_RIO_STAT=y +CONFIG_OB_DME_ENTRY_SIZE=4096 +CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS=y +CONFIG_RAPIDIO_ENUM_BASIC=y +CONFIG_RAPIDIO_CPS_XX=y +CONFIG_RAPIDIO_CPS_GEN2=y + +CONFIG_RIONET=y +CONFIG_RIONET_TX_SIZE=128 +CONFIG_RIONET_RX_SIZE=128 diff --git a/bsp/axxiaarm/rapidio.scc b/bsp/axxiaarm/rapidio.scc new file mode 100644 index 000000000000..36cb6e631bb3 --- /dev/null +++ b/bsp/axxiaarm/rapidio.scc @@ -0,0 +1,4 @@ +define KFEATURE_DESCRIPTION "Enable support for the sRIO controller" +define KFEATURE_COMPATIBILITY all + +kconf hardware rapidio.cfg diff --git a/bsp/axxiaarm64/axxiaarm64-preempt-rt.scc b/bsp/axxiaarm64/axxiaarm64-preempt-rt.scc new file mode 100644 index 000000000000..51f20969e24c --- /dev/null +++ b/bsp/axxiaarm64/axxiaarm64-preempt-rt.scc @@ -0,0 +1,7 @@ +define KMACHINE axxiaarm64 +define KTYPE preempt-rt +define KARCH arm64 + +include ktypes/preempt-rt + +include axxiaarm64.scc diff --git a/bsp/axxiaarm64/axxiaarm64-standard.scc b/bsp/axxiaarm64/axxiaarm64-standard.scc new file mode 100644 index 000000000000..81d14be8b740 --- /dev/null +++ b/bsp/axxiaarm64/axxiaarm64-standard.scc @@ -0,0 +1,7 @@ +define KMACHINE axxiaarm64 +define KTYPE standard +define KARCH arm64 + +include ktypes/standard + +include axxiaarm64.scc diff --git a/bsp/axxiaarm64/axxiaarm64.cfg b/bsp/axxiaarm64/axxiaarm64.cfg new file mode 100644 index 000000000000..83ac0a7d0a62 --- /dev/null +++ b/bsp/axxiaarm64/axxiaarm64.cfg @@ -0,0 +1,83 @@ +#......................................................................... +# WARNING +# +# This file is a kernel configuration fragment, and not a full kernel +# configuration file. The final kernel configuration is made up of +# an assembly of processed fragments, each of which is designed to +# capture a specific part of the final configuration (e.g. platform +# configuration, feature configuration, and board specific hardware +# configuration). For more information on kernel configuration, please +# consult the product documentation. +# +#......................................................................... + +# +# Kernel Features +# + +# +# Generic Driver Options +# +CONFIG_DMA_CMA=y +CONFIG_CMA=y + +# +# Misc devices +# +CONFIG_AXXIA_OEM=y +CONFIG_AXXIA_PEI=y +CONFIG_ARM_CCN_PMU=y + +# +# Controllers with non-SFF native interface +# +CONFIG_SATA_AHCI=y +CONFIG_SATA_AHCI_PLATFORM=y + +# +# Memory mapped GPIO drivers: +# + +# +# Distributed Switch Architecture drivers +# +CONFIG_ETHERNET=y +CONFIG_SMC91X=y +CONFIG_SMSC911X=y + +# +# USB GPIO expanders +# +CONFIG_POWER_RESET_AXXIA=y +CONFIG_POWER_RESET_AXXIA_DDR_RETENTION=y +CONFIG_HWMON=y + +# +# Multifunction device drivers +# +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=y + +# +# USB Host Controller Drivers +# +CONFIG_USB_DWC3=y +CONFIG_USB_ULPI=y + +# +# Platform RTC drivers +# +CONFIG_RTC_CLASS=y +CONFIG_RTC_DRV_EFI=y + + +# +# PHY Subsystem +# +CONFIG_GENERIC_PHY=y +CONFIG_MICREL_PHY=y + +# +# Watchdog +# +CONFIG_ARM_SP804_WATCHDOG_AXXIA=y diff --git a/bsp/axxiaarm64/axxiaarm64.scc b/bsp/axxiaarm64/axxiaarm64.scc new file mode 100644 index 000000000000..a6bfe567fbd9 --- /dev/null +++ b/bsp/axxiaarm64/axxiaarm64.scc @@ -0,0 +1,10 @@ +include features/usb/xhci-hcd.scc +include features/hugetlb/hugetlb.scc +include cfg/usb-mass-storage.scc + +include bsp/axxiaarm/rapidio.scc +include edac.scc +include arch/arm/32bit-compat.scc + +kconf hardware bsp/axxiaarm/axxia-common.cfg +kconf hardware axxiaarm64.cfg diff --git a/bsp/axxiaarm64/edac.cfg b/bsp/axxiaarm64/edac.cfg new file mode 100644 index 000000000000..740045b5bce8 --- /dev/null +++ b/bsp/axxiaarm64/edac.cfg @@ -0,0 +1,18 @@ +#......................................................................... +# WARNING +# +# This file is a kernel configuration fragment, and not a full kernel +# configuration file. The final kernel configuration is made up of +# an assembly of processed fragments, each of which is designed to +# capture a specific part of the final configuration (e.g. platform +# configuration, feature configuration, and board specific hardware +# configuration). For more information on kernel configuration, please +# consult the product documentation. +# +#......................................................................... + +CONFIG_EDAC=y +CONFIG_EDAC_AXXIA_SYSMEM_5600=y +CONFIG_EDAC_AXXIA_CMEM_5600=y +CONFIG_EDAC_AXXIA_L3_5600=y +CONFIG_EDAC_AXXIA_L2_CPU_5600=y diff --git a/bsp/axxiaarm64/edac.scc b/bsp/axxiaarm64/edac.scc new file mode 100644 index 000000000000..d644aa32ac50 --- /dev/null +++ b/bsp/axxiaarm64/edac.scc @@ -0,0 +1,4 @@ +define KFEATURE_DESCRIPTION "Enable EDAC driver support for System Memory, L3 cache, L2 cache and CPU" +define KFEATURE_COMPATIBILITY all + +kconf hardware edac.cfg -- 2.40.0
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#14029): https://lists.yoctoproject.org/g/linux-yocto/message/14029 Mute This Topic: https://lists.yoctoproject.org/mt/106630977/21656 Group Owner: linux-yocto+ow...@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-