From e44e3482bdb4d0ebde2d8b41830ac2cdb07948fb Mon Sep 17 00:00:00 2001 From: Yang Zhang Date: Fri, 28 Aug 2015 09:58:54 +0800 Subject: Add qemu 2.4.0 Change-Id: Ic99cbad4b61f8b127b7dc74d04576c0bcbaaf4f5 Signed-off-by: Yang Zhang --- qemu/roms/u-boot/board/h2200/Makefile | 14 +++++++ qemu/roms/u-boot/board/h2200/h2200-header.S | 15 +++++++ qemu/roms/u-boot/board/h2200/h2200.c | 61 +++++++++++++++++++++++++++++ 3 files changed, 90 insertions(+) create mode 100644 qemu/roms/u-boot/board/h2200/Makefile create mode 100644 qemu/roms/u-boot/board/h2200/h2200-header.S create mode 100644 qemu/roms/u-boot/board/h2200/h2200.c (limited to 'qemu/roms/u-boot/board/h2200') diff --git a/qemu/roms/u-boot/board/h2200/Makefile b/qemu/roms/u-boot/board/h2200/Makefile new file mode 100644 index 000000000..e516e916b --- /dev/null +++ b/qemu/roms/u-boot/board/h2200/Makefile @@ -0,0 +1,14 @@ +# +# h2200 Support +# +# Copyright (C) 2012 Lukasz Dalek +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y := h2200.o + +extra-y := h2200-header.bin + +$(obj)/h2200-header.bin: $(obj)/h2200-header.o + $(OBJCOPY) -O binary $< $@ diff --git a/qemu/roms/u-boot/board/h2200/h2200-header.S b/qemu/roms/u-boot/board/h2200/h2200-header.S new file mode 100644 index 000000000..ac2e6b4ba --- /dev/null +++ b/qemu/roms/u-boot/board/h2200/h2200-header.S @@ -0,0 +1,15 @@ +/* + * iPAQ h2200 header + * + * Copyright (C) 2012 Lukasz Dalek + * + * SPDX-License-Identifier: GPL-2.0+ + */ + + .word 0xea0003fe /* b 0x1000 */ + + .org 0x40 + .ascii "ECEC" + + .org 0x1000 - 1 + .byte 0x0 diff --git a/qemu/roms/u-boot/board/h2200/h2200.c b/qemu/roms/u-boot/board/h2200/h2200.c new file mode 100644 index 000000000..66ae4b690 --- /dev/null +++ b/qemu/roms/u-boot/board/h2200/h2200.c @@ -0,0 +1,61 @@ +/* + * iPAQ h2200 board configuration + * + * Copyright (C) 2012 Lukasz Dalek + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include +#include +#include +#include +#include + +DECLARE_GLOBAL_DATA_PTR; + +int board_eth_init(bd_t *bis) +{ + usb_eth_initialize(bis); + return 0; +} + +void reset_cpu(ulong ignore) +{ + /* Enable VLIO interface on Hamcop */ + writeb(0x1, 0x4000); + + /* Reset board (cold reset) */ + writeb(0xff, 0x4002); +} + +int board_init(void) +{ + /* We have RAM, disable cache */ + dcache_disable(); + icache_disable(); + + gd->bd->bi_arch_number = MACH_TYPE_H2200; + + /* adress of boot parameters */ + gd->bd->bi_boot_params = 0xa0000100; + + /* Let host see that device is disconnected */ + udc_disconnect(); + mdelay(500); + + return 0; +} + +int dram_init(void) +{ + /* + * Everything except MSC0 was already set up by + * 1st stage bootloader. + * + * This setting enables access to companion chip. + */ + clrsetbits_le32(MSC0, 0xffffffff, CONFIG_SYS_MSC0_VAL); + gd->ram_size = CONFIG_SYS_SDRAM_SIZE; + return 0; +} -- cgit 1.2.3-korg