From 552f19f8fe069500c024bbe44e25e1ed9535d27c Mon Sep 17 00:00:00 2001 From: Suman Anna Date: Fri, 24 Apr 2020 13:39:52 -0500 Subject: [PATCH 01/14] configs: ti: Fix usage of undefined variable overlay_files The env variable overlay_files is used while adding the environment support commands for FIT loading, but it was cleaned up just prior in commit ee53b59511a6 ("configs: Remove unneeded overlay_files environment variable"). Fix this by replacing the undefined variable with the proper name_overlays env variable. Fixes: 76470b6929d5 ("configs: ti: Add environment support commands for FIT loading") Signed-off-by: Suman Anna --- include/configs/ti_armv7_common.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h index a612bb5b4a..08829781e3 100644 --- a/include/configs/ti_armv7_common.h +++ b/include/configs/ti_armv7_common.h @@ -63,7 +63,7 @@ "name_fit=fitImage\0" \ "update_to_fit=setenv loadaddr ${addr_fit}; setenv bootfile ${name_fit}\0" \ "get_overlaystring=" \ - "for overlay in $overlay_files;" \ + "for overlay in $name_overlays;" \ "do;" \ "setenv overlaystring ${overlaystring}'#'${overlay};" \ "done;\0" \ From 39821d58c91d97b48a36ea340adedc4c9b8f5b85 Mon Sep 17 00:00:00 2001 From: Murali Karicheri Date: Fri, 17 Apr 2020 11:12:09 -0400 Subject: [PATCH 02/14] net: ethernet: ti: am65-cpsw-nuss: enable 10Mbps link speed in rgmii mode In RGMII mode the 10Mbps link speed is supported only when CPSW2G MAC SL is configured for External Control ("in band") mode CPSW_PN_MAC_CONTROL_REG.CTL_EN(18) = 1 Hence update am65_cpsw_update_link() to follow documentation. Signed-off-by: Murali Karicheri Reviewed-by: Grygorii Strashko --- drivers/net/ti/am65-cpsw-nuss.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/ti/am65-cpsw-nuss.c b/drivers/net/ti/am65-cpsw-nuss.c index 2b77213001..7531a07203 100644 --- a/drivers/net/ti/am65-cpsw-nuss.c +++ b/drivers/net/ti/am65-cpsw-nuss.c @@ -61,6 +61,7 @@ #define AM65_CPSW_MACSL_CTL_REG 0x0 #define AM65_CPSW_MACSL_CTL_REG_IFCTL_A BIT(15) +#define AM65_CPSW_MACSL_CTL_EXT_EN BIT(18) #define AM65_CPSW_MACSL_CTL_REG_GIG BIT(7) #define AM65_CPSW_MACSL_CTL_REG_GMII_EN BIT(5) #define AM65_CPSW_MACSL_CTL_REG_LOOPBACK BIT(1) @@ -187,6 +188,9 @@ static int am65_cpsw_update_link(struct am65_cpsw_priv *priv) AM65_CPSW_MACSL_CTL_REG_GMII_EN; if (phy->speed == 1000) mac_control |= AM65_CPSW_MACSL_CTL_REG_GIG; + if (phy->speed == 10 && phy_interface_is_rgmii(phy)) + /* Can be used with in band mode only */ + mac_control |= AM65_CPSW_MACSL_CTL_EXT_EN; if (phy->duplex == DUPLEX_FULL) mac_control |= AM65_CPSW_MACSL_CTL_REG_FULL_DUPLEX; if (phy->speed == 100) From b76bea12053d12d000fdd886a14038c50b84ad62 Mon Sep 17 00:00:00 2001 From: "Andrew F. Davis" Date: Thu, 30 Apr 2020 15:12:19 -0400 Subject: [PATCH 03/14] arm: K3: Increase default SYSFW image size allocation The memory allocated to store the FIT image containing SYSFW and board configuration data is statically defined to the largest size expected. Some additions to the board configuration data has pushed us slightly over the current defined size on some HS devices, expand to 278000. Signed-off-by: Andrew F. Davis --- arch/arm/mach-k3/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/mach-k3/Kconfig b/arch/arm/mach-k3/Kconfig index a13cbef9b5..c7d186149b 100644 --- a/arch/arm/mach-k3/Kconfig +++ b/arch/arm/mach-k3/Kconfig @@ -119,7 +119,7 @@ config K3_SYSFW_IMAGE_MMCSD_RAW_MODE_PART config K3_SYSFW_IMAGE_SIZE_MAX int "Amount of memory dynamically allocated for loading SYSFW blob" depends on K3_LOAD_SYSFW - default 277000 + default 278000 help Amount of memory (in bytes) reserved through dynamic allocation at runtime for loading the combined System Firmware and configuration image From 295ab882d9d281d247c0025c95acbedbae4e7402 Mon Sep 17 00:00:00 2001 From: Dario Binacchi Date: Sun, 3 May 2020 21:27:48 +0200 Subject: [PATCH 04/14] video: omap: change include order Apply u-boot coding style on include files order as described by the wiki https://www.denx.de/wiki/U-Boot/CodingStyle. Signed-off-by: Dario Binacchi --- drivers/video/am335x-fb.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/video/am335x-fb.c b/drivers/video/am335x-fb.c index eb5add2a20..0f066df451 100644 --- a/drivers/video/am335x-fb.c +++ b/drivers/video/am335x-fb.c @@ -13,15 +13,15 @@ */ #include #include -#include -#include -#include -#include -#include -#include -#include #include #include +#include +#include +#include +#include +#include +#include +#include #include "am335x-fb.h" #define LCDC_FMAX 200000000 From 5308665315aa065662c1cf160ad63cbe54cab775 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:08 +0200 Subject: [PATCH 05/14] Nokia RX-51: Update my email address MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit I'm using a new email address, so reflect this state also in U-Boot. Signed-off-by: Pali Rohár --- board/nokia/rx51/MAINTAINERS | 2 +- board/nokia/rx51/lowlevel_init.S | 2 +- board/nokia/rx51/rx51.c | 2 +- board/nokia/rx51/rx51.h | 2 +- board/nokia/rx51/tag_omap.h | 4 ++-- cmd/bootmenu.c | 2 +- doc/README.bootmenu | 2 +- include/ansi.h | 2 +- include/configs/nokia_rx51.h | 2 +- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/board/nokia/rx51/MAINTAINERS b/board/nokia/rx51/MAINTAINERS index 8bdddc1d83..4cf3dcce2e 100644 --- a/board/nokia/rx51/MAINTAINERS +++ b/board/nokia/rx51/MAINTAINERS @@ -1,5 +1,5 @@ RX51 BOARD -M: Pali Rohár +M: Pali Rohár S: Maintained F: board/nokia/rx51/ F: include/configs/nokia_rx51.h diff --git a/board/nokia/rx51/lowlevel_init.S b/board/nokia/rx51/lowlevel_init.S index 6871a5a74f..7b1e50d9bc 100644 --- a/board/nokia/rx51/lowlevel_init.S +++ b/board/nokia/rx51/lowlevel_init.S @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* * (C) Copyright 2011-2012 - * Pali Rohár + * Pali Rohár */ #include diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c index 71ca79deab..80a0fc2696 100644 --- a/board/nokia/rx51/rx51.c +++ b/board/nokia/rx51/rx51.c @@ -4,7 +4,7 @@ * Ивайло Димитров * * (C) Copyright 2011-2012 - * Pali Rohár + * Pali Rohár * * (C) Copyright 2010 * Alistair Buxton diff --git a/board/nokia/rx51/rx51.h b/board/nokia/rx51/rx51.h index fc336ee819..fa1b42bf21 100644 --- a/board/nokia/rx51/rx51.h +++ b/board/nokia/rx51/rx51.h @@ -4,7 +4,7 @@ * Ивайло Димитров * * (C) Copyright 2011-2012 - * Pali Rohár + * Pali Rohár * * (C) Copyright 2008 * Dirk Behme diff --git a/board/nokia/rx51/tag_omap.h b/board/nokia/rx51/tag_omap.h index c445aafde0..b99d6b7de1 100644 --- a/board/nokia/rx51/tag_omap.h +++ b/board/nokia/rx51/tag_omap.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* * (C) Copyright 2011-2012 - * Pali Rohár + * Pali Rohár * * (C) Copyright 2011 * marcel@mesa.nl, Mesa Consulting B.V. @@ -182,7 +182,7 @@ struct omap_em_asic_bb5_config { * processing omap tag structures * * Copyright (C) 2011 marcel@mesa.nl, Mesa Consulting B.V. - * Copyright (C) 2012 Pali Rohár + * Copyright (C) 2012 Pali Rohár */ /* TI OMAP specific information */ diff --git a/cmd/bootmenu.c b/cmd/bootmenu.c index f1562883f5..6af0617e65 100644 --- a/cmd/bootmenu.c +++ b/cmd/bootmenu.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0+ /* - * (C) Copyright 2011-2013 Pali Rohár + * (C) Copyright 2011-2013 Pali Rohár */ #include diff --git a/doc/README.bootmenu b/doc/README.bootmenu index ca5099089e..9ff89f2e55 100644 --- a/doc/README.bootmenu +++ b/doc/README.bootmenu @@ -1,6 +1,6 @@ SPDX-License-Identifier: GPL-2.0+ /* - * (C) Copyright 2011-2012 Pali Rohár + * (C) Copyright 2011-2012 Pali Rohár */ ANSI terminal bootmenu command diff --git a/include/ansi.h b/include/ansi.h index e90a697eaf..af1a3712c8 100644 --- a/include/ansi.h +++ b/include/ansi.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* * (C) Copyright 2012 - * Pali Rohár + * Pali Rohár */ /* diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index 5d1c7bf835..16e77c6fed 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* * (C) Copyright 2011-2012 - * Pali Rohár + * Pali Rohár * * (C) Copyright 2010 * Alistair Buxton From 7d0e773bb1af4a7da378eafa02cbc40608fb049c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:09 +0200 Subject: [PATCH 06/14] Nokia RX-51: Add README.nokia_rx51 file to MAINTAINERS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This entry was missing in MAINTAINERS file. Signed-off-by: Pali Rohár --- board/nokia/rx51/MAINTAINERS | 1 + 1 file changed, 1 insertion(+) diff --git a/board/nokia/rx51/MAINTAINERS b/board/nokia/rx51/MAINTAINERS index 4cf3dcce2e..f2a712620b 100644 --- a/board/nokia/rx51/MAINTAINERS +++ b/board/nokia/rx51/MAINTAINERS @@ -4,3 +4,4 @@ S: Maintained F: board/nokia/rx51/ F: include/configs/nokia_rx51.h F: configs/nokia_rx51_defconfig +F: doc/README.nokia_rx51 From 778907d2132be43ec286f07fade5cdb6b3cbfffb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:10 +0200 Subject: [PATCH 07/14] Nokia RX-51: Move comment about CONFIG_SYS_TEXT_BASE to correct place MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In commit commit 278b90ce786f ("configs: Migrate CONFIG_SYS_TEXT_BASE") was moved definition for CONFIG_SYS_TEXT_BASE option but author probably forgot to move also comment for lines which are moving. So do it now! Signed-off-by: Pali Rohár --- board/nokia/rx51/lowlevel_init.S | 9 ++++++++- include/configs/nokia_rx51.h | 6 ------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/board/nokia/rx51/lowlevel_init.S b/board/nokia/rx51/lowlevel_init.S index 7b1e50d9bc..1466d976fc 100644 --- a/board/nokia/rx51/lowlevel_init.S +++ b/board/nokia/rx51/lowlevel_init.S @@ -155,7 +155,14 @@ copy_code_end: mov pc, r2 -/* Copy u-boot to address CONFIG_SYS_TEXT_BASE */ +/* + * Copy u-boot to address CONFIG_SYS_TEXT_BASE + * + * Nokia X-Loader loading secondary image to address 0x80400000 + * NOLO loading boot image to random place, so it doesn't really + * matter what is set in CONFIG_SYS_TEXT_BASE. We have to copy + * u-boot to CONFIG_SYS_TEXT_BASE address. + */ copy_uboot_start: /* r0 - start of u-boot before */ diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index 16e77c6fed..2f2496ab16 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -25,12 +25,6 @@ #define CONFIG_MACH_TYPE MACH_TYPE_NOKIA_RX51 -/* - * Nokia X-Loader loading secondary image to address 0x80400000 - * NOLO loading boot image to random place, so it doesn't really - * matter what we set this to. We have to copy u-boot to this address - */ - #include /* get chip and board defs */ #include #include From fca7abf3b9d476546d29d83c1adfd0c3907206d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:11 +0200 Subject: [PATCH 08/14] Nokia RX-51: Move code from defconfig back to C header file MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In commit commit 37304aaf60bf ("Convert CONFIG_USE_PREBOOT and CONFIG_PREBOOT to Kconfig") was moved complicated multiline script code from C header to oneliner in defconfig. After this change multiline to wide oneliner it is hard to read this code and even harder to debug. Moreover this script code should be at place where are other scripts, so move it back to C header file. Define new env variable preboot which stores this script and in option CONFIG_PREBOOT calls this preboot variable. Signed-off-by: Pali Rohár --- configs/nokia_rx51_defconfig | 2 +- include/configs/nokia_rx51.h | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig index f9e5b0e123..5ba9768d02 100644 --- a/configs/nokia_rx51_defconfig +++ b/configs/nokia_rx51_defconfig @@ -6,7 +6,7 @@ CONFIG_TARGET_NOKIA_RX51=y CONFIG_NR_DRAM_BANKS=2 CONFIG_BOOTDELAY=30 CONFIG_USE_PREBOOT=y -CONFIG_PREBOOT="setenv mmcnum 1; setenv mmcpart 1;setenv mmcscriptfile bootmenu.scr;if run switchmmc; then setenv mmcdone true;setenv mmctype fat;if run scriptload; then true; else setenv mmctype ext2;if run scriptload; then true; else setenv mmctype ext4;if run scriptload; then true; else setenv mmcdone false;fi;fi;fi;if ${mmcdone}; then run scriptboot;fi;fi;if run slide; then true; else setenv bootmenu_delay 0;setenv bootdelay 0;fi" +CONFIG_PREBOOT="run preboot" # CONFIG_CONSOLE_MUX is not set CONFIG_SYS_CONSOLE_IS_IN_ENV=y CONFIG_HUSH_PARSER=y diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index 2f2496ab16..46f18e7110 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -239,6 +239,28 @@ int rx51_kp_getc(struct stdio_dev *sdev); "fi\0" \ "emmcboot=setenv mmcnum 1; run trymmcboot\0" \ "sdboot=setenv mmcnum 0; run trymmcboot\0" \ + "preboot=setenv mmcnum 1; setenv mmcpart 1;" \ + "setenv mmcscriptfile bootmenu.scr;" \ + "if run switchmmc; then " \ + "setenv mmcdone true;" \ + "setenv mmctype fat;" \ + "if run scriptload; then true; else " \ + "setenv mmctype ext2;" \ + "if run scriptload; then true; else " \ + "setenv mmctype ext4;" \ + "if run scriptload; then true; else " \ + "setenv mmcdone false;" \ + "fi;" \ + "fi;" \ + "fi;" \ + "if ${mmcdone}; then " \ + "run scriptboot;" \ + "fi;" \ + "fi;" \ + "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" \ From c3cc829d33b4df5add565e272f6fc2deb3dbf692 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:12 +0200 Subject: [PATCH 09/14] Nokia RX-51: Revert back onenand defitions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In commit commit 43ede0bca7fc ("Kconfig: Migrate MTDIDS_DEFAULT / MTDPARTS_DEFAULT") were removed definitions for onenand partitions. Revert them back and enable needed options for onenand support. Signed-off-by: Pali Rohár --- configs/nokia_rx51_defconfig | 7 +++++++ include/configs/nokia_rx51.h | 10 ---------- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig index 5ba9768d02..13bb6d07b7 100644 --- a/configs/nokia_rx51_defconfig +++ b/configs/nokia_rx51_defconfig @@ -39,3 +39,10 @@ CONFIG_TWL4030_USB=y CONFIG_VIDEO=y CONFIG_CFB_CONSOLE_ANSI=y # CONFIG_VGA_AS_SINGLE_DEVICE is not set +CONFIG_MTD=y +CONFIG_MTDIDS_DEFAULT="onenand0=onenand" +CONFIG_MTDPARTS_DEFAULT="mtdparts=onenand:128k(bootloader)ro,384k(config),256k(log),2m(kernel),2m(initfs),-(rootfs)" +CONFIG_MTD_PARTITIONS=y +# CONFIG_MTD_RAW_NAND is not set +CONFIG_CMD_MTD=y +CONFIG_CMD_ONENAND=y diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index 46f18e7110..68374cbf16 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -133,12 +133,8 @@ #define PART6_OFFS 0x004c0000 #define PART6_MASK 0x00000000 -#ifdef ONENAND_SUPPORT - #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP -#endif - /* Watchdog support */ #define CONFIG_HW_WATCHDOG @@ -163,13 +159,7 @@ int rx51_kp_getc(struct stdio_dev *sdev); #endif /* Environment information */ -#ifdef CONFIG_MTDPARTS_DEFAULT -#define MTDPARTS "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" -#else -#define MTDPARTS -#endif #define CONFIG_EXTRA_ENV_SETTINGS \ - MTDPARTS \ "usbtty=cdc_acm\0" \ "stdin=vga\0" \ "stdout=vga\0" \ From f5cfdbf9c996c577f4530a31a5af9ffcf870f7fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:13 +0200 Subject: [PATCH 10/14] Nokia RX-51: Remove PART* macros MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now when code for defining partitions is duplicated at two locations (option CONFIG_MTDPARTS_DEFAULT in nokia_rx51_defconfig file and macro OMAP_TAG_PARTITION_CONFIG in rx51.c file) there is no need to have common macros. Lets inline PART* macros to rx51.c file. Signed-off-by: Pali Rohár --- board/nokia/rx51/rx51.c | 18 ++++++---------- include/configs/nokia_rx51.h | 42 ------------------------------------ 2 files changed, 6 insertions(+), 54 deletions(-) diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c index 80a0fc2696..c8ef26f940 100644 --- a/board/nokia/rx51/rx51.c +++ b/board/nokia/rx51/rx51.c @@ -69,18 +69,12 @@ static struct tag_omap omap[] = { 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(PART1_NAME, PART1_SIZE * PART1_MULL, - PART1_OFFS, PART1_MASK), - OMAP_TAG_PARTITION_CONFIG(PART2_NAME, PART2_SIZE * PART2_MULL, - PART2_OFFS, PART2_MASK), - OMAP_TAG_PARTITION_CONFIG(PART3_NAME, PART3_SIZE * PART3_MULL, - PART3_OFFS, PART3_MASK), - OMAP_TAG_PARTITION_CONFIG(PART4_NAME, PART4_SIZE * PART4_MULL, - PART4_OFFS, PART4_MASK), - OMAP_TAG_PARTITION_CONFIG(PART5_NAME, PART5_SIZE * PART5_MULL, - PART5_OFFS, PART5_MASK), - OMAP_TAG_PARTITION_CONFIG(PART6_NAME, PART6_SIZE * PART6_MULL, - PART6_OFFS, PART6_MASK), + 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"), diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index 68374cbf16..dd3b8eaf57 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -91,48 +91,6 @@ * Board ONENAND Info. */ -#define PART1_NAME "bootloader" -#define PART1_SIZE 128 -#define PART1_MULL 1024 -#define PART1_SUFF "k" -#define PART1_OFFS 0x00000000 -#define PART1_MASK 0x00000003 - -#define PART2_NAME "config" -#define PART2_SIZE 384 -#define PART2_MULL 1024 -#define PART2_SUFF "k" -#define PART2_OFFS 0x00020000 -#define PART2_MASK 0x00000000 - -#define PART3_NAME "log" -#define PART3_SIZE 256 -#define PART3_MULL 1024 -#define PART3_SUFF "k" -#define PART3_OFFS 0x00080000 -#define PART3_MASK 0x00000000 - -#define PART4_NAME "kernel" -#define PART4_SIZE 2 -#define PART4_MULL 1024*1024 -#define PART4_SUFF "m" -#define PART4_OFFS 0x000c0000 -#define PART4_MASK 0x00000000 - -#define PART5_NAME "initfs" -#define PART5_SIZE 2 -#define PART5_MULL 1024*1024 -#define PART5_SUFF "m" -#define PART5_OFFS 0x002c0000 -#define PART5_MASK 0x00000000 - -#define PART6_NAME "rootfs" -#define PART6_SIZE 257280 -#define PART6_MULL 1024 -#define PART6_SUFF "k" -#define PART6_OFFS 0x004c0000 -#define PART6_MASK 0x00000000 - #define CONFIG_SYS_ONENAND_BASE ONENAND_MAP /* Watchdog support */ From b5f7cf50179c8d77ab4ee7240d3479437c5725c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:14 +0200 Subject: [PATCH 11/14] Nokia RX-51: Remember setup_console_atag option MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When variable setup_console_atag is unset then read default value from OMAP atags which passed NOLO bootloader to U-Boot. This would allow to boot Maemo Linux kernel from U-Boot with serial console settings configured in NOLO bootloader (which loads U-Boot). So serial console needs to be enabled only at one place, globally in NOLO. Signed-off-by: Pali Rohár --- board/nokia/rx51/rx51.c | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c index c8ef26f940..a282fe68a6 100644 --- a/board/nokia/rx51/rx51.c +++ b/board/nokia/rx51/rx51.c @@ -87,6 +87,7 @@ 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 @@ -143,6 +144,13 @@ static void reuse_omap_atags(struct tag_omap *t) 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; } @@ -233,10 +241,17 @@ void setup_board_tags(struct tag **in_params) return; str = env_get("setup_console_atag"); - if (str && str[0] == '1') - setup_console_atag = 1; - else - setup_console_atag = 0; + 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"); From 07693ccb1574adecb9e87756339442955aeaf346 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:15 +0200 Subject: [PATCH 12/14] Nokia RX-51: Enable CONFIG_CONSOLE_MUX MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit After this change both device display and serial console would contain U-Boto output automatically without any future configuration. This would allow easier debugging on real device as access to serial console is hard and also in qemu emulator where it is easier to copy+paste from serial console as from SDL framebuffer. Signed-off-by: Pali Rohár Reviewed-by: Lokesh Vutla --- configs/nokia_rx51_defconfig | 2 +- include/configs/nokia_rx51.h | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig index 13bb6d07b7..fc92c3affc 100644 --- a/configs/nokia_rx51_defconfig +++ b/configs/nokia_rx51_defconfig @@ -7,7 +7,7 @@ CONFIG_NR_DRAM_BANKS=2 CONFIG_BOOTDELAY=30 CONFIG_USE_PREBOOT=y CONFIG_PREBOOT="run preboot" -# CONFIG_CONSOLE_MUX is not set +CONFIG_CONSOLE_MUX=y CONFIG_SYS_CONSOLE_IS_IN_ENV=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="Nokia RX-51 # " diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h index dd3b8eaf57..a9a0b1c998 100644 --- a/include/configs/nokia_rx51.h +++ b/include/configs/nokia_rx51.h @@ -119,9 +119,9 @@ int rx51_kp_getc(struct stdio_dev *sdev); /* Environment information */ #define CONFIG_EXTRA_ENV_SETTINGS \ "usbtty=cdc_acm\0" \ - "stdin=vga\0" \ - "stdout=vga\0" \ - "stderr=vga\0" \ + "stdin=serial,vga\0" \ + "stdout=serial,vga\0" \ + "stderr=serial,vga\0" \ "setcon=setenv stdin ${con};" \ "setenv stdout ${con};" \ "setenv stderr ${con}\0" \ From 5973f90c63e325fdf00da0736229f5c2f9e25a73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:16 +0200 Subject: [PATCH 13/14] Nokia RX-51: Disable some unused features to decrease size of u-boot binary MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Maximal allowed size of U-Boot binary for Nokia N900 is just 262144 bytes. Signed-off-by: Pali Rohár --- configs/nokia_rx51_defconfig | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig index fc92c3affc..41722725e6 100644 --- a/configs/nokia_rx51_defconfig +++ b/configs/nokia_rx51_defconfig @@ -26,6 +26,7 @@ CONFIG_CMD_FAT=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_TWL4030_LED=y +# CONFIG_MMC_HW_PARTITIONING is not set CONFIG_MMC_OMAP_HS=y CONFIG_CONS_INDEX=3 CONFIG_SYS_NS16550=y @@ -46,3 +47,18 @@ CONFIG_MTD_PARTITIONS=y # CONFIG_MTD_RAW_NAND is not set CONFIG_CMD_MTD=y CONFIG_CMD_ONENAND=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_GZIP is not set +# CONFIG_FIT is not set +# CONFIG_CMD_ELF is not set +# CONFIG_CMD_BDI is not set +# CONFIG_CMD_BOOTD 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_ENV_EXISTS is not set +# CONFIG_CMD_FLASH is not set From 42e05704d8c0e84e8d0eb0bb52253adaa7c9eb86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Wed, 1 Apr 2020 00:35:17 +0200 Subject: [PATCH 14/14] Nokia RX-51: Update README.nokia_rx51 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix some typos, add information about setup_omap_atag, remove old suff about ONENAND_SUPPORT and update guide for UBIFS. Signed-off-by: Pali Rohár --- doc/README.nokia_rx51 | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/doc/README.nokia_rx51 b/doc/README.nokia_rx51 index 586ed7c1cc..33c275b416 100644 --- a/doc/README.nokia_rx51 +++ b/doc/README.nokia_rx51 @@ -19,7 +19,7 @@ stored ATAGs (see boot order). There is support for hardware watchdog. Hardware watchdog is started by NOLO so u-boot must kick watchdog to prevent reboot device (but not very often, max every 2 seconds). There is also support for framebuffer display -output with ANSI espace codes and the N900 HW keyboard input. USB tty works +output with ANSI escape codes and the N900 HW keyboard input. USB tty works but is disabled because it prevents the current Maemo kernel from booting. When U-Boot is starting it enable IBE bit in Auxiliary Control Register, @@ -36,7 +36,7 @@ Boot from SD or eMMC in this order: * 1. * 1.1 find boot.scr on first fat partition - * 1.2 find uImage on first fat parition + * 1.2 find uImage on first fat partition * 1.3 same order for 2. - 4. fat partition * 2. same as 1. but for ext2/3 partition * 3. same as 1. but for ext4 partition @@ -62,21 +62,26 @@ Available additional commands/variables: * 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} + with initrd image ${mmcinitrdfile} Additional variables for loading files from mmc: * mmc ${mmcnum} (0 - external, 1 - internal) * partition number ${mmcpart} (1 - 4) - * parition type ${mmctype} (fat, ext2) + * parition type ${mmctype} (fat, ext2, ext4) -Additional varuables for booting kernel: +Additional variables for booting kernel: * setup_omap_atag - Add OMAP table into atags structure (needs 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. + USB TTY: Maemo kernel 2.6.28 will crash if u-boot enable usb tty. So USB TTY is disabled. @@ -85,20 +90,13 @@ USB TTY: #define CONFIG_USB_TTY -ONENAND support: - - ONENAND support is disabled because not working yet and cause linux kernel to - crash or no access to mtd. For enabling ONENAND support add this line at begin - of file include/configs/nokia_rx51.h - - #define ONENAND_SUPPORT - - UBIFS support: UBIFS support is disabled, because U-Boot image is too big and cannot be flashed with attached zImage to RX-51 kernel nand area. For enabling UBIFS - support first enable ONENAND support and then add this line at begin of file - include/configs/nokia_rx51.h + support add following lines into file configs/nokia_rx51_defconfig - #define UBIFS_SUPPORT + CONFIG_CMD_UBI=y + CONFIG_CMD_UBIFS=y + CONFIG_MTD_UBI_FASTMAP=y + CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1