summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2024-01-05 04:12:20 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2024-01-21 06:31:29 +0100
commit9c6f42b55b45d5fbc3de82e102471d72c3b48a4a (patch)
treee890c0c0dda7b60e400394e8cbf17598aede96e8
parent3aac1cdc948af745ca37cbea30c61b233f4a6f58 (diff)
raspberry-pi5: add basic support
-rwxr-xr-xscripts/install.sh18
-rw-r--r--target/aarch64/kernel/raspberry-pi5196
-rw-r--r--target/aarch64/systems/raspberry-pi526
-rw-r--r--target/config/Config.in.cpu11
-rw-r--r--target/config/Config.in.runtime3
-rw-r--r--target/linux/Config.in.kernelcfg1
-rw-r--r--target/linux/config/Config.in.ethernet10
-rw-r--r--target/linux/config/Config.in.usb13
-rw-r--r--target/linux/config/Config.in.wireless2
9 files changed, 264 insertions, 16 deletions
diff --git a/scripts/install.sh b/scripts/install.sh
index 74dc06eb3..a549ae23d 100755
--- a/scripts/install.sh
+++ b/scripts/install.sh
@@ -155,7 +155,7 @@ tgt=$2
src=$3
case $target {
-(atmel-ngw100|banana-pro|banana-pro-zero|orange-pi0|pcengines-apu|phytec-imx6|phytec-wega|raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|raspberry-pi4|raspberry-pi4-64|rockpi4-plus|solidrun-imx6|solidrun-clearfog|imgtec-ci20|default) ;;
+(atmel-ngw100|banana-pro|banana-pro-zero|orange-pi0|pcengines-apu|phytec-imx6|phytec-wega|raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|raspberry-pi4|raspberry-pi4-64|raspberry-pi5|rockpi4-plus|solidrun-imx6|solidrun-clearfog|imgtec-ci20|default) ;;
(*)
print -u2 "Unknown target '$target', exiting"
exit 1 ;;
@@ -178,7 +178,7 @@ case $ostype {
basedev=$tgt
rootpart=${basedev}s1
datapart=${basedev}s2
- if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = phytec-wega ]]; then
+ if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = raspberry-pi5 || $target = phytec-wega ]]; then
bootpart=${basedev}s1
rootpart=${basedev}s2
datapart=${basedev}s3
@@ -229,7 +229,7 @@ case $ostype {
rootpart=${basedev}${partitionsep}1
datapart=${basedev}${partitionsep}2
- if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 ]]; then
+ if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = raspberry-pi5 ]]; then
bootpart=${basedev}${partitionsep}1
rootpart=${basedev}${partitionsep}2
datapart=${basedev}${partitionsep}3
@@ -294,7 +294,7 @@ syspartno=0
# data - flexible (parameter)
# system - everything else
-if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = phytec-wega ]]; then
+if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = raspberry-pi5 || $target = phytec-wega ]]; then
syspartno=1
bootfssz=100
if (( grub )); then
@@ -351,7 +351,7 @@ fi
#(( partofs = ((coreendsec / secs) + 1) * secs ))
# we just use 2048 all the time, since some loaders are longer
partofs=2048
-if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = phytec-wega || $target = rockpi4-plus ]]; then
+if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = raspberry-pi5 || $target = phytec-wega || $target = rockpi4-plus ]]; then
(( spartofs = partofs + (100 * 2048) ))
else
spartofs=$partofs
@@ -462,7 +462,7 @@ if (( datafssz )); then
dd of="$T/firsttrack" conv=notrunc bs=1 seek=$((0x1CE)) 2>/dev/null
fi
-if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = phytec-wega ]]; then
+if [[ $target = raspberry-pi || $target = raspberry-pi0 || $target = raspberry-pi2 || $target = raspberry-pi3 || $target = raspberry-pi3-64 || $target = raspberry-pi4 || $target = raspberry-pi4-64 || $target = raspberry-pi5 || $target = phytec-wega ]]; then
# move system and data partition from #0/#1 to #1/#2
dd if="$T/firsttrack" bs=1 skip=$((0x1BE)) count=32 of="$T/x" 2>/dev/null
dd of="$T/firsttrack" conv=notrunc bs=1 seek=$((0x1CE)) if="$T/x" 2>/dev/null
@@ -563,7 +563,7 @@ case $target {
dd if="$fwdir/SPL" of="$tgt" bs=1024 seek=1 > /dev/null 2>&1
dd if="$fwdir/u-boot.img" of="$tgt" bs=1024 seek=69 > /dev/null 2>&1
;;
-(raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|raspberry-pi4|raspberry-pi4-64)
+(raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|raspberry-pi4|raspberry-pi4-64|raspberry-pi5)
(( noformat )) || create_fs "$bootpart" ADKBOOT vfat
;;
(phytec-wega)
@@ -590,7 +590,7 @@ if (( datafssz )); then
((keep)) || create_fs "$datapart" ADKDATA ext4
((keep)) || tune_fs "$datapart"
case $target {
- (raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|raspberry-pi4|raspberry-pi4-64|phytec-wega)
+ (raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|raspberry-pi4|raspberry-pi4-64|raspberry-pi5|phytec-wega)
echo "/dev/mmcblk0p3 /data ext4 rw 0 0" >> "$R"/etc/fstab
;;
(banana-pro|orange-pi0|solidrun-clearfog|rockpi4-plus)
@@ -612,7 +612,7 @@ fi
(( quiet )) || print Finishing up with bootloader and kernel ...
case $target {
-(raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|raspberry-pi4|raspberry-pi4-64)
+(raspberry-pi|raspberry-pi0|raspberry-pi2|raspberry-pi3|raspberry-pi3-64|raspberry-pi4|raspberry-pi4-64|raspberry-pi5)
mount_fs "$bootpart" "$B" vfat
for x in "$R"/boot/*; do
[[ -e "$x" ]] && mv -f "$R"/boot/* "$B/"
diff --git a/target/aarch64/kernel/raspberry-pi5 b/target/aarch64/kernel/raspberry-pi5
new file mode 100644
index 000000000..bdd0b463a
--- /dev/null
+++ b/target/aarch64/kernel/raspberry-pi5
@@ -0,0 +1,196 @@
+CONFIG_ARM64=y
+CONFIG_64BIT=y
+CONFIG_ARCH_BCM=y
+CONFIG_ARCH_BCM2835=y
+CONFIG_ARCH_BRCMSTB=y
+CONFIG_ARM_AMBA=y
+CONFIG_PCI=y
+CONFIG_PCI_MSI=y
+CONFIG_PCI_MSI_IRQ_DOMAIN=y
+CONFIG_PCIE_BRCMSTB=y
+CONFIG_RASPBERRYPI_FIRMWARE=y
+CONFIG_BRCM_CHAR_DRIVERS=y
+CONFIG_BCM2708_VCMEM=y
+CONFIG_BCM_VCIO=y
+CONFIG_SPI=y
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_MEM=y
+CONFIG_SPI_DW_DMA=y
+CONFIG_SPI_SLAVE=y
+CONFIG_SPI_DYNAMIC=y
+CONFIG_PINCTRL=y
+CONFIG_PINMUX=y
+CONFIG_PINCONF=y
+CONFIG_GENERIC_PINCONF=y
+CONFIG_PINCTRL_RP1=y
+CONFIG_PINCTRL_BCM2712=y
+CONFIG_PINCTRL_BCM2835=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIOLIB_FASTPATH_LIMIT=512
+CONFIG_OF_GPIO=y
+CONFIG_GPIOLIB_IRQCHIP=y
+CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_CDEV=y
+CONFIG_GPIO_CDEV_V1=y
+CONFIG_GPIO_GENERIC=y
+CONFIG_GPIO_RASPBERRYPI_EXP=y
+CONFIG_GPIO_BCM_VIRT=y
+CONFIG_GPIO_BRCMSTB=y
+CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_STMPE=y
+CONFIG_MFD_CORE=y
+CONFIG_MFD_RP1=y
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+CONFIG_REGULATOR_GPIO=y
+CONFIG_LOGO=y
+CONFIG_LOGO_LINUX_CLUT224=y
+CONFIG_HID=y
+CONFIG_HID_BATTERY_STRENGTH=y
+CONFIG_HIDRAW=y
+CONFIG_HID_GENERIC=y
+CONFIG_LOGITECH_FF=y
+CONFIG_LOGIRUMBLEPAD2_FF=y
+CONFIG_LOGIG940_FF=y
+CONFIG_LOGIWHEELS_FF=y
+CONFIG_NINTENDO_FF=y
+CONFIG_PLAYSTATION_FF=y
+CONFIG_SONY_FF=y
+CONFIG_USB_HID=y
+CONFIG_HID_PID=y
+CONFIG_USB_HIDDEV=y
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC3_DUAL_ROLE=y
+CONFIG_USB_DWC3_HAPS=y
+CONFIG_USB_DWC3_OF_SIMPLE=y
+CONFIG_USB_DWC2_DUAL_ROLE=y
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_BRCM_USB_PINMAP=y
+CONFIG_USB_PHY=y
+CONFIG_NOP_USB_XCEIV=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_VBUS_DRAW=2
+CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
+CONFIG_USB_BDC_UDC=y
+CONFIG_USB_CONFIGFS_SERIAL=y
+CONFIG_USB_CONFIGFS_ACM=y
+CONFIG_USB_CONFIGFS_OBEX=y
+CONFIG_USB_CONFIGFS_NCM=y
+CONFIG_USB_CONFIGFS_ECM=y
+CONFIG_USB_CONFIGFS_ECM_SUBSET=y
+CONFIG_USB_CONFIGFS_RNDIS=y
+CONFIG_USB_CONFIGFS_EEM=y
+CONFIG_USB_CONFIGFS_MASS_STORAGE=y
+CONFIG_USB_CONFIGFS_F_LB_SS=y
+CONFIG_USB_CONFIGFS_F_FS=y
+CONFIG_USB_CONFIGFS_F_UAC1=y
+CONFIG_USB_CONFIGFS_F_UAC2=y
+CONFIG_USB_CONFIGFS_F_MIDI=y
+CONFIG_USB_CONFIGFS_F_HID=y
+CONFIG_USB_CONFIGFS_F_UVC=y
+CONFIG_USB_CONFIGFS_F_PRINTER=y
+CONFIG_USB_ETH_RNDIS=y
+CONFIG_USB_G_MULTI_RNDIS=y
+CONFIG_USB_ROLE_SWITCH=y
+CONFIG_MMC=y
+CONFIG_PWRSEQ_EMMC=y
+CONFIG_PWRSEQ_SIMPLE=y
+CONFIG_MMC_BLOCK=y
+CONFIG_MMC_BLOCK_MINORS=32
+CONFIG_MMC_BCM2835_MMC=y
+CONFIG_MMC_BCM2835_DMA=y
+CONFIG_MMC_BCM2835_PIO_DMA_BARRIER=2
+CONFIG_MMC_BCM2835_SDHOST=y
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_IO_ACCESSORS=y
+CONFIG_MMC_SDHCI_PLTFM=y
+CONFIG_MMC_SDHCI_IPROC=y
+CONFIG_MMC_CQHCI=y
+CONFIG_MMC_SDHCI_BRCMSTB=y
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_EDAC_SUPPORT=y
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
+CONFIG_RTC_NVMEM=y
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+CONFIG_RTC_DRV_RPI=y
+CONFIG_RTC_DRV_BRCMSTB=y
+CONFIG_RTC_I2C_AND_SPI=y
+CONFIG_RTC_DRV_DS3232_HWMON=y
+CONFIG_RTC_DRV_RV3029_HWMON=y
+CONFIG_DMADEVICES=y
+CONFIG_DMA_ENGINE=y
+CONFIG_DMA_VIRTUAL_CHANNELS=y
+CONFIG_DMA_OF=y
+CONFIG_DMA_BCM2835=y
+CONFIG_DW_AXI_DMAC=y
+CONFIG_DMA_BCM2708=y
+CONFIG_BCM_VIDEOCORE=y
+CONFIG_BCM2835_VCHIQ=y
+CONFIG_VCHIQ_CDEV=y
+CONFIG_SURFACE_PLATFORMS=y
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_COMMON_CLK=y
+CONFIG_COMMON_CLK_RP1=y
+CONFIG_COMMON_CLK_RP1_SDIO=y
+CONFIG_CLK_BCM2711_DVP=y
+CONFIG_CLK_BCM2835=y
+CONFIG_CLK_RASPBERRYPI=y
+CONFIG_TIMER_OF=y
+CONFIG_TIMER_PROBE=y
+CONFIG_CLKSRC_MMIO=y
+CONFIG_ARM_ARCH_TIMER=y
+CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
+CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y
+CONFIG_FSL_ERRATUM_A008585=y
+CONFIG_HISILICON_ERRATUM_161010101=y
+CONFIG_ARM64_ERRATUM_858921=y
+CONFIG_ARM_TIMER_SP804=y
+CONFIG_MAILBOX=y
+CONFIG_BCM2835_MBOX=y
+CONFIG_IOMMU_IOVA=y
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+CONFIG_IOMMU_DEFAULT_DMA_STRICT=y
+CONFIG_OF_IOMMU=y
+CONFIG_IOMMU_DMA=y
+CONFIG_BCM2712_IOMMU=y
+CONFIG_BCM2835_POWER=y
+CONFIG_RASPBERRYPI_POWER=y
+CONFIG_SOC_BRCMSTB=y
+CONFIG_BRCMSTB_PM=y
+CONFIG_PWM=y
+CONFIG_PWM_SYSFS=y
+CONFIG_PWM_BRCMSTB=y
+CONFIG_PWM_RP1=y
+CONFIG_IRQCHIP=y
+CONFIG_ARM_GIC=y
+CONFIG_ARM_GIC_MAX_NR=1
+CONFIG_ARM_GIC_V2M=y
+CONFIG_ARM_GIC_V3=y
+CONFIG_ARM_GIC_V3_ITS=y
+CONFIG_ARM_GIC_V3_ITS_PCI=y
+CONFIG_BCM2712_MIP=y
+CONFIG_BCM7038_L1_IRQ=y
+CONFIG_BCM7120_L2_IRQ=y
+CONFIG_BRCMSTB_L2_IRQ=y
+CONFIG_PARTITION_PERCPU=y
+CONFIG_ARCH_HAS_RESET_CONTROLLER=y
+CONFIG_RESET_CONTROLLER=y
+CONFIG_RESET_BRCMSTB=y
+CONFIG_RESET_BRCMSTB_RESCAL=y
+CONFIG_RESET_RASPBERRYPI=y
+CONFIG_RESET_SIMPLE=y
+CONFIG_GENERIC_PHY=y
+CONFIG_GENERIC_PHY_MIPI_DPHY=y
+CONFIG_PHY_BRCM_USB=y
+CONFIG_ARM_PMU=y
+CONFIG_RAS=y
diff --git a/target/aarch64/systems/raspberry-pi5 b/target/aarch64/systems/raspberry-pi5
new file mode 100644
index 000000000..770758b5e
--- /dev/null
+++ b/target/aarch64/systems/raspberry-pi5
@@ -0,0 +1,26 @@
+config ADK_TARGET_SYSTEM_RASPBERRY_PI5
+ bool "Raspberry PI 5"
+ select ADK_TARGET_LITTLE_ENDIAN
+ select ADK_TARGET_CPU_AARCH64_CORTEX_A76
+ select ADK_TARGET_BOARD_BCM28XX
+ select ADK_TARGET_WITH_VGA
+ select ADK_TARGET_WITH_SERIAL
+ select ADK_TARGET_WITH_CPU_FREQ
+ select ADK_TARGET_WITH_USB
+ select ADK_TARGET_WITH_INPUT
+ select ADK_TARGET_WITH_SD
+ select ADK_TARGET_WITH_I2C
+ select ADK_TARGET_WITH_SPI
+ select ADK_TARGET_WITH_SMP
+ select ADK_TARGET_WITH_NET
+ select ADK_TARGET_WITH_NETDEVICE
+ select ADK_TARGET_WITH_WIFI
+ select ADK_TARGET_WITH_BLOCK
+ select ADK_TARGET_WITH_SOUND
+ select ADK_TARGET_WITH_SDIO
+ select ADK_PACKAGE_BCM28XX_BOOTLOADER
+ select ADK_TARGET_WITH_ROOT_RW
+ select ADK_TARGET_KERNEL_IMAGE
+ help
+ Raspberry PI 5
+
diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu
index dbe21758d..905d0404d 100644
--- a/target/config/Config.in.cpu
+++ b/target/config/Config.in.cpu
@@ -31,6 +31,16 @@ config ADK_TARGET_CPU_AARCH64_CORTEX_A72
select ADK_TARGET_CPU_WITH_THUMB2
depends on ADK_TARGET_ARCH_AARCH64
+config ADK_TARGET_CPU_AARCH64_CORTEX_A76
+ bool "cortex-a76"
+ select ADK_TARGET_SUPPORTS_THREADS
+ select ADK_TARGET_SUPPORTS_NPTL
+ select ADK_TARGET_SUPPORTS_LT
+ select ADK_TARGET_CPU_WITH_FPU_VFPV4
+ select ADK_TARGET_CPU_WITH_NEON
+ select ADK_TARGET_CPU_WITH_THUMB2
+ depends on ADK_TARGET_ARCH_AARCH64
+
# alpha
config ADK_TARGET_CPU_ALPHA_EV4
bool "ev4"
@@ -1964,6 +1974,7 @@ config ADK_TARGET_GCC_CPU
default "cortex-a57" if ADK_TARGET_CPU_ARM_CORTEX_A57
default "cortex-a53" if ADK_TARGET_CPU_AARCH64_CORTEX_A53
default "cortex-a57" if ADK_TARGET_CPU_AARCH64_CORTEX_A57
+ default "cortex-a76" if ADK_TARGET_CPU_AARCH64_CORTEX_A76
default "cortex-m0" if ADK_TARGET_CPU_ARM_CORTEX_M0
default "cortex-m3" if ADK_TARGET_CPU_ARM_CORTEX_M3
default "cortex-m4" if ADK_TARGET_CPU_ARM_CORTEX_M4
diff --git a/target/config/Config.in.runtime b/target/config/Config.in.runtime
index 5866ba2a1..2a09782cf 100644
--- a/target/config/Config.in.runtime
+++ b/target/config/Config.in.runtime
@@ -173,6 +173,7 @@ config ADK_RUNTIME_TMPFS_SIZE
default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI2
default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI3
default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI4
+ default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI3_64
default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI4_64
default "32768" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
@@ -299,6 +300,7 @@ config ADK_RUNTIME_GETTY_VGA
default y if ADK_TARGET_SYSTEM_RASPBERRY_PI2
default y if ADK_TARGET_SYSTEM_RASPBERRY_PI3
default y if ADK_TARGET_SYSTEM_RASPBERRY_PI4
+ default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default y if ADK_TARGET_SYSTEM_RASPBERRY_PI3_64
default y if ADK_TARGET_SYSTEM_RASPBERRY_PI4_64
default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
@@ -321,6 +323,7 @@ config ADK_RUNTIME_GETTY_SERIAL
default n if ADK_TARGET_SYSTEM_RASPBERRY_PI2
default n if ADK_TARGET_SYSTEM_RASPBERRY_PI3
default n if ADK_TARGET_SYSTEM_RASPBERRY_PI4
+ default n if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default n if ADK_TARGET_SYSTEM_RASPBERRY_PI3_64
default n if ADK_TARGET_SYSTEM_RASPBERRY_PI4_64
default n if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
diff --git a/target/linux/Config.in.kernelcfg b/target/linux/Config.in.kernelcfg
index b2b4c257a..8142fe576 100644
--- a/target/linux/Config.in.kernelcfg
+++ b/target/linux/Config.in.kernelcfg
@@ -34,6 +34,7 @@ config ADK_TARGET_LINUX_KERNEL_DEFCONFIG
default "bcm2711_defconfig" if ADK_TARGET_SYSTEM_RASPBERRY_PI4
default "bcmrpi3_defconfig" if ADK_TARGET_SYSTEM_RASPBERRY_PI3_64
default "bcm2711_defconfig" if ADK_TARGET_SYSTEM_RASPBERRY_PI4_64
+ default "bcm2712_defconfig" if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default "twr-k70f120m_defconfig" if ADK_TARGET_SYSTEM_KINETIS_K70
default "imx_v7_cbi_hb_defconfig" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 && ADK_TARGET_LINUX_KERNEL_VERSION_GIT
default "imx_v6_v7_defconfig" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
diff --git a/target/linux/config/Config.in.ethernet b/target/linux/config/Config.in.ethernet
index 5f3562a30..ec58b3069 100644
--- a/target/linux/config/Config.in.ethernet
+++ b/target/linux/config/Config.in.ethernet
@@ -9,7 +9,7 @@ config ADK_LINUX_KERNEL_NET_ETHERNET
bool
default y
-config ADK_LINUX_KERNEL_NET_CADENCE
+config ADK_LINUX_KERNEL_NET_VENDOR_CADENCE
bool
config ADK_LINUX_KERNEL_NET_VENDOR_ARC
@@ -164,7 +164,7 @@ config ADK_LINUX_KERNEL_BCMGENET
depends on ADK_TARGET_SYSTEM_RASPBERRY_PI4 || \
ADK_TARGET_SYSTEM_RASPBERRY_PI4_64
default y if ADK_TARGET_SYSTEM_RASPBERRY_PI4 || \
- ADK_TARGET_SYSTEM_RAPSBERRY_PI4_64
+ ADK_TARGET_SYSTEM_RASPBERRY_PI4_64
default n
help
Broadcom GENET internal MAC support
@@ -436,13 +436,15 @@ config ADK_LINUX_KERNEL_IBMVETH
IBM ethernet driver
config ADK_LINUX_KERNEL_MACB
- tristate "Atmel AT32/AT91 network driver"
- select ADK_LINUX_KERNEL_NET_CADENCE
+ tristate "Cadence MACB network driver"
+ select ADK_LINUX_KERNEL_NET_VENDOR_CADENCE
depends on ADK_TARGET_CPU_AVR32 \
+ || ADK_TARGET_SYSTEM_RASPBERRY_PI5 \
|| ADK_TARGET_SYSTEM_QEMU_ARM_XILINX_ZYNQ
default y if ADK_TARGET_SYSTEM_ATMEL_NGW100
default y if ADK_TARGET_SYSTEM_ATMEL_GRASSHOPPER
default y if ADK_TARGET_SYSTEM_QEMU_ARM_XILINX_ZYNQ
+ default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default n
help
Ethernet Driver for Atmel AT32 and AT91 parts. This driver
diff --git a/target/linux/config/Config.in.usb b/target/linux/config/Config.in.usb
index 9717a6231..07e097bc1 100644
--- a/target/linux/config/Config.in.usb
+++ b/target/linux/config/Config.in.usb
@@ -7,6 +7,9 @@ depends on ADK_TARGET_WITH_USB \
|| ADK_TARGET_SYSTEM_QEMU_X86 \
|| ADK_TARGET_GENERIC
+config ADK_LINUX_KERNEL_USB_PCI
+ bool
+
config ADK_LINUX_KERNEL_USB_SUPPORT
bool
@@ -54,7 +57,7 @@ config ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI
config ADK_LINUX_KERNEL_USB_EHCI_HCD_PCI
bool
-config ADK_LINUX_KERNEL_USB_XHCI_HCD_PCI
+config ADK_LINUX_KERNEL_USB_XHCI_PCI
bool
config ADK_LINUX_KERNEL_USB_LIBUSUAL
@@ -81,6 +84,7 @@ config ADK_LINUX_KERNEL_USB
default y if ADK_TARGET_SYSTEM_KINETIS_K70
default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
+ default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default n
help
Universal Serial Bus (USB) is a specification for a serial bus
@@ -116,9 +120,11 @@ menu "USB controller support"
config ADK_LINUX_KERNEL_USB_XHCI_HCD
tristate "Support for USB xHCI HCD (USB 3.0)"
depends on ADK_LINUX_KERNEL_USB
- select ADK_LINUX_KERNEL_USB_XHCI_HCD_PLATFORM if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
- select ADK_LINUX_KERNEL_USB_XHCI_HCD_PCI if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
+ select ADK_LINUX_KERNEL_USB_PCI
+ select ADK_LINUX_KERNEL_USB_XHCI_PLATFORM
+ select ADK_LINUX_KERNEL_USB_XHCI_PCI
default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
+ default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default n
help
The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
@@ -147,6 +153,7 @@ config ADK_LINUX_KERNEL_USB_EHCI_HCD
default y if ADK_TARGET_SYSTEM_KINETIS_K70
default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
+ default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default n
help
The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
diff --git a/target/linux/config/Config.in.wireless b/target/linux/config/Config.in.wireless
index 9455cd90e..222efa3bb 100644
--- a/target/linux/config/Config.in.wireless
+++ b/target/linux/config/Config.in.wireless
@@ -152,6 +152,7 @@ config ADK_LINUX_KERNEL_BRCMFMAC
default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
default m if ADK_TARGET_SYSTEM_BANANA_P2_ZERO
default m if ADK_TARGET_SYSTEM_ROCKPI4_ZERO
+ default m if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default n
config ADK_LINUX_KERNEL_BRCMFMAC_SDIO
@@ -161,6 +162,7 @@ config ADK_LINUX_KERNEL_BRCMFMAC_SDIO
default y if ADK_TARGET_SYSTEM_PHYTEC_IMX6
default y if ADK_TARGET_SYSTEM_RASPBERRY_PI0
default y if ADK_TARGET_SYSTEM_RASPBERRY_PI3
+ default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
default y if ADK_TARGET_SYSTEM_BANANA_P2_ZERO
default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
default n