Split ram_ahb memory region into two, with a 32K hole where the USB buffers live.
Split ram region into two, representing the two local RAM buses. Remove reference to usbram.ld, since it's no longer necessary.
This commit is contained in:
@ -26,12 +26,16 @@ MEMORY
|
|||||||
{
|
{
|
||||||
/* rom is really the shadow region that points to SPI flash or elsewhere */
|
/* rom is really the shadow region that points to SPI flash or elsewhere */
|
||||||
rom (rx) : ORIGIN = 0x00000000, LENGTH = 1M
|
rom (rx) : ORIGIN = 0x00000000, LENGTH = 1M
|
||||||
ram (rwx) : ORIGIN = 0x10000000, LENGTH = 128K
|
ram_local1 (rwx) : ORIGIN = 0x10000000, LENGTH = 128K
|
||||||
|
ram_local2 (rwx) : ORIGIN = 0x10080000, LENGTH = 72K
|
||||||
/* there are some additional RAM regions */
|
/* there are some additional RAM regions */
|
||||||
ram_ahb (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
ram_ahb1 (rwx) : ORIGIN = 0x20000000, LENGTH = 16K
|
||||||
|
/* Removed 32K of AHB SRAM for USB buffer. Straddles two blocks of RAM
|
||||||
|
* to get performance benefit of having two USB buffers addressable
|
||||||
|
* simultaneously (on two different buses of the AHB multilayer matrix)
|
||||||
|
*/
|
||||||
|
ram_ahb2 (rwx) : ORIGIN = 0x2000C000, LENGTH = 16K
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Include the common ld script. */
|
/* Include the common ld script. */
|
||||||
INCLUDE libopencm3_lpc43xx.ld
|
INCLUDE libopencm3_lpc43xx.ld
|
||||||
|
|
||||||
INCLUDE usbram.ld
|
|
||||||
|
@ -29,13 +29,15 @@ MEMORY
|
|||||||
rom_flash (rx) : ORIGIN = 0x80000000, LENGTH = 1M
|
rom_flash (rx) : ORIGIN = 0x80000000, LENGTH = 1M
|
||||||
/* rom is really the shadow region that points to SPI flash or elsewhere */
|
/* rom is really the shadow region that points to SPI flash or elsewhere */
|
||||||
rom (rx) : ORIGIN = 0x00000000, LENGTH = 1M
|
rom (rx) : ORIGIN = 0x00000000, LENGTH = 1M
|
||||||
ram (rwx) : ORIGIN = 0x10000000, LENGTH = 128K
|
ram_local1 (rwx) : ORIGIN = 0x10000000, LENGTH = 128K
|
||||||
/* there are some additional RAM regions for data */
|
ram_local2 (rwx) : ORIGIN = 0x10080000, LENGTH = 72K
|
||||||
ram_data (rw) : ORIGIN = 0x10080000, LENGTH = 72K
|
ram_ahb1 (rwx) : ORIGIN = 0x20000000, LENGTH = 16K
|
||||||
ram_ahb (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
/* Removed 32K of AHB SRAM for USB buffer. Straddles two blocks of RAM
|
||||||
|
* to get performance benefit of having two USB buffers addressable
|
||||||
|
* simultaneously (on two different buses of the AHB multilayer matrix)
|
||||||
|
*/
|
||||||
|
ram_ahb2 (rwx) : ORIGIN = 0x2000C000, LENGTH = 16K
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Include the common ld script. */
|
/* Include the common ld script. */
|
||||||
INCLUDE libopencm3_lpc43xx_rom_to_ram.ld
|
INCLUDE libopencm3_lpc43xx_rom_to_ram.ld
|
||||||
|
|
||||||
INCLUDE usbram.ld
|
|
||||||
|
@ -26,10 +26,13 @@ MEMORY
|
|||||||
{
|
{
|
||||||
ram_local1 (rwx) : ORIGIN = 0x10000000, LENGTH = 128K
|
ram_local1 (rwx) : ORIGIN = 0x10000000, LENGTH = 128K
|
||||||
ram_local2 (rwx) : ORIGIN = 0x10080000, LENGTH = 72K
|
ram_local2 (rwx) : ORIGIN = 0x10080000, LENGTH = 72K
|
||||||
ram_ahb (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
ram_ahb1 (rwx) : ORIGIN = 0x20000000, LENGTH = 16K
|
||||||
|
/* Removed 32K of AHB SRAM for USB buffer. Straddles two blocks of RAM
|
||||||
|
* to get performance benefit of having two USB buffers addressable
|
||||||
|
* simultaneously (on two different buses of the AHB multilayer matrix)
|
||||||
|
*/
|
||||||
|
ram_ahb2 (rwx) : ORIGIN = 0x2000C000, LENGTH = 16K
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Include the common ld script. */
|
/* Include the common ld script. */
|
||||||
INCLUDE libopencm3_lpc43xx_ram_only.ld
|
INCLUDE libopencm3_lpc43xx_ram_only.ld
|
||||||
|
|
||||||
INCLUDE usbram.ld
|
|
||||||
|
@ -1,35 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright 2012 Jared Boone <jared@sharebrained.com>
|
|
||||||
*
|
|
||||||
* This file is part of HackRF
|
|
||||||
*
|
|
||||||
* This program is free software; you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation; either version 2, or (at your option)
|
|
||||||
* any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program; see the file COPYING. If not, write to
|
|
||||||
* the Free Software Foundation, Inc., 51 Franklin Street,
|
|
||||||
* Boston, MA 02110-1301, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
SECTIONS
|
|
||||||
{
|
|
||||||
. = ORIGIN(ram_ahb);
|
|
||||||
|
|
||||||
.usbram : {
|
|
||||||
. = ALIGN(4096);
|
|
||||||
*(.usb_data)
|
|
||||||
. = ALIGN(2048);
|
|
||||||
*(.usb_qh)
|
|
||||||
. = ALIGN(64);
|
|
||||||
*(.usb_td)
|
|
||||||
} >ram_ahb
|
|
||||||
|
|
||||||
}
|
|
Reference in New Issue
Block a user