X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=target%2Flinux%2Fadm5120%2Ffiles-2.6.26%2Farch%2Fmips%2Fadm5120%2Fcompex%2Fcompex.c;h=c14655ada723ba4ef031754579ea601508677714;hb=7bab42f05f60806bf4b7ba63688d96b68142c80b;hp=adc765f5e0b4ae4ab1903e16bb3cbac5db9b34bb;hpb=a61f0baa4c33ca352b7356e0d89d8e0ba6c0eeaf;p=openwrt.git diff --git a/target/linux/adm5120/files-2.6.26/arch/mips/adm5120/compex/compex.c b/target/linux/adm5120/files-2.6.26/arch/mips/adm5120/compex/compex.c index adc765f5e0..c14655ada7 100644 --- a/target/linux/adm5120/files-2.6.26/arch/mips/adm5120/compex/compex.c +++ b/target/linux/adm5120/files-2.6.26/arch/mips/adm5120/compex/compex.c @@ -9,16 +9,9 @@ * */ -#include -#include +#include "compex.h" -#include -#include - -#include -#include -#include -#include +#include #define COMPEX_GPIO_DEV_MASK (1 << ADM5120_GPIO_PIN5) @@ -34,6 +27,26 @@ static void switch_bank_gpio5(unsigned bank) } } +void __init compex_mac_setup(void) +{ + if (myloader_present()) { + int i; + + for (i = 0; i < 6; i++) { + if (is_valid_ether_addr(myloader_info.macs[i])) + memcpy(adm5120_eth_macs[i], + myloader_info.macs[i], ETH_ALEN); + else + random_ether_addr(adm5120_eth_macs[i]); + } + } else { + u8 mac[ETH_ALEN]; + + random_ether_addr(mac); + adm5120_setup_eth_macs(mac); + } +} + void __init compex_generic_setup(void) { gpio_request(ADM5120_GPIO_PIN5, NULL); /* for flash A20 line */ @@ -42,5 +55,10 @@ void __init compex_generic_setup(void) adm5120_flash0_data.switch_bank = switch_bank_gpio5; adm5120_add_device_flash(0); + adm5120_add_device_uart(0); + adm5120_add_device_uart(1); + adm5120_add_device_gpio(COMPEX_GPIO_DEV_MASK); + + compex_mac_setup(); }