Commit | Line | Data |
---|---|---|
08dc78ad MM |
1 | Fri May 3 15:07:42 1996 Michael Meissner <meissner@tiktok.cygnus.com> |
2 | ||
3 | * Makefile.in: Correctly build simulator for build machine != host | |
4 | machine. | |
5 | ||
a72d2509 | 6 | Tue Apr 30 18:46:05 1996 Michael Meissner <meissner@tiktok.cygnus.com> |
997f0ee9 | 7 | |
a72d2509 MM |
8 | * configure.in (--enable-hostendian): Rework so the default uses |
9 | the AC_C_BIGENDIAN results. Only run AC_C_BIGENDIAN if not cross | |
10 | compiling. | |
11 | * configure: Regenerate. | |
12 | ||
13 | * sim-endian.h: Add more tests for host endian to support more | |
14 | platforms in a cross compilation environment. | |
64646bd3 | 15 | |
a72d2509 | 16 | Wed Apr 17 14:38:06 1996 Michael Meissner <meissner@tiktok.cygnus.com> |
64646bd3 | 17 | |
a72d2509 MM |
18 | * hw_pal.c ({scan,write}_hw_pal): If WITH_STDIO == DO_USE_STDIO, |
19 | use stdio, instead of unpended read/printf_filtered. | |
20 | (hw_pal_instance_write_callback): If WITH_STDIO == DO_USE_STDIO, | |
21 | flush stdout after writing the characters. | |
d6103e8e | 22 | |
6740925b MM |
23 | * options.c (print_options): Print out WITH_STDIO. |
24 | ||
d6103e8e MM |
25 | * Makefile.in (STDIO_CFLAGS): Pass on result of @sim_stdio@ |
26 | configuration variable. | |
27 | (CONFIG_CFLAGS): Include STDIO_CFLAGS. | |
a72d2509 MM |
28 | (hw.{c,h}): Allow for source dir != build dir, and for HW_SRC |
29 | files to contain directory pieces. | |
d6103e8e MM |
30 | |
31 | * std-config.h (DO{,NT}_USE_STDIO): New flags for whether we | |
32 | should use stdio for console input. | |
33 | (WITH_STDIO): If not defined, define as DONT_USE_STDIO. | |
34 | ||
35 | * configure.in (--enable-sim-stdio): Add new switch to control | |
36 | whether stdio is used for console I/O. | |
37 | * configure: Regenerate. | |
38 | ||
a72d2509 MM |
39 | * interrupts.c (external_interrupt): Declare it to be |
40 | INLINE_INTERRUPTS, not INLINE_CPU. | |
1dc7c0ed | 41 | |
a72d2509 | 42 | Mon Apr 15 23:30:56 1996 Andrew Cagney <cagney@kremvax.highland.com.au> |
1dc7c0ed | 43 | |
a72d2509 MM |
44 | * events.c (insert_event_entry): Allow events to be scheduled |
45 | *NOW* (at delta time 0). Add assertions to clarify behavour of | |
46 | event queue. | |
1dc7c0ed | 47 | |
a72d2509 MM |
48 | * events.c (update_time_from_event): New function. Calculates the |
49 | number of ticks from the next event. Use this. | |
1dc7c0ed | 50 | |
a72d2509 | 51 | Sun Apr 14 21:39:45 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 52 | |
a72d2509 MM |
53 | * emul_netbsd.c (do_break): Return 0 if success (instead of |
54 | adjusted break). | |
1dc7c0ed | 55 | |
a72d2509 MM |
56 | * device_table.c (vm_ioctl_callback): Don't return adjusted break |
57 | (isn't needed). | |
1dc7c0ed | 58 | |
a72d2509 | 59 | Sun Apr 14 21:32:41 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 60 | |
a72d2509 MM |
61 | * device_table.h: Change type of the device ioctl so that it |
62 | returns an int (status). | |
63 | * device.h (device_ioctl): Ditto. | |
64 | * device.c (device_ioctl): Ditto. | |
1dc7c0ed | 65 | |
a72d2509 MM |
66 | * device_table.c (stack_ioctl_callback): Return 0 status. |
67 | (vm_ioctl_callback): Ditto | |
1dc7c0ed | 68 | |
a72d2509 | 69 | Thu Apr 4 20:58:05 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 70 | |
a72d2509 MM |
71 | * interrupts.h (interrupts): New structure contains state of |
72 | pending interrupts. | |
1dc7c0ed | 73 | |
a72d2509 MM |
74 | * cpu.c (cpu_interrupts): New function. Pending interrupt status |
75 | in the cpu and grant access to it. Add interrupts to cpu | |
76 | structure. | |
1dc7c0ed | 77 | |
a72d2509 | 78 | Fri Mar 29 22:09:25 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 79 | |
a72d2509 MM |
80 | * device.c (device_tree_add_parsed): Check that the creation of a |
81 | device instance worked before using it. | |
1dc7c0ed | 82 | |
a72d2509 MM |
83 | * psim.c (psim_halt): Remove cia argument from psim_halt. This |
84 | function does not save the CIA so do not pass it in. | |
1dc7c0ed | 85 | |
a72d2509 | 86 | Fri Mar 29 21:30:56 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 87 | |
a72d2509 MM |
88 | * hw_pal.c (hw_pal): Merge the halt and icu and console devices |
89 | found in device_table.c into a single hack pal. | |
1dc7c0ed | 90 | |
a72d2509 | 91 | * device_table.c (halt, icu, console): Delete. |
1dc7c0ed | 92 | |
a72d2509 | 93 | * Makefile.in (hw_pal.o): New dependency. |
1dc7c0ed | 94 | |
a72d2509 MM |
95 | * emul_generic.c (emul_add_tree_hardware): Re-arange device tree |
96 | so that it uses the pal instead of the icu/halt/console devices. | |
97 | Wire the pal's interrupt ports up to the cpu nodes. | |
1dc7c0ed | 98 | |
a72d2509 | 99 | Fri Mar 29 20:17:17 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 100 | |
a72d2509 MM |
101 | * hw_iobus.c (hw_iobus_attach_address_callback): Move from |
102 | device_table.c to here. | |
1dc7c0ed | 103 | |
a72d2509 | 104 | * Makefile.in (hw_iobus.o): New dependency. |
1dc7c0ed | 105 | |
a72d2509 | 106 | Mon Mar 25 22:07:13 1996 Andrew Cagney <cagney@kremvax.highland.com.au> |
1dc7c0ed | 107 | |
a72d2509 | 108 | * configure: Regenerate with autoconf 2.9. |
1dc7c0ed | 109 | |
a72d2509 | 110 | Thu Mar 21 00:14:26 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 111 | |
a72d2509 | 112 | * device_table.h: Always include string headers. |
1dc7c0ed | 113 | |
a72d2509 | 114 | Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 115 | |
a72d2509 MM |
116 | * basics.h: Move the event queue's definition to here so that it |
117 | can be refered to globally with out importing all of events.h. | |
1dc7c0ed | 118 | |
a72d2509 MM |
119 | * psim.h, psim.c (psim_event_queue): New function. Grant access |
120 | to the simulation event queue. Will make this the single point of | |
121 | access (there is after all only one event queue in the | |
122 | simulation). | |
1dc7c0ed | 123 | |
a72d2509 MM |
124 | * cpu.c (cpu_create): Use psim_event_queue to obtain the event |
125 | queue instead of it being passed in. No longer allow access to | |
126 | the cpu's copy of the event queue. | |
1dc7c0ed | 127 | |
a72d2509 | 128 | Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 129 | |
a72d2509 MM |
130 | * events.h, events.c (event_handler): Remove event_queue from |
131 | arguments passed to an event handler. That argument is redundant | |
132 | - the `data' should refer to a data structure that contains the | |
133 | event queue if queing is needed. | |
1dc7c0ed | 134 | |
a72d2509 | 135 | * cpu.c (cpu_decrement_event): adjust |
1dc7c0ed | 136 | |
a72d2509 | 137 | * events.c (event_queue_process): adjust |
1dc7c0ed | 138 | |
a72d2509 | 139 | Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au> |
1dc7c0ed | 140 | |
a72d2509 MM |
141 | * device.h, device.c (device_system): New, returns a handle for |
142 | the system given the device. | |
1dc7c0ed | 143 | |
a72d2509 MM |
144 | * device.c (device_address_init): Store a pointer back to the |
145 | system in each devices node. | |
1dc7c0ed | 146 | |
a72d2509 MM |
147 | * device_table.h: Don't pass `system' into each device when it is |
148 | being initialized, this is now available using device_system(me). | |
1dc7c0ed | 149 | |
a72d2509 | 150 | * device.c (device_address_init, device_data_init): Adjust. |
4f965b81 | 151 | |
a72d2509 MM |
152 | * hw_cpu.c, hw_nvram.c, hw_memory.c, hw_eeprom.c, device_table.c: |
153 | Adjust. | |
4f965b81 | 154 | |
a72d2509 | 155 | Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au> |
4f965b81 | 156 | |
a72d2509 MM |
157 | * interrupts.c (decrementer_interrupt, external_interrupt): |
158 | Remember that an interrupt wasn't delivered so that it can be | |
159 | tried again later. | |
4f965b81 | 160 | |
a72d2509 MM |
161 | * interrupts.c (check_masked_interrupt): New function. (re) |
162 | checks for the posibility that a recent change to the MSR may have | |
163 | made it possible to deliver an interrupt that was previously | |
164 | masked be the EE bit. | |
4f965b81 | 165 | |
a72d2509 MM |
166 | * ppc-instructions (mtmsr, mfmsr, rfi): Check for posibility of |
167 | a pending interrupt being delivered using check_masked_interrupt(). | |
4f965b81 | 168 | |
a72d2509 MM |
169 | * cpu.c (cpu_decrement_event): Just call decrementer_interrupt() |
170 | leaving it to that module to handle both interrupt synchronization | |
171 | and masking. | |
4f965b81 | 172 | |
a72d2509 MM |
173 | * cpu.c (struct _cpu): remove variables that were going to record |
174 | pending decrementer and external interrupts. | |
cb7a6892 | 175 | |
a72d2509 | 176 | Sun Mar 17 22:40:57 1996 Andrew Cagney <cagney@highland.com.au> |
cb7a6892 | 177 | |
a72d2509 MM |
178 | * hw_cpu.c, hw_cpu.h: New files. Implement a device that sits |
179 | between the interrupt controller and the simulators internal | |
180 | processor model. Maps device interrupts onto the processor | |
181 | interrupt function calls. | |
cb7a6892 | 182 | |
a72d2509 | 183 | Mon Mar 4 06:06:54 1996 Andrew Cagney <cagney@kremvax.highland.com.au> |
cb7a6892 | 184 | |
a72d2509 MM |
185 | * hw_nvram.c: NVRAM device that includes a real-time clock that is |
186 | updated each second. | |
cb7a6892 | 187 | |
a72d2509 | 188 | Mon Mar 4 04:18:50 1996 Andrew Cagney <cagney@kremvax.highland.com.au> |
cb7a6892 | 189 | |
a72d2509 MM |
190 | * device.h (attach_type): Remove attach_default type address |
191 | spaces. Will replace with levels of callback memory. | |
cb7a6892 | 192 | |
a72d2509 MM |
193 | * corefile.h, corefile.c (new_core_mapping), corefile.c |
194 | (core_map_attach): Replace default attach with a layerd callback | |
195 | approach. | |
cb7a6892 | 196 | |
a72d2509 | 197 | Sun Mar 3 03:58:46 1996 Andrew Cagney <cagney@kremvax.highland.com.au> |
cb7a6892 | 198 | |
a72d2509 MM |
199 | * device.c (split_property_specifier): ensure that only a single |
200 | property is found. | |
201 | (split_value): New function, parses the value part of a device | |
202 | spec. | |
cb7a6892 | 203 | |
a72d2509 MM |
204 | * device.c (device_tree_add_parsed): Use the interrupt conversion |
205 | functions to determine the interrupt port numbers. | |
cb7a6892 | 206 | |
a72d2509 MM |
207 | * device_table.h: Add table that maps between an interrupts |
208 | symbolic name and its port number. | |
cb7a6892 | 209 | |
a72d2509 MM |
210 | * device.h, device.c (device_interrupt_decode, |
211 | device_interrupt_encode): new functions use the recently added | |
212 | interrupt port name/number tables to perform conversion. | |
cb7a6892 | 213 | |
a72d2509 | 214 | Sun Mar 3 03:23:59 1996 Andrew Cagney <cagney@kremvax.highland.com.au> |
cb7a6892 | 215 | |
a72d2509 MM |
216 | * device.h, device.c (device_set_array_property, |
217 | device_set_boolean_property, device_set_ihandle_property, | |
218 | device_set_integer_property, device_set_string_property): New | |
219 | functions - allow the value of a given property to be changed. | |
cb7a6892 | 220 | |
a72d2509 MM |
221 | * device.h, device.c: Re-order declaration and definition of |
222 | property functions. | |
cb7a6892 | 223 | |
a72d2509 | 224 | Sun Mar 3 03:10:22 1996 Andrew Cagney <cagney@kremvax.highland.com.au> |
cb7a6892 | 225 | |
a72d2509 MM |
226 | * device.c (device_tree_print_device, device_tree_add_parsed): |
227 | Remove references to phandle properties. | |
cb7a6892 | 228 | |
a72d2509 | 229 | Tue Feb 27 23:59:35 1996 Andrew Cagney - aka Noid <cagney@highland.com.au> |
cb7a6892 | 230 | |
a72d2509 MM |
231 | * device_table.h: Revamp device init callbacks so that they are a |
232 | sub structure. | |
233 | * device.c (device_init_data, device_init_address): If an init | |
234 | callback is NULL assume it should do nothing. | |
235 | * device_table.c (ignore_device_init, unimp_device_init): delete | |
236 | as redundant. | |
237 | * device_table.c, hw_memory.c: adjust. | |
cb7a6892 | 238 | |
a72d2509 MM |
239 | * (io): ditto. |
240 | * (dma): ditto. | |
241 | * (device_instance): ditto. | |
242 | * (ioctl): ditto. | |
243 | * (address nee config_address): ditto. | |
244 | * (interrupt): ditto. | |
cb7a6892 | 245 | |
a72d2509 | 246 | Mon Feb 26 22:47:15 1996 Andrew Cagney - aka Noid <cagney@highland.com.au> |
cb7a6892 | 247 | |
a72d2509 MM |
248 | * Makefile.in (hw.h, hw.c): New targets. Create from the list of |
249 | hw_*.c files. hw.h declares a device descriptor table for each hw | |
250 | device while hw.c lists those tables in a form suitable for the | |
251 | construction of a top leveltable in device_table.c. | |
cb7a6892 | 252 | |
a72d2509 MM |
253 | * Makefile.in (device_table.o): now depends on hw.c a generated |
254 | table of hw. | |
cb7a6892 | 255 | |
a72d2509 MM |
256 | * device_table.c (device_table): Re-arange the table of devices so |
257 | that two levels are possible. Make use of hw.c. | |
258 | * device_table.h: ditto. | |
cb7a6892 | 259 | |
a72d2509 MM |
260 | * device.c (device_template_create_device): Handle new two level |
261 | device lookup table. | |
262 | * device.c (device_usage): ditto. | |
cb7a6892 | 263 | |
a72d2509 | 264 | Mon Feb 26 22:24:00 1996 Andrew Cagney - aka Noid <cagney@highland.com.au> |
cb7a6892 | 265 | |
a72d2509 | 266 | * device_table.c: Delete the memory device (moved to hw_memory.c). |
cb7a6892 | 267 | |
a72d2509 | 268 | * hw_memory.c: New file. Just an OpenBoot memory device. |