/*****************************************************************************/
 
-#undef PDEBUG
-#undef info
-#undef err
-
-#define err(format, arg...) printk(KERN_ERR KBUILD_MODNAME ": " \
-       format "\n" , ## arg)
-#define info(format, arg...) printk(KERN_INFO KBUILD_MODNAME ": " \
-       format "\n" , ## arg)
-
-/* Debug parameters */
-#define DBG_INIT 0x1
-#define DBG_PROBE 0x2
-#define DBG_V4L2 0x4
-#define DBG_TRACE 0x8
-#define DBG_DATA 0x10
-#define DBG_V4L2_CID 0x20
-#define DBG_GSPCA 0x40
-
-#define PDEBUG(level, fmt, args...) \
-       do { \
-               if (m5602_debug & level)     \
-                       info("[%s:%d] " fmt, __func__, __LINE__ , \
-                       ## args); \
-       } while (0)
-
-/*****************************************************************************/
-
 #define M5602_XB_SENSOR_TYPE 0x00
 #define M5602_XB_SENSOR_CTRL 0x01
 #define M5602_XB_LINE_OF_FRAME_H 0x02
 
-/*
+ /*
  * USB Driver for ALi m5602 based webcams
  *
  * Copyright (C) 2008 Erik AndrĂ©n
 int force_sensor;
 int dump_bridge;
 int dump_sensor;
-unsigned int m5602_debug;
 
 static const __devinitdata struct usb_device_id m5602_table[] = {
        {USB_DEVICE(0x0402, 0x5602)},
                              1, M5602_URB_MSG_TIMEOUT);
        *i2c_data = buf[0];
 
-       PDEBUG(DBG_TRACE, "Reading bridge register 0x%x containing 0x%x",
+       PDEBUG(D_CONF, "Reading bridge register 0x%x containing 0x%x",
               address, *i2c_data);
 
        /* usb_control_msg(...) returns the number of bytes sent upon success,
        struct usb_device *udev = sd->gspca_dev.dev;
        __u8 *buf = sd->gspca_dev.usb_buf;
 
-       PDEBUG(DBG_TRACE, "Writing bridge register 0x%x with 0x%x",
+       PDEBUG(D_CONF, "Writing bridge register 0x%x with 0x%x",
               address, i2c_data);
 
        memcpy(buf, bridge_urb_skeleton,
                m5602_read_bridge(sd, i, &val);
                info("ALi m5602 address 0x%x contains 0x%x", i, val);
        }
-       info("Warning: The camera probably won't work until it's power cycled");
+       info("Warning: The ALi m5602 webcam probably won't work "
+               "until it's power cycled");
 }
 
 static int m5602_probe_sensor(struct sd *sd)
        struct sd *sd = (struct sd *) gspca_dev;
        int err;
 
-       PDEBUG(DBG_TRACE, "Initializing ALi m5602 webcam");
+       PDEBUG(D_CONF, "Initializing ALi m5602 webcam");
        /* Run the init sequence */
        err = sd->sensor->init(sd);
 
                              0x04, 0x40, 0x19, 0x0000, buf,
                              4, M5602_URB_MSG_TIMEOUT);
 
