This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Error L6244E: Load region not aligned on 2048 byte boundary, i.MXRT1176

During porting of some code from i.MX1164 to i.MXRT1176, I have stumbled on a problem I could use some help on....

The (reduced) project implement USB (Bulk, not important). When I enable a specific piece of code, I get the L6244E error, the code:


Fullscreen
1
2
3
4
/* EHCI device driver interface */
static const usb_device_controller_interface_struct_t s_UsbDeviceEhciInterface = {
USB_DeviceEhciInit, USB_DeviceEhciDeinit, USB_DeviceEhciSend,
USB_DeviceEhciRecv, USB_DeviceEhciCancel, USB_DeviceEhciControl};
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

The linker file:

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#if (defined(__ram_vector_table__))
#define __ram_vector_table_size__ 0x00000400
#else
#define __ram_vector_table_size__ 0x00000000
#endif
#define m_flash_config_start 0x30000400
#define m_flash_config_size 0x00000C00
#define m_ivt_start 0x30001000
#define m_ivt_size 0x00001000
#define m_interrupts_start 0x30002000
#define m_interrupts_size 0x00000400
#define m_text_start 0x30002400
#define m_text_size 0x00FBDC00
#define m_qacode_start 0x00000000
#define m_qacode_size 0x00040000
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

The specific error from the linker:

flexspi_nor_debug\Application.out: Error: L6244E: Load region LR_m_text address (0x30000400) not aligned on a 2048 byte boundary.

If I specifically change

#define m_flash_config_start 0x30000400

to 

#define m_flash_config_start 0x30000800

The error goes away, but the code will (obviously) not work as the address is wrong.

What am I missing in this ???

0