summaryrefslogtreecommitdiff
path: root/board/keymile/kmeter1
diff options
context:
space:
mode:
authorHeiko Schocher <hs@denx.de>2010-01-07 08:55:50 +0100
committerWolfgang Denk <wd@denx.de>2010-01-18 00:43:54 +0100
commit4897ee33c98b4b29efd62854052eb7862380b5ae (patch)
tree5a08d904a6dc7e449614f0194e42505dda2d73ab /board/keymile/kmeter1
parent1567b596d9f4a7ff49ebdca29e15a33777dfd670 (diff)
powerpc: keymile boards updates
- malloc size 4 MB for all keymile boards - use generic FDT code for fixing up the DTS - enable unit-led at startup for keymile boards - remove some dts updates for keymile boards - ppc_83xx, kmeter1: take FE/GbE PHYs out of reset - ppc_83xx, kmeter1: change from Intel Strata to Spansion 64MB flash changed from Intel Strata to Spansion 64MB flash and changed flash layout. +---------+----------+-----------------------+-----------------------------+ | name | size | range | description | +---------+----------+-----------------------+-----------------------------+ | u-boot | 768 KB | 0xf0000000-0xf00bffff | for u-boot | | env | 128 KB | 0xf00c0000-0xf00dffff | for environment | | envred | 128 KB | 0xf00e0000-0xf00fffff | for environment (redundant) | | ubi0 | 64512 KB | 0xf0100000-0xf3ffffff | ubi0 for ubi volumes | +---------+----------+-----------------------+-----------------------------+ Signed-off-by: Heiko Schocher <hs@denx.de>
Diffstat (limited to 'board/keymile/kmeter1')
-rw-r--r--board/keymile/kmeter1/kmeter1.c50
1 files changed, 6 insertions, 44 deletions
diff --git a/board/keymile/kmeter1/kmeter1.c b/board/keymile/kmeter1/kmeter1.c
index fa2f1cf431..bbcaf5d3d3 100644
--- a/board/keymile/kmeter1/kmeter1.c
+++ b/board/keymile/kmeter1/kmeter1.c
@@ -99,6 +99,10 @@ int board_early_init_r (void)
}
/* enable the PHY on the PIGGY */
setbits (8, (void *)(CONFIG_SYS_PIGGY_BASE + 0x10003), 0x01);
+ /* enable the Unit LED (green) */
+ setbits (8, (void *)(CONFIG_SYS_PIGGY_BASE + 0x00002), 0x01);
+ /* take FE/GbE PHYs out of reset */
+ setbits (8, (void *)(CONFIG_SYS_PIGGY_BASE + 0x0000f), 0x1c);
return 0;
}
@@ -188,53 +192,11 @@ int checkboard (void)
#if defined(CONFIG_OF_BOARD_SETUP)
/*
- * update "/localbus/ranges" property in the blob
+ * update property in the blob
*/
void ft_blob_update (void *blob, bd_t *bd)
{
- ulong *flash_data = NULL;
- flash_info_t *info;
- ulong flash_reg[6] = {0};
- int len;
- int size = 0;
- int i = 0;
-
- len = fdt_get_node_and_value (blob, "/localbus", "ranges",
- (void *)&flash_data);
-
- if (flash_data == NULL) {
- printf ("%s: error /localbus/ranges entry\n", __FUNCTION__);
- return;
- }
-
- /* update Flash addr, size */
- while ( i < (len / 4)) {
- switch (flash_data[i]) {
- case 0:
- info = flash_get_info(CONFIG_SYS_FLASH_BASE);
- size = info->size;
- info = flash_get_info(CONFIG_SYS_FLASH_BASE_1);
- size += info->size;
- flash_data[i + 1] = 0;
- flash_data[i + 2] = cpu_to_be32 (CONFIG_SYS_FLASH_BASE);
- flash_data[i + 3] = cpu_to_be32 (size);
- break;
- default:
- break;
- }
- i += 4;
- }
- fdt_set_node_and_value (blob, "/localbus", "ranges", flash_data,
- len);
-
- info = flash_get_info(CONFIG_SYS_FLASH_BASE);
- size = info->size;
- flash_reg[2] = cpu_to_be32 (size);
- flash_reg[4] = flash_reg[2];
- info = flash_get_info(CONFIG_SYS_FLASH_BASE_1);
- flash_reg[5] = cpu_to_be32 (info->size);
- fdt_set_node_and_value (blob, "/localbus/flash@f0000000,0", "reg", flash_reg,
- sizeof (flash_reg));
+ /* no board specific update */
}