use radio0 only on the 5312
[openwrt/svn-archive/archive.git] / target / linux / atheros-2.6 / files / arch / mips / atheros / prom.c
index 6dfa13c77d2be4ce1b77d19acad5028e34baa4d8..5a4ee63b2c33772b37010f6f0f13d374d894afe0 100644 (file)
 
 void __init prom_init(void)
 {
-       u32 memsize, memcfg;
 
        mips_machgroup = MACH_GROUP_ATHEROS;
        mips_machtype = -1;
 
-       /*                                                                             
-        * Atheros CPUs before the AR2315 are using MIPS 4Kc core, later designs are
-        * using MIPS 4KEc R2 core. This makes it easy to determine the board at runtime.
-        */
-                                                                            
-       if (current_cpu_data.cputype == CPU_4KEC) {
-               mips_machtype = MACH_ATHEROS_AR5315;
-               
-               memcfg = sysRegRead(AR5315_MEM_CFG);
-               memsize   = 1 + ((memcfg & SDRAM_DATA_WIDTH_M) >> SDRAM_DATA_WIDTH_S);
-               memsize <<= 1 + ((memcfg & SDRAM_COL_WIDTH_M) >> SDRAM_COL_WIDTH_S);
-               memsize <<= 1 + ((memcfg & SDRAM_ROW_WIDTH_M) >> SDRAM_ROW_WIDTH_S);
-               memsize <<= 3;
-       } else {
-               int bank0AC, bank1AC;
+       DO_AR5312(ar5312_prom_init();)
+       DO_AR5315(ar5315_prom_init();)
 
-               mips_machtype = MACH_ATHEROS_AR5312;
-
-               memcfg = sysRegRead(AR531X_MEM_CFG1);
-               bank0AC = (memcfg & MEM_CFG1_AC0) >> MEM_CFG1_AC0_S;
-               bank1AC = (memcfg & MEM_CFG1_AC1) >> MEM_CFG1_AC1_S;
-               memsize = (bank0AC ? (1 << (bank0AC+1)) : 0)
-                       + (bank1AC ? (1 << (bank1AC+1)) : 0);
-               memsize <<= 20;
-       }
-
-       add_memory_region(0, memsize, BOOT_MEM_RAM);
        strcpy(arcs_cmdline, "console=ttyS0,9600 rootfstype=squashfs,jffs2");
 }