snapdragon: added MAC generation functions
Add support for generation of unique MAC address that is derived from board serial. Algorithm for generation of MAC taken from LK. Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
This commit is contained in:
parent
86e5e42946
commit
e0b04a1525
@ -8,5 +8,6 @@
|
||||
#define MISC_H
|
||||
|
||||
u32 msm_board_serial(void);
|
||||
void msm_generate_mac_addr(u8 *mac);
|
||||
|
||||
#endif
|
||||
|
@ -35,3 +35,19 @@ u32 msm_board_serial(void)
|
||||
|
||||
return UNSTUFF_BITS(mmc_dev->cid, 16, 32);
|
||||
}
|
||||
|
||||
void msm_generate_mac_addr(u8 *mac)
|
||||
{
|
||||
int i;
|
||||
char sn[9];
|
||||
|
||||
snprintf(sn, 8, "%08x", msm_board_serial());
|
||||
|
||||
/* fill in the mac with serialno, use locally adminstrated pool */
|
||||
mac[0] = 0x02;
|
||||
mac[1] = 00;
|
||||
for (i = 3; i >= 0; i--) {
|
||||
mac[i + 2] = simple_strtoul(&sn[2 * i], NULL, 16);
|
||||
sn[2 * i] = 0;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user