Changeset 6 for trunk/tools/arch_info/boot_info.h
- Timestamp:
- Apr 26, 2017, 2:14:33 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/arch_info/boot_info.h
r1 r6 32 32 ********************************************************************************************/ 33 33 34 #define BOOT_INFO_SIGNATURE 0x BABEF00D34 #define BOOT_INFO_SIGNATURE 0x12344321 35 35 36 36 /********************************************************************************************* … … 69 69 typedef struct boot_device_s 70 70 { 71 uint64_t base; /*! segment physical base address */ 72 uint64_t size; /*! channel size (bytes) */ 71 73 uint32_t type; /*! peripheral type (func | impl) */ 72 xptr_t base; /*! segment global base address */73 uint64_t size; /*! channel size (bytes) */74 74 uint32_t channels; /*! number of channels */ 75 75 uint32_t param0; /*! semantic depends on peripherat type */ … … 90 90 typedef struct boot_info_s 91 91 { 92 uint32_t signature; /*! boot info signature*/92 uint32_t signature; /*! boot info signature */ 93 93 94 94 // global platform parameters 95 95 96 uint32_t paddr_width; /*! number of bits in physical address*/97 uint32_t x_width; /*! number of bits to code X coordinate*/98 uint32_t y_width; /*! number of bits to code Y coordinate*/99 uint32_t x_size; /*! number of cluster in a row*/100 uint32_t y_size; /*! number of cluster in a column*/101 uint32_t io_cxy; /*! IO cluster identifier*/96 uint32_t paddr_width; /*! number of bits in physical address */ 97 uint32_t x_width; /*! number of bits to code X coordinate */ 98 uint32_t y_width; /*! number of bits to code Y coordinate */ 99 uint32_t x_size; /*! number of cluster in a row */ 100 uint32_t y_size; /*! number of cluster in a column */ 101 uint32_t io_cxy; /*! IO cluster identifier */ 102 102 103 // s pecific cluster parameters103 // shared resources 104 104 105 uint32_t cxy; /*! current cluster identifier */ 106 uint32_t cores_nr; /*! number of cores in current cluster */ 107 boot_core_t core[CONFIG_MAX_CORES_PER_CLUSTER]; /* array of core descriptors */ 108 uint32_t devices_nr; /*! number of peripherals in current cluster */ 109 boot_device_t dev[CONFIG_MAX_DEVICES_PER_CLUSTER]; /* array of device descriptors */ 110 uint32_t pages_nr; /*! total number of 4 Kbytes pages in cluster */ 111 uint32_t pages_offset; /*! number of pages already allocated for kernel */ 105 uint32_t ext_dev_nr; /*! number of external peripherals */ 106 boot_device_t ext_dev[CONFIG_MAX_EXT_DEV]; /*! array of external peripherals */ 107 108 // private resources (per cluster) 109 110 uint32_t cxy; /*! cluster identifier */ 111 uint32_t cores_nr; /*! number of local cores in */ 112 boot_core_t core[CONFIG_MAX_LOCAL_CORES]; /*! array of core descriptors */ 113 uint32_t int_dev_nr; /*! number of local peripherals */ 114 boot_device_t int_dev[CONFIG_MAX_INT_DEV]; /*! array of internal peripherals */ 115 uint32_t pages_nr; /*! number of 4 Kbytes pages */ 116 uint32_t pages_offset; /*! number of pages allocated for kernel */ 112 117 113 118 // kernel segments 114 119 115 intptr_t kernel_code_start; /*! kernel code base address*/116 intptr_t kernel_code_end; /*! kernel code last address (excluded)*/117 intptr_t kernel_data_start; /*! kernel data base address*/118 intptr_t kernel_data_end; /*! kernel data last address (excluded)*/120 intptr_t kernel_code_start; /*! kernel code base address */ 121 intptr_t kernel_code_end; /*! kernel code last address (excluded) */ 122 intptr_t kernel_data_start; /*! kernel data base address */ 123 intptr_t kernel_data_end; /*! kernel data last address (excluded) */ 119 124 } 120 125 boot_info_t;
Note: See TracChangeset
for help on using the changeset viewer.