Update virtex module to use abstracted PLD command handling.

Signed-off-by: Zachary T Welch <z...@superlucidity.net>
---
 src/pld/pld.h     |    7 ++++++-
 src/pld/virtex2.c |    6 +++---
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/src/pld/pld.h b/src/pld/pld.h
index 3db4bad..22f2c13 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;
diff --git a/src/pld/virtex2.c b/src/pld/virtex2.c
index 3c6d61f..7e422fb 100644
--- a/src/pld/virtex2.c
+++ b/src/pld/virtex2.c
@@ -207,8 +207,7 @@ COMMAND_HANDLER(virtex2_handle_read_stat_command)
        return ERROR_OK;
 }
 
-static int virtex2_pld_device_command(struct command_context_s *cmd_ctx,
-               char *cmd, char **args, int argc, struct pld_device_s 
*pld_device)
+PLD_DEVICE_COMMAND_HANDLER(virtex2_pld_device_command)
 {
        jtag_tap_t *tap;
 
@@ -227,9 +226,10 @@ static int virtex2_pld_device_command(struct 
command_context_s *cmd_ctx,
        }
 
        virtex2_info = malloc(sizeof(virtex2_pld_device_t));
-       pld_device->driver_priv = virtex2_info;
        virtex2_info->tap = tap;
 
+       pld->driver_priv = virtex2_info;
+
        return ERROR_OK;
 }
 
-- 
1.6.4.4

_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to