1 2015-03-10 Mike Frysinger <vapier@gentoo.org>
4 * Makefile.in ($(srcdir)/linux-fixed-code.h): Put a ; after the
5 print sed command for BSD compatibility.
7 2015-03-08 Mike Frysinger <vapier@gentoo.org>
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.
14 2014-08-19 Alan Modra <amodra@gmail.com>
16 * configure: Regenerate.
18 2014-08-15 Roland McGrath <mcgrathr@google.com>
20 * configure: Regenerate.
21 * config.in: Regenerate.
23 2014-03-04 Mike Frysinger <vapier@gentoo.org>
25 * configure: Regenerate.
27 2013-09-23 Alan Modra <amodra@gmail.com>
29 * configure: Regenerate.
31 2013-06-23 Mike Frysinger <vapier@gentoo.org>
33 * bfin-sim.c (decode_dsp32alu_0): Add note about broken handling of
34 SEARCH with parallel insns.
36 2013-06-23 Mike Frysinger <vapier@gentoo.org>
38 * bfin-sim.c (decode_dsp32shift_0): Make sure HLs is 0 after last
40 (decode_dsp32shiftimm_0): Likewise.
41 Require HLs be less than 2 for accumulator shift insns.
43 2013-06-18 Mike Frysinger <vapier@gentoo.org>
45 * bfin-sim.c (decode_dsp32alu_0): Check more opcode fields before
46 decoding various insns.
48 2013-06-17 Mike Frysinger <vapier@gentoo.org>
50 * TODO: Add more notes.
52 2013-06-09 Mike Frysinger <vapier@gentoo.org>
54 * Makefile.in ($(srcdir)/linux-fixed-code.h): Add
55 @MAINTAINER_MODE_TRUE@ as the first item in the dependency list.
57 2013-06-03 Mike Frysinger <vapier@gentoo.org>
59 * aclocal.m4, configure: Regenerate.
61 2013-05-10 Freddie Chopin <freddie_chopin@op.pl>
65 2013-03-26 Mike Frysinger <vapier@gentoo.org>
67 * aclocal.m4, configure: Regenerate.
69 2013-03-23 Joel Sherrill <joel.sherrill@oarcorp.com>
71 * configure.ac: Use $SIM_DV_SOCKSER_O.
72 * configure: Regenerated.
74 2012-12-20 Joel Brobecker <brobecker@adacore.com>
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).
80 2012-12-20 Joel Brobecker <brobecker@adacore.com>
82 * linux-fixed-code.s: Revert the previous change changing
83 the license from GPL v2 or later to GPL v3 or later.
85 2012-07-31 Mike Frysinger <vapier@gentoo.org>
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.
92 2012-07-31 Mike Frysinger <vapier@gentoo.org>
94 * machs.c (bfin_reg_fetch): Change return 0 to return -1, and
95 return -1 to return 4.
96 (bfin_reg_store): Likewise.
98 2012-06-15 Joel Brobecker <brobecker@adacore.com>
100 * config.in, configure: Regenerate.
102 2012-04-09 Mike Frysinger <vapier@gentoo.org>
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.
110 (bf54x_port): Add pint/gpio routing.
111 * machs.h (BFIN_MMR_PINT_SIZE): Define.
113 2012-04-09 Mike Frysinger <vapier@gentoo.org>
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.
123 2012-04-09 Robin Getz <robin.getz@analog.com>
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.
129 2012-04-09 Robin Getz <robin.getz@analog.com>
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.
136 2012-04-08 Mike Frysinger <vapier@gentoo.org>
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.
154 2012-04-08 Mike Frysinger <vapier@gentoo.org>
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
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.
168 2012-04-08 Mike Frysinger <vapier@gentoo.org>
170 * bfin-sim.c (decode_dsp32alu_0): Delete extra space in TRACE_INSN.
172 2012-04-01 Mike Frysinger <vapier@gentoo.org>
174 * bfin-sim.c (_interp_insn_bfin): Call illegal_instruction_combination
175 when INSN_LEN is non-zero before 32bit decode.
177 2012-04-01 Mike Frysinger <vapier@gentoo.org>
179 * bfin-dis.c (fmtconst): Replace decimal handling with a single
180 sprintf call and the '*' field width.
182 2012-04-01 Mike Frysinger <vapier@gentoo.org>
184 * machs.c (bfin_model_map_bfrom): Return when mnum is 535.
186 2012-04-01 Mike Frysinger <vapier@gentoo.org>
188 * interp.c (bfin_user_init): Move auxvt_size decl from top to
189 inside of auxvt check.
191 2012-03-31 Mike Frysinger <vapier@gentoo.org>
193 * dv-bfin_sic.c (bfin_sic_finish): Change iwr1 to iwr2.
195 2012-03-31 Mike Frysinger <vapier@gentoo.org>
197 * devices.c: Include devices.h.
199 2012-03-24 Mike Frysinger <vapier@gentoo.org>
201 * aclocal.m4, config.in, configure: Regenerate.
203 2012-03-19 Robin Getz <robin.getz@analog.com>
204 Mike Frysinger <vapier@gentoo.org>
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
210 (decode_ALU2op_0): Add new argument to lshift call.
211 (decode_LOGI2op_0, decode_dsp32shift_0, decode_dsp32shiftimm_0):
214 2012-03-18 Mike Frysinger <vapier@gentoo.org>
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
219 (bfin_ebiu_amc_finish): Assign BFIN_EBIU_AMC_BASE to amc->bank_base.
221 2012-03-18 Mike Frysinger <vapier@gentoo.org>
223 * dv-bfin_ebiu_amc.c (bfin_ebiu_amc_attach_address_callback): Use
224 ARRAY_SIZE rather than hardcoded constant.
226 2012-02-04 Mike Frysinger <vapier@gentoo.org>
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.
234 2011-12-03 Mike Frysinger <vapier@gentoo.org>
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.
242 2011-12-03 Mike Frysinger <vapier@gentoo.org>
244 * Makefile.in: Delete all dependency rules.
245 * aclocal.m4, configure: Regenerate.
247 2011-10-19 Mike Frysinger <vapier@gentoo.org>
249 * configure: Regenerate after common/acinclude.m4 update.
251 2011-10-17 Mike Frysinger <vapier@gentoo.org>
253 * configure.ac: Change include to common/acinclude.m4.
254 * aclocal.m4, configure: Regenerate.
256 2011-10-17 Mike Frysinger <vapier@gentoo.org>
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.
262 2011-09-28 Mike Frysinger <vapier@gentoo.org>
264 * bfin-sim.c (decode_dsp32shift_0): Use STORE() for VIT_MAX insns.
266 2011-07-05 Mike Frysinger <vapier@gentoo.org>
268 * interp.c (sim_do_command): Delete.
270 2011-07-01 Mike Frysinger <vapier@gentoo.org>
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.
281 2011-06-22 Mike Frysinger <vapier@gentoo.org>
283 * interp.c (bfin_syscall): Delete old comment. Set dreg 1 to
284 sc.result2 and dreg 2 to sc.errcode.
286 2011-06-18 Robin Getz <robin.getz@analog.com>
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.
292 2011-06-18 Robin Getz <robin.getz@analog.com>
294 * bfin-sim.c (ashiftrt): If size is 40, do not call SET_ASTATREG.
295 (lshiftrt): Likewise.
297 2011-06-18 Robin Getz <robin.getz@analog.com>
299 * bfin-sim.c (decode_dsp32shift_0): Use get_unextended_acc
300 rather than get_extended_acc in LSHIFT insns.
302 2011-06-18 Robin Getz <robin.getz@analog.com>
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.
307 2011-06-18 Robin Getz <robin.getz@analog.com>
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.
313 2011-06-18 Robin Getz <robin.getz@analog.com>
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.
320 2011-06-18 Robin Getz <robin.getz@analog.com>
322 * bfin-sim.c (extract_mult): Call saturate_s16 directly when
323 mmod is M_IH rather than computing the result by hand.
325 2011-06-18 Robin Getz <robin.getz@analog.com>
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.
335 2011-06-18 Robin Getz <robin.getz@analog.com>
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
341 2011-06-18 Robin Getz <robin.getz@analog.com>
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
348 2011-06-18 Robin Getz <robin.getz@analog.com>
350 * bfin-sim.c (saturate_s40_astat): Change ">=" to ">".
351 (decode_macfunc): Likewise when mmod is M_IH.
353 2011-06-18 Mike Frysinger <vapier@gentoo.org>
355 * interp.c (sim_create_inferior): Change free to freeargv.
357 2011-06-04 Mike Frysinger <vapier@gentoo.org>
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.
366 2011-06-04 Mike Frysinger <vapier@gentoo.org>
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):
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.
399 2011-06-03 Mike Frysinger <vapier@gentoo.org>
401 * dv-bfin_dma.c (bfin_dma_io_write_buffer): Fix indentation.
403 2011-05-25 Mike Frysinger <vapier@gentoo.org>
405 * sim-main.h (TRACE_SYSCALL): Change EVENTS to SYSCALL.
407 2011-05-25 Mike Frysinger <vapier@gentoo.org>
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 ...
438 * machs.c: Delete all dv-bfin_*.h includes except for cec/dmac.
440 2011-05-25 Mike Frysinger <vapier@gentoo.org>
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.
449 2011-05-25 Mike Frysinger <vapier@gentoo.org>
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:
458 2011-05-14 Mike Frysinger <vapier@gentoo.org>
460 * bfin-sim.c (decode_PushPopReg_0): Delete (grp == 1 && reg == 6)
463 2011-05-14 Mike Frysinger <vapier@gentoo.org>
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.
478 2011-05-09 Mike Frysinger <vapier@gentoo.org>
480 * dv-bfin_uart2.c (bfin_uart_io_read_buffer): Clear DR/THRE/TEMT bits
481 from uart->lsr before setting them.
483 2011-04-27 Mike Frysinger <vapier@gentoo.org>
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):
492 2011-04-26 Mike Frysinger <vapier@gentoo.org>
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
498 (bfin_gpio_ports): Change p0..p15 to bidirect_port.
500 2011-04-26 Mike Frysinger <vapier@gentoo.org>
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.
512 2011-04-16 Mike Frysinger <vapier@gentoo.org>
514 * bfin-sim.c (decode_dsp32alu_0): Call STORE instead of SET_DREG for
515 BYTEOP2P, BYTEOP3P, BYTEOP1P, BYTEOP16P, BYTEOP16M, BYTEPACK, and
517 (decode_dsp32shift_0): Call STORE instead of SET_DREG for PACK,
518 BITMUX, EXTRACT, DEPOSIT, ALIGN8, ALIGN16, and ALIGN24.
520 2011-04-14 Mike Frysinger <vapier@gentoo.org>
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.
526 2011-04-11 Mike Frysinger <vapier@gentoo.org>
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.
533 2011-04-11 Mike Frysinger <vapier@gentoo.org>
535 * dv-bfin_gpio.c (bfin_gpio_ports): Add p15.
537 2011-04-01 Mike Frysinger <vapier@gentoo.org>
539 * dv-bfin_otp.c (bfin_otp_ports): Declare.
540 (bfin_otp_finish): Call set_hw_ports with bfin_otp_ports.
542 2011-03-29 Mike Frysinger <vapier@gentoo.org>
544 * configure: Regenerate after common/aclocal.m4 changes.
546 2011-03-28 Robin Getz <robin.getz@analog.com>
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.
553 2011-03-26 Robin Getz <robin.getz@analog.com>
555 * bfin-sim.c (decode_dsp32alu_0): Set result to 0x7FFFFFFF when
556 the result was 0x80000000 for RND12 subtraction.
558 2011-03-26 Robin Getz <robin.getz@analog.com>
560 * bfin-sim.c (decode_dsp32alu_0): Set VS when V is set.
562 2011-03-24 Mike Frysinger <vapier@gentoo.org>
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.
572 2011-03-24 Mike Frysinger <vapier@gentoo.org>
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.
578 2011-03-24 Mike Frysinger <vapier@gentoo.org>
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.
583 2011-03-23 Mike Frysinger <vapier@gentoo.org>
585 * TODO: Document some known SIC issues.
587 2011-03-23 Mike Frysinger <vapier@gentoo.org>
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.
604 2011-03-23 Mike Frysinger <vapier@gentoo.org>
606 * dv-bfin_uart.h (TFI, BI, FE, PE, OE): Define.
608 2011-03-23 Mike Frysinger <vapier@gentoo.org>
610 * dv-bfin_twi.h (LOSTARB): Rename from LOSTARG.
612 2011-03-23 Robin Getz <robin.getz@analog.com>
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.
617 2011-03-23 Robin Getz <robin.getz@analog.com>
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.
622 2011-03-23 Robin Getz <robin.getz@analog.com>
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.
628 2011-03-23 Mike Frysinger <vapier@gentoo.org>
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.
642 2011-03-23 Robin Getz <robin.getz@analog.com>
644 * bfin-sim.c (decode_dsp32alu_0): Drop the src0/src1 check for
645 BYTEOP1P, BYTEOP2P, and BYTEOP3P insns.
647 2011-03-23 Mike Frysinger <vapier@gentoo.org>
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'.
654 2011-03-17 Mike Frysinger <vapier@gentoo.org>
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
662 2011-03-15 Mike Frysinger <vapier@gentoo.org>
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
675 (bfin_model_hw_tree_init): Hook up GPIO interrupts to SIC.
677 2011-03-15 Mike Frysinger <vapier@gentoo.org>
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.
697 2011-03-15 Robin Getz <robin.getz@analog.com>
699 * bfin-sim.c (decode_dsp32alu_0): Set AZ based on val for 16bit adds
702 2011-03-15 Robin Getz <robin.getz@analog.com>
704 * bfin-sim.c (decode_macfunc): Move acc STOREs behind op != 3 check.
706 2011-03-15 Robin Getz <robin.getz@analog.com>
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.
713 2011-03-15 Robin Getz <robin.getz@analog.com>
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,
719 2011-03-15 Robin Getz <robin.getz@analog.com>
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.
726 2010-03-15 Robin Getz <robin.getz@analog.com>
728 * bfin-sim.c (extract_mult): Handle M_IU.
730 2011-03-05 Mike Frysinger <vapier@gentoo.org>
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.