static mflash_bank_t *mflash_bank;
 
-static mflash_gpio_drv_t pxa270_gpio = {
+static struct mflash_gpio_drv pxa270_gpio = {
        .name = "pxa270",
        .set_gpio_to_output = pxa270_set_gpio_to_output,
        .set_gpio_output_val = pxa270_set_gpio_output_val
 };
 
-static mflash_gpio_drv_t s3c2440_gpio = {
+static struct mflash_gpio_drv s3c2440_gpio = {
        .name = "s3c2440",
        .set_gpio_to_output = s3c2440_set_gpio_to_output,
        .set_gpio_output_val = s3c2440_set_gpio_output_val
 };
 
-static mflash_gpio_drv_t *mflash_gpio[] =
+static struct mflash_gpio_drv *mflash_gpio[] =
 {
                &pxa270_gpio,
                &s3c2440_gpio,
 static int mg_init_gpio (void)
 {
        int ret;
-       mflash_gpio_drv_t *gpio_drv = mflash_bank->gpio_drv;
+       struct mflash_gpio_drv *gpio_drv = mflash_bank->gpio_drv;
 
        ret = gpio_drv->set_gpio_to_output(mflash_bank->rst_pin);
        if (ret != ERROR_OK)
 
        signed short num;
 };
 
-typedef struct mflash_gpio_drv_s
+struct mflash_gpio_drv
 {
        char *name;
        int (*set_gpio_to_output) (struct mflash_gpio_num gpio);
        int (*set_gpio_output_val) (struct mflash_gpio_num gpio, uint8_t val);
-} mflash_gpio_drv_t;
+};
 
 typedef struct _mg_io_type_drv_info {
 
 
        struct mflash_gpio_num rst_pin;
 
-       mflash_gpio_drv_t *gpio_drv;
+       struct mflash_gpio_drv *gpio_drv;
        target_t *target;
        mg_drv_info_t *drv_info;
 } mflash_bank_t;