Merge remote-tracking branch 'u-boot-ti/master' into m

This commit is contained in:
Albert ARIBAUD
2012-09-05 20:20:04 +02:00
9 changed files with 256 additions and 69 deletions

View File

@@ -2,6 +2,9 @@
* Copyright (C) 2011
* Stefano Babic, DENX Software Engineering, sbabic@denx.de.
*
*
* Configuration settings for the Teejet mt_ventoux board.
*
* Copyright (C) 2009 TechNexion Ltd.
*
* This program is free software; you can redistribute it and/or modify
@@ -24,6 +27,10 @@
#include "tam3517-common.h"
#undef CONFIG_SYS_MALLOC_LEN
#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + (128 << 10) + \
6 * 1024 * 1024)
#define MACH_TYPE_AM3517_MT_VENTOUX 3832
#define CONFIG_MACH_TYPE MACH_TYPE_AM3517_MT_VENTOUX
@@ -31,6 +38,7 @@
#define CONFIG_BOOTFILE "uImage"
#define CONFIG_AUTO_COMPLETE
#define CONFIG_OMAP3_GPIO_4
#define CONFIG_HOSTNAME mt_ventoux
/*
@@ -62,6 +70,15 @@
#define CONFIG_FPGA_DELAY() udelay(1)
#define CONFIG_SYS_FPGA_PROG_FEEDBACK
#define CONFIG_VIDEO
#define CONFIG_CFB_CONSOLE
#define CONFIG_VGA_AS_SINGLE_DEVICE
#define CONFIG_SPLASH_SCREEN
#define CONFIG_VIDEO_BMP_RLE8
#define CONFIG_CMD_BMP
#define CONFIG_VIDEO_OMAP3 /* DSS Support */
#define CONFIG_SYS_CONSOLE_IS_IN_ENV
#define CONFIG_EXTRA_ENV_SETTINGS CONFIG_TAM3517_SETTINGS \
"bootcmd=run net_nfs\0"

View File

@@ -124,6 +124,7 @@
#define CONFIG_CMD_NAND /* NAND support */
#define CONFIG_CMD_PING
#define CONFIG_CMD_USB
#define CONFIG_CMD_EEPROM
#undef CONFIG_CMD_FLASH /* only NAND on the SOM */
#undef CONFIG_CMD_IMLS
@@ -134,6 +135,9 @@
#define CONFIG_SYS_I2C_SLAVE 1
#define CONFIG_SYS_I2C_BUS 0
#define CONFIG_SYS_I2C_BUS_SELECT 1
#define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 /* base address */
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 /* bytes of address */
#define CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW 0x07
#define CONFIG_DRIVER_OMAP34XX_I2C
@@ -347,4 +351,66 @@
"fi;" \
"else echo U-Boot not downloaded..exiting;fi\0" \
/*
* this is common code for all TAM3517 boards.
* MAC address is stored from manufacturer in
* I2C EEPROM
*/
#if !(defined(__KERNEL_STRICT_NAMES) || defined(__ASSEMBLY__))
/*
* The I2C EEPROM on the TAM3517 contains
* mac address and production data
*/
struct tam3517_module_info {
char customer[48];
char product[48];
/*
* bit 0~47 : sequence number
* bit 48~55 : week of year, from 0.
* bit 56~63 : year
*/
unsigned long long sequence_number;
/*
* bit 0~7 : revision fixed
* bit 8~15 : revision major
* bit 16~31 : TNxxx
*/
unsigned int revision;
unsigned char eth_addr[4][8];
unsigned char _rev[100];
};
#define TAM3517_READ_MAC_FROM_EEPROM \
do { \
struct tam3517_module_info info;\
char buf[80], ethname[20]; \
int i; \
i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE); \
if (eeprom_read(CONFIG_SYS_I2C_EEPROM_ADDR, 0, \
(void *)&info, sizeof(info))) \
break; \
memset(buf, 0, sizeof(buf)); \
for (i = 0 ; i < ARRAY_SIZE(info.eth_addr); i++) { \
sprintf(buf, "%02X:%02X:%02X:%02X:%02X:%02X", \
info.eth_addr[i][5], \
info.eth_addr[i][4], \
info.eth_addr[i][3], \
info.eth_addr[i][2], \
info.eth_addr[i][1], \
info.eth_addr[i][0]); \
\
if (i) \
sprintf(ethname, "eth%daddr", i); \
else \
sprintf(ethname, "ethaddr"); \
printf("Setting %s from EEPROM with %s\n", ethname, buf);\
setenv(ethname, buf); \
} \
} while (0)
#endif
#endif /* __TAM3517_H */