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