mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
OMAP3: beagle-xm: generate fake USB ethernet MAC address from dieid
Similar to OMAP5uEVM, PandaBoard, BeagleBoard-XM has a USB based ethernet without MAC address embedded. So fake a MAC address following the similar strategy used on OMAP5 and PandaBoard family. Signed-off-by: Nishanth Menon <nm@ti.com>
This commit is contained in:
parent
79e7e87f91
commit
548a64d845
2 changed files with 12 additions and 0 deletions
|
@ -8,6 +8,7 @@
|
|||
#ifndef _SYS_PROTO_H_
|
||||
#define _SYS_PROTO_H_
|
||||
#include <linux/mtd/omap_gpmc.h>
|
||||
#include <asm/omap_common.h>
|
||||
|
||||
typedef struct {
|
||||
u32 mtype;
|
||||
|
|
|
@ -316,6 +316,7 @@ int misc_init_r(void)
|
|||
struct gpio *gpio5_base = (struct gpio *)OMAP34XX_GPIO5_BASE;
|
||||
struct gpio *gpio6_base = (struct gpio *)OMAP34XX_GPIO6_BASE;
|
||||
struct control_prog_io *prog_io_base = (struct control_prog_io *)OMAP34XX_CTRL_BASE;
|
||||
bool generate_fake_mac = false;
|
||||
|
||||
/* Enable i2c2 pullup resisters */
|
||||
writel(~(PRG_I2C2_PULLUPRESX), &prog_io_base->io1);
|
||||
|
@ -349,6 +350,7 @@ int misc_init_r(void)
|
|||
TWL4030_PM_RECEIVER_VAUX2_VSEL_18,
|
||||
TWL4030_PM_RECEIVER_VAUX2_DEV_GRP,
|
||||
TWL4030_PM_RECEIVER_DEV_GRP_P1);
|
||||
generate_fake_mac = true;
|
||||
break;
|
||||
case REVISION_XM_C:
|
||||
printf("Beagle xM Rev C\n");
|
||||
|
@ -359,6 +361,7 @@ int misc_init_r(void)
|
|||
TWL4030_PM_RECEIVER_VAUX2_VSEL_18,
|
||||
TWL4030_PM_RECEIVER_VAUX2_DEV_GRP,
|
||||
TWL4030_PM_RECEIVER_DEV_GRP_P1);
|
||||
generate_fake_mac = true;
|
||||
break;
|
||||
default:
|
||||
printf("Beagle unknown 0x%02x\n", get_board_revision());
|
||||
|
@ -368,6 +371,7 @@ int misc_init_r(void)
|
|||
TWL4030_PM_RECEIVER_VAUX2_VSEL_18,
|
||||
TWL4030_PM_RECEIVER_VAUX2_DEV_GRP,
|
||||
TWL4030_PM_RECEIVER_DEV_GRP_P1);
|
||||
generate_fake_mac = true;
|
||||
}
|
||||
|
||||
switch (get_expansion_id()) {
|
||||
|
@ -486,6 +490,13 @@ int misc_init_r(void)
|
|||
musb_register(&musb_plat, &musb_board_data, (void *)MUSB_BASE);
|
||||
#endif
|
||||
|
||||
if (generate_fake_mac) {
|
||||
u32 id[4];
|
||||
|
||||
get_dieid(id);
|
||||
usb_fake_mac_from_die_id(id);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue