diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2016-04-06 15:21:02 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2016-04-06 15:21:02 +0200 |
commit | dfd6417b8a8bfcb3662cea030ef301fe5fb6e365 (patch) | |
tree | 66d5b87be975a722ee0308b6ccf8678571d0a4aa /target | |
parent | 70e4a17bd9b26a3f2f4c98bd1d54ae3a22a9f92a (diff) |
add basic raspberry pi3 support (ARM 32Bit)
Diffstat (limited to 'target')
-rw-r--r-- | target/arm/Makefile | 34 | ||||
-rw-r--r-- | target/arm/kernel/raspberry-pi3 | 18 | ||||
-rw-r--r-- | target/arm/systems/raspberry-pi3 | 25 | ||||
-rw-r--r-- | target/config/Config.in.cpu | 20 | ||||
-rw-r--r-- | target/config/Config.in.runtime | 6 | ||||
-rw-r--r-- | target/linux/config/Config.in.audio | 2 | ||||
-rw-r--r-- | target/linux/config/Config.in.cpu | 2 | ||||
-rw-r--r-- | target/linux/config/Config.in.graphics | 4 | ||||
-rw-r--r-- | target/linux/config/Config.in.i2c | 4 | ||||
-rw-r--r-- | target/linux/config/Config.in.kernel | 1 | ||||
-rw-r--r-- | target/linux/config/Config.in.spi | 2 | ||||
-rw-r--r-- | target/linux/config/Config.in.watchdog | 4 |
12 files changed, 82 insertions, 40 deletions
diff --git a/target/arm/Makefile b/target/arm/Makefile index 3184351e1..faa4b6cd7 100644 --- a/target/arm/Makefile +++ b/target/arm/Makefile @@ -50,30 +50,16 @@ ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM_VEXPRESS_A9)$(ADK_TARGET_SYSTEM_QEMU_ARM_VERS @echo "Start qemu with following options:" @echo 'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${ADK_TARGET_CPU_ARCH}.img' endif -ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y) +ifeq ($(ADK_TARGET_BOARD_BCM28XX)$(ADK_TARGET_SYSTEM_SOLIDRUN_IMX6),y) ifeq ($(ADK_APPLIANCE_KODI),y) @echo "Use following command to install with a writable data partition" - @echo "sudo ./scripts/install.sh -d 256 raspberry-pi /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" + @echo "sudo ./scripts/install.sh -d 256 $(ADK_TARGET_SYSTEM) /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" @echo "If you want to update a card without loosing existing data on the writable partition use:" - @echo "sudo ./scripts/install.sh -k -d 256 raspbrry-pi /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" + @echo "sudo ./scripts/install.sh -k -d 256 $(ADK_TARGET_SYSTEM) /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" @echo "In both cases the cfgfs partition is _not_ removed!" else @echo "Use following command to install it on SD card:" - @echo "sudo ./scripts/install.sh raspberry-pi /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" -endif -endif -ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI2),y) -ifeq ($(ADK_APPLIANCE_KODI),y) - @echo "Use following command to install with a writable data partition" - @echo "sudo ./scripts/install.sh -d 256 raspberry-pi2 /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" - @echo "If you want to update a card without loosing existing data on the writable partition use:" - @echo "sudo ./scripts/install.sh -k -d 256 raspberry-pi2 /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" - @echo "In both cases the cfgfs partition is _not_ removed!" -else - @echo "Use following command to install it on SD card:" - @echo "sudo ./scripts/install.sh raspberry-pi2 /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" - @echo "Use following command to install with a writable data partition" - @echo "sudo ./scripts/install.sh -d 256 raspberry-pi2 /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" + @echo "sudo ./scripts/install.sh $(ADK_TARGET_SYSTEM) /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" endif endif ifeq ($(ADK_TARGET_SYSTEM_BANANA_PRO),y) @@ -82,18 +68,6 @@ ifeq ($(ADK_TARGET_SYSTEM_BANANA_PRO),y) @echo "Use following command to install with a writable data partition" @echo "sudo ./scripts/install.sh -d 256 banana-pro /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" endif -ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_IMX6),y) -ifeq ($(ADK_APPLIANCE_KODI),y) - @echo "Use following command to install with a writable data partition" - @echo "sudo ./scripts/install.sh -d 256 solidrun-imx6 /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" - @echo "If you want to update a card without loosing existing data on the writable partition use:" - @echo "sudo ./scripts/install.sh -k -d 256 solidrun-imx6 /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" - @echo "In both cases the cfgfs partition is _not_ removed!" -else - @echo "Use following command to install it on SD card:" - @echo "sudo ./scripts/install.sh solidrun-imx6 /dev/sdX $(FW_DIR)/$(ROOTFSTARBALL)" -endif -endif endif ifeq ($(ADK_TARGET_FS),initramfs) targethelp: diff --git a/target/arm/kernel/raspberry-pi3 b/target/arm/kernel/raspberry-pi3 new file mode 100644 index 000000000..dd55d7ddf --- /dev/null +++ b/target/arm/kernel/raspberry-pi3 @@ -0,0 +1,18 @@ +CONFIG_ARM=y +CONFIG_ARCH_BCM2709=y +CONFIG_BCM2709_DT=y +CONFIG_PHYS_OFFSET=0 +CONFIG_HAVE_ARM_ARCH_TIMER=y +CONFIG_FIQ=y +CONFIG_ATAGS=y +CONFIG_KUSER_HELPERS=y +CONFIG_ARM_ERRATA_643719=y +CONFIG_BCM2708_NOL2CACHE=y +CONFIG_RASPBERRYPI_FIRMWARE=y +CONFIG_BRCM_CHAR_DRIVERS=y +CONFIG_BCM2708_VCHIQ=y +CONFIG_BCM2708_VCMEM=y +CONFIG_MAILBOX=y +CONFIG_BCM2835_MBOX=y +CONFIG_OF=y +CONFIG_CMDLINE_FROM_BOOTLOADER=y diff --git a/target/arm/systems/raspberry-pi3 b/target/arm/systems/raspberry-pi3 new file mode 100644 index 000000000..6c34586c4 --- /dev/null +++ b/target/arm/systems/raspberry-pi3 @@ -0,0 +1,25 @@ +config ADK_TARGET_SYSTEM_RASPBERRY_PI3 + bool "Raspberry PI 3" + depends on ADK_TARGET_LITTLE_ENDIAN + select ADK_TARGET_CPU_ARM_CORTEX_A53 + 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_BLOCK + select ADK_TARGET_WITH_SOUND + select ADK_PACKAGE_BCM28XX_BOOTLOADER + select ADK_TARGET_WITH_ROOT_RW + select ADK_TARGET_KERNEL_ZIMAGE + select ADK_TARGET_KERNEL_WITH_COMPRESSION + help + Raspberry PI 3 + diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu index 689c9cdc7..ac717176d 100644 --- a/target/config/Config.in.cpu +++ b/target/config/Config.in.cpu @@ -111,6 +111,22 @@ config ADK_TARGET_CPU_ARM_CORTEX_A17 select ADK_TARGET_CPU_WITH_NEON depends on ADK_TARGET_ARCH_ARM +config ADK_TARGET_CPU_ARM_CORTEX_A53 + bool "cortex-a53" + select ADK_TARGET_WITH_NPTL + select ADK_TARGET_WITH_MMU + select ADK_TARGET_CPU_WITH_FPU_VFPV4 + select ADK_TARGET_CPU_WITH_NEON + depends on ADK_TARGET_ARCH_ARM + +config ADK_TARGET_CPU_ARM_CORTEX_A57 + bool "cortex-a57" + select ADK_TARGET_WITH_NPTL + select ADK_TARGET_WITH_MMU + select ADK_TARGET_CPU_WITH_FPU_VFPV4 + select ADK_TARGET_CPU_WITH_NEON + depends on ADK_TARGET_ARCH_ARM + config ADK_TARGET_CPU_ARM_CORTEX_M4 bool "cortex-m4" select ADK_TARGET_UCLINUX @@ -1393,6 +1409,8 @@ config ADK_TARGET_GCC_CPU default "cortex-a9" if ADK_TARGET_CPU_ARM_CORTEX_A9 default "cortex-a15" if ADK_TARGET_CPU_ARM_CORTEX_A15 default "cortex-a17" if ADK_TARGET_CPU_ARM_CORTEX_A17 + default "cortex-a53" if ADK_TARGET_CPU_ARM_CORTEX_A53 + 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-m3" if ADK_TARGET_CPU_ARM_CORTEX_M3 @@ -1573,6 +1591,8 @@ config ADK_TARGET_CPU_TYPE default "arm1176jzf_s" if ADK_TARGET_CPU_ARM_ARM1176JZF_S default "arm926ej_s" if ADK_TARGET_CPU_ARM_ARM926EJ_S default "mpcore" if ADK_TARGET_CPU_ARM_ARM11MPCORE + default "cortex_a53" if ADK_TARGET_CPU_ARM_CORTEX_A53 + 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 "mips32" if ADK_TARGET_CPU_MIPS_MIPS32 diff --git a/target/config/Config.in.runtime b/target/config/Config.in.runtime index 801163b52..460c849d6 100644 --- a/target/config/Config.in.runtime +++ b/target/config/Config.in.runtime @@ -109,6 +109,7 @@ config ADK_RUNTIME_TMPFS_SIZE default "32768" if ADK_TARGET_SYSTEM_IBM_X40 default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI2 + default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI3 default "32768" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 default "8192" if ADK_TARGET_SYSTEM_MIKROTIK_RB532 default "1024" @@ -212,6 +213,7 @@ config ADK_RUNTIME_GETTY_VGA default y if ADK_TARGET_QEMU_WITH_GRAPHIC default y if ADK_TARGET_SYSTEM_RASPBERRY_PI default y if ADK_TARGET_SYSTEM_RASPBERRY_PI2 + default y if ADK_TARGET_SYSTEM_RASPBERRY_PI3 default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG default y if ADK_TARGET_SYSTEM_IBM_X40 @@ -230,6 +232,7 @@ config ADK_RUNTIME_GETTY_SERIAL default n if ADK_TARGET_QEMU_WITH_GRAPHIC default n if ADK_TARGET_SYSTEM_RASPBERRY_PI default n if ADK_TARGET_SYSTEM_RASPBERRY_PI2 + default n if ADK_TARGET_SYSTEM_RASPBERRY_PI3 default n if ADK_TARGET_SYSTEM_LEMOTE_YEELONG default n if ADK_TARGET_SYSTEM_IBM_X40 default n if ADK_TARGET_SYSTEM_ARANYM_M68K @@ -390,10 +393,11 @@ config ADK_BINSH_ZSH endchoice -# workaround for USB ethernet f.e. Raspberry Pi2 +# workaround for USB ethernet f.e. Raspberry Pi 2/3 config ADK_RUNTIME_WAIT_FOR_ETHERNET bool default y if ADK_TARGET_SYSTEM_RASPBERRY_PI2 + default y if ADK_TARGET_SYSTEM_RASPBERRY_PI3 config ADK_SIMPLE_NETWORK_CONFIG bool "simple network configuration" diff --git a/target/linux/config/Config.in.audio b/target/linux/config/Config.in.audio index 62672bb98..66e597764 100644 --- a/target/linux/config/Config.in.audio +++ b/target/linux/config/Config.in.audio @@ -179,7 +179,7 @@ config ADK_KERNEL_SND_PXA2XX_SOC_SPITZ default n config ADK_KERNEL_SND_BCM2835 - tristate "BCM2835 onboard soundcard" + tristate "BCM28XX onboard soundcard" select ADK_KERNEL_SND select ADK_KERNEL_SND_ARM depends on ADK_TARGET_BOARD_BCM28XX diff --git a/target/linux/config/Config.in.cpu b/target/linux/config/Config.in.cpu index f3c30db5d..43b5d107c 100644 --- a/target/linux/config/Config.in.cpu +++ b/target/linux/config/Config.in.cpu @@ -55,7 +55,7 @@ config ADK_KERNEL_ARM_IMX6Q_CPUFREQ default n config ADK_KERNEL_ARM_BCM2835_CPUFREQ - bool "CPU frequency support for BCM2835 boards" + bool "CPU frequency support for BCM28XX boards" select ADK_KERNEL_CPU_FREQ depends on ADK_TARGET_BOARD_BCM28XX default y if ADK_TARGET_BOARD_BCM28XX diff --git a/target/linux/config/Config.in.graphics b/target/linux/config/Config.in.graphics index 969134a2c..dd3adfba7 100644 --- a/target/linux/config/Config.in.graphics +++ b/target/linux/config/Config.in.graphics @@ -242,7 +242,7 @@ config ADK_KERNEL_FB_SM7XX Framebuffer support for Lemote Yeelong. config ADK_KERNEL_FB_BCM2708 - bool "Framebuffer support for BCM2835 boards" + bool "Framebuffer support for BCM28XX boards" select ADK_KERNEL_DRM if ADK_TARGET_KERNEL_VERSION_4_4 select ADK_KERNEL_DRM_VC4 if ADK_TARGET_KERNEL_VERSION_4_4 select ADK_KERNEL_FB @@ -252,7 +252,7 @@ config ADK_KERNEL_FB_BCM2708 default n depends on ADK_TARGET_BOARD_BCM28XX help - Framebuffer support for BCM2835 boards. + Framebuffer support for BCM28XX boards. config ADK_KERNEL_FB_RADEON bool "Framebuffer support for RADEON chips" diff --git a/target/linux/config/Config.in.i2c b/target/linux/config/Config.in.i2c index 5956073d3..6dff40fe2 100644 --- a/target/linux/config/Config.in.i2c +++ b/target/linux/config/Config.in.i2c @@ -11,7 +11,7 @@ config ADK_KERNEL_I2C_CHARDEV tristate config ADK_KERNEL_I2C_BCM2708 - tristate "I2C driver for BCM2835 boards" + tristate "I2C driver for BCM28XX boards" select ADK_KERNEL_I2C select ADK_KERNEL_REGMAP select ADK_KERNEL_REGMAP_I2C @@ -20,7 +20,7 @@ config ADK_KERNEL_I2C_BCM2708 default y if ADK_TARGET_BOARD_BCM28XX default n help - I2C driver for BCM2835 boards. + I2C driver for BCM28XX boards. config ADK_KERNEL_I2C_SUNXI tristate "I2C driver for SUNXI boards" diff --git a/target/linux/config/Config.in.kernel b/target/linux/config/Config.in.kernel index ccfb22c0a..230d6770b 100644 --- a/target/linux/config/Config.in.kernel +++ b/target/linux/config/Config.in.kernel @@ -317,6 +317,7 @@ config ADK_KERNEL_HIGHMEM bool "Enable high memory" default y if ADK_TARGET_SYSTEM_IBM_X40 default y if ADK_TARGET_SYSTEM_RASPBERRY_PI2 + default y if ADK_TARGET_SYSTEM_RASPBERRY_PI3 default y if ADK_TARGET_MODEL_CUBOX_I4PRO default y if ADK_TARGET_MODEL_CUBOX_I2ULTRA default y if ADK_TARGET_MODEL_CUBOX_I2EX diff --git a/target/linux/config/Config.in.spi b/target/linux/config/Config.in.spi index 8d1424a98..b7c1df0a7 100644 --- a/target/linux/config/Config.in.spi +++ b/target/linux/config/Config.in.spi @@ -27,7 +27,7 @@ config ADK_KERNEL_SPI_PXA2XX select ADK_KERNEL_SPI config ADK_KERNEL_SPI_BCM2835 - tristate "SPI driver for BCM2835 boards" + tristate "SPI driver for BCM28XX boards" select ADK_KERNEL_SPI select ADK_KERNEL_SPI_MASTER select ADK_KERNEL_SPI_BITBANG diff --git a/target/linux/config/Config.in.watchdog b/target/linux/config/Config.in.watchdog index f277c8c01..e348bfbb5 100644 --- a/target/linux/config/Config.in.watchdog +++ b/target/linux/config/Config.in.watchdog @@ -16,13 +16,13 @@ config ADK_KERNEL_CS5535_CLOCK_EVENT_SRC bool config ADK_KERNEL_BCM2708_WDT - bool "Hardware Watchdog for BCM2835 boards" + bool "Hardware Watchdog for BCM28XX boards" select ADK_KERNEL_WATCHDOG depends on ADK_TARGET_BOARD_BCM28XX default y if ADK_TARGET_BOARD_BCM28XX default n help - Watchdog driver for BCM2835 boards. + Watchdog driver for BCM28XX boards. config ADK_KERNEL_IMX2_WDT bool "Hardware Watchdog for IMX6 boards" |