gdb
[binutils-gdb.git] / sim / bfin / ChangeLog
1 2013-05-10 Freddie Chopin <freddie_chopin@op.pl>
2
3 * configure: Rebuild.
4
5 2013-03-26 Mike Frysinger <vapier@gentoo.org>
6
7 * aclocal.m4, configure: Regenerate.
8
9 2013-03-23 Joel Sherrill <joel.sherrill@oarcorp.com>
10
11 * configure.ac: Use $SIM_DV_SOCKSER_O.
12 * configure: Regenerated.
13
14 2012-12-20 Joel Brobecker <brobecker@adacore.com>
15
16 * aclocal.m4: Revert the previous change changing
17 the license from GPL v2 or later to GPL v3 or later
18 (this file was generated).
19
20 2012-12-20 Joel Brobecker <brobecker@adacore.com>
21
22 * linux-fixed-code.s: Revert the previous change changing
23 the license from GPL v2 or later to GPL v3 or later.
24
25 2012-07-31 Mike Frysinger <vapier@gentoo.org>
26
27 * machs.c (bf54x_roms): Pass 0x1000 to alias field of BFROM, and
28 0x10000 to the alias field of BFROMA.
29 (bf561_roms): Pass 0x1000 to alias field of BFROM.
30 (bf59x_roms): Pass 0x10000 to alias field of BFROMA.
31
32 2012-07-31 Mike Frysinger <vapier@gentoo.org>
33
34 * machs.c (bfin_reg_fetch): Change return 0 to return -1, and
35 return -1 to return 4.
36 (bfin_reg_store): Likewise.
37
38 2012-06-15 Joel Brobecker <brobecker@adacore.com>
39
40 * config.in, configure: Regenerate.
41
42 2012-04-09 Mike Frysinger <vapier@gentoo.org>
43
44 * configure.ac (SIM_AC_OPTION_HARDWARE): Add bfin_pint.
45 * configure: Regenerate.
46 * dv-bfin_pint.c, dv-bfin_pint.h: New device model.
47 * machs.c (bf542_dev): Add PINT register blocks.
48 (bf544_dev, bf547_dev): Likewise.
49 (PINT_PIQS): Define.
50 (bf54x_port): Add pint/gpio routing.
51 * machs.h (BFIN_MMR_PINT_SIZE): Define.
52
53 2012-04-09 Mike Frysinger <vapier@gentoo.org>
54
55 * configure.ac (SIM_AC_OPTION_HARDWARE): Add bfin_gpio2.
56 * configure: Regenerate.
57 * dv-bfin_gpio2.c, dv-bfin_gpio2.h: New device model.
58 * machs.c (bf54x_mem): Delete GPIO mem stub.
59 (bf542_dev): Add GPIO register blocks.
60 (bf544_dev, bf547_dev): Likewise.
61 * machs.h (BFIN_MMR_GPIO2_SIZE): Define.
62
63 2012-04-09 Robin Getz <robin.getz@analog.com>
64
65 * bfin-sim.c (decode_dsp32shift_0): Extract the sign for ASHIFT
66 and LSHIFT, and set ASTAT based on the before/after values.
67 Rename "val" to "acc" to be consistent with other code branches.
68
69 2012-04-09 Robin Getz <robin.getz@analog.com>
70
71 * bfin-sim.c (sgn_extend): New helper.
72 (decode_dsp32shiftimm_0): Call lshift when newimmag is more
73 than 16, otherwise call ashiftrt. Set ASTAT fields as needed.
74 For accumulator shifts, call new sgn_extend helper.
75
76 2012-04-08 Mike Frysinger <vapier@gentoo.org>
77
78 * bfin-sim.c (illegal_instruction_or_combination): New helper.
79 (decode_ProgCtrl_0): Call illegal_instruction_or_combination instead
80 of illegal_instruction.
81 (decode_PushPopReg_0, decode_CCflag_0, decode_CC2dreg_0,
82 decode_LDSTpmod_0, decode_dagMODim_0, decode_dagMODik_0,
83 decode_dspLDST_0, decode_LDST_0, _interp_insn_bfin): Likewise.
84 (decode_PushPopMultiple_0): Call illegal_instruction_combination when
85 PARALLEL_GROUP is not BFIN_PARALLEL_NONE.
86 (decode_CCflag_0, decode_REGMV_0, decode_ALU2op_0, decode_PTR2op_0,
87 decode_COMPI2opD_0, decode_COMPI2opP_0): Likewise.
88 (decode_CC2stat_0): Check PARALLEL_GROUP before cbit.
89 (decode_LDSTpmod_0): Call illegal_instruction_combination when
90 PARALLEL_GROUP is BFIN_PARALLEL_GROUP2.
91 (decode_dagMODim_0, decode_dagMODik_0, decode_LDST_0,
92 decode_LDSTiiFP_0, decode_LDSTii_0): Likewise.
93
94 2012-04-08 Mike Frysinger <vapier@gentoo.org>
95
96 * bfin-sim.h (bfin_parallel_group): New enum.
97 (bfin_cpu_state): Add new "group" member.
98 (PARALLEL_GROUP): Define.
99 * bfin-sim.c (decode_ProgCtrl_0): Change INSN_LEN check to
100 PARALLEL_GROUP.
101 (decode_CaCTRL_0, decode_PushPopReg_0, decode_ccMV_0, decode_CCflag_0,
102 decode_CC2dreg_0, decode_CC2stat_0, decode_BRCC_0, decode_UJUMP_0,
103 decode_LOGI2op_0, decode_LoopSetup_0, decode_LDIMMhalf_0,
104 decode_CALLa_0, decode_linkage_0): Likewise.
105 (_interp_insn_bfin): Set PARALLEL_GROUP.
106 (interp_insn_bfin): Likewise.
107
108 2012-04-08 Mike Frysinger <vapier@gentoo.org>
109
110 * bfin-sim.c (decode_dsp32alu_0): Delete extra space in TRACE_INSN.
111
112 2012-04-01 Mike Frysinger <vapier@gentoo.org>
113
114 * bfin-sim.c (_interp_insn_bfin): Call illegal_instruction_combination
115 when INSN_LEN is non-zero before 32bit decode.
116
117 2012-04-01 Mike Frysinger <vapier@gentoo.org>
118
119 * bfin-dis.c (fmtconst): Replace decimal handling with a single
120 sprintf call and the '*' field width.
121
122 2012-04-01 Mike Frysinger <vapier@gentoo.org>
123
124 * machs.c (bfin_model_map_bfrom): Return when mnum is 535.
125
126 2012-04-01 Mike Frysinger <vapier@gentoo.org>
127
128 * interp.c (bfin_user_init): Move auxvt_size decl from top to
129 inside of auxvt check.
130
131 2012-03-31 Mike Frysinger <vapier@gentoo.org>
132
133 * dv-bfin_sic.c (bfin_sic_finish): Change iwr1 to iwr2.
134
135 2012-03-31 Mike Frysinger <vapier@gentoo.org>
136
137 * devices.c: Include devices.h.
138
139 2012-03-24 Mike Frysinger <vapier@gentoo.org>
140
141 * aclocal.m4, config.in, configure: Regenerate.
142
143 2012-03-19 Robin Getz <robin.getz@analog.com>
144 Mike Frysinger <vapier@gentoo.org>
145
146 * bfin-sim.c (lshift): Add an overflow flag. Delete now unused
147 i, j, and tmp vars. Add a new v_i var. Split the overflow logic
148 out from the saturate logic. Do not set V ASTAT bits when working
149 with accumulators.
150 (decode_ALU2op_0): Add new argument to lshift call.
151 (decode_LOGI2op_0, decode_dsp32shift_0, decode_dsp32shiftimm_0):
152 Likewise.
153
154 2012-03-18 Mike Frysinger <vapier@gentoo.org>
155
156 * dv-bfin_ebiu_amc.c (struct bfin_ebiu_amc): Add bank_base.
157 (bfin_ebiu_amc_write_amgctl): Replace BFIN_EBIU_AMC_BASE with
158 amc->bank_base.
159 (bfin_ebiu_amc_finish): Assign BFIN_EBIU_AMC_BASE to amc->bank_base.
160
161 2012-03-18 Mike Frysinger <vapier@gentoo.org>
162
163 * dv-bfin_ebiu_amc.c (bfin_ebiu_amc_attach_address_callback): Use
164 ARRAY_SIZE rather than hardcoded constant.
165
166 2012-02-04 Mike Frysinger <vapier@gentoo.org>
167
168 * config.in: Regenerate.
169 * configure: Likewise.
170 * configure.ac: Add linux/types.h to AC_CHECK_HEADERS.
171 * dv-eth_phy.c: Check for HAVE_LINUX_TYPES_H, and delete __u16 and
172 _LINUX_TYPES_H defines.
173
174 2011-12-03 Mike Frysinger <vapier@gentoo.org>
175
176 * interp.c (bfin_syscall): Increase _tbuf storage. Declare new local
177 tstr buffer. Call cb_get_string on tstr when handling CB_SYS_stat64,
178 CB_SYS_lstat64, CB_SYS_open, CB_SYS_write, CB_SYS_unlink,
179 CB_SYS_truncate, CB_SYS_rename, CB_SYS_stat, CB_SYS_lstat. Include
180 tstr in the tbuf output.
181
182 2011-12-03 Mike Frysinger <vapier@gentoo.org>
183
184 * Makefile.in: Delete all dependency rules.
185 * aclocal.m4, configure: Regenerate.
186
187 2011-10-19 Mike Frysinger <vapier@gentoo.org>
188
189 * configure: Regenerate after common/acinclude.m4 update.
190
191 2011-10-17 Mike Frysinger <vapier@gentoo.org>
192
193 * configure.ac: Change include to common/acinclude.m4.
194 * aclocal.m4, configure: Regenerate.
195
196 2011-10-17 Mike Frysinger <vapier@gentoo.org>
197
198 * configure.ac: Change AC_PREREQ to 2.64. Delete AC_CONFIG_HEADER
199 call. Replace common.m4 include with SIM_AC_COMMON.
200 * configure: Regenerate.
201
202 2011-09-28 Mike Frysinger <vapier@gentoo.org>
203
204 * bfin-sim.c (decode_dsp32shift_0): Use STORE() for VIT_MAX insns.
205
206 2011-07-05 Mike Frysinger <vapier@gentoo.org>
207
208 * interp.c (sim_do_command): Delete.
209
210 2011-07-01 Mike Frysinger <vapier@gentoo.org>
211
212 * interp.c (cb_linux_stat_map_32, cb_linux_stat_map_64): Rename from
213 stat_map_32 and stat_map_64.
214 (cb_libgloss_stat_map_32): New stat map.
215 (stat_map_32, stat_map_64): New stat map pointers.
216 (bfin_user_init): Assign stat_map_32 to cb_linux_stat_map_32 and
217 stat_map_64 to cb_linux_stat_map_64.
218 (bfin_virtual_init): New function.
219 (sim_create_inferior): Call bfin_virtual_init for all other envs.
220
221 2011-06-22 Mike Frysinger <vapier@gentoo.org>
222
223 * interp.c (bfin_syscall): Delete old comment. Set dreg 1 to
224 sc.result2 and dreg 2 to sc.errcode.
225
226 2011-06-18 Robin Getz <robin.getz@analog.com>
227
228 * bfin-sim.c (decode_dsp32shift_0): Clear ASTAT[AV] if val is 0,
229 else set it. Set ASTAT[AVS] if val is 0. Do this for LSHIFT and
230 ASHIFT accumulator insns.
231
232 2011-06-18 Robin Getz <robin.getz@analog.com>
233
234 * bfin-sim.c (ashiftrt): If size is 40, do not call SET_ASTATREG.
235 (lshiftrt): Likewise.
236
237 2011-06-18 Robin Getz <robin.getz@analog.com>
238
239 * bfin-sim.c (decode_dsp32shift_0): Use get_unextended_acc
240 rather than get_extended_acc in LSHIFT insns.
241
242 2011-06-18 Robin Getz <robin.getz@analog.com>
243
244 * bfin-sim.c (decode_macfunc): Handle MM when mmod is M_TFU.
245 Check MM once when mmod is M_FU to match M_TFU better.
246
247 2011-06-18 Robin Getz <robin.getz@analog.com>
248
249 * bfin-sim.c (decode_dsp32shiftimm_0): When shift is greater than
250 32, perform a left shift. Update the corresponding AV bit. Set
251 AZ when the low 32bits are also zero.
252
253 2011-06-18 Robin Getz <robin.getz@analog.com>
254
255 * bfin-sim.c (decode_dsp32shiftimm_0): With left shift vector insns,
256 call lshift only when count is positive. Otherwise, call ashiftrt.
257 With arithmetic right shift insns, call ashiftrt when the value is
258 small enough, otherwise call lshift.
259
260 2011-06-18 Robin Getz <robin.getz@analog.com>
261
262 * bfin-sim.c (extract_mult): Call saturate_s16 directly when
263 mmod is M_IH rather than computing the result by hand.
264
265 2011-06-18 Robin Getz <robin.getz@analog.com>
266
267 * bfin-sim.c (decode_macfunc): Add nosat_acc to track acc value
268 before saturation, set sat when more cases saturate, and set the
269 overflow bit based on these results. For M_TFU, M_IU, M_FU, and
270 M_W32, change the max values compared against.
271 (decode_dsp32mac_0): Delete v_i and add v_0 and v_1. Pass v_1
272 when processing MAC1 and pass v_0 when processing MAC0. Combine
273 the results into the V/VS ASTAT bits.
274
275 2011-06-18 Robin Getz <robin.getz@analog.com>
276
277 * bfin-sim.c (extract_mult): Call saturate_s32 when MM is set
278 and mmod is M_IU. Call saturate_s16 when MM is set and mmod
279 is M_TFU.
280
281 2011-06-18 Robin Getz <robin.getz@analog.com>
282
283 * bfin-sim.c (decode_multfunc): Call new is_macmod_signed, and
284 allow MM to sign extend all the time.
285 (decode_macfunc): Likewise. Drop sign extension of unsigned
286 values.
287
288 2011-06-18 Robin Getz <robin.getz@analog.com>
289
290 * bfin-sim.c (saturate_s40_astat): Change ">=" to ">".
291 (decode_macfunc): Likewise when mmod is M_IH.
292
293 2011-06-18 Mike Frysinger <vapier@gentoo.org>
294
295 * interp.c (sim_create_inferior): Change free to freeargv.
296
297 2011-06-04 Mike Frysinger <vapier@gentoo.org>
298
299 * machs.c (bf534_dev, bf537_dev): Add glue-or devices.
300 (bf537_port): Define applicable devices with PORT to the glue-or
301 devices instead of SIC.
302 (bfin_model_hw_tree_init): Drop old sim_hw_parse call for bfin_sic.
303 Only parse reg/type when the device has an address. Move the call
304 to dv_bfin_hw_port_parse up before slash check.
305
306 2011-06-04 Mike Frysinger <vapier@gentoo.org>
307
308 * dv-bfin_sic.c (ENC, DEC_PIN, DEC_SIC): Move above the
309 BFIN_SIC_TO_CEC_PORTS definition.
310 (SIC_PORTS): New define.
311 (bfin_sic_50x_ports, bfin_sic_51x_ports, bfin_sic_52x_ports,
312 bfin_sic_533_ports, bfin_sic_537_ports, bfin_sic_538_ports,
313 bfin_sic_54x_ports, bfin_sic_561_ports, bfin_sic_59x_ports):
314 Delete old layouts.
315 (bfin_sic1_ports, bfin_sic2_ports, bfin_sic3_ports,
316 bfin_sic_561_ports): Define new layouts with SIC_PORTS().
317 (bfin_sic_finish): Change reference to bfin_sic_50x_ports,
318 bfin_sic_51x_ports, bfin_sic_52x_ports, and bfin_sic_538_ports
319 to bfin_sic2_ports. Change reference to bfin_sic_533_ports,
320 bfin_sic_537_ports, and bfin_sic_59x_ports to bfin_sic1_ports.
321 Change reference to bfin_sic_54x_ports to bfin_sic3_ports.
322 * machs.c (bfin_port_layout): New structure.
323 (bfin_model_data): Add new "port" and "port_count" members.
324 (PORT, SIC): New defines.
325 (bf000_port, bf50x_port, bf51x_port, bf52x_port, bf533_port,
326 bf537_port, bf538_port, bf54x_port, bf561_port, bf592_port):
327 Move and redefine port layout from dv-bfin_sic.c to here.
328 (bf504_port, bf506_port, bf512_port, bf514_port, bf516_port,
329 bf518_port, bf522_port, bf523_port, bf524_port, bf525_port,
330 bf526_port, bf527_port, bf531_port, bf532_port, bf534_port,
331 bf536_port, bf539_port, bf542_port, bf544_port, bf547_port,
332 bf548_port, bf549_port): New defines.
333 (bfin_model_data): Link in new bfin_port_layout.port member.
334 (dv_bfin_hw_port_parse): New function.
335 (dv_bfin_hw_parse): Call new dv_bfin_hw_port_parse function.
336 (bfin_model_hw_tree_init): Replace calls to sim_hw_parse for
337 bfin_sic links with new dv_bfin_hw_port_parse function.
338
339 2011-06-03 Mike Frysinger <vapier@gentoo.org>
340
341 * dv-bfin_dma.c (bfin_dma_io_write_buffer): Fix indentation.
342
343 2011-05-25 Mike Frysinger <vapier@gentoo.org>
344
345 * sim-main.h (TRACE_SYSCALL): Change EVENTS to SYSCALL.
346
347 2011-05-25 Mike Frysinger <vapier@gentoo.org>
348
349 * dv-bfin_cec.h (BFIN_COREMMR_CEC_{BASE,SIZE}): Move to ...
350 * dv-bfin_ctimer.h (BFIN_COREMMR_CTIMER_{BASE,SIZE}): Move to ...
351 * dv-bfin_dma.h (BFIN_MMR_DMA_SIZE): Move to ...
352 * dv-bfin_dmac.h (BFIN_MMR_DMAC{0,1}_BASE): Move to ...
353 * dv-bfin_ebiu_amc.h (BF{IN,50X,54X}_MMR_EBIU_AMC_SIZE): Move to ...
354 * dv-bfin_ebiu_ddrc.h (BFIN_MMR_EBIU_DDRC_SIZE): Move to ...
355 * dv-bfin_ebiu_sdc.h (BFIN_MMR_EBIU_SDC_SIZE): Move to ...
356 * dv-bfin_emac.h (BFIN_MMR_EMAC_{BASE,SIZE}): Move to ...
357 * dv-bfin_eppi.h (BFIN_MMR_EPPI_SIZE): Move to ...
358 * dv-bfin_evt.h (BFIN_COREMMR_EVT_{BASE,SIZE}): Move to ...
359 * dv-bfin_gpio.h (BFIN_MMR_GPIO_SIZE): Move to ...
360 * dv-bfin_gptimer.h (BFIN_MMR_GPTIMER_SIZE): Move to ...
361 * dv-bfin_jtag.h (BFIN_COREMMR_JTAG_{BASE,SIZE}): Move to ...
362 * dv-bfin_mmu.h (BFIN_COREMMR_MMU_{BASE,SIZE}): Move to ...
363 * dv-bfin_nfc.h (BFIN_MMR_NFC_SIZE): Move to ...
364 * dv-bfin_otp.h (BFIN_MMR_OTP_SIZE): Move to ...
365 * dv-bfin_pfmon.h (BFIN_COREMMR_PFMON_{BASE,SIZE}): Move to ...
366 * dv-bfin_pll.h (BFIN_MMR_PLL_{BASE,SIZE}): Move to ...
367 * dv-bfin_ppi.h (BFIN_MMR_PPI_SIZE): Move to ...
368 * dv-bfin_rtc.h (BFIN_MMR_RTC_SIZE): Move to ...
369 * dv-bfin_sic.h (BFIN_MMR_SIC_{BASE,SIZE}): Move to ...
370 * dv-bfin_spi.h (BFIN_MMR_SPI_SIZE): Move to ...
371 * dv-bfin_trace.h (BFIN_COREMMR_TRACE_{BASE,SIZE}): Move to ...
372 * dv-bfin_twi.h (BFIN_MMR_TWI_SIZE): Move to ...
373 * dv-bfin_uart.h (BFIN_MMR_UART_SIZE): Move to ...
374 * dv-bfin_uart2.h (BFIN_MMR_UART2_SIZE): Move to ...
375 * dv-bfin_wdog.h (BFIN_MMR_WDOG_SIZE): Move to ...
376 * dv-bfin_wp.h (BFIN_COREMMR_WP_{BASE,SIZE}): Move to ...
377 * machs.h: ... here.
378 * machs.c: Delete all dv-bfin_*.h includes except for cec/dmac.
379
380 2011-05-25 Mike Frysinger <vapier@gentoo.org>
381
382 * Makefile.in (dv-bfin_pfmon.o): New target.
383 * configure.ac (SIM_AC_OPTION_HARDWARE): Add bfin_pfmon.
384 * configure: Regenerated.
385 * dv-bfin_pfmon.c, dv-bfin_pfmon.h: New files.
386 * machs.c: Add include new bfin_pfmon.h.
387 (bfin_core_dev): Add pfmon.
388
389 2011-05-25 Mike Frysinger <vapier@gentoo.org>
390
391 * machs.c (bf526_roms): Add a region with rev of 2.
392 (bf54x_roms): Add regions with rev of 4.
393 * bfroms/all.h: Include new bf526-0.2.h, bf54x-0.4.h, and
394 bf54x_l1-0.4.h headers.
395 * bfroms/bf526-0.2.h, bfroms/bf54x-0.4.h, bfroms/bf54x_l1-0.4.h:
396 New header files.
397
398 2011-05-14 Mike Frysinger <vapier@gentoo.org>
399
400 * bfin-sim.c (decode_PushPopReg_0): Delete (grp == 1 && reg == 6)
401 check for SP reg.
402
403 2011-05-14 Mike Frysinger <vapier@gentoo.org>
404
405 * dv-bfin_uart.c (bfin_uart_write_byte): Add a mcr arg. Declare a
406 local uart. When LOOP_ENA is set in mcr, write to the saved byte
407 and count fields of the uart.
408 (bfin_uart_io_write_buffer): Pass uart->mcr to bfin_uart_write_byte
409 and bfin_uart_get_next_byte.
410 (bfin_uart_get_next_byte): Add a mcr arg. Move uart->saved_count
411 check first, and skip the remaining code when LOOP_ENA is set in mcr.
412 * dv-bfin_uart.h (bfin_uart_write_byte): Add an mcr argument.
413 (bfin_uart_get_next_byte): Likewise.
414 (XOFF, MRTS, RFIT, RFRT, LOOP_ENA, FCPOL, ARTS, ACTS): Define.
415 * dv-bfin_uart2.c (bfin_uart_io_write_buffer): Padd uart->mcr when
416 calling bfin_uart_write_byte and bfin_uart_get_next_byte.
417
418 2011-05-09 Mike Frysinger <vapier@gentoo.org>
419
420 * dv-bfin_uart2.c (bfin_uart_io_read_buffer): Clear DR/THRE/TEMT bits
421 from uart->lsr before setting them.
422
423 2011-04-27 Mike Frysinger <vapier@gentoo.org>
424
425 * dv-bfin_dmac.c (bfin_dmac): Constify pmap array.
426 (bfin_dmac_50x_pmap, bfin_dmac_51x_pmap, bfin_dmac_52x_pmap,
427 bfin_dmac_533_pmap, bfin_dmac_537_pmap, bfin_dmac0_538_pmap,
428 bfin_dmac1_538_pmap, bfin_dmac0_54x_pmap, bfin_dmac1_54x_pmap,
429 bfin_dmac0_561_pmap, bfin_dmac1_561_pmap, bfin_dmac_59x_pmap):
430 Likewise.
431
432 2011-04-26 Mike Frysinger <vapier@gentoo.org>
433
434 * dv-bfin_gpio.c (bfin_gpio_forward_ouput): New function.
435 (bfin_gpio_io_write_buffer): Store the current port state into
436 "data", and call bfin_gpio_forward_ouput when the data or dir
437 MMRs are updated.
438 (bfin_gpio_ports): Change p0..p15 to bidirect_port.
439
440 2011-04-26 Mike Frysinger <vapier@gentoo.org>
441
442 * dv-bfin_gpio.c (bfin_gpio): Add "int_state" member.
443 (bfin_gpio_forward_int, bfin_gpio_forward_ints): New functions.
444 (bfin_gpio_io_write_buffer): Call bfin_gpio_forward_int when the
445 mask a or mask b MMRs are written.
446 (bfin_gpio_port_event): When handling edge gpios, set the bit in
447 int_state, call bfin_gpio_forward_ints, and then clear the bit.
448 When handling level gpios, clear/set the bit in int_state rather
449 than returning immediately. Call bfin_gpio_forward_ints instead
450 of checking mask[ab] and calling HW_TRACE/hw_port_event directly.
451
452 2011-04-16 Mike Frysinger <vapier@gentoo.org>
453
454 * bfin-sim.c (decode_dsp32alu_0): Call STORE instead of SET_DREG for
455 BYTEOP2P, BYTEOP3P, BYTEOP1P, BYTEOP16P, BYTEOP16M, BYTEPACK, and
456 BYTEUNPACK.
457 (decode_dsp32shift_0): Call STORE instead of SET_DREG for PACK,
458 BITMUX, EXTRACT, DEPOSIT, ALIGN8, ALIGN16, and ALIGN24.
459
460 2011-04-14 Mike Frysinger <vapier@gentoo.org>
461
462 * bfin-sim.c (decode_dsp32alu_0): Set DIS_ALGN_EXPT when handling
463 BYTEOP2P, BYTEOP3P, SAA, BYTEOP1P, BYTEOP16P, BYTEOP16M, BYTEPACK,
464 and BYTEUNPACK insns.
465
466 2011-04-11 Mike Frysinger <vapier@gentoo.org>
467
468 * dv-bfin_sic.c (bfin_sic_port_event): New helper function.
469 (bfin_sic_52x_port_event, bfin_sic_537_port_event,
470 bfin_sic_54x_port_event, bfin_sic_561_port_event): Include level
471 in the trace output, and call the new bfin_sic_port_event func.
472
473 2011-04-11 Mike Frysinger <vapier@gentoo.org>
474
475 * dv-bfin_gpio.c (bfin_gpio_ports): Add p15.
476
477 2011-04-01 Mike Frysinger <vapier@gentoo.org>
478
479 * dv-bfin_otp.c (bfin_otp_ports): Declare.
480 (bfin_otp_finish): Call set_hw_ports with bfin_otp_ports.
481
482 2011-03-29 Mike Frysinger <vapier@gentoo.org>
483
484 * configure: Regenerate after common/aclocal.m4 changes.
485
486 2011-03-28 Robin Getz <robin.getz@analog.com>
487
488 * bfin-sim.c (decode_dsp32alu_0): Cast high 16bits of A0.W to bs16
489 and add to casted low 16bits of A0.L and store in val0. Cast high
490 16bits of A1.W to bs16 and add to casted low 16bits of A1.L and
491 store in val1. Delete bit checks of val0 and val1.
492
493 2011-03-26 Robin Getz <robin.getz@analog.com>
494
495 * bfin-sim.c (decode_dsp32alu_0): Set result to 0x7FFFFFFF when
496 the result was 0x80000000 for RND12 subtraction.
497
498 2011-03-26 Robin Getz <robin.getz@analog.com>
499
500 * bfin-sim.c (decode_dsp32alu_0): Set VS when V is set.
501
502 2011-03-24 Mike Frysinger <vapier@gentoo.org>
503
504 * dv-bfin_gpio.c (bfin_gpio_port_event): Call HW_TRACE at every
505 major code flow point.
506 * dv-bfin_sic.c (bfin_sic_forward_interrupts): Call HW_TRACE just
507 before calling hw_port_event on ourselves.
508 (bfin_sic_52x_port_event, bfin_sic_537_port_event,
509 bfin_sic_54x_port_event, bfin_sic_561_port_event): Call HW_TRACE
510 at the start of the function.
511
512 2011-03-24 Mike Frysinger <vapier@gentoo.org>
513
514 * dv-bfin_gpio.c (bfin_gpio_port_event): Split dir/inen bit checking.
515 Normalize "level" to 0/1 values. Shift "level" over by "my_port".
516 Invert port->both bit check.
517
518 2011-03-24 Mike Frysinger <vapier@gentoo.org>
519
520 * dv-bfin_gpio.c (bfin_gpio_io_write_buffer): Subtract 2 from the
521 valuep pointer for clear MMRs, 4 for set MMRs, and 6 for toggle MMRs.
522
523 2011-03-23 Mike Frysinger <vapier@gentoo.org>
524
525 * TODO: Document some known SIC issues.
526
527 2011-03-23 Mike Frysinger <vapier@gentoo.org>
528
529 * devices.h (dv_w1c): Fix typos in documentation of "bits" arg.
530 * dv-bfin_cec.c (bfin_cec_io_write_buffer): Pass 0xffee to dv_w1c_4.
531 * dv-bfin_emac.c (bfin_emac_io_write_buffer): Pass 0xe1 to dv_w1c_4
532 for systat MMR and -1 to dv_w1c_4 for [rt]x_stky/mmc_[rt]irqs MMRs.
533 * dv-bfin_eppi.c (bfin_eppi_io_write_buffer): Pass 0x1ff to dv_w1c_2.
534 * dv-bfin_gpio.c (bfin_gpio_io_write_buffer): Invert bits to dv_w1c_2.
535 * dv-bfin_jtag.c (bfin_jtag_io_write_buffer): Invert bits to dv_w1c_4.
536 * dv-bfin_nfc.c (bfin_nfc_io_write_buffer): Invert bits to dv_w1c_2.
537 * dv-bfin_otp.c (bfin_otp_io_write_buffer): Invert bits to dv_w1c_2.
538 * dv-bfin_ppi.c (bfin_ppi_io_write_buffer): Invert bits to dv_w1c_2.
539 * dv-bfin_rtc.c (bfin_rtc_io_write_buffer): Invert bits to dv_w1c_2.
540 * dv-bfin_spi.c (bfin_spi_io_write_buffer): Invert bits to dv_w1c_2.
541 * dv-bfin_twi.c (bfin_twi_io_write_buffer): Invert bits to dv_w1c_2.
542 * dv-bfin_uart2.c (bfin_uart_io_write_buffer): Invert bits to dv_w1c_2.
543
544 2011-03-23 Mike Frysinger <vapier@gentoo.org>
545
546 * dv-bfin_uart.h (TFI, BI, FE, PE, OE): Define.
547
548 2011-03-23 Mike Frysinger <vapier@gentoo.org>
549
550 * dv-bfin_twi.h (LOSTARB): Rename from LOSTARG.
551
552 2011-03-23 Robin Getz <robin.getz@analog.com>
553
554 * bfin-sim.c (decode_dsp32shift_0): Set acc0 to the unextended
555 value for the VIT_MAX insn, and mask off the result when done.
556
557 2011-03-23 Robin Getz <robin.getz@analog.com>
558
559 * bfin-sim.c (decode_dsp32alu_0): Set A1 to a1_lo when up_hi is false,
560 and set A0 to a0_lo when up_lo is false.
561
562 2011-03-23 Robin Getz <robin.getz@analog.com>
563
564 * bfin-sim.c (decode_dsp32alu_0): Call saturate_s40_astat instead of
565 saturate_s40, and use the v parameter to update the AV bit. Set the
566 AC bit only when the final result is 0.
567
568 2011-03-23 Mike Frysinger <vapier@gentoo.org>
569
570 * dv-bfin_sic.c (ENC, DEC_PIN, DEC_SIC): Define.
571 (bfin_sic_50x_ports, bfin_sic_51x_ports, bfin_sic_52x_ports,
572 bfin_sic_533_ports, bfin_sic_537_ports, bfin_sic_538_ports,
573 bfin_sic_54x_ports, bfin_sic_561_ports, bfin_sic_59x_ports):
574 Encode ids with the ENC macro.
575 (bfin_sic_52x_port_event, bfin_sic_537_port_event,
576 bfin_sic_54x_port_event, bfin_sic_561_port_event): Set idx
577 from my_port with DEC_SIC, and set bit from my_port with DEC_PIN.
578 (bfin_sic_533_port_event): Delete.
579 (bfin_sic_finish): Call set_hw_port_event with
580 bfin_sic_537_port_event for BF533 and BF59x targets.
581
582 2011-03-23 Robin Getz <robin.getz@analog.com>
583
584 * bfin-sim.c (decode_dsp32alu_0): Drop the src0/src1 check for
585 BYTEOP1P, BYTEOP2P, and BYTEOP3P insns.
586
587 2011-03-23 Mike Frysinger <vapier@gentoo.org>
588
589 * machs.c (bf50x_dev, bf512_dev, bf516_dev, bf522_dev, bf526_dev,
590 bf533_dev, bf534_dev, bf537_dev, bf538_dev, bf561_dev, bf592_dev):
591 Change bfin_gpio addresses from f/g/h to 5/6/7.
592 (bfin_model_hw_tree_init): Add the bfin_gpio address base to 'a'.
593
594 2011-03-17 Mike Frysinger <vapier@gentoo.org>
595
596 * configure.ac (AC_CHECK_FUNCS): Check for kill and pread.
597 * configure: Regenerate.
598 * config.in: Regenerate.
599 * interp.c (bfin_syscall): Check for HAVE_{KILL,PREAD} before using
600 kill or pread.
601
602 2011-03-15 Mike Frysinger <vapier@gentoo.org>
603
604 * Makefile.in (dv-bfin_gpio.o): New target.
605 * configure.ac (SIM_AC_OPTION_HARDWARE): Add bfin_gpio.
606 * configure: Regenerate.
607 * dv-bfin_gpio.c, dv-bfin_gpio.h: New files.
608 * machs.c: Include dv-bfin_gpio.h.
609 (bf50x_mem, bf51x_mem, bf52x_mem, bf531_mem, bf532_mem, bf533_mem,
610 bf534_mem, bf536_mem, bf537_mem, bf538_mem, bf561_mem, bf592_mem):
611 Delete GPIO memory stubs.
612 (bf50x_dev, bf512_dev, bf516_dev, bf522_dev, bf526_dev, bf533_dev,
613 bf534_dev, bf537_dev, bf538_dev, bf561_dev, bf592_dev): Add GPIO
614 peripheral devices.
615 (bfin_model_hw_tree_init): Hook up GPIO interrupts to SIC.
616
617 2011-03-15 Mike Frysinger <vapier@gentoo.org>
618
619 * bfroms/bf50x-0.0.h, bfroms/bf51x-0.0.h, bfroms/bf51x-0.1.h,
620 bfroms/bf51x-0.2.h, bfroms/bf526-0.0.h, bfroms/bf526-0.1.h,
621 bfroms/bf527-0.0.h, bfroms/bf527-0.1.h, bfroms/bf527-0.2.h,
622 bfroms/bf533-0.1.h, bfroms/bf533-0.2.h, bfroms/bf533-0.3.h,
623 bfroms/bf537-0.0.h, bfroms/bf537-0.1.h, bfroms/bf537-0.3.h,
624 bfroms/bf538-0.0.h, bfroms/bf54x-0.0.h, bfroms/bf54x-0.1.h,
625 bfroms/bf54x-0.2.h, bfroms/bf54x_l1-0.0.h, bfroms/bf54x_l1-0.1.h,
626 bfroms/bf54x_l1-0.2.h, bfroms/bf561-0.5.h, bfroms/bf59x-0.0.h,
627 bfroms/bf59x_l1-0.1.h, dv-bfin_cec.c, dv-bfin_ctimer.c,
628 dv-bfin_dma.c, dv-bfin_dmac.c, dv-bfin_ebiu_amc.c,
629 dv-bfin_ebiu_ddrc.c, dv-bfin_ebiu_sdc.c, dv-bfin_emac.c,
630 dv-bfin_eppi.c, dv-bfin_evt.c, dv-bfin_gptimer.c, dv-bfin_jtag.c,
631 dv-bfin_mmu.c, dv-bfin_nfc.c, dv-bfin_otp.c, dv-bfin_pll.c,
632 dv-bfin_ppi.c, dv-bfin_rtc.c, dv-bfin_sic.c, dv-bfin_spi.c,
633 dv-bfin_trace.c, dv-bfin_twi.c, dv-bfin_uart.c, dv-bfin_uart2.c,
634 dv-bfin_wdog.c, dv-bfin_wp.c, dv-eth_phy.c, gui.c,
635 linux-fixed-code.h, linux-targ-map.h, machs.c, Makefile.in: Fix style.
636
637 2011-03-15 Robin Getz <robin.getz@analog.com>
638
639 * bfin-sim.c (decode_dsp32alu_0): Set AZ based on val for 16bit adds
640 and subs.
641
642 2011-03-15 Robin Getz <robin.getz@analog.com>
643
644 * bfin-sim.c (decode_macfunc): Move acc STOREs behind op != 3 check.
645
646 2011-03-15 Robin Getz <robin.getz@analog.com>
647
648 * bfin-sim.c (decode_macfunc): New neg parameter. Set when the
649 high bit is set after extract_mult.
650 (decode_dsp32mac_0): Declare n_1 and n_0. Pass to the decode_macfunc
651 functions. Use these to update the AN bit.
652
653 2011-03-15 Robin Getz <robin.getz@analog.com>
654
655 * bfin-sim.c (decode_dsp32mult_0): Declare v_i0 and v_i1. Pass to
656 the extract_mult functions. Include these when updating the V, VS,
657 and V_COPY bits.
658
659 2011-03-15 Robin Getz <robin.getz@analog.com>
660
661 * bfin-sim.c (astat_names): New global bit array.
662 (decode_CC2stat_0): Delete local astat_name and astat_names.
663 (decode_psedodbg_assert_0): Move hardcoded offset into a variable.
664 Print out ASTAT bit values when checking an ASTAT register.
665
666 2010-03-15 Robin Getz <robin.getz@analog.com>
667
668 * bfin-sim.c (extract_mult): Handle M_IU.
669
670 2011-03-05 Mike Frysinger <vapier@gentoo.org>
671
672 * Makefile.in, TODO, aclocal.m4, bfin-sim.c, bfin-sim.h,
673 bfroms/all.h, bfroms/bf50x-0.0.h, bfroms/bf51x-0.0.h,
674 bfroms/bf51x-0.1.h, bfroms/bf51x-0.2.h, bfroms/bf526-0.0.h,
675 bfroms/bf526-0.1.h, bfroms/bf527-0.0.h, bfroms/bf527-0.1.h,
676 bfroms/bf527-0.2.h, bfroms/bf533-0.1.h, bfroms/bf533-0.2.h,
677 bfroms/bf533-0.3.h, bfroms/bf537-0.0.h, bfroms/bf537-0.1.h,
678 bfroms/bf537-0.3.h, bfroms/bf538-0.0.h, bfroms/bf54x-0.0.h,
679 bfroms/bf54x-0.1.h, bfroms/bf54x-0.2.h, bfroms/bf54x_l1-0.0.h,
680 bfroms/bf54x_l1-0.1.h, bfroms/bf54x_l1-0.2.h, bfroms/bf561-0.5.h,
681 bfroms/bf59x-0.0.h, bfroms/bf59x_l1-0.1.h, config.in, configure,
682 configure.ac, devices.c, devices.h, dv-bfin_cec.c, dv-bfin_cec.h,
683 dv-bfin_ctimer.c, dv-bfin_ctimer.h, dv-bfin_dma.c, dv-bfin_dma.h,
684 dv-bfin_dmac.c, dv-bfin_dmac.h, dv-bfin_ebiu_amc.c, dv-bfin_ebiu_amc.h,
685 dv-bfin_ebiu_ddrc.c, dv-bfin_ebiu_ddrc.h, dv-bfin_ebiu_sdc.c,
686 dv-bfin_ebiu_sdc.h, dv-bfin_emac.c, dv-bfin_emac.h, dv-bfin_eppi.c,
687 dv-bfin_eppi.h, dv-bfin_evt.c, dv-bfin_evt.h, dv-bfin_gptimer.c,
688 dv-bfin_gptimer.h, dv-bfin_jtag.c, dv-bfin_jtag.h, dv-bfin_mmu.c,
689 dv-bfin_mmu.h, dv-bfin_nfc.c, dv-bfin_nfc.h, dv-bfin_otp.c,
690 dv-bfin_otp.h, dv-bfin_pll.c, dv-bfin_pll.h, dv-bfin_ppi.c,
691 dv-bfin_ppi.h, dv-bfin_rtc.c, dv-bfin_rtc.h, dv-bfin_sic.c,
692 dv-bfin_sic.h, dv-bfin_spi.c, dv-bfin_spi.h, dv-bfin_trace.c,
693 dv-bfin_trace.h, dv-bfin_twi.c, dv-bfin_twi.h, dv-bfin_uart.c,
694 dv-bfin_uart.h, dv-bfin_uart2.c, dv-bfin_uart2.h, dv-bfin_wdog.c,
695 dv-bfin_wdog.h, dv-bfin_wp.c, dv-bfin_wp.h, dv-eth_phy.c, gui.c,
696 gui.h, insn_list.def, interp.c, linux-fixed-code.h, linux-fixed-code.s,
697 linux-targ-map.h, machs.c, machs.h, proc_list.def, sim-main.h,
698 tconfig.in: New Blackfin port.