summaryrefslogtreecommitdiff
path: root/src/pld/pld.h
diff options
context:
space:
mode:
authorZachary T Welch <zw@superlucidity.net>2009-11-10 01:21:29 -0800
committerZachary T Welch <zw@superlucidity.net>2009-11-13 10:51:46 -0800
commit1df5cc18f51366b823bccdaec4ffa1ee3fac2447 (patch)
tree8871c7d335892e8867d037bf79de53c68b5a9592 /src/pld/pld.h
parent670f999e7a1ec04cda599a5487de068379e36f0e (diff)
downloadopenocd_libswd-1df5cc18f51366b823bccdaec4ffa1ee3fac2447.tar.gz
openocd_libswd-1df5cc18f51366b823bccdaec4ffa1ee3fac2447.tar.bz2
openocd_libswd-1df5cc18f51366b823bccdaec4ffa1ee3fac2447.tar.xz
openocd_libswd-1df5cc18f51366b823bccdaec4ffa1ee3fac2447.zip
add PLD_DEVICE_COMMAND_HANDLER macro
Update virtex module to use abstracted PLD command handling.
Diffstat (limited to 'src/pld/pld.h')
-rw-r--r--src/pld/pld.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/pld/pld.h b/src/pld/pld.h
index 3db4bad0..22f2c137 100644
--- a/src/pld/pld.h
+++ b/src/pld/pld.h
@@ -24,14 +24,19 @@
struct pld_device_s;
+#define __PLD_DEVICE_COMMAND(name) \
+ COMMAND_HELPER(name, struct pld_device_s *pld)
+
typedef struct pld_driver_s
{
char *name;
+ __PLD_DEVICE_COMMAND((*pld_device_command));
int (*register_commands)(struct command_context_s *cmd_ctx);
- int (*pld_device_command)(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc, struct pld_device_s *pld_device);
int (*load)(struct pld_device_s *pld_device, const char *filename);
} pld_driver_t;
+#define PLD_DEVICE_COMMAND_HANDLER(name) static __PLD_DEVICE_COMMAND(name)
+
typedef struct pld_device_s
{
pld_driver_t *driver;