OMAP3: Add Corscience Tricorder board
PATCH 1/1 OMAP3: Add Corscience Tricorder board
Tricorder is a board which is very similar to the Devkit8000. It is designed as a base platform for further medical devices.
www.corscience.de/en/medical-engineering/products/multiparameter/mp10-board.html
--- MAINTAINERS | 1 + board/corscience/tricorder/Makefile | 46 ++++ board/corscience/tricorder/tricorder.c | 114 ++++++++++ board/corscience/tricorder/tricorder.h | 375 ++++++++++++++++++++++++++++++++ boards.cfg | 1 + include/configs/tricorder.h | 325 +++++++++++++++++++++++++++ 6 files changed, 862 insertions(+), 0 deletions(-) create mode 100644 board/corscience/tricorder/Makefile create mode 100644 board/corscience/tricorder/tricorder.c create mode 100644 board/corscience/tricorder/tricorder.h create mode 100644 include/configs/tricorder.h
MAINTAINERS +1 -0
@@ -889,6 +889,7 @@ Stephen Warren <[email protected]> Thomas Weber <[email protected]> devkit8000 ARM ARMV7 (OMAP3530 SoC) + tricorder ARM ARMV7 (OMAP3503 SoC) Lei Wen <[email protected]>
board/corscience/tricorder/Makefile new file +46 -0
46 lines not on this page · raw message
board/corscience/tricorder/tricorder.c new file +114 -0
114 lines not on this page · raw message
board/corscience/tricorder/tricorder.h new file +375 -0
375 lines not on this page · raw message
boards.cfg +1 -0
@@ -210,6 +210,7 @@ omap3_evm_quick_mmc arm armv7 evm ti omap3_evm_quick_nand arm armv7 evm ti omap3 omap3_sdp3430 arm armv7 sdp3430 ti omap3 devkit8000 arm armv7 devkit8000 timll omap3 +tricorder arm armv7 tricorder corscience omap3 omap4_panda arm armv7 panda ti omap4 omap4_sdp4430 arm armv7 sdp4430 ti omap4 omap5_evm arm armv7 omap5_evm ti omap5
include/configs/tricorder.h new file +325 -0
325 lines not on this page · raw message
Signature · 1 line
1.7.8
PATCH 1/1 OMAP3: Add Corscience Tricorder board
Quoted 4 lines · Thomas Weber
Tricorder is a board which is very similar to the Devkit8000. It is designed as a base platform for further medical devices.
www.corscience.de/en/medical-engineering/products/multiparameter/mp10-board.html
[snip]
board/corscience/tricorder/tricorder.c line 94
Quoted 7 lines
board/corscience/tricorder/tricorder.c new file +7
-0+#if defined(CONFIG_GENERIC_MMC ) && !(defined(CONFIG_SPL_BUILD )) +int board_mmc_init (bd_t *bis) +{ + ? ? ? omap_mmc_init(0); + ? ? ? return 0; +} +#endif
Just return omap_mmc_init(0) :)
[snip]
Quoted 1 line
+++
b/include/configs/tricorder.h
[snip]
include/configs/tricorder.h line 79
Quoted 2 lines
include/configs/tricorder.h new file +2
-0+/* DDR - I use Micron DDR */ +#define CONFIG_OMAP3_MICRON_DDR
Unused
[snip]
Review
Quoted 3 lines
(quoted diff) +3
-0+/* TWL4030 */ +#define CONFIG_TWL4030_POWER ? ? ? ? ? 1 +#define CONFIG_TWL4030_LED ? ? ? ? ? ? 1
Do these need the '1' ?
Review
Quoted 10 lines
(quoted diff) +10
-0+/* Board NAND Info */ +#define CONFIG_SYS_NO_FLASH ? ? ? ? ? ?/* no NOR flash */ +#define CONFIG_MTD_DEVICE ? ? ? ? ? ? ?/* needed for mtdparts commands */ +#define MTDIDS_DEFAULT ? ? ? ? ? ? ? ? "nand0=nand" +#define MTDPARTS_DEFAULT ? ? ? ? ? ? ? "mtdparts=nand:" \ + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "512k(u-boot-spl)," \ + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "1920k(u-boot)," \ + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "128k(u-boot-env)," \ + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "4m(kernel)," \ + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "-(fs)"
Curious, medical device but not using redundant env? Or something special hidden in those extra-large sizes?
[snip]
Quoted 8 lines
+ ? ? ? "nandargs=" \
+ ? ? ? ? ? ? ? "run commonargs; " \
+ ? ? ? ? ? ? ? "setenv bootargs ${bootargs} " \
+ ? ? ? ? ? ? ? "omapfb.mode=lcd:${lcdmode} " \
+ ? ? ? ? ? ? ? "omapdss.def_disp=${defaultdisplay} " \
+ ? ? ? ? ? ? ? "root=/dev/mtdblock4 " \
+ ? ? ? ? ? ? ? "rootfstype=ubifs " \
+ ? ? ? ? ? ? ? "${kernelopts}\0" \
Curious, this works too? I'm used to the 'root=ubi0:rootfs rootwait' or so syntax
[snip]
Quoted 1 line
+#define
CONFIG_SYS_MAXARGS? ? ? ? ? ? 128 ? ? /* max number of command args */
What? I swear this is just for args passed to u-boot commands and unrelated to args passed to the kernel via bootargs= so 16 or so is a nice sane default.
[snip]
Quoted 1 line
+#define
CONFIG_SYS_NAND_BAD_BLOCK_POS?0
NAND_LARGE_BADBLOCK_POS please.
Signature · 1 line
Tom
PATCH 1/1 OMAP3: Add Corscience Tricorder board
In reply to Thomas WeberHi Thomas,
Several comments in addition to Tom's comments:
Quoted 18 lines · Thomas Weber
Tricorder is a board which is very similar to the Devkit8000. It is designed as a base platform for further medical devices.
www.corscience.de/en/medical-engineering/products/multiparameter/mp10-board.html
Signed-off-by Thomas Weber <[email protected]>--- MAINTAINERS | 1 + board/corscience/tricorder/Makefile | 46 ++++ board/corscience/tricorder/tricorder.c | 114 ++++++++++ board/corscience/tricorder/tricorder.h | 375 ++++++++++++++++++++++++++++++++ boards.cfg | 1 + include/configs/tricorder.h | 325 +++++++++++++++++++++++++++ 6 files changed, 862 insertions(+), 0 deletions(-) create mode 100644 board/corscience/tricorder/Makefile create mode 100644 board/corscience/tricorder/tricorder.c create mode 100644 board/corscience/tricorder/tricorder.h create mode 100644 include/configs/tricorder.h
[...]
Quoted 7 lines
board/corscience/tricorder/tricorder.c new file +1
-0@@ -0,0 +1,114 @@ +/*
board/corscience/tricorder/tricorder.c line 11
Quoted 10 lines
board/corscience/tricorder/tricorder.c new file +10
-0+* (C) Copyright 2004-2008 +* Texas Instruments, <www.ti.com> +* +* Author : +* Sunil Kumar <[email protected]> +* Shashi Ranjan <[email protected]> +* +* (C) Copyright 2011 +* Corscience GmbH & Co. KG, <www.corscience.de> +* Thomas Weber <[email protected]>
Something is wrong here with authorship...
IMO, you should be the author,
and people above listed in derived from ... or something.
Quoted 11 lines
board/corscience/tricorder/tricorder.c new file +11
-0+* +* Derived from Devkit8000 code by +* Frederik Kriewitz <[email protected]> +* +* See file CREDITS for list of people who contributed to this +* project. +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License, or (at your option) any later version.
board/corscience/tricorder/tricorder.c line 32
Quoted 10 lines
board/corscience/tricorder/tricorder.c new file +10
-0+* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 59 Temple Place, Suite 330, Boston, +* MA 02111-1307 USA
I would also, remove the postal address, as it may change (and did in the past), but it is your call.
Quoted 12 lines
board/corscience/tricorder/tricorder.c new file +12
-0+*/ +#include <common.h> +#include <twl4030.h> +#include <asm/io.h> +#include <asm/arch/mmc_host_def.h> +#include <asm/arch/mux.h> +#include <asm/arch/sys_proto.h> +#include <asm/arch/mem.h> +#include <asm/mach-types.h> +#include "tricorder.h" + +DECLARE_GLOBAL_DATA_PTR ;
board/corscience/tricorder/tricorder.c line 54
Quoted 10 lines
board/corscience/tricorder/tricorder.c new file +10
-0+ +/* +* Routine: board_init +* Description: Early hardware init. +*/ +int board_init (void ) +{ +gpmc_init ();/* in SRAM or SDRAM, finish GPMC */ +/* board id for Linux */ + gd->bd->bi_arch_number =MACH_TYPE_TRICORDER ;
This should be done in board config file (see the README). Also, after moving this to config file, I think, the include for mach-types.h can be removed.
Quoted 5 lines
board/corscience/tricorder/tricorder.c new file +5
-0+/* boot param addr */ + gd->bd->bi_boot_params = (OMAP34XX_SDRC_CS0 +0x100 ); + +return 0 ; +}
[...]
Quoted 5 lines
board/corscience/tricorder/tricorder.h new file +0
-0
[...]
Quoted 2 lines
+#define
MUX_TRICORDER()\
+ /* SDRC */\
Please, use tabs for indentation and please fix globally.
[...]
board/corscience/tricorder/tricorder.h line 308
Quoted 1 line
board/corscience/tricorder/tricorder.h new file +1
-0+/* */ \
This is really a nice comment, but...
That is one of the reasons I like the whole thing done in a function or an array rather than in a multi-line macro...
[...]
Quoted 5 lines
include/configs/tricorder.h new file +0
-0
[...]
include/configs/tricorder.h line 107
Quoted 7 lines
include/configs/tricorder.h new file +7
-0+/* I2C */ +#define CONFIG_HARD_I2C +#define CONFIG_SYS_I2C_SPEED 100000 +#define CONFIG_SYS_I2C_SLAVE 1 +#define CONFIG_SYS_I2C_BUS 0 +#define CONFIG_SYS_I2C_BUS_SELECT 1 +#define CONFIG_DRIVER_OMAP34XX_I2C 1
Some of these should not have a value, right?
include/configs/tricorder.h line 261
Quoted 4 lines
include/configs/tricorder.h new file +4
-0+#define CONFIG_ENV_IS_IN_NAND 1 +#define SMNAND_ENV_OFFSET 0x260000/* environment starts here */ + +#define CONFIG_ENV_OFFSET SMNAND_ENV_OFFSET
Can't the above be inlined?
[...]
Signature · 2 lines
Regards, Igor.