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