/*
* The carl9170 firwmare gets copied into the device's
- * Program RAM (pram), which has a size of 32K, but
+ * Program RAM (pram), which has a size of 16K, but
* also has to accomodate the stack the device uses,
- * which starts at the top of the 32k, so we pretend
- * that we just have 16k of pram.
+ * which starts at the top of the 16k, so we pretend
+ * that we just have 16256 (16k - 128) of pram.
*
* This section documents some of the other areas
* mapped into the firmware processor's address space
irqctl : ORIGIN = 0x1d2000, LENGTH = 4k
usb : ORIGIN = 0x1e1000, LENGTH = 4k
pta : ORIGIN = 0x1e2000, LENGTH = 4k
- pram : ORIGIN = 0x200000, LENGTH = 16k
+ pram : ORIGIN = 0x200000, LENGTH = 16256
+ bogus : ORIGIN = 0x300000, LENGTH = 8k
}
SECTIONS
{
+ .eeprom : { *(.eeprom*) } > eeprom
+ .sram : { *(.sram*) } > sram
+
/*
* The ar9170 boot code will execute the code
* at address 0x04 from the loaded firmware as
.rodata : { *(.rodata*) } > pram
.bss : { *(.bss) } > pram
.data : { *(.data*) } > pram
- .fwdsc : { KEEP(*(.fwdsc)) } > pram
- .sram : { *(.sram*) } > sram
- .eeprom : { *(.eeprom*) } > eeprom
+ .fwdsc : { KEEP(*(.fwdsc)) } > bogus
}