Browse Source

JTAG/drivers: amt_jtagaccel fixes + cleanup

Build fixes:  it failed abysmally with PPDEV enabled.  Swapped
a build-time error with a FIXME comment in the affected macros.

Cleanup: remove "&" before function pointers, and excess indent,
for the interface struct declaration.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
tags/v0.4.0-rc2
David Brownell 14 years ago
parent
commit
d9508b30e0
1 changed files with 43 additions and 14 deletions
  1. +43
    -14
      src/jtag/drivers/amt_jtagaccel.c

+ 43
- 14
src/jtag/drivers/amt_jtagaccel.c View File

@@ -55,13 +55,41 @@ static int rtck_enabled = 0;
#if PARPORT_USE_PPDEV == 1
static int device_handle;

static int addr_mode = IEEE1284_MODE_EPP | IEEE1284_ADDR ;
#define AMT_AW(val) do { ioctl(device_handle, PPSETMODE, &addr_mode); write(device_handle, &val, 1); } while (0)
#define AMT_AR(val) do { ioctl(device_handle, PPSETMODE, &addr_mode); read(device_handle, &val, 1); } while (0)

static int data_mode = IEEE1284_MODE_EPP | IEEE1284_DATA ;
#define AMT_DW(val) do { ioctl(device_handle, PPSETMODE, &data_mode); write(device_handle, &val, 1); } while (0)
#define AMT_DR(val) do { ioctl(device_handle, PPSETMODE, &data_mode); read(device_handle, &val, 1); } while (0)
static const int addr_mode = IEEE1284_MODE_EPP | IEEE1284_ADDR;

/* FIXME do something sane when these ioctl/read/write calls fail. */

#define AMT_AW(val) \
do { \
int __retval; \
\
__retval = ioctl(device_handle, PPSETMODE, &addr_mode); \
__retval = write(device_handle, &val, 1); \
} while (0)
#define AMT_AR(val) \
do { \
int __retval; \
\
__retval = ioctl(device_handle, PPSETMODE, &addr_mode); \
__retval = read(device_handle, &val, 1); \
} while (0)

static const int data_mode = IEEE1284_MODE_EPP | IEEE1284_DATA;

#define AMT_DW(val) \
do { \
int __retval; \
\
__retval = ioctl(device_handle, PPSETMODE, &data_mode); \
__retval = write(device_handle, &val, 1); \
} while (0)
#define AMT_DR(val) \
do { \
int __retval; \
\
__retval = ioctl(device_handle, PPSETMODE, &data_mode); \
__retval = read(device_handle, &val, 1); \
} while (0)

#else

@@ -559,10 +587,11 @@ static const struct command_registration amtjtagaccel_command_handlers[] = {
};

struct jtag_interface amt_jtagaccel_interface = {
.name = "amt_jtagaccel",
.commands = amtjtagaccel_command_handlers,
.init = &amt_jtagaccel_init,
.quit = &amt_jtagaccel_quit,
.speed = &amt_jtagaccel_speed,
.execute_queue = &amt_jtagaccel_execute_queue,
};
.name = "amt_jtagaccel",
.commands = amtjtagaccel_command_handlers,

.init = amt_jtagaccel_init,
.quit = amt_jtagaccel_quit,
.speed = amt_jtagaccel_speed,
.execute_queue = amt_jtagaccel_execute_queue,
};

Loading…
Cancel
Save