openocd/src/jtag/drivers/OpenULINK
Antonio Borneo 7e64e5a895 openocd: fix doxygen parameters of functions
Add to doxygen comment the missing parameters.
Remove from doxygen comment any non-existing parameter.
Fix the parameter names in doxygen comment to match the one in the
function prototype.
Where the parameter name in the doxygen description seems better
than the one in the code, change the code.
Escape the character '<' to prevent doxygen to interpret it as an
xml tag.

Change-Id: I22da723339ac7d7a7a64ac4c1cc4336e2416c2cc
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/6002
Tested-by: jenkins
2021-01-13 11:33:53 +00:00
..
include jtag: fix minor typos 2020-07-26 20:14:37 +01:00
src openocd: fix doxygen parameters of functions 2021-01-13 11:33:53 +00:00
Makefile Remove FSF address from GPL notices 2016-05-24 22:30:01 +01:00
README Add OpenULINK firmware 2011-06-26 17:43:51 +02:00
ulink_firmware.hex OpenULINK firmware: update firmware hex image 2013-07-17 14:31:19 +00:00

README

This is the OpenULINK firmware for the Keil ULINK JTAG adapter.

The main components of the Keil ULINK adapter are:
- Cypress EZ-USB microcontroller: enhanced 8051 CPU + USB core (1.1 Full-Speed)
- SRAM memory chip
- Level shifters to support different JTAG signal voltage levels
- Pin headers for various JTAG pin assignments

This firmware can only be run on the ORIGINAL Keil ULINK adapter, not on the
newer ULINK2, ULINK-ME or ULINK-PRO, as these adapters are based on different
hardware.

To compile the firmware, the SDCC compiler package is required. Most Linux
distributions include SDCC in their official package repositories. The SDCC
source code can be found at http://sdcc.sourceforge.net/
Simply type "make hex" in the OpenULINK directory to compile the firmware.
"make clean" will remove all generated files except the Intel HEX file required
for downloading the firmware to the ULINK adapter.

Note that the EZ-USB microcontroller does not have on-chip flash, nor does the
Keil ULINK include on-board memory to store the firmware program of the EZ-USB.
Instead, upon initial connection of the ULINK adapter to the host PC via USB,
the EZ-USB core has enough intelligence to act as a stand-alone USB device,
responding to USB control requests and allowing firmware download via a special
VENDOR-type control request. Then, the EZ-USB microcontroller simulates a
disconnect and re-connect to the USB bus. It may take up to two seconds for the
host to recognize the newly connected device before OpenOCD can proceed to
execute JTAG commands. This delay is only visible when OpenOCD first uses a
blank (unconfigured) ULINK device.

Once the user disconnects the ULINK adapter, all its memory contents are lost
and the firmware download process has to be executed again. This also maintains
compatibility with the original Keil uVision IDE, which will happily download
its own firmware image to a blank ULINK adapter.