diff options
author | drath <drath@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2006-08-11 17:49:41 +0000 |
---|---|---|
committer | drath <drath@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2006-08-11 17:49:41 +0000 |
commit | ec0f06db114d1cc9d1d59acd8f4e3b32414d5b8e (patch) | |
tree | 23644c757a85534a5daa6ce21b44c766321fba5d /src/jtag/parport.c | |
parent | ca1e5ee1f4236e2e384397bf6211ce56a1f687f5 (diff) |
- added support for FreeBSD ppi (parallel port access similar to /dev/parport on linux) (thanks to Darius for this patch)
- unified 'ftd2xx' and 'ftdi2232' into a single interface 'ft2232'. The library used to access the hardware is choosen during configure with --enable-ft2232_ftd2xx or --enable-ft2232-libftdi.
git-svn-id: svn://svn.berlios.de/openocd/trunk@83 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/jtag/parport.c')
-rw-r--r-- | src/jtag/parport.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/jtag/parport.c b/src/jtag/parport.c index 21aa5131..4b0b193c 100644 --- a/src/jtag/parport.c +++ b/src/jtag/parport.c @@ -51,8 +51,15 @@ #include <stdio.h> #if PARPORT_USE_PPDEV == 1 +#ifdef __FreeBSD__ +#include <dev/ppbus/ppi.h> +#include <dev/ppbus/ppbconf.h> +#define PPRSTATUS PPIGSTATUS +#define PPWDATA PPISDATA +#else #include <linux/parport.h> #include <linux/ppdev.h> +#endif #include <fcntl.h> #include <sys/ioctl.h> #endif @@ -310,11 +317,17 @@ int parport_init(void) return ERROR_JTAG_INIT_FAILED; } +#ifdef __FreeBSD__ + DEBUG("opening /dev/ppi%d...", parport_port); + + snprintf(buffer, 256, "/dev/ppi%d", parport_port); + device_handle = open(buffer, O_WRONLY); +#else DEBUG("opening /dev/parport%d...", parport_port); snprintf(buffer, 256, "/dev/parport%d", parport_port); device_handle = open(buffer, O_WRONLY); - +#endif if (device_handle<0) { ERROR("cannot open device. check it exists and that user read and write rights are set"); @@ -323,6 +336,7 @@ int parport_init(void) DEBUG("...open"); +#ifndef __FreeBSD__ i=ioctl(device_handle, PPCLAIM); if (i<0) { @@ -345,6 +359,7 @@ int parport_init(void) ERROR("cannot set compatible 1284 mode to device"); return ERROR_JTAG_INIT_FAILED; } +#endif #else if (parport_port == 0) { |