Changes in kernel/arch/arm32/src/machine_func.c [a71c158:ecf083dd] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm32/src/machine_func.c
ra71c158 recf083dd 39 39 40 40 #include <arch/machine_func.h> 41 #include <arch/mach/gta02/gta02.h> 42 #include <arch/mach/integratorcp/integratorcp.h> 43 #include <arch/mach/testarm/testarm.h> 41 44 45 /** Pointer to machine_ops structure being used. */ 46 struct arm_machine_ops *machine_ops; 47 48 /** Initialize machine_ops pointer. */ 49 void machine_ops_init(void) 50 { 51 #if defined(MACHINE_gta02) 52 machine_ops = >a02_machine_ops; 53 #elif defined(MACHINE_testarm) 54 machine_ops = &gxemul_machine_ops; 55 #elif defined(MACHINE_integratorcp) 56 machine_ops = &icp_machine_ops; 57 #else 58 #error Machine type not defined. 59 #endif 60 } 42 61 43 62 /** Maps HW devices to the kernel address space using #hw_map. */ 44 63 void machine_init(void) 45 64 { 46 (machine_ops .machine_init)();65 (machine_ops->machine_init)(); 47 66 } 48 67 … … 51 70 void machine_timer_irq_start(void) 52 71 { 53 (machine_ops .machine_timer_irq_start)();72 (machine_ops->machine_timer_irq_start)(); 54 73 } 55 74 … … 58 77 void machine_cpu_halt(void) 59 78 { 60 (machine_ops .machine_cpu_halt)();79 (machine_ops->machine_cpu_halt)(); 61 80 } 62 81 63 64 /** Returns size of available memory. 82 /** Get extents of available memory. 65 83 * 66 * @return Size of available memory. 84 * @param start Place to store memory start address. 85 * @param size Place to store memory size. 67 86 */ 68 uintptr_t machine_get_memory_size(void)87 void machine_get_memory_extents(uintptr_t *start, uintptr_t *size) 69 88 { 70 return (machine_ops.machine_get_memory_size)();89 (machine_ops->machine_get_memory_extents)(start, size); 71 90 } 72 91 … … 76 95 * @param istate Saved processor state. 77 96 */ 78 void machine_irq_exception( int exc_no, istate_t *istate)97 void machine_irq_exception(unsigned int exc_no, istate_t *istate) 79 98 { 80 (machine_ops .machine_irq_exception)(exc_no, istate);99 (machine_ops->machine_irq_exception)(exc_no, istate); 81 100 } 82 101 … … 87 106 void machine_frame_init(void) 88 107 { 89 (machine_ops .machine_frame_init)();108 (machine_ops->machine_frame_init)(); 90 109 } 91 110 … … 95 114 void machine_output_init(void) 96 115 { 97 (machine_ops .machine_output_init)();116 (machine_ops->machine_output_init)(); 98 117 } 99 118 … … 103 122 void machine_input_init(void) 104 123 { 105 (machine_ops .machine_input_init)();124 (machine_ops->machine_input_init)(); 106 125 } 107 126 108 /* 109 * Generic function to use, if sepcific function doesn't define any of the above functions. 110 */ 111 void machine_genfunc() 127 /** Get IRQ number range used by machine. */ 128 size_t machine_get_irq_count(void) 112 129 { 130 return (machine_ops->machine_get_irq_count)(); 113 131 } 114 132
Note:
See TracChangeset
for help on using the changeset viewer.