1 2011-04-26 Mike Frysinger <vapier@gentoo.org>
3 * dv-bfin_gpio.c (bfin_gpio_forward_ouput): New function.
4 (bfin_gpio_io_write_buffer): Store the current port state into
5 "data", and call bfin_gpio_forward_ouput when the data or dir
7 (bfin_gpio_ports): Change p0..p15 to bidirect_port.
9 2011-04-26 Mike Frysinger <vapier@gentoo.org>
11 * dv-bfin_gpio.c (bfin_gpio): Add "int_state" member.
12 (bfin_gpio_forward_int, bfin_gpio_forward_ints): New functions.
13 (bfin_gpio_io_write_buffer): Call bfin_gpio_forward_int when the
14 mask a or mask b MMRs are written.
15 (bfin_gpio_port_event): When handling edge gpios, set the bit in
16 int_state, call bfin_gpio_forward_ints, and then clear the bit.
17 When handling level gpios, clear/set the bit in int_state rather
18 than returning immediately. Call bfin_gpio_forward_ints instead
19 of checking mask[ab] and calling HW_TRACE/hw_port_event directly.
21 2011-04-16 Mike Frysinger <vapier@gentoo.org>
23 * bfin-sim.c (decode_dsp32alu_0): Call STORE instead of SET_DREG for
24 BYTEOP2P, BYTEOP3P, BYTEOP1P, BYTEOP16P, BYTEOP16M, BYTEPACK, and
26 (decode_dsp32shift_0): Call STORE instead of SET_DREG for PACK,
27 BITMUX, EXTRACT, DEPOSIT, ALIGN8, ALIGN16, and ALIGN24.
29 2011-04-14 Mike Frysinger <vapier@gentoo.org>
31 * bfin-sim.c (decode_dsp32alu_0): Set DIS_ALGN_EXPT when handling
32 BYTEOP2P, BYTEOP3P, SAA, BYTEOP1P, BYTEOP16P, BYTEOP16M, BYTEPACK,
35 2011-04-11 Mike Frysinger <vapier@gentoo.org>
37 * dv-bfin_sic.c (bfin_sic_port_event): New helper function.
38 (bfin_sic_52x_port_event, bfin_sic_537_port_event,
39 bfin_sic_54x_port_event, bfin_sic_561_port_event): Include level
40 in the trace output, and call the new bfin_sic_port_event func.
42 2011-04-11 Mike Frysinger <vapier@gentoo.org>
44 * dv-bfin_gpio.c (bfin_gpio_ports): Add p15.
46 2011-04-01 Mike Frysinger <vapier@gentoo.org>
48 * dv-bfin_otp.c (bfin_otp_ports): Declare.
49 (bfin_otp_finish): Call set_hw_ports with bfin_otp_ports.
51 2011-03-29 Mike Frysinger <vapier@gentoo.org>
53 * configure: Regenerate after common/aclocal.m4 changes.
55 2011-03-28 Robin Getz <robin.getz@analog.com>
57 * bfin-sim.c (decode_dsp32alu_0): Cast high 16bits of A0.W to bs16
58 and add to casted low 16bits of A0.L and store in val0. Cast high
59 16bits of A1.W to bs16 and add to casted low 16bits of A1.L and
60 store in val1. Delete bit checks of val0 and val1.
62 2011-03-26 Robin Getz <robin.getz@analog.com>
64 * bfin-sim.c (decode_dsp32alu_0): Set result to 0x7FFFFFFF when
65 the result was 0x80000000 for RND12 subtraction.
67 2011-03-26 Robin Getz <robin.getz@analog.com>
69 * bfin-sim.c (decode_dsp32alu_0): Set VS when V is set.
71 2011-03-24 Mike Frysinger <vapier@gentoo.org>
73 * dv-bfin_gpio.c (bfin_gpio_port_event): Call HW_TRACE at every
74 major code flow point.
75 * dv-bfin_sic.c (bfin_sic_forward_interrupts): Call HW_TRACE just
76 before calling hw_port_event on ourselves.
77 (bfin_sic_52x_port_event, bfin_sic_537_port_event,
78 bfin_sic_54x_port_event, bfin_sic_561_port_event): Call HW_TRACE
79 at the start of the function.
81 2011-03-24 Mike Frysinger <vapier@gentoo.org>
83 * dv-bfin_gpio.c (bfin_gpio_port_event): Split dir/inen bit checking.
84 Normalize "level" to 0/1 values. Shift "level" over by "my_port".
85 Invert port->both bit check.
87 2011-03-24 Mike Frysinger <vapier@gentoo.org>
89 * dv-bfin_gpio.c (bfin_gpio_io_write_buffer): Subtract 2 from the
90 valuep pointer for clear MMRs, 4 for set MMRs, and 6 for toggle MMRs.
92 2011-03-23 Mike Frysinger <vapier@gentoo.org>
94 * TODO: Document some known SIC issues.
96 2011-03-23 Mike Frysinger <vapier@gentoo.org>
98 * devices.h (dv_w1c): Fix typos in documentation of "bits" arg.
99 * dv-bfin_cec.c (bfin_cec_io_write_buffer): Pass 0xffee to dv_w1c_4.
100 * dv-bfin_emac.c (bfin_emac_io_write_buffer): Pass 0xe1 to dv_w1c_4
101 for systat MMR and -1 to dv_w1c_4 for [rt]x_stky/mmc_[rt]irqs MMRs.
102 * dv-bfin_eppi.c (bfin_eppi_io_write_buffer): Pass 0x1ff to dv_w1c_2.
103 * dv-bfin_gpio.c (bfin_gpio_io_write_buffer): Invert bits to dv_w1c_2.
104 * dv-bfin_jtag.c (bfin_jtag_io_write_buffer): Invert bits to dv_w1c_4.
105 * dv-bfin_nfc.c (bfin_nfc_io_write_buffer): Invert bits to dv_w1c_2.
106 * dv-bfin_otp.c (bfin_otp_io_write_buffer): Invert bits to dv_w1c_2.
107 * dv-bfin_ppi.c (bfin_ppi_io_write_buffer): Invert bits to dv_w1c_2.
108 * dv-bfin_rtc.c (bfin_rtc_io_write_buffer): Invert bits to dv_w1c_2.
109 * dv-bfin_spi.c (bfin_spi_io_write_buffer): Invert bits to dv_w1c_2.
110 * dv-bfin_twi.c (bfin_twi_io_write_buffer): Invert bits to dv_w1c_2.
111 * dv-bfin_uart2.c (bfin_uart_io_write_buffer): Invert bits to dv_w1c_2.
113 2011-03-23 Mike Frysinger <vapier@gentoo.org>
115 * dv-bfin_uart.h (TFI, BI, FE, PE, OE): Define.
117 2011-03-23 Mike Frysinger <vapier@gentoo.org>
119 * dv-bfin_twi.h (LOSTARB): Rename from LOSTARG.
121 2011-03-23 Robin Getz <robin.getz@analog.com>
123 * bfin-sim.c (decode_dsp32shift_0): Set acc0 to the unextended
124 value for the VIT_MAX insn, and mask off the result when done.
126 2011-03-23 Robin Getz <robin.getz@analog.com>
128 * bfin-sim.c (decode_dsp32alu_0): Set A1 to a1_lo when up_hi is false,
129 and set A0 to a0_lo when up_lo is false.
131 2011-03-23 Robin Getz <robin.getz@analog.com>
133 * bfin-sim.c (decode_dsp32alu_0): Call saturate_s40_astat instead of
134 saturate_s40, and use the v parameter to update the AV bit. Set the
135 AC bit only when the final result is 0.
137 2011-03-23 Mike Frysinger <vapier@gentoo.org>
139 * dv-bfin_sic.c (ENC, DEC_PIN, DEC_SIC): Define.
140 (bfin_sic_50x_ports, bfin_sic_51x_ports, bfin_sic_52x_ports,
141 bfin_sic_533_ports, bfin_sic_537_ports, bfin_sic_538_ports,
142 bfin_sic_54x_ports, bfin_sic_561_ports, bfin_sic_59x_ports):
143 Encode ids with the ENC macro.
144 (bfin_sic_52x_port_event, bfin_sic_537_port_event,
145 bfin_sic_54x_port_event, bfin_sic_561_port_event): Set idx
146 from my_port with DEC_SIC, and set bit from my_port with DEC_PIN.
147 (bfin_sic_533_port_event): Delete.
148 (bfin_sic_finish): Call set_hw_port_event with
149 bfin_sic_537_port_event for BF533 and BF59x targets.
151 2011-03-23 Robin Getz <robin.getz@analog.com>
153 * bfin-sim.c (decode_dsp32alu_0): Drop the src0/src1 check for
154 BYTEOP1P, BYTEOP2P, and BYTEOP3P insns.
156 2011-03-23 Mike Frysinger <vapier@gentoo.org>
158 * machs.c (bf50x_dev, bf512_dev, bf516_dev, bf522_dev, bf526_dev,
159 bf533_dev, bf534_dev, bf537_dev, bf538_dev, bf561_dev, bf592_dev):
160 Change bfin_gpio addresses from f/g/h to 5/6/7.
161 (bfin_model_hw_tree_init): Add the bfin_gpio address base to 'a'.
163 2011-03-17 Mike Frysinger <vapier@gentoo.org>
165 * configure.ac (AC_CHECK_FUNCS): Check for kill and pread.
166 * configure: Regenerate.
167 * config.in: Regenerate.
168 * interp.c (bfin_syscall): Check for HAVE_{KILL,PREAD} before using
171 2011-03-15 Mike Frysinger <vapier@gentoo.org>
173 * Makefile.in (dv-bfin_gpio.o): New target.
174 * configure.ac (SIM_AC_OPTION_HARDWARE): Add bfin_gpio.
175 * configure: Regenerate.
176 * dv-bfin_gpio.c, dv-bfin_gpio.h: New files.
177 * machs.c: Include dv-bfin_gpio.h.
178 (bf50x_mem, bf51x_mem, bf52x_mem, bf531_mem, bf532_mem, bf533_mem,
179 bf534_mem, bf536_mem, bf537_mem, bf538_mem, bf561_mem, bf592_mem):
180 Delete GPIO memory stubs.
181 (bf50x_dev, bf512_dev, bf516_dev, bf522_dev, bf526_dev, bf533_dev,
182 bf534_dev, bf537_dev, bf538_dev, bf561_dev, bf592_dev): Add GPIO
184 (bfin_model_hw_tree_init): Hook up GPIO interrupts to SIC.
186 2011-03-15 Mike Frysinger <vapier@gentoo.org>
188 * bfroms/bf50x-0.0.h, bfroms/bf51x-0.0.h, bfroms/bf51x-0.1.h,
189 bfroms/bf51x-0.2.h, bfroms/bf526-0.0.h, bfroms/bf526-0.1.h,
190 bfroms/bf527-0.0.h, bfroms/bf527-0.1.h, bfroms/bf527-0.2.h,
191 bfroms/bf533-0.1.h, bfroms/bf533-0.2.h, bfroms/bf533-0.3.h,
192 bfroms/bf537-0.0.h, bfroms/bf537-0.1.h, bfroms/bf537-0.3.h,
193 bfroms/bf538-0.0.h, bfroms/bf54x-0.0.h, bfroms/bf54x-0.1.h,
194 bfroms/bf54x-0.2.h, bfroms/bf54x_l1-0.0.h, bfroms/bf54x_l1-0.1.h,
195 bfroms/bf54x_l1-0.2.h, bfroms/bf561-0.5.h, bfroms/bf59x-0.0.h,
196 bfroms/bf59x_l1-0.1.h, dv-bfin_cec.c, dv-bfin_ctimer.c,
197 dv-bfin_dma.c, dv-bfin_dmac.c, dv-bfin_ebiu_amc.c,
198 dv-bfin_ebiu_ddrc.c, dv-bfin_ebiu_sdc.c, dv-bfin_emac.c,
199 dv-bfin_eppi.c, dv-bfin_evt.c, dv-bfin_gptimer.c, dv-bfin_jtag.c,
200 dv-bfin_mmu.c, dv-bfin_nfc.c, dv-bfin_otp.c, dv-bfin_pll.c,
201 dv-bfin_ppi.c, dv-bfin_rtc.c, dv-bfin_sic.c, dv-bfin_spi.c,
202 dv-bfin_trace.c, dv-bfin_twi.c, dv-bfin_uart.c, dv-bfin_uart2.c,
203 dv-bfin_wdog.c, dv-bfin_wp.c, dv-eth_phy.c, gui.c,
204 linux-fixed-code.h, linux-targ-map.h, machs.c, Makefile.in: Fix style.
206 2011-03-15 Robin Getz <robin.getz@analog.com>
208 * bfin-sim.c (decode_dsp32alu_0): Set AZ based on val for 16bit adds
211 2011-03-15 Robin Getz <robin.getz@analog.com>
213 * bfin-sim.c (decode_macfunc): Move acc STOREs behind op != 3 check.
215 2011-03-15 Robin Getz <robin.getz@analog.com>
217 * bfin-sim.c (decode_macfunc): New neg parameter. Set when the
218 high bit is set after extract_mult.
219 (decode_dsp32mac_0): Declare n_1 and n_0. Pass to the decode_macfunc
220 functions. Use these to update the AN bit.
222 2011-03-15 Robin Getz <robin.getz@analog.com>
224 * bfin-sim.c (decode_dsp32mult_0): Declare v_i0 and v_i1. Pass to
225 the extract_mult functions. Include these when updating the V, VS,
228 2011-03-15 Robin Getz <robin.getz@analog.com>
230 * bfin-sim.c (astat_names): New global bit array.
231 (decode_CC2stat_0): Delete local astat_name and astat_names.
232 (decode_psedodbg_assert_0): Move hardcoded offset into a variable.
233 Print out ASTAT bit values when checking an ASTAT register.
235 2010-03-15 Robin Getz <robin.getz@analog.com>
237 * bfin-sim.c (extract_mult): Handle M_IU.
239 2011-03-05 Mike Frysinger <vapier@gentoo.org>
241 * Makefile.in, TODO, aclocal.m4, bfin-sim.c, bfin-sim.h,
242 bfroms/all.h, bfroms/bf50x-0.0.h, bfroms/bf51x-0.0.h,
243 bfroms/bf51x-0.1.h, bfroms/bf51x-0.2.h, bfroms/bf526-0.0.h,
244 bfroms/bf526-0.1.h, bfroms/bf527-0.0.h, bfroms/bf527-0.1.h,
245 bfroms/bf527-0.2.h, bfroms/bf533-0.1.h, bfroms/bf533-0.2.h,
246 bfroms/bf533-0.3.h, bfroms/bf537-0.0.h, bfroms/bf537-0.1.h,
247 bfroms/bf537-0.3.h, bfroms/bf538-0.0.h, bfroms/bf54x-0.0.h,
248 bfroms/bf54x-0.1.h, bfroms/bf54x-0.2.h, bfroms/bf54x_l1-0.0.h,
249 bfroms/bf54x_l1-0.1.h, bfroms/bf54x_l1-0.2.h, bfroms/bf561-0.5.h,
250 bfroms/bf59x-0.0.h, bfroms/bf59x_l1-0.1.h, config.in, configure,
251 configure.ac, devices.c, devices.h, dv-bfin_cec.c, dv-bfin_cec.h,
252 dv-bfin_ctimer.c, dv-bfin_ctimer.h, dv-bfin_dma.c, dv-bfin_dma.h,
253 dv-bfin_dmac.c, dv-bfin_dmac.h, dv-bfin_ebiu_amc.c, dv-bfin_ebiu_amc.h,
254 dv-bfin_ebiu_ddrc.c, dv-bfin_ebiu_ddrc.h, dv-bfin_ebiu_sdc.c,
255 dv-bfin_ebiu_sdc.h, dv-bfin_emac.c, dv-bfin_emac.h, dv-bfin_eppi.c,
256 dv-bfin_eppi.h, dv-bfin_evt.c, dv-bfin_evt.h, dv-bfin_gptimer.c,
257 dv-bfin_gptimer.h, dv-bfin_jtag.c, dv-bfin_jtag.h, dv-bfin_mmu.c,
258 dv-bfin_mmu.h, dv-bfin_nfc.c, dv-bfin_nfc.h, dv-bfin_otp.c,
259 dv-bfin_otp.h, dv-bfin_pll.c, dv-bfin_pll.h, dv-bfin_ppi.c,
260 dv-bfin_ppi.h, dv-bfin_rtc.c, dv-bfin_rtc.h, dv-bfin_sic.c,
261 dv-bfin_sic.h, dv-bfin_spi.c, dv-bfin_spi.h, dv-bfin_trace.c,
262 dv-bfin_trace.h, dv-bfin_twi.c, dv-bfin_twi.h, dv-bfin_uart.c,
263 dv-bfin_uart.h, dv-bfin_uart2.c, dv-bfin_uart2.h, dv-bfin_wdog.c,
264 dv-bfin_wdog.h, dv-bfin_wp.c, dv-bfin_wp.h, dv-eth_phy.c, gui.c,
265 gui.h, insn_list.def, interp.c, linux-fixed-code.h, linux-fixed-code.s,
266 linux-targ-map.h, machs.c, machs.h, proc_list.def, sim-main.h,
267 tconfig.in: New Blackfin port.