Patches for next merge window
Sascha Hauer
s.hauer at pengutronix.de
Mon Mar 29 05:36:11 EDT 2010
Hi all,
Here are some patches I created to boot my systems faster. With these
I managed to bring a phyCORE-i.MX35 to the shell in ~0.4s using a kernel with
integrated ramfs which only contains a busybox. Here is a bootlog:
[ 0.000003] < 0.000003> barebox 2010.03.0-00110-g75108cd (Mar 29 2010 - 11:14:23)
[ 0.000025] < 0.000022>
[ 0.000047] < 0.000022> Board: Phytec phyCORE-i.MX35
[ 0.007972] < 0.007925> NAND device: Manufacturer ID: 0xec, Chip ID: 0xd3 (Samsung NAND 1GiB 3,3V 8-bit)
[ 0.011972] < 0.004000> Bad block table found at page 524224, version 0x01
[ 0.019472] < 0.007500> Bad block table found at page 524160, version 0x01
[ 0.019494] < 0.000022> nand_read_bbt: Bad block at 0x14300000
[ 0.023473] < 0.003979> nand_read_bbt: Bad block at 0x1f6c0000
[ 0.031472] < 0.007999> cfi_probe: cfi_flash base: 0xa0000000 size: 0x02000000
[ 0.035477] < 0.004005> Malloc space: 0x87b00000 -> 0x87f00000 (size 4 MB)
[ 0.039480] < 0.004003> Stack space : 0x87af8000 -> 0x87b00000 (size 32 kB)
[ 0.043474] < 0.003994> running /env/bin/init...
[ 0.043494] < 0.000020>
[ 0.047493] < 0.003999> Hit any key to stop autoboot: 0
[ 0.231477] < 0.183984> Linux version 2.6.34-rc2-g8b4c6e2-dirty (sha at octopus) (gcc version 4.3.2 (OSELAS.Toolchain-1.99.3) ) #32 PREEMPT Fri Mar 26 14:50:07 CET 2010
[ 0.239474] < 0.007997> CPU: ARMv6-compatible processor [4117b363] revision 3 (ARMv6TEJ), cr=00c5387f
[ 0.247475] < 0.008001> CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
[ 0.247497] < 0.000022> Machine: Phytec Phycore pcm043
[ 0.251486] < 0.003989> bootconsole [earlycon0] enabled
[ 0.407474] < 0.155988> /bin/sh: can't access tty; job control turned off
Also in this series are some patches for the fun of it: They add a -e
option to echo and allow for fancy shell prompts. Try
PS1="\e[1;32mbarebox@\e[1;31m\h\e[0m:\w " to get a coloured shell prompt.
As these features add size to the binary image without any real value they
are disabled by default.
Sascha
The following changes since commit a5bae62878a9072c5f8cc95164de0b398b168fee:
Sascha Hauer (1):
hush: Fix return code when calling 'exit' inside loops
are available in the git repository at:
git://git.pengutronix.de/git/barebox.git pu
Sascha Hauer (12):
ARM zImage: do memmap if possible
nand_imx: use optimized memcpy
nand_imx: Speed up sequential read
imx_nand: use memcpy for copying from/to buffer
add unaligned access support
add unlzo support
add snprintf function
echo: add -e option support
add process_escape_sequence function
echo command: Add -e option
hush: only remove backslashes introduced from glob
hush: allow fancy prompts
arch/arm/include/asm/unaligned.h | 19 +++
arch/arm/lib/armlinux.c | 16 ++-
commands/Kconfig | 14 ++
commands/Makefile | 1 +
commands/echo.c | 19 +++-
commands/unlzo.c | 69 ++++++++++
common/Kconfig | 9 ++
common/hush.c | 17 ++-
drivers/nand/nand_imx.c | 83 ++++++++++---
include/libbb.h | 2 +
include/lzo.h | 46 +++++++
include/stdio.h | 1 +
include/unaligned/access_ok.h | 67 ++++++++++
include/unaligned/be_byteshift.h | 70 +++++++++++
include/unaligned/be_memmove.h | 36 ++++++
include/unaligned/be_struct.h | 36 ++++++
include/unaligned/generic.h | 68 ++++++++++
include/unaligned/le_byteshift.h | 70 +++++++++++
include/unaligned/le_memmove.h | 36 ++++++
include/unaligned/le_struct.h | 36 ++++++
include/unaligned/memmove.h | 45 +++++++
include/unaligned/packed_struct.h | 46 +++++++
lib/Kconfig | 5 +
lib/Makefile | 3 +
lib/decompress_unlzo.c | 199 +++++++++++++++++++++++++++++
lib/lzo/Kconfig | 6 +
lib/lzo/Makefile | 4 +
lib/lzo/lzo1x_compress.c | 226 +++++++++++++++++++++++++++++++++
lib/lzo/lzo1x_decompress.c | 247 +++++++++++++++++++++++++++++++++++++
lib/lzo/lzodefs.h | 43 +++++++
lib/lzo/modules.builtin | 2 +
lib/process_escape_sequence.c | 78 ++++++++++++
lib/vsprintf.c | 12 ++
33 files changed, 1600 insertions(+), 31 deletions(-)
create mode 100644 arch/arm/include/asm/unaligned.h
create mode 100644 commands/unlzo.c
create mode 100644 include/lzo.h
create mode 100644 include/unaligned/access_ok.h
create mode 100644 include/unaligned/be_byteshift.h
create mode 100644 include/unaligned/be_memmove.h
create mode 100644 include/unaligned/be_struct.h
create mode 100644 include/unaligned/generic.h
create mode 100644 include/unaligned/le_byteshift.h
create mode 100644 include/unaligned/le_memmove.h
create mode 100644 include/unaligned/le_struct.h
create mode 100644 include/unaligned/memmove.h
create mode 100644 include/unaligned/packed_struct.h
create mode 100644 lib/decompress_unlzo.c
create mode 100644 lib/lzo/Kconfig
create mode 100644 lib/lzo/Makefile
create mode 100644 lib/lzo/lzo1x_compress.c
create mode 100644 lib/lzo/lzo1x_decompress.c
create mode 100644 lib/lzo/lzodefs.h
create mode 100644 lib/lzo/modules.builtin
create mode 100644 lib/process_escape_sequence.c
More information about the barebox
mailing list