-       PDEBUG(DBG_V4L2, "Transfer started");
+       PDEBUG(D_STREAM, "Transfer started");
        return (err < 0) ? err : 0;
 }
 
        struct sd *sd = (struct sd *) gspca_dev;
 
        if (len < 6) {
-               PDEBUG(DBG_DATA, "Packet is less than 6 bytes");
+               PDEBUG(D_PACK, "Packet is less than 6 bytes");
                return;
        }
 
        /* Frame delimiter: ff xx xx xx ff ff */
        if (data[0] == 0xff && data[4] == 0xff && data[5] == 0xff &&
            data[2] != sd->frame_id) {
-               PDEBUG(DBG_DATA, "Frame delimiter detected");
+               PDEBUG(D_FRAM, "Frame delimiter detected");
                sd->frame_id = data[2];
 
                /* Remove the extra fluff appended on each header */
                /* Create a new frame */
                gspca_frame_add(gspca_dev, FIRST_PACKET, frame, data, len);
 
-               PDEBUG(DBG_V4L2, "Starting new frame %d",
+               PDEBUG(D_FRAM, "Starting new frame %d",
                       sd->frame_count);
 
        } else {
                len -= 4;
 
                if (cur_frame_len + len <= frame->v4l2_buf.length) {
-                       PDEBUG(DBG_DATA, "Continuing frame %d copying %d bytes",
+                       PDEBUG(D_FRAM, "Continuing frame %d copying %d bytes",
                               sd->frame_count, len);
 
                        gspca_frame_add(gspca_dev, INTER_PACKET, frame,
        struct cam *cam;
        int err;
 
-       PDEBUG(DBG_GSPCA, "m5602_configure start");
-
        cam = &gspca_dev->cam;
        cam->epaddr = M5602_ISOC_ENDPOINT_ADDR;
        sd->desc = &sd_desc;
        if (err)
                goto fail;
 
-       PDEBUG(DBG_GSPCA, "m5602_configure end");
        return 0;
 
 fail:
-       PDEBUG(DBG_GSPCA, "m5602_configure failed");
+       PDEBUG(D_ERR, "ALi m5602 webcam failed");
        cam->cam_mode = NULL;
        cam->nmodes = 0;
 
 {
        if (usb_register(&sd_driver) < 0)
                return -1;
-       PDEBUG(D_PROBE, "m5602 module registered");
+       PDEBUG(D_PROBE, "registered");
        return 0;
 }
 static void __exit mod_m5602_exit(void)
 {
        usb_deregister(&sd_driver);
-       PDEBUG(D_PROBE, "m5602 module deregistered");
+       PDEBUG(D_PROBE, "deregistered");
 }
 
 module_init(mod_m5602_init);
 MODULE_AUTHOR(DRIVER_AUTHOR);
 MODULE_DESCRIPTION(DRIVER_DESC);
 MODULE_LICENSE("GPL");
-module_param_named(debug, m5602_debug, int, S_IRUGO | S_IWUSR);
-MODULE_PARM_DESC(debug, "toggles debug on/off");
-
 module_param(force_sensor, int, S_IRUGO | S_IWUSR);
 MODULE_PARM_DESC(force_sensor,
                "force detection of sensor, "
 
        err = mt9m111_read_sensor(sd, MT9M111_SC_R_MODE_CONTEXT_B,
                                  data, 2);
        *val = data[0] & MT9M111_RMB_MIRROR_ROWS;
-       PDEBUG(DBG_V4L2_CID, "Read vertical flip %d", *val);
+       PDEBUG(D_V4L2, "Read vertical flip %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 data[2] = {0x00, 0x00};
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set vertical flip to %d", val);
+       PDEBUG(D_V4L2, "Set vertical flip to %d", val);
 
        /* Set the correct page map */
        err = mt9m111_write_sensor(sd, MT9M111_PAGE_MAP, data, 2);
        err = mt9m111_read_sensor(sd, MT9M111_SC_R_MODE_CONTEXT_B,
                                  data, 2);
        *val = data[0] & MT9M111_RMB_MIRROR_COLS;
-       PDEBUG(DBG_V4L2_CID, "Read horizontal flip %d", *val);
+       PDEBUG(D_V4L2, "Read horizontal flip %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 data[2] = {0x00, 0x00};
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set horizontal flip to %d", val);
+       PDEBUG(D_V4L2, "Set horizontal flip to %d", val);
 
        /* Set the correct page map */
        err = mt9m111_write_sensor(sd, MT9M111_PAGE_MAP, data, 2);
              ((tmp & (1 <<  8)) * 2) |
               (tmp & 0x7f);
 
-       PDEBUG(DBG_V4L2_CID, "Read gain %d", *val);
+       PDEBUG(D_V4L2, "Read gain %d", *val);
 
        return (err < 0) ? err : 0;
 }
 
        data[1] = (tmp & 0xff00) >> 8;
        data[0] = (tmp & 0xff);
-       PDEBUG(DBG_V4L2_CID, "tmp=%d, data[1]=%d, data[0]=%d", tmp,
+       PDEBUG(D_V4L2, "tmp=%d, data[1]=%d, data[0]=%d", tmp,
               data[1], data[0]);
 
        err = mt9m111_write_sensor(sd, MT9M111_SC_GLOBAL_GAIN,
        for (i = 0; i < len && !err; i++) {
                err = m5602_read_bridge(sd, M5602_XB_I2C_DATA, &(i2c_data[i]));
 
-               PDEBUG(DBG_TRACE, "Reading sensor register "
+               PDEBUG(D_CONF, "Reading sensor register "
                       "0x%x contains 0x%x ", address, *i2c_data);
        }
 out:
                memcpy(p, sensor_urb_skeleton + 16, 4);
                p[3] = i2c_data[i];
                p += 4;
-               PDEBUG(DBG_TRACE, "Writing sensor register 0x%x with 0x%x",
+               PDEBUG(D_CONF, "Writing sensor register 0x%x with 0x%x",
                       address, i2c_data[i]);
        }
 
 
        for (i = 0; i < len; i++) {
                err = m5602_read_bridge(sd, M5602_XB_I2C_DATA, &(i2c_data[i]));
 
-               PDEBUG(DBG_TRACE, "Reading sensor register "
+               PDEBUG(D_CONF, "Reading sensor register "
                                "0x%x containing 0x%x ", address, *i2c_data);
        }
        return (err < 0) ? err : 0;
                memcpy(p, sensor_urb_skeleton + 16, 4);
                p[3] = i2c_data[i];
                p += 4;
-               PDEBUG(DBG_TRACE, "Writing sensor register 0x%x with 0x%x",
+               PDEBUG(D_CONF, "Writing sensor register 0x%x with 0x%x",
                       address, i2c_data[i]);
        }
 
                goto out;
        *val |= (i2c_data & 0x3f) << 10;
 
-       PDEBUG(DBG_V4L2_CID, "Read exposure %d", *val);
+       PDEBUG(D_V4L2, "Read exposure %d", *val);
 out:
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        int err;
 
-       PDEBUG(DBG_V4L2_CID, "Set exposure to %d",
+       PDEBUG(D_V4L2, "Set exposure to %d",
               val & 0xffff);
 
        /* The 6 MSBs */
 
        err = ov9650_read_sensor(sd, OV9650_GAIN, &i2c_data, 1);
        *val |= i2c_data;
-       PDEBUG(DBG_V4L2_CID, "Read gain %d", *val);
+       PDEBUG(D_V4L2, "Read gain %d", *val);
        return (err < 0) ? err : 0;
 }
 
        err = ov9650_read_sensor(sd, OV9650_RED, &i2c_data, 1);
        *val = i2c_data;
 
-       PDEBUG(DBG_V4L2_CID, "Read red gain %d", *val);
+       PDEBUG(D_V4L2, "Read red gain %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set red gain to %d",
+       PDEBUG(D_V4L2, "Set red gain to %d",
                             val & 0xff);
 
        i2c_data = val & 0xff;
        err = ov9650_read_sensor(sd, OV9650_BLUE, &i2c_data, 1);
        *val = i2c_data;
 
-       PDEBUG(DBG_V4L2_CID, "Read blue gain %d", *val);
+       PDEBUG(D_V4L2, "Read blue gain %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set blue gain to %d",
+       PDEBUG(D_V4L2, "Set blue gain to %d",
               val & 0xff);
 
        i2c_data = val & 0xff;
                *val = ((i2c_data & OV9650_HFLIP) >> 5) ? 0 : 1;
        else
                *val = (i2c_data & OV9650_HFLIP) >> 5;
-       PDEBUG(DBG_V4L2_CID, "Read horizontal flip %d", *val);
+       PDEBUG(D_V4L2, "Read horizontal flip %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set horizontal flip to %d", val);
+       PDEBUG(D_V4L2, "Set horizontal flip to %d", val);
        err = ov9650_read_sensor(sd, OV9650_MVFP, &i2c_data, 1);
        if (err < 0)
                goto out;
                *val = ((i2c_data & 0x10) >> 4) ? 0 : 1;
        else
                *val = (i2c_data & 0x10) >> 4;
-       PDEBUG(DBG_V4L2_CID, "Read vertical flip %d", *val);
+       PDEBUG(D_V4L2, "Read vertical flip %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set vertical flip to %d", val);
+       PDEBUG(D_V4L2, "Set vertical flip to %d", val);
        err = ov9650_read_sensor(sd, OV9650_MVFP, &i2c_data, 1);
        if (err < 0)
                goto out;
 
        err = ov9650_read_sensor(sd, OV9650_GAIN, &i2c_data, 1);
        *val |= i2c_data;
-       PDEBUG(DBG_V4L2_CID, "Read gain %d", *val);
+       PDEBUG(D_V4L2, "Read gain %d", *val);
 out:
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set gain to %d", val & 0x3ff);
+       PDEBUG(D_V4L2, "Set gain to %d", val & 0x3ff);
 
        /* Read the OV9650_VREF register first to avoid
                corrupting the VREF high and low bits */
 
        err = ov9650_read_sensor(sd, OV9650_COM8, &i2c_data, 1);
        *val = (i2c_data & OV9650_AWB_EN) >> 1;
-       PDEBUG(DBG_V4L2_CID, "Read auto white balance %d", *val);
+       PDEBUG(D_V4L2, "Read auto white balance %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set auto white balance to %d", val);
+       PDEBUG(D_V4L2, "Set auto white balance to %d", val);
        err = ov9650_read_sensor(sd, OV9650_COM8, &i2c_data, 1);
        if (err < 0)
                goto out;
 
        err = ov9650_read_sensor(sd, OV9650_COM8, &i2c_data, 1);
        *val = (i2c_data & OV9650_AGC_EN) >> 2;
-       PDEBUG(DBG_V4L2_CID, "Read auto gain control %d", *val);
+       PDEBUG(D_V4L2, "Read auto gain control %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        struct sd *sd = (struct sd *) gspca_dev;
 
-       PDEBUG(DBG_V4L2_CID, "Set auto gain control to %d", val);
+       PDEBUG(D_V4L2, "Set auto gain control to %d", val);
        err = ov9650_read_sensor(sd, OV9650_COM8, &i2c_data, 1);
        if (err < 0)
                goto out;
 
+
 /*
  * Driver for the po1030 sensor
  *
        for (i = 0; i < len; i++) {
                err = m5602_read_bridge(sd, M5602_XB_I2C_DATA, &(i2c_data[i]));
 
-               PDEBUG(DBG_TRACE, "Reading sensor register "
+               PDEBUG(D_CONF, "Reading sensor register "
                                "0x%x containing 0x%x ", address, *i2c_data);
        }
        return (err < 0) ? err : 0;
                memcpy(p, sensor_urb_skeleton + 16, 4);
                p[3] = i2c_data[i];
                p += 4;
-               PDEBUG(DBG_TRACE, "Writing sensor register 0x%x with 0x%x",
+               PDEBUG(D_CONF, "Writing sensor register 0x%x with 0x%x",
                       address, i2c_data[i]);
        }
 
                                 &i2c_data, 1);
        *val |= i2c_data;
 
-       PDEBUG(DBG_V4L2_CID, "Exposure read as %d", *val);
+       PDEBUG(D_V4L2, "Exposure read as %d", *val);
 out:
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        int err;
 
-       PDEBUG(DBG_V4L2, "Set exposure to %d", val & 0xffff);
+       PDEBUG(D_V4L2, "Set exposure to %d", val & 0xffff);
 
        i2c_data = ((val & 0xff00) >> 8);
-       PDEBUG(DBG_V4L2, "Set exposure to high byte to 0x%x",
+       PDEBUG(D_V4L2, "Set exposure to high byte to 0x%x",
               i2c_data);
 
        err = po1030_write_sensor(sd, PO1030_REG_INTEGLINES_H,
                goto out;
 
        i2c_data = (val & 0xff);
-       PDEBUG(DBG_V4L2, "Set exposure to low byte to 0x%x",
+       PDEBUG(D_V4L2, "Set exposure to low byte to 0x%x",
               i2c_data);
        err = po1030_write_sensor(sd, PO1030_REG_INTEGLINES_M,
                                  &i2c_data, 1);
        err = po1030_read_sensor(sd, PO1030_REG_GLOBALGAIN,
                                 &i2c_data, 1);
        *val = i2c_data;
-       PDEBUG(DBG_V4L2_CID, "Read global gain %d", *val);
+       PDEBUG(D_V4L2, "Read global gain %d", *val);
 
        return (err < 0) ? err : 0;
 }
        int err;
 
        i2c_data = val & 0xff;
-       PDEBUG(DBG_V4L2, "Set global gain to %d", i2c_data);
+       PDEBUG(D_V4L2, "Set global gain to %d", i2c_data);
        err = po1030_write_sensor(sd, PO1030_REG_GLOBALGAIN,
                                  &i2c_data, 1);
        return (err < 0) ? err : 0;
        err = po1030_read_sensor(sd, PO1030_REG_RED_GAIN,
                                 &i2c_data, 1);
        *val = i2c_data;
-       PDEBUG(DBG_V4L2_CID, "Read red gain %d", *val);
+       PDEBUG(D_V4L2, "Read red gain %d", *val);
        return (err < 0) ? err : 0;
 }
 
        int err;
 
        i2c_data = val & 0xff;
-       PDEBUG(DBG_V4L2, "Set red gain to %d", i2c_data);
+       PDEBUG(D_V4L2, "Set red gain to %d", i2c_data);
        err = po1030_write_sensor(sd, PO1030_REG_RED_GAIN,
                                  &i2c_data, 1);
        return (err < 0) ? err : 0;
        err = po1030_read_sensor(sd, PO1030_REG_BLUE_GAIN,
                                 &i2c_data, 1);
        *val = i2c_data;
-       PDEBUG(DBG_V4L2_CID, "Read blue gain %d", *val);
+       PDEBUG(D_V4L2, "Read blue gain %d", *val);
 
        return (err < 0) ? err : 0;
 }
        u8 i2c_data;
        int err;
        i2c_data = val & 0xff;
-       PDEBUG(DBG_V4L2, "Set blue gain to %d", i2c_data);
+       PDEBUG(D_V4L2, "Set blue gain to %d", i2c_data);
        err = po1030_write_sensor(sd, PO1030_REG_BLUE_GAIN,
                                  &i2c_data, 1);
 
 
        for (i = 0; (i < len) & !err; i++) {
                err = m5602_read_bridge(sd, M5602_XB_I2C_DATA, &(i2c_data[i]));
 
-               PDEBUG(DBG_TRACE, "Reading sensor register "
+               PDEBUG(D_CONF, "Reading sensor register "
                                  "0x%x containing 0x%x ", address, *i2c_data);
        }
 out:
                memcpy(p, sensor_urb_skeleton + 16, 4);
                p[3] = i2c_data[i];
                p += 4;
-               PDEBUG(DBG_TRACE, "Writing sensor register 0x%x with 0x%x",
+               PDEBUG(D_CONF, "Writing sensor register 0x%x with 0x%x",
                       address, i2c_data[i]);
        }
 
        *val = data << 8;
        err = s5k4aa_read_sensor(sd, S5K4AA_EXPOSURE_LO, &data, 1);
        *val |= data;
-       PDEBUG(DBG_V4L2_CID, "Read exposure %d", *val);
+       PDEBUG(D_V4L2, "Read exposure %d", *val);
 out:
        return (err < 0) ? err : 0;
 }
        u8 data = S5K4AA_PAGE_MAP_2;
        int err;
 
-       PDEBUG(DBG_V4L2_CID, "Set exposure to %d", val);
+       PDEBUG(D_V4L2, "Set exposure to %d", val);
        err = s5k4aa_write_sensor(sd, S5K4AA_PAGE_MAP, &data, 1);
        if (err < 0)
                goto out;
 
        err = s5k4aa_read_sensor(sd, S5K4AA_PAGE_MAP, &data, 1);
        *val = (data & S5K4AA_RM_V_FLIP) >> 7;
-       PDEBUG(DBG_V4L2_CID, "Read vertical flip %d", *val);
+       PDEBUG(D_V4L2, "Read vertical flip %d", *val);
 
 out:
        return (err < 0) ? err : 0;
        u8 data = S5K4AA_PAGE_MAP_2;
        int err;
 
-       PDEBUG(DBG_V4L2_CID, "Set vertical flip to %d", val);
+       PDEBUG(D_V4L2, "Set vertical flip to %d", val);
        err = s5k4aa_write_sensor(sd, S5K4AA_PAGE_MAP, &data, 1);
        if (err < 0)
                goto out;
 
        err = s5k4aa_read_sensor(sd, S5K4AA_PAGE_MAP, &data, 1);
        *val = (data & S5K4AA_RM_H_FLIP) >> 6;
-       PDEBUG(DBG_V4L2_CID, "Read horizontal flip %d", *val);
+       PDEBUG(D_V4L2, "Read horizontal flip %d", *val);
 out:
        return (err < 0) ? err : 0;
 }
        u8 data = S5K4AA_PAGE_MAP_2;
        int err;
 
-       PDEBUG(DBG_V4L2_CID, "Set horizontal flip to %d",
+       PDEBUG(D_V4L2, "Set horizontal flip to %d",
               val);
        err = s5k4aa_write_sensor(sd, S5K4AA_PAGE_MAP, &data, 1);
        if (err < 0)
 
        err = s5k4aa_read_sensor(sd, S5K4AA_GAIN_2, &data, 1);
        *val = data;
-       PDEBUG(DBG_V4L2_CID, "Read gain %d", *val);
+       PDEBUG(D_V4L2, "Read gain %d", *val);
 
 out:
        return (err < 0) ? err : 0;
        u8 data = S5K4AA_PAGE_MAP_2;
        int err;
 
-       PDEBUG(DBG_V4L2_CID, "Set gain to %d", val);
+       PDEBUG(D_V4L2, "Set gain to %d", val);
        err = s5k4aa_write_sensor(sd, S5K4AA_PAGE_MAP, &data, 1);
        if (err < 0)
                goto out;
 
        for (i = 0; i < len && !len; i++) {
                err = m5602_read_bridge(sd, M5602_XB_I2C_DATA, &(i2c_data[i]));
 
-               PDEBUG(DBG_TRACE, "Reading sensor register "
+               PDEBUG(D_CONF, "Reading sensor register "
                                  "0x%x containing 0x%x ", address, *i2c_data);
        }
 
                memcpy(p, sensor_urb_skeleton + 16, 4);
                p[3] = i2c_data[i];
                p += 4;
-               PDEBUG(DBG_TRACE, "Writing sensor register 0x%x with 0x%x",
+               PDEBUG(D_CONF, "Writing sensor register 0x%x with 0x%x",
                       address, i2c_data[i]);
        }