- usb/usb.h, usb/atu2.c (usb_reset): reset the USB bus by detaching and
re-attaching the device
- boot.c (main): force a USB reset before running the payload
- usb/atu2.c (usb_poll): test for USB reset from the host (in progress)
- usb/dfu.c (my_reset, dfu_init): register user USB reset handler
- dfu.h (flash_end_write), flash.c (flash_end_write): write any incomplete
buffer
- flash.c (flash_write, flash_end_write): call boot_rww_enable only at the
very end, it won't erase our buffer in mid-page
- usb/dfu.c (my_setup): call flash_end_write at the end of a download
- flash.c (flash_write): we don't use eeprom_busy_wait, removed it
- flash.c (flash_write): write the page only at one place
- flash.c (flash_write): corrected the address of the page write
- flash.c (flash_write): value being added to word wasn't shifted
- Makefile (BOOT_ADDR, boot.elf): use variable instead of hiding the
address in a command
- Makefile (CFLAGS): pass BOOT_ADDR as a macro
- Makefile: removed commented-out application flashing code
- boot.c: basic boot loader that runs DFU for 2 s, then starts the payload
- board.h (DFU_USB_VENDOR, DFU_USB_PRODUCT): added USB IDs for DFU
- flash.c: stubs for board-specific Flash functions
- Makefile: build boot.hex for the boot loader
- Makefile (prog): load the boot loader at its rightful place
- Makefile (prog): also set hfuse and the lock fuse
- dfu.c: updated includes
- dfu.c (device_descriptor): renamed USB IDs from USB_VENDOR/PRODUCT to
DFU_USB_VENDOR/PRODUCT to allow differentiation
- dfu.c: changed all __bit to "int"
- dfu.c: removed all __xdata and __reentrant
- dfu.c: changed "ep0" to "eps[0]"
- dfu.c (payload, flash_erase_page, flash_write_byte, block_write,
block_receive, block_transmit, my_setup): abstracted Flash interface
and removed target-specific operations
- dfu.h: added prototypes for target-specific Flash operations
- dfu,c (my_setup, my_descr): removed SDCC-specific hacks
- dfu.c (my_reset): commented out - did we actually use this ?
- Makefile, atusb.pro, atusb.sch, atrf.sch, usb.sch, atusb.cmp, atusb.brd:
resurrected from git history (commit
14b00823b0)
- fw/: moved all C8051F326-specific files over from atusb/fw/
- fw/include/: copied MCU-independent files over from atusb/fw/include/
- atben/cam/mkmk: introduced variables for board corner
- atben/cam/mkmk: updated for new raw board
- atusb-pgm/cam/Makefile: updated for new board
- atusb/cam/Makefile: introduced abstraction with $(NAME)
- atusb/cam/Makefile: use cameo/templates/mkmk-simple instead of local mkmk
- atusb/cam/mkmk: removed
- atusb/cam/Makefile: updated for new board
- usb/usb.c: moved chip-specific functions to usb/atu2.c
- Makefile (USB_OBJS): added usb/atu2.c
- usb/usb.h, usb/usb.c, ep0.c: made argument to my_setup and user_setup
"const"
- usb/ubs.h (handle_setup): call from chip driver to generic stack
- usb/ubs.h (set_addr): call from generic stack to chip driver
- Makefile (atusb.elf): generate a new version iff generating a new
executable
- Makefile (atusb.bin): print the build number and the file size
- Makefile (clean): remove the various constituend files of the version
- Makefile (version.c): generate version.c
- version.h: definitions for the generated version.c
- ep0.c (build_number, build_date): removed dummy version information
and include version.h instead
- usb2/: renamed to usb/
- Makefile (FreakUSB): removed $(FreakUSB) and commented-out items for
FreakUSB
- Makefile: changed vpath from usb2/ to usb/
- Makefile (CFLAGS): changed include from -Iusb2 to -Iusb
- Makefile (CFLAGS): don't define NUM_EPS (it's already in usb/usb.c)
- atusb.brd: updated for schematics changes
- atusb.brd: rearranged component references and values for
printing/display
- atusb.brd: bumped version to 20110214
- usb.sch (R1): changed from 68 Ohm to 180 Ohm, to decrease BOM size
- atrf.sch (C17): changed from 1 pF to 2.2 pF (value is more common,
and it can only help to reduce harmonics)
- atusb.sch, usb.sch, atrf.sch: bumped version to 20110214
- atusb.cmp: updated
The Makefile didn't see the FreakUSB object files at the expected place,
so it always rebuild them.
- Makefile (USB_OBJS): removed paths from object file names
- Makefile: added vpaths for the FreakUSB source file locations
- Makefile (atusb.elf, clean): we no longer need $(notdir ...) for the
object files
- atusb.c (main), board.h (board_init), board.c (board_init): moved
clock and I/O initialization to board file
- board.h (led), board.c (led), atusb.c (main): abstracted LED setting
in function "led" instead of open-coding it
- spi.c (spi_init): set nSS to 1 before enabling the output, so that we
don't generate what looks like an empty SPI transaction
- atusb.brd: moved C14 and adjacent via 10 mil away from the transceive,
for improved solderability
- atusb.brd: moved nRST_RF via and trace by 5 mil, for better access to
the trace
- atusb.brd: reduced crystal front ground zone such that it does not
creep under XTAL2 corner (where it might meet exposed metal)
- board.h (read_irq), board.c: return status of the RF IRQ
- board.h (PIN, PIN_1, PIN_2): macros to read port pins
- ep0.c (my_setup): make ATUSB_POLL_INT return the real interrupt
- fw/include/atusb/ep0.h (HW_TYPE_110131): defined hardware type 2 for
ATmega32U2-based boards
- fw/ep0.c: define HW_TYPE as HW_TYPE_110131, not directly as 2
- fw2/atusb.c: include atusb/ep0.h instead of declaring ep0_init locally
- io.h: renamed to board.h
- Makefile (OBJS): added board.o
- atusb.c (reset_rf): moved to board.c
- board.h (reset_rf): give reset_rf a proper declaration
- atusb.c, ep.c, spi.c: include board.h instead of io.h
- ep0.c (do_usb_recv, usb_recv): implemented creepy buffer reception
- ep0.c (my_setup): added dummy for ATUSB_POLL_INT (always return 0)
- ep0.c (my_setup): send a zero-length packet at the end of
ATUSB_RF_RESET and ATUSB_REG_WRITE to indicate status stage