AnsweredAssumed Answered

Compiling U-Boot in 32 bit mode for T2080 QDS board

Question asked by Manish Raturi on Feb 24, 2016
Latest reply on Feb 25, 2016 by bpe

Hi Team,


We are using T2080QDS reference board as a base for developing our customized board. When I see the memory map of the reference board, all the addresses are provided in 36 bit. But as our OS support 32 bit addressing. We want U-Boot also to use 32 bit addressing. Keeping this in mind we prepared a memory map( Attached with this email). Now I have some confusion about these macros below:



Reference board macro's for PCIE controller 1


/* controller 1, direct to uli, tgtid 3, Base address 20000 */

#define CONFIG_SYS_PCIE1_MEM_VIRT       0x80000000

#define CONFIG_SYS_PCIE1_MEM_BUS        0xe0000000

#define CONFIG_SYS_PCIE1_MEM_PHYS       0xc00000000ull

#define CONFIG_SYS_PCIE1_MEM_SIZE       0x20000000      /* 512M */

#define CONFIG_SYS_PCIE1_IO_VIRT        0xf8000000

#define CONFIG_SYS_PCIE1_IO_BUS         0x00000000

#define CONFIG_SYS_PCIE1_IO_PHYS        0xff8000000ull

#define CONFIG_SYS_PCIE1_IO_SIZE        0x00010000      /* 64k */



As I see from the above macro definition the MEM_PHYS is 36 bit and the MEM_VIRT(TLB )entry is 32 bit virtual address and MEM_BUS is again 32 bit address , which according to my understanding overlap with the DDR memory map address(But I think as the reference board maps 2GB DDR only in U-BOOT that should be fine).


If I want to change the above macros according to our memory map(attached with this email), then will the below definition below will work:



/*For SVC */

#ifdef SVC_PCIE1

#define CONFIG_SYS_PCIE1_MEM_VIRT       0xC0000000

#define CONFIG_SYS_PCIE1_MEM_BUS        0xC0000000

#define CONFIG_SYS_PCIE1_MEM_PHYS       0xC00000000ull

#define CONFIG_SYS_PCIE1_MEM_SIZE       0x10000000      /* 256M */

#define CONFIG_SYS_PCIE1_IO_VIRT        0xE0000000

#define CONFIG_SYS_PCIE1_IO_BUS         0x00000000

#define CONFIG_SYS_PCIE1_IO_PHYS        0xE00000000ull

#define CONFIG_SYS_PCIE1_IO_SIZE        0x00010000      /* 64k */



Please help in entering the correct values for these macros according to our memory map.


Thanks & Regards

Manish Raturi