.. | .. |
---|
2 | 2 | #ifndef __ASM_MACH_LOONGSON64_BOOT_PARAM_H_ |
---|
3 | 3 | #define __ASM_MACH_LOONGSON64_BOOT_PARAM_H_ |
---|
4 | 4 | |
---|
| 5 | +#include <linux/types.h> |
---|
| 6 | + |
---|
5 | 7 | #define SYSTEM_RAM_LOW 1 |
---|
6 | 8 | #define SYSTEM_RAM_HIGH 2 |
---|
7 | 9 | #define SYSTEM_RAM_RESERVED 3 |
---|
.. | .. |
---|
190 | 192 | struct efi_reset_system_t reset_system; |
---|
191 | 193 | }; |
---|
192 | 194 | |
---|
| 195 | +enum loongson_bridge_type { |
---|
| 196 | + LS7A = 1, |
---|
| 197 | + RS780E = 2, |
---|
| 198 | + VIRTUAL = 3 |
---|
| 199 | +}; |
---|
| 200 | + |
---|
193 | 201 | struct loongson_system_configuration { |
---|
194 | 202 | u32 nr_cpus; |
---|
195 | 203 | u32 nr_nodes; |
---|
.. | .. |
---|
198 | 206 | u16 boot_cpu_id; |
---|
199 | 207 | u16 reserved_cpus_mask; |
---|
200 | 208 | enum loongson_cpu_type cputype; |
---|
| 209 | + enum loongson_bridge_type bridgetype; |
---|
201 | 210 | u64 ht_control_base; |
---|
202 | 211 | u64 pci_mem_start_addr; |
---|
203 | 212 | u64 pci_mem_end_addr; |
---|
.. | .. |
---|
213 | 222 | u32 nr_sensors; |
---|
214 | 223 | struct sensor_device sensors[MAX_SENSORS]; |
---|
215 | 224 | u64 workarounds; |
---|
| 225 | + void (*early_config)(void); |
---|
216 | 226 | }; |
---|
217 | 227 | |
---|
218 | 228 | extern struct efi_memory_map_loongson *loongson_memmap; |
---|
219 | 229 | extern struct loongson_system_configuration loongson_sysconf; |
---|
220 | 230 | |
---|
| 231 | +extern u32 node_id_offset; |
---|
| 232 | +extern void ls7a_early_config(void); |
---|
| 233 | +extern void rs780e_early_config(void); |
---|
| 234 | +extern void virtual_early_config(void); |
---|
| 235 | + |
---|
221 | 236 | #endif |
---|