aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.azure-pipelines.yml19
-rw-r--r--.gitlab-ci.yml13
-rw-r--r--arch/arm/Kconfig3
-rw-r--r--arch/arm/mach-omap2/omap3/Kconfig10
-rw-r--r--board/nokia/rx51/Kconfig48
-rw-r--r--board/nokia/rx51/MAINTAINERS7
-rw-r--r--board/nokia/rx51/Makefile7
-rw-r--r--board/nokia/rx51/lowlevel_init.S97
-rw-r--r--board/nokia/rx51/rx51.c806
-rw-r--r--board/nokia/rx51/tag_omap.h294
-rw-r--r--configs/nokia_rx51_defconfig76
-rw-r--r--doc/board/index.rst1
-rw-r--r--doc/board/nokia/index.rst9
-rw-r--r--doc/board/nokia/rx51.rst250
-rw-r--r--include/configs/nokia_rx51.h174
-rwxr-xr-xtest/nokia_rx51_test.sh420
-rw-r--r--tools/docker/Dockerfile31
17 files changed, 1 insertions, 2264 deletions
diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
index 0304be8a60f..da701e42dac 100644
--- a/.azure-pipelines.yml
+++ b/.azure-pipelines.yml
@@ -179,25 +179,6 @@ stages:
# seems to hang forever with pre-configured "container" environment
docker run -v $PWD:$(work_dir) $(ci_runner_image) /bin/bash $(work_dir)/build.sh
- - job: nokia_rx51_test
- displayName: 'Run tests for Nokia RX-51 (aka N900)'
- pool:
- vmImage: $(ubuntu_vm)
- container:
- image: $(ci_runner_image)
- options: $(container_option)
- steps:
- - script: |
- mkdir nokia_rx51_tmp
- ln -s /opt/nokia/u-boot-gen-combined nokia_rx51_tmp/
- ln -s /opt/nokia/qemu-n900.tar.gz nokia_rx51_tmp/
- ln -s /opt/nokia/kernel_2.6.28-20103103+0m5_armel.deb nokia_rx51_tmp/
- ln -s /opt/nokia/libc6_2.5.1-1eglibc27+0m5_armel.deb nokia_rx51_tmp/
- ln -s /opt/nokia/busybox_1.10.2.legal-1osso30+0m5_armel.deb nokia_rx51_tmp/
- ln -s /opt/nokia/qemu-system-arm nokia_rx51_tmp/
- export PATH=/opt/gcc-13.1.0-nolibc/arm-linux-gnueabi/bin:$PATH
- test/nokia_rx51_test.sh
-
- job: pylint
displayName: Check for any pylint regressions
pool:
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1df13261c2d..2ceeb947f7c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -225,19 +225,6 @@ Run binman, buildman, dtoc, Kconfig and patman testsuites:
./tools/patman/patman test;
make testconfig
-Run tests for Nokia RX-51 (aka N900):
- stage: testsuites
- script:
- - mkdir nokia_rx51_tmp;
- ln -s /opt/nokia/u-boot-gen-combined nokia_rx51_tmp/;
- ln -s /opt/nokia/qemu-n900.tar.gz nokia_rx51_tmp/;
- ln -s /opt/nokia/kernel_2.6.28-20103103+0m5_armel.deb nokia_rx51_tmp/;
- ln -s /opt/nokia/libc6_2.5.1-1eglibc27+0m5_armel.deb nokia_rx51_tmp/;
- ln -s /opt/nokia/busybox_1.10.2.legal-1osso30+0m5_armel.deb nokia_rx51_tmp/;
- ln -s /opt/nokia/qemu-system-arm nokia_rx51_tmp/;
- export PATH=/opt/gcc-13.1.0-nolibc/arm-linux-gnueabi/bin:$PATH;
- test/nokia_rx51_test.sh
-
# Check for any pylint regressions
Run pylint:
stage: testsuites
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 97c25b4f146..328e2ddc33a 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -2101,7 +2101,7 @@ config SERIAL_TAG
config STATIC_MACH_TYPE
bool "Statically define the Machine ID number"
- default y if TARGET_DS109 || TARGET_NOKIA_RX51 || TARGET_DS414 || DEFAULT_DEVICE_TREE = "sun7i-a20-icnova-swac"
+ default y if TARGET_DS109 || TARGET_DS414 || DEFAULT_DEVICE_TREE = "sun7i-a20-icnova-swac"
help
When booting via ATAGs, enable this option if we know the correct
machine ID number to use at compile time. Some systems will be
@@ -2111,7 +2111,6 @@ config MACH_TYPE
int "Machine ID number"
depends on STATIC_MACH_TYPE
default 527 if TARGET_DS109
- default 1955 if TARGET_NOKIA_RX51
default 3036 if TARGET_DS414
default 4283 if DEFAULT_DEVICE_TREE = "sun7i-a20-icnova-swac"
help
diff --git a/arch/arm/mach-omap2/omap3/Kconfig b/arch/arm/mach-omap2/omap3/Kconfig
index 671e4791c67..3e3e7bd259e 100644
--- a/arch/arm/mach-omap2/omap3/Kconfig
+++ b/arch/arm/mach-omap2/omap3/Kconfig
@@ -105,15 +105,6 @@ config TARGET_OMAP3_LOGIC
select OMAP3_GPIO_6
imply CMD_DM
-config TARGET_NOKIA_RX51
- bool "Nokia RX51"
- select POSITION_INDEPENDENT
- select SKIP_LOWLEVEL_INIT
- select SUPPORT_PASSING_ATAGS
- select CMDLINE_TAG
- select INITRD_TAG
- select REVISION_TAG
-
config TARGET_TAO3530
bool "TAO3530"
select OMAP3_GPIO_2
@@ -166,7 +157,6 @@ source "board/timll/devkit8000/Kconfig"
source "board/ti/omap3evm/Kconfig"
source "board/isee/igep00x0/Kconfig"
source "board/logicpd/omap3som/Kconfig"
-source "board/nokia/rx51/Kconfig"
source "board/lg/sniper/Kconfig"
endif
diff --git a/board/nokia/rx51/Kconfig b/board/nokia/rx51/Kconfig
deleted file mode 100644
index c884543a3d8..00000000000
--- a/board/nokia/rx51/Kconfig
+++ /dev/null
@@ -1,48 +0,0 @@
-if TARGET_NOKIA_RX51
-
-config USB_DEVICE
- def_bool y
- help
- Legacy UDC device support
-
-config USB_TTY
- def_bool y
- help
- Legacy tty type of device available to talk to the UDC device
-
-config USBD_VENDORID
- hex
- default 0x0421
-
-config USBD_PRODUCTID_CDCACM
- hex
- default 0x01c8
-
-config USBD_PRODUCTID_GSERIAL
- hex
- default 0x01c8
-
-config USBD_MANUFACTURER
- string
- default "Nokia"
-
-config USBD_PRODUCT_NAME
- string
- default "N900 (U-Boot)"
-
-config NR_DRAM_BANKS
- default 2
-
-config SYS_BOARD
- default "rx51"
-
-config SYS_VENDOR
- default "nokia"
-
-config SYS_CONFIG_NAME
- default "nokia_rx51"
-
-config SYS_PROMPT
- default "Nokia RX-51 # "
-
-endif
diff --git a/board/nokia/rx51/MAINTAINERS b/board/nokia/rx51/MAINTAINERS
deleted file mode 100644
index d2718ebd417..00000000000
--- a/board/nokia/rx51/MAINTAINERS
+++ /dev/null
@@ -1,7 +0,0 @@
-RX51 BOARD
-S: Orphaned
-F: board/nokia/rx51/
-F: include/configs/nokia_rx51.h
-F: configs/nokia_rx51_defconfig
-F: doc/board/nokia/rx51.rst
-F: test/nokia_rx51_test.sh
diff --git a/board/nokia/rx51/Makefile b/board/nokia/rx51/Makefile
deleted file mode 100644
index 842f9e6a650..00000000000
--- a/board/nokia/rx51/Makefile
+++ /dev/null
@@ -1,7 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-#
-# (C) Copyright 2000, 2001, 2002
-# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
-
-obj-y := rx51.o
-obj-y += lowlevel_init.o
diff --git a/board/nokia/rx51/lowlevel_init.S b/board/nokia/rx51/lowlevel_init.S
deleted file mode 100644
index 44f32f114e7..00000000000
--- a/board/nokia/rx51/lowlevel_init.S
+++ /dev/null
@@ -1,97 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * (C) Copyright 2011-2012
- * Pali Rohár <pali@kernel.org>
- */
-
-#include <config.h>
-#include <linux/linkage.h>
-
-kernoffs: /* offset of kernel image from this address */
- .word . - CONFIG_TEXT_BASE - KERNEL_OFFSET
-
-kernaddr: /* address of kernel after copying */
- .word KERNEL_ADDRESS
-
-kernsize: /* maximal size of kernel image */
- .word KERNEL_MAXSIZE
-
-imagesize: /* maximal size of image */
- .word IMAGE_MAXSIZE
-
-ih_magic: /* IH_MAGIC in big endian from include/image.h */
- .word 0x56190527
-
-z_magic: /* LINUX_ARM_ZIMAGE_MAGIC */
- .word 0x016f2818
-
-/*
- * Routine: save_boot_params (called after reset from start.S)
- * Description: Copy attached kernel to address KERNEL_ADDRESS
- */
-
-ENTRY(save_boot_params)
-
-/*
- * Copy valid attached kernel to absolute address KERNEL_ADDRESS
- *
- * Nokia X-Loader is loading secondary image to address 0x80400000.
- * NOLO is loading boot image to random place, so it doesn't really
- * matter what is set in CONFIG_TEXT_BASE. We have to detect
- * KERNEL_OFFSET from the current execution address and copy it to
- * absolute address KERNEL_ADDRESS.
- *
- * Note that U-Boot has to be compiled with CONFIG_POSITION_INDEPENDENT
- * because it is loaded at random address and not to the fixed address
- * (CONFIG_TEXT_BASE).
- */
-
- /* r0 - start of kernel before */
- adr r0, kernoffs /* r0 - current address of kernoffs section */
- ldr r1, kernoffs /* r1 - offset of kernel image from kernoffs section */
- sub r0, r0, r1
-
- /* r3 - start of kernel after */
- ldr r3, kernaddr
-
- /* r2 - end of kernel after */
- ldr r1, kernsize
- add r2, r3, r1
-
- /* r1 - end of kernel before */
- add r1, r0, r1
-
- /* remove header in target kernel */
- mov r5, #0
- str r5, [r3] /* remove 4 bytes header of kernel uImage */
- str r5, [r3, #36] /* remove 4 bytes header of kernel zImage */
-
- /* check for valid kernel uImage */
- ldr r4, [r0] /* r4 - 4 bytes header of kernel */
- ldr r5, ih_magic /* r5 - IH_MAGIC */
- cmp r4, r5
- beq copy_kernel_loop
-
- /* check for valid kernel zImage */
- ldr r4, [r0, #36] /* r4 - 4 bytes header of kernel at offset 36 */
- ldr r5, z_magic /* r5 - LINUX_ARM_ZIMAGE_MAGIC */
- cmp r4, r5
- bne skip_copy /* skip if invalid image */
-
-copy_kernel_loop:
- ldmdb r1!, {r3 - r10}
- stmdb r2!, {r3 - r10}
- cmp r1, r0
- bhi copy_kernel_loop
-
- /* remove header in source kernel image */
- mov r5, #0
- str r5, [r0] /* remove 4 bytes header of kernel uImage */
- str r5, [r0, #36] /* remove 4 bytes header of kernel zImage */
-
-skip_copy:
-
- /* Returns */
- b save_boot_params_ret
-
-ENDPROC(save_boot_params)
diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c
deleted file mode 100644
index 238b9637bad..00000000000
--- a/board/nokia/rx51/rx51.c
+++ /dev/null
@@ -1,806 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * (C) Copyright 2012
- * Ивайло Димитров <freemangordon@abv.bg>
- *
- * (C) Copyright 2011-2012
- * Pali Rohár <pali@kernel.org>
- *
- * (C) Copyright 2010
- * Alistair Buxton <a.j.buxton@gmail.com>
- *
- * Derived from Beagle Board and 3430 SDP code:
- * (C) Copyright 2004-2008
- * Texas Instruments, <www.ti.com>
- *
- * Author :
- * Sunil Kumar <sunilsaini05@gmail.com>
- * Shashi Ranjan <shashiranjanmca05@gmail.com>
- *
- * Richard Woodruff <r-woodruff2@ti.com>
- * Syed Mohammed Khasim <khasim@ti.com>
- */
-
-#include <common.h>
-#include <dm.h>
-#include <env.h>
-#include <init.h>
-#include <watchdog.h>
-#include <wdt.h>
-#include <malloc.h>
-#include <twl4030.h>
-#include <i2c.h>
-#include <video.h>
-#include <keyboard.h>
-#include <ns16550.h>
-#include <asm/global_data.h>
-#include <asm/io.h>
-#include <asm/setup.h>
-#include <asm/bitops.h>
-#include <asm/mach-types.h>
-#include <asm/omap_i2c.h>
-#include <asm/arch/mux.h>
-#include <asm/arch/sys_proto.h>
-#include <asm/arch/mmc_host_def.h>
-
-#include "tag_omap.h"
-
-/* Needed for ROM SMC call */
-struct emu_hal_params_rx51 {
- u32 num_params;
- u32 param1;
- u32 param2;
- u32 param3;
- u32 param4;
-};
-
-#define ONENAND_GPMC_CONFIG1_RX51 0xfb001202
-#define ONENAND_GPMC_CONFIG2_RX51 0x00111100
-#define ONENAND_GPMC_CONFIG3_RX51 0x00020200
-#define ONENAND_GPMC_CONFIG4_RX51 0x11001102
-#define ONENAND_GPMC_CONFIG5_RX51 0x03101616
-#define ONENAND_GPMC_CONFIG6_RX51 0x90060000
-
-DECLARE_GLOBAL_DATA_PTR;
-
-const omap3_sysinfo sysinfo = {
- DDR_STACKED,
- "Nokia RX-51",
- "OneNAND"
-};
-
-/* This structure contains default omap tags needed for booting Maemo 5 */
-static struct tag_omap omap[] = {
- OMAP_TAG_UART_CONFIG(0x04),
- OMAP_TAG_SERIAL_CONSOLE_CONFIG(0x03, 0x01C200),
- OMAP_TAG_LCD_CONFIG("acx565akm", "internal", 90, 0x18),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cam_focus", 0x44, 0x1, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cam_launch", 0x45, 0x1, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cam_shutter", 0x6e, 0x1, 0x0, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cmt_apeslpx", 0x46, 0x2, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cmt_bsi", 0x9d, 0x2, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cmt_en", 0x4a, 0x2, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cmt_rst", 0x4b, 0x6, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cmt_rst_rq", 0x49, 0x6, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("cmt_wddis", 0x0d, 0x2, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("headphone", 0xb1, 0x1, 0x1, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("kb_lock", 0x71, 0x1, 0x0, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("proximity", 0x59, 0x0, 0x0, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("sleep_ind", 0xa2, 0x2, 0x2, 0x0),
- OMAP_TAG_GPIO_SWITCH_CONFIG("slide", GPIO_SLIDE, 0x0, 0x0, 0x0),
- OMAP_TAG_WLAN_CX3110X_CONFIG(0x25, 0xff, 87, 42, -1),
- OMAP_TAG_PARTITION_CONFIG("bootloader", 128 * 1024, 0x00000000, 0x00000003),
- OMAP_TAG_PARTITION_CONFIG("config", 384 * 1024, 0x00020000, 0x00000000),
- OMAP_TAG_PARTITION_CONFIG("log", 256 * 1024, 0x00080000, 0x00000000),
- OMAP_TAG_PARTITION_CONFIG("kernel", 2 * 1024*1024, 0x000c0000, 0x00000000),
- OMAP_TAG_PARTITION_CONFIG("initfs", 2 * 1024*1024, 0x002c0000, 0x00000000),
- OMAP_TAG_PARTITION_CONFIG("rootfs", 257280 * 1024, 0x004c0000, 0x00000000),
- OMAP_TAG_BOOT_REASON_CONFIG("pwr_key"),
- OMAP_TAG_VERSION_STR_CONFIG("product", "RX-51"),
- OMAP_TAG_VERSION_STR_CONFIG("hw-build", "2101"),
- OMAP_TAG_VERSION_STR_CONFIG("nolo", "1.4.14"),
- OMAP_TAG_VERSION_STR_CONFIG("boot-mode", "normal"),
- { }
-};
-
-static char *boot_reason_ptr;
-static char *hw_build_ptr;
-static char *nolo_version_ptr;
-static char *boot_mode_ptr;
-static int serial_was_console_enabled;
-
-/*
- * Routine: init_omap_tags
- * Description: Initialize pointers to values in tag_omap
- */
-static void init_omap_tags(void)
-{
- char *component;
- char *version;
- int i = 0;
- while (omap[i].hdr.tag) {
- switch (omap[i].hdr.tag) {
- case OMAP_TAG_BOOT_REASON:
- boot_reason_ptr = omap[i].u.boot_reason.reason_str;
- break;
- case OMAP_TAG_VERSION_STR:
- component = omap[i].u.version.component;
- version = omap[i].u.version.version;
- if (strcmp(component, "hw-build") == 0)
- hw_build_ptr = version;
- else if (strcmp(component, "nolo") == 0)
- nolo_version_ptr = version;
- else if (strcmp(component, "boot-mode") == 0)
- boot_mode_ptr = version;
- break;
- default:
- break;
- }
- i++;
- }
-}
-
-static void reuse_omap_atags(struct tag_omap *t)
-{
- char *component;
- char *version;
- while (t->hdr.tag) {
- switch (t->hdr.tag) {
- case OMAP_TAG_BOOT_REASON:
- memset(boot_reason_ptr, 0, 12);
- strcpy(boot_reason_ptr, t->u.boot_reason.reason_str);
- break;
- case OMAP_TAG_VERSION_STR:
- component = t->u.version.component;
- version = t->u.version.version;
- if (strcmp(component, "hw-build") == 0) {
- memset(hw_build_ptr, 0, 12);
- strcpy(hw_build_ptr, version);
- } else if (strcmp(component, "nolo") == 0) {
- memset(nolo_version_ptr, 0, 12);
- strcpy(nolo_version_ptr, version);
- } else if (strcmp(component, "boot-mode") == 0) {
- memset(boot_mode_ptr, 0, 12);
- strcpy(boot_mode_ptr, version);
- }
- break;
- case OMAP_TAG_UART:
- if (t->u.uart.enabled_uarts)
- serial_was_console_enabled = 1;
- break;
- case OMAP_TAG_SERIAL_CONSOLE:
- serial_was_console_enabled = 1;
- break;
- default:
- break;
- }
- t = tag_omap_next(t);
- }
-}
-
-/*
- * Routine: reuse_atags
- * Description: Reuse atags from previous bootloader.
- * Reuse only only HW build, boot reason, boot mode and nolo
- */
-static void reuse_atags(void)
-{
- struct tag *t = (struct tag *)gd->bd->bi_boot_params;
-
- /* First tag must be ATAG_CORE */
- if (t->hdr.tag != ATAG_CORE)
- return;
-
- if (!boot_reason_ptr || !hw_build_ptr)
- return;
-
- /* Last tag must be ATAG_NONE */
- while (t->hdr.tag != ATAG_NONE) {
- switch (t->hdr.tag) {
- case ATAG_REVISION:
- memset(hw_build_ptr, 0, 12);
- sprintf(hw_build_ptr, "%x", t->u.revision.rev);
- break;
- case ATAG_BOARD:
- reuse_omap_atags((struct tag_omap *)&t->u);
- break;
- default:
- break;
- }
- t = tag_next(t);
- }
-}
-
-/*
- * Routine: board_init
- * Description: Early hardware init.
- */
-int board_init(void)
-{
-#if defined(CONFIG_CMD_ONENAND)
- const u32 gpmc_regs_onenandrx51[GPMC_MAX_REG] = {
- ONENAND_GPMC_CONFIG1_RX51,
- ONENAND_GPMC_CONFIG2_RX51,
- ONENAND_GPMC_CONFIG3_RX51,
- ONENAND_GPMC_CONFIG4_RX51,
- ONENAND_GPMC_CONFIG5_RX51,
- ONENAND_GPMC_CONFIG6_RX51,
- 0
- };
-#endif
- /* in SRAM or SDRAM, finish GPMC */
- gpmc_init();
-#if defined(CONFIG_CMD_ONENAND)
- enable_gpmc_cs_config(gpmc_regs_onenandrx51, &gpmc_cfg->cs[0],
- CFG_SYS_ONENAND_BASE, GPMC_SIZE_256M);
-#endif
- /* Enable the clks & power */
- per_clocks_enable();
- /* boot param addr */
- gd->bd->bi_boot_params = OMAP34XX_SDRC_CS0 + 0x100;
- return 0;
-}
-
-#ifdef CONFIG_REVISION_TAG
-/*
- * Routine: get_board_revision
- * Description: Return board revision.
- */
-u32 get_board_rev(void)
-{
- return simple_strtol(hw_build_ptr, NULL, 16);
-}
-#endif
-
-/*
- * Routine: setup_board_tags
- * Description: Append board specific boot tags.
- */
-void setup_board_tags(struct tag **in_params)
-{
- int setup_console_atag;
- char *setup_boot_reason_atag;
- char *setup_boot_mode_atag;
- char *str;
- int i;
- int size;
- int total_size;
- struct tag *params;
- struct tag_omap *t;
-
- params = (struct tag *)gd->bd->bi_boot_params;
-
- params->u.core.flags = 0x0;
- params->u.core.pagesize = 0x1000;
- params->u.core.rootdev = 0x0;
-
- /* append omap atag only if env setup_omap_atag is set to 1 */
- str = env_get("setup_omap_atag");
- if (!str || str[0] != '1')
- return;
-
- str = env_get("setup_console_atag");
- if (str && str[0]) {
- if (str[0] == '1')
- setup_console_atag = 1;
- else
- setup_console_atag = 0;
- } else {
- if (serial_was_console_enabled)
- setup_console_atag = 1;
- else
- setup_console_atag = 0;
- }
-
- setup_boot_reason_atag = env_get("setup_boot_reason_atag");
- setup_boot_mode_atag = env_get("setup_boot_mode_atag");
-
- params = *in_params;
- t = (struct tag_omap *)&params->u;
- total_size = sizeof(struct tag_header);
-
- for (i = 0; omap[i].hdr.tag; i++) {
-
- /* skip serial console tag */
- if (!setup_console_atag &&
- omap[i].hdr.tag == OMAP_TAG_SERIAL_CONSOLE)
- continue;
-
- size = omap[i].hdr.size + sizeof(struct tag_omap_header);
- memcpy(t, &omap[i], size);
-
- /* set uart tag to 0 - disable serial console */
- if (!setup_console_atag && omap[i].hdr.tag == OMAP_TAG_UART)
- t->u.uart.enabled_uarts = 0;
-
- /* change boot reason */
- if (setup_boot_reason_atag &&
- omap[i].hdr.tag == OMAP_TAG_BOOT_REASON) {
- memset(t->u.boot_reason.reason_str, 0, 12);
- strcpy(t->u.boot_reason.reason_str,
- setup_boot_reason_atag);
- }
-
- /* change boot mode */
- if (setup_boot_mode_atag &&
- omap[i].hdr.tag == OMAP_TAG_VERSION_STR &&
- strcmp(omap[i].u.version.component, "boot-mode") == 0) {
- memset(t->u.version.version, 0, 12);
- strcpy(t->u.version.version, setup_boot_mode_atag);
- }
-
- total_size += size;
- t = tag_omap_next(t);
-
- }
-
- params->hdr.tag = ATAG_BOARD;
- params->hdr.size = total_size >> 2;
- params = tag_next(params);
-
- *in_params = params;
-}
-
-static int rx51_video_probe(struct udevice *dev)
-{
- struct video_uc_plat *uc_plat = dev_get_uclass_plat(dev);
- struct video_priv *uc_priv = dev_get_uclass_priv(dev);
-
- uc_plat->base = 0x8f9c0000;
- uc_plat->size = 800 * 480 * sizeof(u16);
- uc_priv->xsize = 800;
- uc_priv->ysize = 480;
- uc_priv->bpix = VIDEO_BPP16;
-
- video_set_flush_dcache(dev, true);
-
- return 0;
-}
-
-U_BOOT_DRIVER(rx51_video) = {
- .name = "rx51_video",
- .id = UCLASS_VIDEO,
- .probe = rx51_video_probe,
-};
-
-/*
- * Routine: twl4030_regulator_set_mode
- * Description: Set twl4030 regulator mode over i2c powerbus.
- */
-static void twl4030_regulator_set_mode(u8 id, u8 mode)
-{
- u16 msg = MSG_SINGULAR(DEV_GRP_P1, id, mode);
- twl4030_i2c_write_u8(TWL4030_CHIP_PM_MASTER,
- TWL4030_PM_MASTER_PB_WORD_MSB, msg >> 8);
- twl4030_i2c_write_u8(TWL4030_CHIP_PM_MASTER,
- TWL4030_PM_MASTER_PB_WORD_LSB, msg & 0xff);
-}
-
-static void omap3_emu_romcode_call(u32 service_id, u32 *parameters)
-{
- u32 i, num_params = *parameters;
- u32 *sram_scratch_space = (u32 *)OMAP3_PUBLIC_SRAM_SCRATCH_AREA;
-
- /*
- * copy the parameters to an un-cached area to avoid coherency
- * issues
- */
- for (i = 0; i < num_params; i++) {
- __raw_writel(*parameters, sram_scratch_space);
- parameters++;
- sram_scratch_space++;
- }
-
- /* Now make the PPA call */
- do_omap3_emu_romcode_call(service_id, OMAP3_PUBLIC_SRAM_SCRATCH_AREA);
-}
-
-void omap3_set_aux_cr_secure(u32 acr)
-{
- struct emu_hal_params_rx51 emu_romcode_params = { 0, };
-
- emu_romcode_params.num_params = 2;
- emu_romcode_params.param1 = acr;
-
- omap3_emu_romcode_call(OMAP3_EMU_HAL_API_WRITE_ACR,
- (u32 *)&emu_romcode_params);
-}
-
-/*
- * Routine: omap3_update_aux_cr_secure_rx51
- * Description: Modify the contents Auxiliary Control Register.
- * Parameters:
- * set_bits - bits to set in ACR
- * clr_bits - bits to clear in ACR
- */
-static void omap3_update_aux_cr_secure_rx51(u32 set_bits, u32 clear_bits)
-{
- u32 acr;
-
- /* Read ACR */
- asm volatile ("mrc p15, 0, %0, c1, c0, 1" : "=r" (acr));
- acr &= ~clear_bits;
- acr |= set_bits;
- omap3_set_aux_cr_secure(acr);
-}
-
-/*
- * Routine: misc_init_r
- * Description: Configure board specific parts.
- */
-int misc_init_r(void)
-{
- struct udevice *dev;
- char buf[12];
- u8 state;
-
- /* disable lp5523 led */
- if (i2c_get_chip_for_busnum(1, 0x32, 1, &dev) == 0)
- dm_i2c_reg_write(dev, 0x00, 0x00);
-
- /* initialize twl4030 power managment */
- twl4030_power_init();
- twl4030_power_mmc_init(0);
- twl4030_power_mmc_init(1);
-
- /* set VSIM to 1.8V */
- twl4030_pmrecv_vsel_cfg(TWL4030_PM_RECEIVER_VSIM_DEDICATED,
- TWL4030_PM_RECEIVER_VSIM_VSEL_18,
- TWL4030_PM_RECEIVER_VSIM_DEV_GRP,
- TWL4030_PM_RECEIVER_DEV_GRP_P1);
-
- /* store I2C access state */
- twl4030_i2c_read_u8(TWL4030_CHIP_PM_MASTER, TWL4030_PM_MASTER_PB_CFG,
- &state);
-
- /* enable I2C access to powerbus (needed for twl4030 regulator) */
- twl4030_i2c_write_u8(TWL4030_CHIP_PM_MASTER, TWL4030_PM_MASTER_PB_CFG,
- 0x02);
-
- /* set VAUX3, VSIM and VMMC1 state to active - enable eMMC memory */
- twl4030_regulator_set_mode(RES_VAUX3, RES_STATE_ACTIVE);
- twl4030_regulator_set_mode(RES_VSIM, RES_STATE_ACTIVE);
- twl4030_regulator_set_mode(RES_VMMC1, RES_STATE_ACTIVE);
-
- /* restore I2C access state */
- twl4030_i2c_write_u8(TWL4030_CHIP_PM_MASTER, TWL4030_PM_MASTER_PB_CFG,
- state);
-
- /* set env variable attkernaddr for relocated kernel */
- sprintf(buf, "%#x", KERNEL_ADDRESS);
- env_set("attkernaddr", buf);
-
- /* initialize omap tags */
- init_omap_tags();
-
- /* reuse atags from previous bootloader */
- reuse_atags();
-
- omap_die_id_display();
- print_cpuinfo();
-
- /*
- * Cortex-A8(r1p0..r1p2) errata 430973 workaround
- * Set IBE bit in Auxiliary Control Register
- *
- * Call this routine only on real secure device
- * Qemu does not implement secure PPA and crash
- */
- if (get_device_type() == HS_DEVICE)
- omap3_update_aux_cr_secure_rx51(1 << 6, 0);
-
- return 0;
-}
-
-static unsigned long int twl_wd_time; /* last time of watchdog reset */
-static unsigned long int twl_i2c_lock;
-
-/*
- * Routine: rx51_watchdog_reset
- * Description: Reset timeout of twl4030 watchdog.
- */
-static int rx51_watchdog_reset(struct udevice *dev)
-{
- u8 timeout = 0;
-
- /* do not reset watchdog too often - max every 4s */
- if (get_timer(twl_wd_time) < 4 * CONFIG_SYS_HZ)
- return 0;
-
- /* localy lock twl4030 i2c bus */
- if (test_and_set_bit(0, &twl_i2c_lock))
- return 0;
-
- /* read actual watchdog timeout */
- twl4030_i2c_read_u8(TWL4030_CHIP_PM_RECEIVER,
- TWL4030_PM_RECEIVER_WATCHDOG_CFG, &timeout);
-
- /* timeout 0 means watchdog is disabled */
- /* reset watchdog timeout to 31s (maximum) */
- if (timeout != 0)
- twl4030_i2c_write_u8(TWL4030_CHIP_PM_RECEIVER,
- TWL4030_PM_RECEIVER_WATCHDOG_CFG, 31);
-
- /* store last watchdog reset time */
- twl_wd_time = get_timer(0);
-
- /* localy unlock twl4030 i2c bus */
- test_and_clear_bit(0, &twl_i2c_lock);
-
- return 0;
-}
-
-static int rx51_watchdog_start(struct udevice *dev, u64 timeout_ms, ulong flags)
-{
- return 0;
-}
-
-static int rx51_watchdog_probe(struct udevice *dev)
-{
- return 0;
-}
-
-static const struct wdt_ops rx51_watchdog_ops = {
- .start = rx51_watchdog_start,
- .reset = rx51_watchdog_reset,
-};
-
-U_BOOT_DRIVER(rx51_watchdog) = {
- .name = "rx51_watchdog",
- .id = UCLASS_WDT,
- .ops = &rx51_watchdog_ops,
- .probe = rx51_watchdog_probe,
-};
-
-/*
- * TWL4030 keypad handler for cfb_console
- */
-
-static const char keymap[] = {
- /* normal */
- 'q', 'o', 'p', ',', '\b', 0, 'a', 's',
- 'w', 'd', 'f', 'g', 'h', 'j', 'k', 'l',
- 'e', '.', 0, '\r', 0, 'z', 'x', 'c',
- 'r', 'v', 'b', 'n', 'm', ' ', 0, 0,
- 't', 0, 0, 0, 0, 0, 0, 0,
- 'y', 0, 0, 0, 0, 0, 0, 0,
- 'u', 0, 0, 0, 0, 0, 0, 0,
- 'i', 5, 6, 0, 0, 0, 0, 0,
- /* fn */
- '1', '9', '0', '=', '\b', 0, '*', '+',
- '2', '#', '-', '_', '(', ')', '&', '!',
- '3', '?', '^', '\r', 0, 156, '$', 238,
- '4', '/', '\\', '"', '\'', '@', 0, '<',
- '5', '|', '>', 0, 0, 0, 0, 0,
- '6', 0, 0, 0, 0, 0, 0, 0,
- '7', 0, 0, 0, 0, 0, 0, 0,
- '8', 16, 17, 0, 0, 0, 0, 0,
-};
-
-static u8 keys[8];
-static u8 old_keys[8] = {0, 0, 0, 0, 0, 0, 0, 0};
-#define KEYBUF_SIZE 32
-static u8 keybuf[KEYBUF_SIZE];
-static u8 keybuf_head;
-static u8 keybuf_tail;
-
-/*
- * Routine: rx51_kp_start
- * Description: Initialize HW keyboard.
- */
-static int rx51_kp_start(struct udevice *dev)
-{
- int ret = 0;
- u8 ctrl;
- ret = twl4030_i2c_read_u8(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_KEYP_CTRL_REG, &ctrl);
-
- if (ret)
- return ret;
-
- /* turn on keyboard and use hardware scanning */
- ctrl |= TWL4030_KEYPAD_CTRL_KBD_ON;
- ctrl |= TWL4030_KEYPAD_CTRL_SOFT_NRST;
- ctrl |= TWL4030_KEYPAD_CTRL_SOFTMODEN;
- ret |= twl4030_i2c_write_u8(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_KEYP_CTRL_REG, ctrl);
- /* enable key event status */
- ret |= twl4030_i2c_write_u8(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_KEYP_IMR1, 0xfe);
- /* enable interrupt generation on rising and falling */
- /* this is a workaround for qemu twl4030 emulation */
- ret |= twl4030_i2c_write_u8(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_KEYP_EDR, 0x57);
- /* enable ISR clear on read */
- ret |= twl4030_i2c_write_u8(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_KEYP_SIH_CTRL, 0x05);
- return 0;
-}
-
-static void rx51_kp_fill(u8 k, u8 mods)
-{
- /* check if some cursor key without meta fn key was pressed */
- if (!(mods & 2) && (k == 18 || k == 31 || k == 33 || k == 34)) {
- keybuf[keybuf_tail++] = '\e';
- keybuf_tail %= KEYBUF_SIZE;
- keybuf[keybuf_tail++] = '[';
- keybuf_tail %= KEYBUF_SIZE;
- if (k == 18) /* up */
- keybuf[keybuf_tail++] = 'A';
- else if (k == 31) /* left */
- keybuf[keybuf_tail++] = 'D';
- else if (k == 33) /* down */
- keybuf[keybuf_tail++] = 'B';
- else if (k == 34) /* right */
- keybuf[keybuf_tail++] = 'C';
- keybuf_tail %= KEYBUF_SIZE;
- return;
- }
-
- if (mods & 2) { /* fn meta key was pressed */
- k = keymap[k+64];
- } else {
- k = keymap[k];
- if (mods & 1) { /* ctrl key was pressed */
- if (k >= 'a' && k <= 'z')
- k -= 'a' - 1;
- }
- if (mods & 4) { /* shift key was pressed */
- if (k >= 'a' && k <= 'z')
- k += 'A' - 'a';
- else if (k == '.')
- k = ':';
- else if (k == ',')
- k = ';';
- }
- }
- keybuf[keybuf_tail++] = k;
- keybuf_tail %= KEYBUF_SIZE;
-}
-
-/*
- * Routine: rx51_kp_tstc
- * Description: Test if key was pressed (from buffer).
- */
-static int rx51_kp_tstc(struct udevice *dev)
-{
- u8 c, r, dk, i;
- u8 intr;
- u8 mods;
-
- /* localy lock twl4030 i2c bus */
- if (test_and_set_bit(0, &twl_i2c_lock))
- return 0;
-
- /* twl4030 remembers up to 2 events */
- for (i = 0; i < 2; i++) {
-
- /* check interrupt register for events */
- twl4030_i2c_read_u8(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_KEYP_ISR1 + (2 * i), &intr);
-
- /* no event */
- if (!(intr&1))
- continue;
-
- /* read the key state */
- twl4030_i2c_read(TWL4030_CHIP_KEYPAD,
- TWL4030_KEYPAD_FULL_CODE_7_0, keys, 8);
-
- /* cut out modifier keys from the keystate */
- mods = keys[4] >> 4;
- keys[4] &= 0x0f;
-
- /* space key is indicated by two different bits */
- keys[3] |= (keys[3] & (1 << 6)) >> 1;
- keys[3] &= ~(1 << 6);
-
- for (c = 0; c < 8; c++) {
-
- /* get newly pressed keys only */
- dk = ((keys[c] ^ old_keys[c])&keys[c]);
- old_keys[c] = keys[c];
-
- /* fill the keybuf */
- for (r = 0; r < 8; r++) {
- if (dk&1)
- rx51_kp_fill((c*8)+r, mods);
- dk = dk >> 1;
- }
-
- }
-
- }
-
- /* localy unlock twl4030 i2c bus */
- test_and_clear_bit(0, &twl_i2c_lock);
-
- return (KEYBUF_SIZE + keybuf_tail - keybuf_head)%KEYBUF_SIZE;
-}
-
-/*
- * Routine: rx51_kp_getc
- * Description: Get last pressed key (from buffer).
- */
-static int rx51_kp_getc(struct udevice *dev)
-{
- keybuf_head %= KEYBUF_SIZE;
- while (!rx51_kp_tstc(dev))
- schedule();
- return keybuf[keybuf_head++];
-}
-
-static int rx51_kp_probe(struct udevice *dev)
-{
- struct keyboard_priv *uc_priv = dev_get_uclass_priv(dev);
- struct stdio_dev *sdev = &uc_priv->sdev;
-
- strcpy(sdev->name, "keyboard");
- return input_stdio_register(sdev);
-}
-
-static const struct keyboard_ops rx51_kp_ops = {
- .start = rx51_kp_start,
- .tstc = rx51_kp_tstc,
- .getc = rx51_kp_getc,
-};
-
-U_BOOT_DRIVER(rx51_kp) = {
- .name = "rx51_kp",
- .id = UCLASS_KEYBOARD,
- .probe = rx51_kp_probe,
- .ops = &rx51_kp_ops,
-};
-
-static const struct mmc_config rx51_mmc_cfg = {
- .host_caps = MMC_MODE_4BIT | MMC_MODE_HS_52MHz | MMC_MODE_HS,
- .f_min = 400000,
- .f_max = 52000000,
- .b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT,
- .voltages = MMC_VDD_32_33 | MMC_VDD_33_34 | MMC_VDD_165_195,
-};
-
-static const struct omap_hsmmc_plat rx51_mmc[] = {
- { rx51_mmc_cfg, (struct hsmmc *)OMAP_HSMMC1_BASE },
- { rx51_mmc_cfg, (struct hsmmc *)OMAP_HSMMC2_BASE },
-};
-
-U_BOOT_DRVINFOS(rx51_mmc) = {
- { "omap_hsmmc", &rx51_mmc[0] },
- { "omap_hsmmc", &rx51_mmc[1] },
-};
-
-static const struct omap_i2c_plat rx51_i2c[] = {
- { I2C_BASE1, 100000, OMAP_I2C_REV_V1 },
- { I2C_BASE2, 100000, OMAP_I2C_REV_V1 },
- { I2C_BASE3, 100000, OMAP_I2C_REV_V1 },
-};
-
-U_BOOT_DRVINFOS(rx51_i2c) = {
- { "i2c_omap", &rx51_i2c[0] },
- { "i2c_omap", &rx51_i2c[1] },
- { "i2c_omap", &rx51_i2c[2] },
-};
-
-U_BOOT_DRVINFOS(rx51_watchdog) = {
- { "rx51_watchdog" },
-};
-
-U_BOOT_DRVINFOS(rx51_video) = {
- { "rx51_video" },
-};
-
-U_BOOT_DRVINFOS(rx51_kp) = {
- { "rx51_kp" },
-};
-
-static const struct ns16550_plat rx51_serial = {
- .base = CFG_SYS_NS16550_COM3,
- .reg_shift = 2,
- .clock = CFG_SYS_NS16550_CLK,
- .fcr = UART_FCR_DEFVAL,
-};
-
-U_BOOT_DRVINFOS(rx51_uart) = {
- { "omap_serial", &rx51_serial },
-};
diff --git a/board/nokia/rx51/tag_omap.h b/board/nokia/rx51/tag_omap.h
deleted file mode 100644
index b99d6b7de17..00000000000
--- a/board/nokia/rx51/tag_omap.h
+++ /dev/null
@@ -1,294 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * (C) Copyright 2011-2012
- * Pali Rohár <pali@kernel.org>
- *
- * (C) Copyright 2011
- * marcel@mesa.nl, Mesa Consulting B.V.
- *
- * (C) Copyright 2004-2005
- * Nokia Corporation
- */
-
-
-/*
- * Code copied from maemo kernel 2.6.28 file
- * arch/arm/plat-omap/include/mach/board.h
- *
- * Information structures for board-specific data
- *
- * Copyright (C) 2004 Nokia Corporation
- * Written by Juha Yrjölä <juha.yrjola@nokia.com>
- */
-
-/* Different peripheral ids */
-#define OMAP_TAG_CLOCK 0x4f01
-#define OMAP_TAG_SERIAL_CONSOLE 0x4f03
-#define OMAP_TAG_USB 0x4f04
-#define OMAP_TAG_LCD 0x4f05
-#define OMAP_TAG_GPIO_SWITCH 0x4f06
-#define OMAP_TAG_UART 0x4f07
-#define OMAP_TAG_FBMEM 0x4f08
-#define OMAP_TAG_STI_CONSOLE 0x4f09
-#define OMAP_TAG_CAMERA_SENSOR 0x4f0a
-#define OMAP_TAG_PARTITION 0x4f0b
-#define OMAP_TAG_TEA5761 0x4f10
-#define OMAP_TAG_TMP105 0x4f11
-
-#define OMAP_TAG_BOOT_REASON 0x4f80
-#define OMAP_TAG_FLASH_PART_STR 0x4f81
-#define OMAP_TAG_VERSION_STR 0x4f82
-
-#define OMAP_TAG_NOKIA_BT 0x4e01
-#define OMAP_TAG_WLAN_CX3110X 0x4e02
-#define OMAP_TAG_CBUS 0x4e03
-#define OMAP_TAG_EM_ASIC_BB5 0x4e04
-
-
-struct omap_clock_config {
- /* 0 for 12 MHz, 1 for 13 MHz and 2 for 19.2 MHz */
- u8 system_clock_type;
-};
-
-struct omap_serial_console_config {
- u8 console_uart;
- u32 console_speed;
-};
-
-struct omap_sti_console_config {
- unsigned enable:1;
- u8 channel;
-};
-
-struct omap_usb_config {
- /* Configure drivers according to the connectors on your board:
- * - "A" connector (rectagular)
- * ... for host/OHCI use, set "register_host".
- * - "B" connector (squarish) or "Mini-B"
- * ... for device/gadget use, set "register_dev".
- * - "Mini-AB" connector (very similar to Mini-B)
- * ... for OTG use as device OR host, initialize "otg"
- */
- unsigned register_host:1;
- unsigned register_dev:1;
- u8 otg; /* port number, 1-based: usb1 == 2 */
-
- u8 hmc_mode;
-
- /* implicitly true if otg: host supports remote wakeup? */
- u8 rwc;
-
- /* signaling pins used to talk to transceiver on usbN:
- * 0 == usbN unused
- * 2 == usb0-only, using internal transceiver
- * 3 == 3 wire bidirectional
- * 4 == 4 wire bidirectional
- * 6 == 6 wire unidirectional (or TLL)
- */
- u8 pins[3];
-};
-
-struct omap_lcd_config {
- char panel_name[16];
- char ctrl_name[16];
- s16 nreset_gpio;
- u8 data_lines;
-};
-
-struct omap_fbmem_config {
- u32 start;
- u32 size;
-};
-
-struct omap_gpio_switch_config {
- char name[12];
- u16 gpio;
- u8 flags:4;
- u8 type:4;
- unsigned int key_code:24; /* Linux key code */
-};
-
-struct omap_uart_config {
- /* Bit field of UARTs present; bit 0 --> UART1 */
- unsigned int enabled_uarts;
-};
-
-struct omap_tea5761_config {
- u16 enable_gpio;
-};
-
-struct omap_partition_config {
- char name[16];
- unsigned int size;
- unsigned int offset;
- /* same as in include/linux/mtd/partitions.h */
- unsigned int mask_flags;
-};
-
-struct omap_flash_part_str_config {
- char part_table[0];
-};
-
-struct omap_boot_reason_config {
- char reason_str[12];
-};
-
-struct omap_version_config {
- char component[12];
- char version[12];
-};
-
-/*
- * Code copied from maemo kernel 2.6.28 file
- * arch/arm/plat-omap/include/mach/board-nokia.h
- *
- * Information structures for Nokia-specific board config data
- *
- * Copyright (C) 2005 Nokia Corporation
- */
-
-struct omap_bluetooth_config {
- u8 chip_type;
- u8 bt_wakeup_gpio;
- u8 host_wakeup_gpio;
- u8 reset_gpio;
- u8 bt_uart;
- u8 bd_addr[6];
- u8 bt_sysclk;
-};
-
-struct omap_wlan_cx3110x_config {
- u8 chip_type;
- u8 reserverd;
- s16 power_gpio;
- s16 irq_gpio;
- s16 spi_cs_gpio;
-};
-
-struct omap_cbus_config {
- s16 clk_gpio;
- s16 dat_gpio;
- s16 sel_gpio;
-};
-
-struct omap_em_asic_bb5_config {
- s16 retu_irq_gpio;
- s16 tahvo_irq_gpio;
-};
-
-/*
- * omap_tag handling
- *
- * processing omap tag structures
- *
- * Copyright (C) 2011 marcel@mesa.nl, Mesa Consulting B.V.
- * Copyright (C) 2012 Pali Rohár <pali@kernel.org>
- */
-
-/* TI OMAP specific information */
-#define ATAG_BOARD 0x414f4d50
-
-struct tag_omap_header {
- u16 tag;
- u16 size;
-};
-
-struct tag_omap {
- struct tag_omap_header hdr;
- union {
- struct omap_clock_config clock;
- struct omap_serial_console_config serial_console;
- struct omap_sti_console_config sti_console;
- struct omap_usb_config usb;
- struct omap_lcd_config lcd;
- struct omap_fbmem_config fbmem;
- struct omap_gpio_switch_config gpio_switch;
- struct omap_uart_config uart;
- struct omap_tea5761_config tea5761;
- struct omap_partition_config partition;
- struct omap_flash_part_str_config flash_part_str;
- struct omap_boot_reason_config boot_reason;
- struct omap_version_config version;
- struct omap_bluetooth_config bluetooth;
- struct omap_wlan_cx3110x_config wlan_cx3110x;
- struct omap_cbus_config cbus;
- struct omap_em_asic_bb5_config em_asic_bb5;
- } u;
-};
-
-#define tag_omap_next(t) ((struct tag_omap *)((u8 *)(t) + \
- (t)->hdr.size + sizeof(struct tag_omap_header)))
-
-#define OMAP_TAG_HEADER_CONFIG(config, type) \
- .hdr.tag = config, \
- .hdr.size = sizeof(struct type)
-
-#define OMAP_TAG_UART_CONFIG(p1) \
- { \
- OMAP_TAG_HEADER_CONFIG(OMAP_TAG_UART, omap_uart_config), \
- .u.uart.enabled_uarts = p1, \
- }
-
-#define OMAP_TAG_SERIAL_CONSOLE_CONFIG(p1, p2) \
- { \
- OMAP_TAG_HEADER_CONFIG(OMAP_TAG_SERIAL_CONSOLE, \
- omap_serial_console_config), \
- .u.serial_console.console_uart = p1, \
- .u.serial_console.console_speed = p2, \
- }
-
-#define OMAP_TAG_LCD_CONFIG(p1, p2, p3, p4) \
- { \
- OMAP_TAG_HEADER_CONFIG(OMAP_TAG_LCD, omap_lcd_config), \
- .u.lcd.panel_name = p1, \
- .u.lcd.ctrl_name = p2, \
- .u.lcd.nreset_gpio = p3, \
- .u.lcd.data_lines = p4, \
- }
-
-#define OMAP_TAG_GPIO_SWITCH_CONFIG(p1, p2, p3, p4, p5) \
- { \
- OMAP_TAG_HEADER_CONFIG(OMAP_TAG_GPIO_SWITCH, \
- omap_gpio_switch_config), \
- .u.gpio_switch.name = p1, \
- .u.gpio_switch.gpio = p2, \
- .u.gpio_switch.flags = p3, \
- .u.gpio_switch.type = p4, \
- .u.gpio_switch.key_code = p5, \
- }
-
-#define OMAP_TAG_WLAN_CX3110X_CONFIG(p1, p2, p3, p4, p5) \
- { \
- OMAP_TAG_HEADER_CONFIG(OMAP_TAG_WLAN_CX3110X, \
- omap_wlan_cx3110x_config), \
- .u.wlan_cx3110x.chip_type = p1, \
- .u.wlan_cx3110x.reserverd = p2, \
- .u.wlan_cx3110x.power_gpio = p3, \
- .u.wlan_cx3110x.irq_gpio = p4, \
- .u.wlan_cx3110x.spi_cs_gpio = p5, \
- }
-
-#define OMAP_TAG_PARTITION_CONFIG(p1, p2, p3, p4) \
- { \
- OMAP_TAG_HEADER_CONFIG(OMAP_TAG_PARTITION, \
- omap_partition_config), \
- .u.partition.name = p1, \
- .u.partition.size = p2, \
- .u.partition.offset = p3, \
- .u.partition.mask_flags = p4, \
- }
-
-#define OMAP_TAG_BOOT_REASON_CONFIG(p1) \
- { \
- OMAP_TAG_HEADER_CONFIG(OMAP_TAG_BOOT_REASON, \
- omap_boot_reason_config), \
- .u.boot_reason.reason_str = p1, \
- }
-
-#define OMAP_TAG_VERSION_STR_CONFIG(p1, p2) \
- { \
- OMAP_TAG_HEADER_CONFIG(OMAP_TAG_VERSION_STR, \
- omap_version_config), \
- .u.version.component = p1, \
- .u.version.version = p2, \
- }
diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig
deleted file mode 100644
index 8e55069950f..00000000000
--- a/configs/nokia_rx51_defconfig
+++ /dev/null
@@ -1,76 +0,0 @@
-CONFIG_ARM=y
-# CONFIG_SYS_THUMB_BUILD is not set
-CONFIG_SYS_L2CACHE_OFF=y
-CONFIG_ARCH_OMAP2PLUS=y
-CONFIG_SYS_MALLOC_LEN=0xc0000
-CONFIG_TARGET_NOKIA_RX51=y
-CONFIG_SYS_LOAD_ADDR=0x80008000
-CONFIG_OPTIMIZE_INLINING=y
-CONFIG_LTO=y
-# CONFIG_FIT is not set
-CONFIG_SUPPORT_RAW_INITRD=y
-CONFIG_BOOTDELAY=30
-CONFIG_AUTOBOOT_KEYED=y
-CONFIG_AUTOBOOT_MENU_SHOW=y
-CONFIG_USE_BOOTCOMMAND=y
-CONFIG_BOOTCOMMAND="run sdboot;run emmcboot;run attachboot;echo"
-CONFIG_USE_PREBOOT=y
-# CONFIG_SYS_DEVICE_NULLDEV is not set
-CONFIG_HUSH_PARSER=y
-CONFIG_SYS_CBSIZE=256
-CONFIG_SYS_PBSIZE=287
-# CONFIG_CMD_BDI is not set
-CONFIG_CMD_BOOTZ=y
-# CONFIG_BOOTM_NETBSD is not set
-# CONFIG_BOOTM_PLAN9 is not set
-# CONFIG_BOOTM_RTEMS is not set
-# CONFIG_BOOTM_VXWORKS is not set
-CONFIG_CMD_BOOTMENU=y
-# CONFIG_CMD_ELF is not set
-# CONFIG_CMD_IMI is not set
-# CONFIG_CMD_XIMG is not set
-# CONFIG_CMD_EXPORTENV is not set
-# CONFIG_CMD_IMPORTENV is not set
-# CONFIG_CMD_EDITENV is not set
-# CONFIG_CMD_SAVEENV is not set
-# CONFIG_CMD_ENV_EXISTS is not set
-# CONFIG_CMD_FLASH is not set
-CONFIG_CMD_GPIO=y
-CONFIG_CMD_I2C=y
-CONFIG_CMD_MMC=y
-CONFIG_CMD_MTD=y
-CONFIG_CMD_ONENAND=y
-# CONFIG_CMD_SETEXPR is not set
-# CONFIG_CMD_SLEEP is not set
-CONFIG_CMD_EXT2=y
-CONFIG_CMD_EXT4=y
-CONFIG_CMD_FAT=y
-CONFIG_MTDIDS_DEFAULT="onenand0=onenand"
-CONFIG_MTDPARTS_DEFAULT="mtdparts=onenand:128k(bootloader)ro,384k(config),256k(log),2m(kernel),2m(initfs),-(rootfs)"
-CONFIG_ENV_OVERWRITE=y
-CONFIG_SYS_RELOC_GD_ENV_ADDR=y
-# CONFIG_NET is not set
-# CONFIG_DM_WARN is not set
-# CONFIG_DM_DEVICE_REMOVE is not set
-# CONFIG_DM_SEQ_ALIAS is not set
-# CONFIG_BLOCK_CACHE is not set
-CONFIG_DM_I2C=y
-CONFIG_DM_KEYBOARD=y
-# CONFIG_MMC_HW_PARTITIONING is not set
-# CONFIG_MMC_VERBOSE is not set
-CONFIG_MMC_OMAP_HS=y
-CONFIG_MTD=y
-CONFIG_DM_SERIAL=y
-CONFIG_SPI=y
-CONFIG_USB=y
-CONFIG_USB_MUSB_UDC=y
-CONFIG_USB_OMAP3=y
-CONFIG_VIDEO=y
-CONFIG_VIDEO_LOGO=y
-# CONFIG_VIDEO_BPP8 is not set
-# CONFIG_VIDEO_BPP32 is not set
-CONFIG_SYS_WHITE_ON_BLACK=y
-CONFIG_SPLASH_SCREEN=y
-CONFIG_WATCHDOG_TIMEOUT_MSECS=31000
-CONFIG_WDT=y
-# CONFIG_GZIP is not set
diff --git a/doc/board/index.rst b/doc/board/index.rst
index 0194f0aaa3e..35dd3bcf5fa 100644
--- a/doc/board/index.rst
+++ b/doc/board/index.rst
@@ -32,7 +32,6 @@ Board-specific doc
lg/index
mediatek/index
microchip/index
- nokia/index
nxp/index
openpiton/index
phytec/index
diff --git a/doc/board/nokia/index.rst b/doc/board/nokia/index.rst
deleted file mode 100644
index b68c3c61316..00000000000
--- a/doc/board/nokia/index.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-.. SPDX-License-Identifier: GPL-2.0+
-
-Nokia
-=====
-
-.. toctree::
- :maxdepth: 2
-
- rx51
diff --git a/doc/board/nokia/rx51.rst b/doc/board/nokia/rx51.rst
deleted file mode 100644
index 93502e2dfc0..00000000000
--- a/doc/board/nokia/rx51.rst
+++ /dev/null
@@ -1,250 +0,0 @@
-.. SPDX-License-Identifier: GPL-2.0+
-
-Nokia RX-51 aka N900
-====================
-
-The ``nokia_rx51_defconfig`` configuration file results in a ``u-boot.bin``
-which can be chainloaded by the Nokia second stage bootloader (NOLO) in QEMU or
-on a real N900. It does very little hardware configuration because NOLO has
-already configured the board. It is only needed to enable the internal eMMC
-memory via the twl4030 regulator which is not enabled by NOLO.
-
-.. code-block:: bash
-
- make CROSS_COMPILE=arm-linux-gnueabi- nokia_rx51_defconfig u-boot.bin
-
-NOLO is expecting a kernel image and will treat any image it finds in
-OneNAND as such. This u-boot is intended to be flashed to the N900 like
-a kernel. In order to transparently boot the original kernel, it will be
-appended to ``u-boot.bin`` at 0x40000. NOLO will load the entire image into
-(random) memory and execute U-Boot, which saves hardware revision, boot reason
-and boot mode ATAGs set by NOLO. Then the bootscripts will attempt to load
-``uImage``, ``zImage`` or ``boot.scr`` file from a FAT or ext2/3/4 filesystem
-on external SD card or internal eMMC memory. If this fails or keyboard is
-closed then the appended kernel image will be booted using some generated
-and some stored ATAGs (see boot order).
-
-For generating combined image of U-Boot and kernel (either in uImage or zImage
-format) there is a simple script called ``u-boot-gen-combined``. It is available
-in following repository: https://github.com/pali/u-boot-maemo.
-
-To generate the ``combined.bin`` image from ``u-boot.bin`` and ``kernel.bin``
-(in either uImage or zImage format) use:
-
-.. code-block:: bash
-
- sh u-boot-gen-combined u-boot.bin kernel.bin combined.bin
-
-The original Maemo Fremantle PR1.3 zImage kernel binary is available at:
-http://repository.maemo.org/pool/maemo5.0/free/k/kernel/kernel_2.6.28-20103103+0m5_armel.deb
-
-To unpack it (from DEB/AR, TAR and FIASCO) execute the following commands:
-
-.. code-block:: bash
-
- ar x kernel_2.6.28-20103103+0m5_armel.deb data.tar.gz
- tar -O -xf data.tar.gz ./boot/zImage-2.6.28-20103103+0m5.fiasco > kernel_2.6.28-20103103+0m5.fiasco
- 0xFFFF -M kernel_2.6.28-20103103+0m5.fiasco -u
-
-The flashed image must start with a 2 KiB ``NOLO!img`` header which contains
-size of the image. The header consists of the bytes
-``NOLO!img\x02\x00\x00\x00\x00\x00\x00\x00`` followed by the 4 byte little
-endian size of the image. The rest of the 2 KiB header just contains zero bytes.
-
-The Nokia proprietary flasher and also the open source 0xFFFF flasher
-automatically prepend the required ``NOLO!img`` header and both applications
-expect that the image does not contain a ``NOLO!img`` header. Adding a
-``NOLO!img`` header is required only in case of using the ``nandwrite`` tool for
-flashing.
-
-The open source 0xFFFF flasher is available in the following repository:
-https://github.com/pali/0xFFFF
-
-It is possible to load ``u-boot.bin`` via USB to the N900 RAM and boot it
-without needing to flash it. This is done via 0xFFFF running on the host PC:
-
-.. code-block:: bash
-
- 0xFFFF -m u-boot.bin -l -b
-
-0xFFFF also supports flashing a kernel image either via USB or directly on
-N900 device. Flashing u-boot/kernel/combined image is done as:
-
-.. code-block:: bash
-
- 0xFFFF -m combined.bin -f
-
-Via 0xFFFF it is also possible to generate a standard flashable image in
-Nokia FIASCO format which contains metadata information like device
-identification (RX-51) and version string (v2021.04):
-
-.. code-block:: bash
-
- 0xFFFF -m RX-51:v2021.04:kernel:u-boot.bin -g u-boot.fiasco
-
-There is support for the hardware watchdog. The hardware watchdog is started by
-NOLO so U-Boot must reset the watchdog to prevent rebooting the device (but not
-very often, max every 2 seconds). There is also support for framebuffer display
-output with ANSI escape codes and the N900 hardware keyboard input.
-
-When U-Boot is starting it sets the IBE bit in the Auxiliary Control Register,
-which is needed for Thumb-2 ISA support. This is a workaround for erratum
-430973.
-
-Default boot order
-------------------
-
-0. if keyboard is closed boot automatically attached kernel image
-1. try boot from external SD card
-2. try boot from internal eMMC memory
-3. try boot from attached kernel image
-
-Boot from SD or eMMC in this order:
-
-1. boot from FAT partition
-
- a. find ``boot.scr`` on first FAT partition
- b. find ``uImage`` on first FAT partition
- c. find ``zImage`` on first FAT partition
- d. same order for 2nd - 4th FAT partition
-
-2. same as 1. but for ext2/3/4 partition
-
-Available additional commands/variables
----------------------------------------
-
-* run sdboot - Boot from external SD card (see boot order)
-* run emmcboot - Boot from internal eMMC memory (see boot order)
-* run attachboot - Boot attached kernel image (attached to U-Boot binary)
-
-\
-
-* run scriptload - Load boot script ``${mmcscriptfile}``
-* run scriptboot - Run loaded boot script
-* run kernload - Load kernel image ``${mmckernfile}``
-* run initrdload - Load initrd image ``${mmcinitrdfile}``
-* run kernboot - Boot loaded kernel image
-* run kerninitrdboot - Boot loaded kernel image with loaded initrd image
-
-\
-
-* run trymmcscriptboot - Try to load and boot script ``${mmcscriptfile}``
-* run trymmckernboot - Try to load and boot kernel image ``${mmckernfile}``
-* run trymmckerninitrdboot - Try to load and boot kernel image ``${mmckernfile}``
- with initrd image ``${mmcinitrdfile}``
-
-Additional variables for loading files from mmc
------------------------------------------------
-
-* mmc ``${mmcnum}`` (0 - external, 1 - internal)
-* partition number ``${mmcpart}`` (1 - 4)
-* partition type ``${mmctype}`` (fat, ext2, ext4; ext2 is just alias for ext4)
-
-Additional variables for booting a kernel
------------------------------------------
-
-* ``setup_omap_atag`` - Add OMAP table into atags structure (needed for maemo kernel)
-* ``setup_console_atag`` - Enable serial console in OMAP table
-* ``setup_boot_reason_atag`` - Change boot reason in OMAP table
-* ``setup_boot_mode_atag`` - Change boot mode in OMAP table
-
-Variable ``setup_omap_atag`` is automatically set when booting attached kernel.
-When variable ``setup_omap_atag`` is set, variable ``setup_console_atag`` is unset
-and u-boot standard output is set to serial then ``setup_console_atag`` is
-automatically set to 1. So output from Maemo kernel would go to serial port.
-
-UBIFS support
--------------
-
-UBIFS support is disabled, because U-Boot image is too big and cannot be
-flashed with attached kernel image to RX-51 kernel nand area. For enabling
-UBIFS support add following lines into file ``configs/nokia_rx51_defconfig``::
-
- CONFIG_CMD_UBI=y
- CONFIG_CMD_UBIFS=y
- CONFIG_MTD_UBI_BEB_LIMIT=10
-
-Early output
-------------
-
-Early U-Boot output can be enabled on serial console by adding following lines
-into file ``configs/nokia_rx51_defconfig``::
-
- CONFIG_DEBUG_UART=y
- CONFIG_DEBUG_UART_OMAP=y
- CONFIG_DEBUG_UART_SHIFT=2
- CONFIG_DEBUG_UART_BASE=0x49020000
- CONFIG_DEBUG_UART_CLOCK=48000000
-
-Note that early output is not available on USB tty console.
-
-Verbose debug output
---------------------
-
-Verbose debug output with maximal log level can be enabled by adding following
-lines into file ``configs/nokia_rx51_defconfig``::
-
- CONFIG_DM_DEBUG=y
- CONFIG_LOG=y
- CONFIG_LOGLEVEL=9
- CONFIG_LOG_MAX_LEVEL=9
- CONFIG_LOG_DEFAULT_LEVEL=9
-
-And compiling U-Boot by additional make parameter ``KCPPFLAGS=-DLOG_DEBUG``.
-
-Run in QEMU
------------
-
-Download and compile Linaro version of qemu which contains ``n900`` qemu
-machine. Source code is available in qemu-linaro git repository and the
-last working version is at commit 8f8d8e0796efe1a6f34cdd83fb798f3c41217ec1.
-
-Use following commands to compile ``qemu-system-arm`` binary with ``n900``
-qemu machine support:
-
-.. code-block:: bash
-
- git clone https://git.linaro.org/qemu/qemu-linaro.git
- cd qemu-linaro
- git checkout 8f8d8e0796efe1a6f34cdd83fb798f3c41217ec1
- ./configure --enable-system --target-list=arm-softmmu --disable-werror
- make -j4
- cd ..
- ln -s qemu-linaro/arm-softmmu/qemu-system-arm .
-
-Using ``n900`` qemu machine requires proprietary Nokia qemu ``qflasher`` tool
-(in reality it is just generator of qemu MTD images) with first stage images
-(``xloader-qemu.bin`` and ``secondary-qemu.bin``), similar what is required
-on the real HW. License of flasher and images allows non-commercial
-redistribution and it is available at maemo.org website:
-
-.. code-block:: bash
-
- wget -c http://repository.maemo.org/qemu-n900/qemu-n900.tar.gz
- tar -xf qemu-n900.tar.gz
-
-To generate qemu bootable MTD image ``mtd.img`` from U-Boot binary
-``u-boot.bin`` and unpacked first stage images, run following command:
-
-.. code-block:: bash
-
- ./qflasher -v -x xloader-qemu.bin -s secondary-qemu.bin -k u-boot.bin -m rx51 -o mtd.img
-
-Instead of ``u-boot.bin`` binary it is possible to also used combined
-U-Boot + kernel binary ``combined.bin``.
-
-Finally, to boot ``mtd.img`` with graphics display and keyboard with optional
-serial console on current terminal, run:
-
-.. code-block:: bash
-
- ./qemu-system-arm -M n900 -mtdblock mtd.img -serial /dev/tty
-
-Additionally it is possible to emulate also eMMC and uSD card by appending
-qemu ``-sd`` arguments:
-
-.. code-block:: bash
-
- ./qemu-system-arm -M n900 -mtdblock mtd.img -sd emmc.img -sd sd.img -serial /dev/tty
-
-For more examples, look into the ``test/nokia_rx51_test.sh`` CI testing script.
diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h
deleted file mode 100644
index 54eea322dd3..00000000000
--- a/include/configs/nokia_rx51.h
+++ /dev/null
@@ -1,174 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * (C) Copyright 2011-2012
- * Pali Rohár <pali@kernel.org>
- *
- * (C) Copyright 2010
- * Alistair Buxton <a.j.buxton@gmail.com>
- *
- * Derived from Beagle Board code:
- * (C) Copyright 2006-2008
- * Texas Instruments.
- * Richard Woodruff <r-woodruff2@ti.com>
- * Syed Mohammed Khasim <x0khasim@ti.com>
- *
- * Configuration settings for the Nokia RX-51 aka N900.
- */
-
-#ifndef __CONFIG_H
-#define __CONFIG_H
-
-/*
- * High Level Configuration Options
- */
-
-#include <asm/arch/cpu.h> /* get chip and board defs */
-#include <asm/arch/omap.h>
-#include <asm/arch/mem.h>
-#include <linux/stringify.h>
-
-/* Clock Defines */
-#define V_OSCK 26000000 /* Clock output from T2 */
-#define V_SCLK (V_OSCK >> 1)
-
-/*
- * Hardware drivers
- */
-
-/*
- * NS16550 Configuration
- */
-#define V_NS16550_CLK 48000000 /* 48MHz (APLL96/2) */
-
-#define CFG_SYS_NS16550_CLK V_NS16550_CLK
-
-/*
- * select serial console configuration
- */
-#define CFG_SYS_NS16550_COM3 OMAP34XX_UART3
-
-#define CFG_SYS_BAUDRATE_TABLE { 4800, 9600, 19200, 38400, 57600, 115200 }
-
-#define GPIO_SLIDE 71
-
-/*
- * Board ONENAND Info.
- */
-
-#define CFG_SYS_ONENAND_BASE ONENAND_MAP
-
-/* Environment information */
-#define CFG_EXTRA_ENV_SETTINGS \
- "usbtty=cdc_acm\0" \
- "stdin=usbtty,serial,keyboard\0" \
- "stdout=usbtty,serial,vidconsole\0" \
- "stderr=usbtty,serial,vidconsole\0" \
- "slide=gpio input " __stringify(GPIO_SLIDE) "\0" \
- "switchmmc=mmc dev ${mmcnum}\0" \
- "kernaddr=0x82008000\0" \
- "initrdaddr=0x84008000\0" \
- "scriptaddr=0x86008000\0" \
- "fileloadaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
- "fileload=${mmctype}load mmc ${mmcnum}:${mmcpart} " \
- "${fileloadaddr} ${mmcfile}\0" \
- "kernload=setenv fileloadaddr ${kernaddr};" \
- "setenv mmcfile ${mmckernfile};" \
- "run fileload\0" \
- "initrdload=setenv fileloadaddr ${initrdaddr};" \
- "setenv mmcfile ${mmcinitrdfile};" \
- "run fileload\0" \
- "scriptload=setenv fileloadaddr ${scriptaddr};" \
- "setenv mmcfile ${mmcscriptfile};" \
- "run fileload\0" \
- "scriptboot=echo Running ${mmcscriptfile} from mmc " \
- "${mmcnum}:${mmcpart} ...; source ${scriptaddr}\0" \
- "kernboot=echo Booting ${mmckernfile} from mmc " \
- "${mmcnum}:${mmcpart} ...; bootm ${kernaddr} || " \
- "bootz ${kernaddr}\0" \
- "kerninitrdboot=echo Booting ${mmckernfile} ${mmcinitrdfile} from mmc "\
- "${mmcnum}:${mmcpart} ...; bootm ${kernaddr} ${initrdaddr} || " \
- "bootz ${kernaddr} ${initrdaddr}\0" \
- "attachboot=echo Booting attached kernel image ...;" \
- "setenv setup_omap_atag 1;" \
- "bootm ${attkernaddr} || bootz ${attkernaddr};" \
- "setenv setup_omap_atag\0" \
- "trymmcscriptboot=run switchmmc && run scriptload && run scriptboot\0" \
- "trymmckernboot=run switchmmc && run kernload && run kernboot\0" \
- "trymmckerninitrdboot=run switchmmc && run initrdload && " \
- "run kernload && run kerninitrdboot\0" \
- "trymmcpartboot=setenv mmcscriptfile boot.scr; run trymmcscriptboot;" \
- "setenv mmckernfile uImage; run trymmckernboot;" \
- "setenv mmckernfile zImage; run trymmckernboot\0" \
- "trymmcallpartboot=setenv mmcpart 1; run trymmcpartboot;" \
- "setenv mmcpart 2; run trymmcpartboot;" \
- "setenv mmcpart 3; run trymmcpartboot;" \
- "setenv mmcpart 4; run trymmcpartboot\0" \
- "trymmcboot=if run switchmmc; then " \
- "setenv mmctype fat;" \
- "run trymmcallpartboot;" \
- "setenv mmctype ext4;" \
- "run trymmcallpartboot;" \
- "fi\0" \
- "emmcboot=setenv mmcnum 1; run trymmcboot\0" \
- "sdboot=setenv mmcnum 0; run trymmcboot\0" \
- "trymmcbootmenu=setenv mmctype fat && run trymmcscriptboot || " \
- "setenv mmctype ext4 && run trymmcscriptboot\0" \
- "preboot=setenv mmcpart 1; setenv mmcscriptfile bootmenu.scr;" \
- "setenv mmcnum 0 && run trymmcbootmenu || " \
- "setenv mmcnum 1 && run trymmcbootmenu;" \
- "if run slide; then true; else " \
- "setenv bootmenu_delay 0;" \
- "setenv bootdelay 0;" \
- "fi\0" \
- "menucmd=bootmenu\0" \
- "bootmenu_0=Attached kernel=run attachboot\0" \
- "bootmenu_1=Internal eMMC=run emmcboot\0" \
- "bootmenu_2=External SD card=run sdboot\0" \
- "bootmenu_3=U-Boot boot order=boot\0" \
- "bootmenu_delay=30\0" \
- ""
-
-#define CFG_POSTBOOTMENU \
- "echo;" \
- "echo Extra commands:;" \
- "echo run sdboot - Boot from SD card slot.;" \
- "echo run emmcboot - Boot internal eMMC memory.;" \
- "echo run attachboot - Boot attached kernel image.;" \
- "echo"
-
-/*
- * OMAP3 has 12 GP timers, they can be driven by the system clock
- * (12/13/16.8/19.2/38.4MHz) or by 32KHz clock. We use 13MHz (V_SCLK).
- * This rate is divided by a local divisor.
- */
-#define CFG_SYS_TIMERBASE (OMAP34XX_GPT2)
-
-/*
- * Physical Memory Map
- */
-#define PHYS_SDRAM_1 OMAP34XX_SDRC_CS0
-
-/*
- * FLASH and environment organization
- */
-
-#define CFG_SYS_SDRAM_BASE PHYS_SDRAM_1
-#define CFG_SYS_INIT_RAM_ADDR 0x4020f800
-#define CFG_SYS_INIT_RAM_SIZE 0x800
-
-/*
- * Attached kernel image
- */
-
-#define SDRAM_SIZE 0x10000000 /* 256 MB */
-#define SDRAM_END (CFG_SYS_SDRAM_BASE + SDRAM_SIZE)
-
-#define IMAGE_MAXSIZE 0x1FF800 /* 2 MB - 2 kB */
-#define KERNEL_OFFSET 0x40000 /* 256 kB */
-#define KERNEL_MAXSIZE (IMAGE_MAXSIZE-KERNEL_OFFSET)
-#define KERNEL_ADDRESS (SDRAM_END-KERNEL_MAXSIZE)
-
-/* Reserve protected RAM for attached kernel */
-#define CFG_PRAM ((KERNEL_MAXSIZE >> 10)+1)
-
-#endif /* __CONFIG_H */
diff --git a/test/nokia_rx51_test.sh b/test/nokia_rx51_test.sh
deleted file mode 100755
index dca9ef3027b..00000000000
--- a/test/nokia_rx51_test.sh
+++ /dev/null
@@ -1,420 +0,0 @@
-#!/bin/bash -e
-# SPDX-License-Identifier: GPL-2.0+
-# (C) 2020 Pali Rohár <pali@kernel.org>
-
-# External tools needed for this test:
-echo '
- wget
- git
- truncate
- tar
- dpkg
- dd
- make
- gcc
- arm-linux-gnueabi-gcc
- fakeroot (homepage http://fakeroot-ng.lingnu.com/)
- mcopy (from mtools, homepage http://www.gnu.org/software/mtools/)
- mformat (from mtools, homepage http://www.gnu.org/software/mtools/)
- /usr/sbin/mkfs.ubifs (from mtd-utils, homepage http://www.linux-mtd.infradead.org/)
- /usr/sbin/ubinize (from mtd-utils, homepage http://www.linux-mtd.infradead.org/)
- /lib/ld-linux.so.2 (32-bit x86 version of LD loader, needed for qflasher)
-' | while read tool info; do
- if test -z "$tool"; then continue; fi
- if ! which $tool 1>/dev/null 2>&1; then
- echo "Tool $tool was not found and is required to run this test"
- echo "First install $tool $info"
- exit 1
- fi
-done || exit 1
-
-echo
-echo "============================================================"
-echo "========== Compiling U-Boot for Nokia RX-51 board =========="
-echo "============================================================"
-echo
-
-# First compile u-boot-ubifs.bin binary with UBI/UBIFS support for Nokia RX-51 board according to doc/board/nokia/rx51.rst
-make nokia_rx51_config
-cat >> .config << EOF
-CONFIG_CMD_UBI=y
-CONFIG_CMD_UBIFS=y
-CONFIG_MTD_UBI_BEB_LIMIT=10
-EOF
-make olddefconfig
-make -j4 u-boot.bin CROSS_COMPILE=arm-linux-gnueabi-
-mv u-boot.bin u-boot-ubifs.bin
-
-# Then compile standard u-boot.bin binary for Nokia RX-51 board
-make nokia_rx51_config
-make -j4 u-boot.bin CROSS_COMPILE=arm-linux-gnueabi-
-
-# And then do all stuff in temporary directory
-mkdir -p nokia_rx51_tmp
-cd nokia_rx51_tmp
-
-test -f mkimage || ln -s ../tools/mkimage .
-test -f u-boot.bin || ln -s ../u-boot.bin .
-test -f u-boot-ubifs.bin || ln -s ../u-boot-ubifs.bin .
-
-echo
-echo "=========================================================================="
-echo "========== Downloading and compiling qemu from qemu-linaro fork =========="
-echo "=========================================================================="
-echo
-
-# Download and compile linaro version qemu which has support for n900 machine
-# Last working commit is 8f8d8e0796efe1a6f34cdd83fb798f3c41217ec1
-if ! test -f qemu-system-arm; then
- test -d qemu-linaro || git clone https://git.linaro.org/qemu/qemu-linaro.git
- cd qemu-linaro
- git checkout 8f8d8e0796efe1a6f34cdd83fb798f3c41217ec1
- ./configure --enable-system --target-list=arm-softmmu --python=/usr/bin/python2.7 --disable-sdl --disable-gtk --disable-curses --audio-drv-list= --audio-card-list= --disable-werror --disable-xen --disable-xen-pci-passthrough --disable-brlapi --disable-vnc --disable-curl --disable-slirp --disable-kvm --disable-user --disable-linux-user --disable-bsd-user --disable-guest-base --disable-uuid --disable-vde --disable-linux-aio --disable-cap-ng --disable-attr --disable-blobs --disable-docs --disable-spice --disable-libiscsi --disable-smartcard-nss --disable-usb-redir --disable-guest-agent --disable-seccomp --disable-glusterfs --disable-nptl --disable-fdt
- make -j4
- cd ..
- ln -s qemu-linaro/arm-softmmu/qemu-system-arm .
-fi
-
-echo
-echo "==================================================="
-echo "========== Downloading external binaries =========="
-echo "==================================================="
-echo
-
-# Download qflasher and nolo images
-# This is proprietary qemu flasher tool with first stage images, but license allows non-commercial redistribution
-if ! test -f qflasher || ! test -f xloader-qemu.bin || ! test -f secondary-qemu.bin; then
- test -f qemu-n900.tar.gz || wget -c http://repository.maemo.org/qemu-n900/qemu-n900.tar.gz
- tar -xf qemu-n900.tar.gz
-fi
-
-# Download Maemo script u-boot-gen-combined
-if ! test -f u-boot-gen-combined; then
- test -d u-boot-maemo || git clone https://github.com/pali/u-boot-maemo.git
- chmod +x u-boot-maemo/debian/u-boot-gen-combined
- ln -s u-boot-maemo/debian/u-boot-gen-combined .
-fi
-
-# Download Maemo fiasco kernel
-if ! test -d kernel_2.6.28; then
- test -f kernel_2.6.28-20103103+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/k/kernel/kernel_2.6.28-20103103+0m5_armel.deb
- dpkg -x kernel_2.6.28-20103103+0m5_armel.deb kernel_2.6.28
-fi
-
-# Download Maemo libc
-if ! test -d libc6_2.5.1; then
- test -f libc6_2.5.1-1eglibc27+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/g/glibc/libc6_2.5.1-1eglibc27+0m5_armel.deb
- dpkg -x libc6_2.5.1-1eglibc27+0m5_armel.deb libc6_2.5.1
-fi
-
-# Download Maemo busybox
-if ! test -d busybox_1.10.2; then
- test -f busybox_1.10.2.legal-1osso30+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/b/busybox/busybox_1.10.2.legal-1osso30+0m5_armel.deb
- dpkg -x busybox_1.10.2.legal-1osso30+0m5_armel.deb busybox_1.10.2
-fi
-
-echo
-echo "======================================="
-echo "========== Generating images =========="
-echo "======================================="
-echo
-
-# Generate kernel image in zImage and uImage format from FIASCO format
-dd if=kernel_2.6.28/boot/zImage-2.6.28-20103103+0m5.fiasco of=zImage-2.6.28-omap1 skip=95 bs=1
-./mkimage -A arm -O linux -T kernel -C none -a 80008000 -e 80008000 -n zImage-2.6.28-omap1 -d zImage-2.6.28-omap1 uImage-2.6.28-omap1
-
-# Generate rootfs directory
-mkdir -p rootfs
-mkdir -p rootfs/dev/
-mkdir -p rootfs/bin/
-mkdir -p rootfs/sbin/
-mkdir -p rootfs/lib/
-cp -a busybox_1.10.2/bin/busybox rootfs/bin/
-cp -a libc6_2.5.1/lib/ld-linux.so.3 rootfs/lib/
-cp -a libc6_2.5.1/lib/ld-2.5.so rootfs/lib/
-cp -a libc6_2.5.1/lib/libc.so.6 rootfs/lib/
-cp -a libc6_2.5.1/lib/libc-2.5.so rootfs/lib/
-cp -a libc6_2.5.1/lib/libcrypt.so.1 rootfs/lib/
-cp -a libc6_2.5.1/lib/libcrypt-2.5.so rootfs/lib/
-test -f rootfs/bin/sh || ln -sf busybox rootfs/bin/sh
-test -f rootfs/sbin/poweroff || ln -sf ../bin/busybox rootfs/sbin/poweroff
-cat > rootfs/sbin/preinit << EOF
-#!/bin/sh
-echo
-echo "Successfully booted"
-echo
-/sbin/poweroff -f
-EOF
-chmod +x rootfs/sbin/preinit
-
-# Generate ubifs image from rootfs directory
-# NOTE: Character device on host filesystem can be created only by root
-# But we do not need it on host filesystem, just in ubifs image
-# So run mknod and mkfs.ubifs commands under fakeroot program
-# which via LD_PRELOAD simulate mknod() and stat() functions
-# so mkfs.ubifs will see dev/console as character device and
-# put it correctly as character device into final ubifs image
-# Therefore we can run whole script as non-root nobody user
-fakeroot sh -c '
- rm -f rootfs/dev/console;
- mknod rootfs/dev/console c 5 1;
- /usr/sbin/mkfs.ubifs -m 2048 -e 129024 -c 2047 -r rootfs ubifs.img;
-'
-
-# Generate ubi image with rootfs on first volume
-cat > ubi.ini << EOF
-[rootfs]
-mode=ubi
-image=ubifs.img
-vol_id=0
-vol_size=230MiB # 1870 LEBs
-vol_type=dynamic
-vol_name=rootfs
-vol_alignment=1
-vol_flags=autoresize
-EOF
-/usr/sbin/ubinize -o ubi.img -p 128KiB -m 2048 -s 512 ubi.ini
-
-# Generate ubi image with rootfs on first volume and kernel in zImage format on second volume for UBI booting
-cp ubi.ini ubi_with_kernel.ini
-cat >> ubi_with_kernel.ini << EOF
-[kernel]
-mode=ubi
-image=zImage-2.6.28-omap1
-vol_id=1
-vol_size=2MiB
-vol_type=dynamic
-vol_name=kernel
-vol_alignment=1
-EOF
-/usr/sbin/ubinize -o ubi_with_kernel.img -p 128KiB -m 2048 -s 512 ubi_with_kernel.ini
-
-# Generate bootmenu for U-Boot serial console testing
-cat > bootmenu_uboot << EOF
-setenv bootmenu_0 'Serial console test=echo; echo "Testing serial console"; echo; echo "Successfully booted"; echo; poweroff';
-setenv bootmenu_1;
-setenv bootmenu_delay 1;
-setenv bootdelay 1;
-EOF
-./mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n bootmenu_uboot -d bootmenu_uboot bootmenu_uboot.scr
-
-# Generate bootmenu for eMMC booting (uImage)
-cat > bootmenu_emmc << EOF
-setenv bootmenu_0 'uImage-2.6.28-omap1 from eMMC=setenv mmcnum 1; setenv mmcpart 1; setenv mmctype fat; setenv bootargs; setenv setup_omap_atag 1; setenv mmckernfile uImage-2.6.28-omap1; run trymmckernboot';
-setenv bootmenu_1;
-setenv bootmenu_delay 1;
-setenv bootdelay 1;
-EOF
-./mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n bootmenu_emmc -d bootmenu_emmc bootmenu_emmc.scr
-
-# Generate bootmenu for eMMC booting (zImage)
-cat > bootmenu_emmc2 << EOF
-setenv bootmenu_0 'zImage-2.6.28-omap1 from eMMC=setenv mmcnum 1; setenv mmcpart 1; setenv mmctype fat; setenv bootargs; setenv setup_omap_atag 1; setenv mmckernfile zImage-2.6.28-omap1; run trymmckernboot';
-setenv bootmenu_1;
-setenv bootmenu_delay 1;
-setenv bootdelay 1;
-EOF
-./mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n bootmenu_emmc2 -d bootmenu_emmc2 bootmenu_emmc2.scr
-
-# Generate bootmenu for OneNAND booting (uImage)
-cat > bootmenu_nand << EOF
-setenv bootmenu_0 'uImage-2.6.28-omap1 from OneNAND=setenv bootargs; setenv setup_omap_atag 1; mtd read initfs \${kernaddr} && bootm \${kernaddr}';
-setenv bootmenu_1;
-setenv bootmenu_delay 1;
-setenv bootdelay 1;
-EOF
-./mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n bootmenu_nand -d bootmenu_nand bootmenu_nand.scr
-
-# Generate bootmenu for UBI booting (zImage)
-cat > bootmenu_ubi << EOF
-setenv bootmenu_0 'zImage-2.6.28-omap1 from UBI=setenv bootargs; setenv setup_omap_atag 1; ubi part rootfs && ubi read \${kernaddr} kernel && bootz \${kernaddr}';
-setenv bootmenu_1;
-setenv bootmenu_delay 1;
-setenv bootdelay 1;
-EOF
-./mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n bootmenu_ubi -d bootmenu_ubi bootmenu_ubi.scr
-
-# Generate bootmenu for default booting
-cat > bootmenu_default << EOF
-setenv bootmenu_delay 1;
-setenv bootdelay 1;
-EOF
-./mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n bootmenu_default -d bootmenu_default bootmenu_default.scr
-
-# Generate combined image from u-boot and Maemo fiasco kernel
-./u-boot-gen-combined u-boot.bin zImage-2.6.28-omap1 combined_zimage.bin
-./u-boot-gen-combined u-boot.bin uImage-2.6.28-omap1 combined_uimage.bin
-
-# Generate combined hack image from u-boot and Maemo fiasco kernel (kernel starts at 2MB offset and qflasher puts 2kB header before supplied image)
-cp u-boot.bin combined_hack.bin
-dd if=uImage-2.6.28-omap1 of=combined_hack.bin bs=1024 seek=$((2048-2))
-
-# Generate FAT32 eMMC image for U-Boot serial console testing
-truncate -s 50MiB emmc_uboot.img
-mformat -m 0xf8 -F -h 4 -s 16 -c 1 -t $((50*1024*1024/(4*16*512))) :: -i emmc_uboot.img
-mcopy bootmenu_uboot.scr ::/bootmenu.scr -i emmc_uboot.img
-
-# Generate FAT32 eMMC image for eMMC booting (uImage)
-truncate -s 50MiB emmc_emmc.img
-mformat -m 0xf8 -F -h 4 -s 16 -c 1 -t $((50*1024*1024/(4*16*512))) :: -i emmc_emmc.img
-mcopy uImage-2.6.28-omap1 ::/uImage-2.6.28-omap1 -i emmc_emmc.img
-mcopy bootmenu_emmc.scr ::/bootmenu.scr -i emmc_emmc.img
-
-# Generate FAT32 eMMC image for eMMC booting (zImage)
-truncate -s 50MiB emmc_emmc2.img
-mformat -m 0xf8 -F -h 4 -s 16 -c 1 -t $((50*1024*1024/(4*16*512))) :: -i emmc_emmc2.img
-mcopy zImage-2.6.28-omap1 ::/zImage-2.6.28-omap1 -i emmc_emmc2.img
-mcopy bootmenu_emmc2.scr ::/bootmenu.scr -i emmc_emmc2.img
-
-# Generate FAT32 eMMC image for OneNAND booting (uImage)
-truncate -s 50MiB emmc_nand.img
-mformat -m 0xf8 -F -h 4 -s 16 -c 1 -t $((50*1024*1024/(4*16*512))) :: -i emmc_nand.img
-mcopy bootmenu_nand.scr ::/bootmenu.scr -i emmc_nand.img
-
-# Generate FAT32 eMMC image for UBI booting (zImage)
-truncate -s 50MiB emmc_ubi.img
-mformat -m 0xf8 -F -h 4 -s 16 -c 1 -t $((50*1024*1024/(4*16*512))) :: -i emmc_ubi.img
-mcopy bootmenu_ubi.scr ::/bootmenu.scr -i emmc_ubi.img
-
-# Generate FAT32 eMMC image for default booting
-truncate -s 50MiB emmc_default.img
-mformat -m 0xf8 -F -h 4 -s 16 -c 1 -t $((50*1024*1024/(4*16*512))) :: -i emmc_default.img
-mcopy bootmenu_default.scr ::/bootmenu.scr -i emmc_default.img
-
-# Generate MTD image for U-Boot serial console testing
-rm -f mtd_uboot.img
-./qflasher -v -x xloader-qemu.bin -s secondary-qemu.bin -k u-boot.bin -m rx51 -o mtd_uboot.img
-
-# Generate MTD image for RAM booting from bootloader nolo images, compiled image and rootfs image
-rm -f mtd_ram.img
-./qflasher -v -x xloader-qemu.bin -s secondary-qemu.bin -k combined_uimage.bin -r ubi.img -m rx51 -o mtd_ram.img
-rm -f mtd_ram2.img
-./qflasher -v -x xloader-qemu.bin -s secondary-qemu.bin -k combined_zimage.bin -r ubi.img -m rx51 -o mtd_ram2.img
-
-# Generate MTD image for eMMC booting from bootloader nolo images, u-boot image and rootfs image
-rm -f mtd_emmc.img
-./qflasher -v -x xloader-qemu.bin -s secondary-qemu.bin -k u-boot.bin -r ubi.img -m rx51 -o mtd_emmc.img
-
-# Generate MTD image for OneNAND booting from bootloader nolo images, combined hacked image and rootfs image
-# Kernel image is put into initfs area, but qflasher reject to copy kernel image into initfs area because it does not have initfs signature
-# This is hack to workaround this problem, tell qflasher that kernel area for u-boot is bigger and put big combined hacked image (u-boot + kernel with correct offset)
-rm -f mtd_nand.img
-./qflasher -v -x xloader-qemu.bin -s secondary-qemu.bin -k combined_hack.bin -r ubi.img -m rx51 -p k=4094,i=2 -o mtd_nand.img
-
-# Generate MTD image for UBI booting from bootloader nolo images, u-boot image with UBI/UBIFS support and rootfs image with kernel volume
-rm -f mtd_ubi.img
-./qflasher -v -x xloader-qemu.bin -s secondary-qemu.bin -k u-boot-ubifs.bin -r ubi_with_kernel.img -m rx51 -o mtd_ubi.img
-
-echo
-echo "======================================================"
-echo "========== Running test images in n900 qemu =========="
-echo "======================================================"
-echo
-
-# Run MTD image in qemu and wait for 300s if U-Boot prints testing string to serial console and poweroff
-rm -f qemu_uboot.log
-./qemu-system-arm -M n900 -mtdblock mtd_uboot.img -sd emmc_uboot.img -serial /dev/stdout -display none > qemu_uboot.log &
-qemu_pid=$!
-tail -F qemu_uboot.log &
-tail_pid=$!
-sleep 300 &
-sleep_pid=$!
-wait -n $sleep_pid $qemu_pid || true
-kill -9 $tail_pid $sleep_pid $qemu_pid 2>/dev/null || true
-wait || true
-
-# Run MTD image in qemu and wait for 300s if uImage kernel from RAM is correctly booted
-rm -f qemu_ram.log
-./qemu-system-arm -M n900 -mtdblock mtd_ram.img -serial /dev/stdout -display none > qemu_ram.log &
-qemu_pid=$!
-tail -F qemu_ram.log &
-tail_pid=$!
-sleep 300 &
-sleep_pid=$!
-wait -n $sleep_pid $qemu_pid || true
-kill -9 $tail_pid $sleep_pid $qemu_pid 2>/dev/null || true
-wait || true
-
-# Run MTD image in qemu and wait for 300s if zImage kernel from RAM is correctly booted
-rm -f qemu_ram2.log
-./qemu-system-arm -M n900 -mtdblock mtd_ram2.img -sd emmc_default.img -serial /dev/stdout -display none > qemu_ram2.log &
-qemu_pid=$!
-tail -F qemu_ram2.log &
-tail_pid=$!
-sleep 300 &
-sleep_pid=$!
-wait -n $sleep_pid $qemu_pid || true
-kill -9 $tail_pid $sleep_pid $qemu_pid 2>/dev/null || true
-wait || true
-
-# Run MTD image in qemu and wait for 300s if uImage kernel from eMMC is correctly booted
-rm -f qemu_emmc.log
-./qemu-system-arm -M n900 -mtdblock mtd_emmc.img -sd emmc_emmc.img -serial /dev/stdout -display none > qemu_emmc.log &
-qemu_pid=$!
-tail -F qemu_emmc.log &
-tail_pid=$!
-sleep 300 &
-sleep_pid=$!
-wait -n $sleep_pid $qemu_pid || true
-kill -9 $tail_pid $sleep_pid $qemu_pid 2>/dev/null || true
-wait || true
-
-# Run MTD image in qemu and wait for 300s if zImage kernel from eMMC is correctly booted
-rm -f qemu_emmc2.log
-./qemu-system-arm -M n900 -mtdblock mtd_emmc.img -sd emmc_emmc2.img -serial /dev/stdout -display none > qemu_emmc2.log &
-qemu_pid=$!
-tail -F qemu_emmc2.log &
-tail_pid=$!
-sleep 300 &
-sleep_pid=$!
-wait -n $sleep_pid $qemu_pid || true
-kill -9 $tail_pid $sleep_pid $qemu_pid 2>/dev/null || true
-wait || true
-
-# Run MTD image in qemu and wait for 300s if kernel from OneNAND is correctly booted
-rm -f qemu_nand.log
-./qemu-system-arm -M n900 -mtdblock mtd_nand.img -sd emmc_nand.img -serial /dev/stdout -display none > qemu_nand.log &
-qemu_pid=$!
-tail -F qemu_nand.log &
-tail_pid=$!
-sleep 300 &
-sleep_pid=$!
-wait -n $sleep_pid $qemu_pid || true
-kill -9 $tail_pid $sleep_pid $qemu_pid 2>/dev/null || true
-wait || true
-
-# Run MTD image in qemu and wait for 300s if kernel from UBI is correctly booted
-rm -f qemu_ubi.log
-./qemu-system-arm -M n900 -mtdblock mtd_ubi.img -sd emmc_ubi.img -serial /dev/stdout -display none > qemu_ubi.log &
-qemu_pid=$!
-tail -F qemu_ubi.log &
-tail_pid=$!
-sleep 300 &
-sleep_pid=$!
-wait -n $sleep_pid $qemu_pid || true
-kill -9 $tail_pid $sleep_pid $qemu_pid 2>/dev/null || true
-wait || true
-
-echo
-echo "============================="
-echo "========== Results =========="
-echo "============================="
-echo
-
-if grep -q 'Successfully booted' qemu_uboot.log; then echo "U-Boot serial console is working"; else echo "U-Boot serial console test failed"; fi
-if grep -q 'Successfully booted' qemu_ram.log; then echo "Kernel (uImage) was successfully booted from RAM"; else echo "Failed to boot kernel (uImage) from RAM"; fi
-if grep -q 'Successfully booted' qemu_ram2.log; then echo "Kernel (zImage) was successfully booted from RAM"; else echo "Failed to boot kernel (zImage) from RAM"; fi
-if grep -q 'Successfully booted' qemu_emmc.log; then echo "Kernel (uImage) was successfully booted from eMMC"; else echo "Failed to boot kernel (uImage) from eMMC"; fi
-if grep -q 'Successfully booted' qemu_emmc2.log; then echo "Kernel (zImage) was successfully booted from eMMC"; else echo "Failed to boot kernel (zImage) from eMMC"; fi
-if grep -q 'Successfully booted' qemu_nand.log; then echo "Kernel (uImage) was successfully booted from OneNAND"; else echo "Failed to boot kernel (uImage) from OneNAND"; fi
-if grep -q 'Successfully booted' qemu_ubi.log; then echo "Kernel (zImage) was successfully booted from UBI"; else echo "Failed to boot kernel (zImage) from UBI"; fi
-
-echo
-
-if grep -q 'Successfully booted' qemu_uboot.log && grep -q 'Successfully booted' qemu_ram.log && grep -q 'Successfully booted' qemu_ram2.log && grep -q 'Successfully booted' qemu_emmc.log && grep -q 'Successfully booted' qemu_emmc2.log && grep -q 'Successfully booted' qemu_nand.log && grep -q 'Successfully booted' qemu_ubi.log; then
- echo "All tests passed"
- exit 0
-else
- echo "Some tests failed"
- exit 1
-fi
diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile
index 3d2b64a355f..ff16829887d 100644
--- a/tools/docker/Dockerfile
+++ b/tools/docker/Dockerfile
@@ -185,27 +185,6 @@ RUN git clone https://gitlab.com/qemu-project/qemu.git /tmp/qemu && \
make -j$(nproc) all install && \
rm -rf /tmp/qemu
-# Build QEMU supporting Nokia n900 emulation
-RUN mkdir -p /opt/nokia && \
- cd /tmp && \
- git clone https://git.linaro.org/qemu/qemu-linaro.git && \
- cd /tmp/qemu-linaro && \
- git checkout 8f8d8e0796efe1a6f34cdd83fb798f3c41217ec1 && \
- ./configure --enable-system --target-list=arm-softmmu \
- --python=/usr/bin/python2.7 --disable-sdl --disable-gtk \
- --disable-curses --audio-drv-list= --audio-card-list= \
- --disable-werror --disable-xen --disable-xen-pci-passthrough \
- --disable-brlapi --disable-vnc --disable-curl --disable-slirp \
- --disable-kvm --disable-user --disable-linux-user --disable-bsd-user \
- --disable-guest-base --disable-uuid --disable-vde --disable-linux-aio \
- --disable-cap-ng --disable-attr --disable-blobs --disable-docs \
- --disable-spice --disable-libiscsi --disable-smartcard-nss \
- --disable-usb-redir --disable-guest-agent --disable-seccomp \
- --disable-glusterfs --disable-nptl --disable-fdt && \
- make -j$(nproc) && \
- cp /tmp/qemu-linaro/arm-softmmu/qemu-system-arm /opt/nokia && \
- rm -rf /tmp/qemu-linaro
-
# Build genimage (required by some targets to generate disk images)
RUN wget -O - https://github.com/pengutronix/genimage/releases/download/v14/genimage-14.tar.xz | tar -C /tmp -xJ && \
cd /tmp/genimage-14 && \
@@ -249,16 +228,6 @@ RUN mkdir /tmp/trace && \
sudo make install && \
rm -rf /tmp/trace
-# Files to run Nokia RX-51 (aka N900) tests
-RUN mkdir -p /opt/nokia && \
- cd /opt/nokia && \
- wget https://raw.githubusercontent.com/pali/u-boot-maemo/master/debian/u-boot-gen-combined && \
- chmod 0755 u-boot-gen-combined && \
- wget http://repository.maemo.org/qemu-n900/qemu-n900.tar.gz && \
- wget http://repository.maemo.org/pool/maemo5.0/free/k/kernel/kernel_2.6.28-20103103+0m5_armel.deb && \
- wget http://repository.maemo.org/pool/maemo5.0/free/g/glibc/libc6_2.5.1-1eglibc27+0m5_armel.deb && \
- wget http://repository.maemo.org/pool/maemo5.0/free/b/busybox/busybox_1.10.2.legal-1osso30+0m5_armel.deb
-
# Create our user/group
RUN echo uboot ALL=NOPASSWD: ALL > /etc/sudoers.d/uboot
RUN useradd -m -U uboot