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