Re: [PATCH 06/14] [media] cx18: Use current logging styles

From: Andy Walls
Date: Wed Aug 24 2011 - 06:33:51 EST


On Sun, 2011-08-21 at 15:56 -0700, Joe Perches wrote:
> Add pr_fmt.
> Convert printks to pr_<level>.
> Convert printks without KERN_<level> to appropriate pr_<level>.
> Removed embedded prefixes when pr_fmt was added.
> Use ##__VA_ARGS__ for variadic macros.
> Coalesce format strings.
>
> Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>

Hi Joe:

1. It is important to preserve the per-card prefixes emitted by the
driver: cx18-0, cx18-1, cx18-2, etc. With a quick skim, I think your
change preserves the format of all output messages (except removing
periods). Can you confirm this?

2. PLease don't add a pr_fmt() #define to exevry file. Just put one
where all the other CX18_*() macros are defined. Every file picks those
up.


Thanks,
Andy


> ---
> drivers/media/video/cx18/cx18-alsa-main.c | 26 ++--
> drivers/media/video/cx18/cx18-alsa-mixer.c | 2 +
> drivers/media/video/cx18/cx18-alsa-pcm.c | 12 +-
> drivers/media/video/cx18/cx18-alsa.h | 32 +++---
> drivers/media/video/cx18/cx18-audio.c | 2 +
> drivers/media/video/cx18/cx18-av-audio.c | 2 +
> drivers/media/video/cx18/cx18-av-core.c | 2 +
> drivers/media/video/cx18/cx18-av-firmware.c | 2 +
> drivers/media/video/cx18/cx18-av-vbi.c | 1 +
> drivers/media/video/cx18/cx18-controls.c | 3 +
> drivers/media/video/cx18/cx18-driver.c | 35 +++---
> drivers/media/video/cx18/cx18-driver.h | 177 +++++++++++++++------------
> drivers/media/video/cx18/cx18-dvb.c | 2 +
> drivers/media/video/cx18/cx18-fileops.c | 9 +-
> drivers/media/video/cx18/cx18-firmware.c | 4 +-
> drivers/media/video/cx18/cx18-gpio.c | 2 +
> drivers/media/video/cx18/cx18-i2c.c | 2 +
> drivers/media/video/cx18/cx18-io.c | 2 +
> drivers/media/video/cx18/cx18-ioctl.c | 4 +-
> drivers/media/video/cx18/cx18-irq.c | 2 +
> drivers/media/video/cx18/cx18-mailbox.c | 2 +
> drivers/media/video/cx18/cx18-queue.c | 2 +
> drivers/media/video/cx18/cx18-scb.c | 2 +
> drivers/media/video/cx18/cx18-streams.c | 2 +
> drivers/media/video/cx18/cx18-vbi.c | 2 +
> drivers/media/video/cx18/cx18-video.c | 2 +
> 26 files changed, 201 insertions(+), 134 deletions(-)
>
> diff --git a/drivers/media/video/cx18/cx18-alsa-main.c b/drivers/media/video/cx18/cx18-alsa-main.c
> index a1e6c2a..99d1b01 100644
> --- a/drivers/media/video/cx18/cx18-alsa-main.c
> +++ b/drivers/media/video/cx18/cx18-alsa-main.c
> @@ -22,6 +22,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include <linux/init.h>
> #include <linux/slab.h>
> #include <linux/module.h>
> @@ -42,11 +44,11 @@
>
> int cx18_alsa_debug;
>
> -#define CX18_DEBUG_ALSA_INFO(fmt, arg...) \
> - do { \
> - if (cx18_alsa_debug & 2) \
> - printk(KERN_INFO "%s: " fmt, "cx18-alsa", ## arg); \
> - } while (0);
> +#define CX18_DEBUG_ALSA_INFO(fmt, ...) \
> +do { \
> + if (cx18_alsa_debug & 2) \
> + pr_info(fmt, ##__VA_ARGS__); \
> +} while (0)
>
> module_param_named(debug, cx18_alsa_debug, int, 0644);
> MODULE_PARM_DESC(debug,
> @@ -203,14 +205,13 @@ int cx18_alsa_load(struct cx18 *cx)
> struct cx18_stream *s;
>
> if (v4l2_dev == NULL) {
> - printk(KERN_ERR "cx18-alsa: %s: struct v4l2_device * is NULL\n",
> - __func__);
> + pr_err("%s: struct v4l2_device * is NULL\n", __func__);
> return 0;
> }
>
> cx = to_cx18(v4l2_dev);
> if (cx == NULL) {
> - printk(KERN_ERR "cx18-alsa cx is NULL\n");
> + pr_err("cx is NULL\n");
> return 0;
> }
>
> @@ -239,7 +240,7 @@ int cx18_alsa_load(struct cx18 *cx)
>
> static int __init cx18_alsa_init(void)
> {
> - printk(KERN_INFO "cx18-alsa: module loading...\n");
> + pr_info("module loading...\n");
> cx18_ext_init = &cx18_alsa_load;
> return 0;
> }
> @@ -260,8 +261,7 @@ static int __exit cx18_alsa_exit_callback(struct device *dev, void *data)
> struct snd_cx18_card *cxsc;
>
> if (v4l2_dev == NULL) {
> - printk(KERN_ERR "cx18-alsa: %s: struct v4l2_device * is NULL\n",
> - __func__);
> + pr_err("%s: struct v4l2_device * is NULL\n", __func__);
> return 0;
> }
>
> @@ -281,14 +281,14 @@ static void __exit cx18_alsa_exit(void)
> struct device_driver *drv;
> int ret;
>
> - printk(KERN_INFO "cx18-alsa: module unloading...\n");
> + pr_info("module unloading...\n");
>
> drv = driver_find("cx18", &pci_bus_type);
> ret = driver_for_each_device(drv, NULL, NULL, cx18_alsa_exit_callback);
> put_driver(drv);
>
> cx18_ext_init = NULL;
> - printk(KERN_INFO "cx18-alsa: module unload complete\n");
> + pr_info("module unload complete\n");
> }
>
> module_init(cx18_alsa_init);
> diff --git a/drivers/media/video/cx18/cx18-alsa-mixer.c b/drivers/media/video/cx18/cx18-alsa-mixer.c
> index 341bddc..551bd1a 100644
> --- a/drivers/media/video/cx18/cx18-alsa-mixer.c
> +++ b/drivers/media/video/cx18/cx18-alsa-mixer.c
> @@ -20,6 +20,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include <linux/init.h>
> #include <linux/kernel.h>
> #include <linux/device.h>
> diff --git a/drivers/media/video/cx18/cx18-alsa-pcm.c b/drivers/media/video/cx18/cx18-alsa-pcm.c
> index 82d195b..e3528f6 100644
> --- a/drivers/media/video/cx18/cx18-alsa-pcm.c
> +++ b/drivers/media/video/cx18/cx18-alsa-pcm.c
> @@ -23,6 +23,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include <linux/init.h>
> #include <linux/kernel.h>
> #include <linux/vmalloc.h>
> @@ -42,11 +44,11 @@ static unsigned int pcm_debug;
> module_param(pcm_debug, int, 0644);
> MODULE_PARM_DESC(pcm_debug, "enable debug messages for pcm");
>
> -#define dprintk(fmt, arg...) do { \
> - if (pcm_debug) \
> - printk(KERN_INFO "cx18-alsa-pcm %s: " fmt, \
> - __func__, ##arg); \
> - } while (0)
> +#define dprintk(fmt, ...) \
> +do { \
> + if (pcm_debug) \
> + pr_info("%s: " fmt, __func__, ##__VA_ARGS__); \
> +} while (0)
>
> static struct snd_pcm_hardware snd_cx18_hw_capture = {
> .info = SNDRV_PCM_INFO_BLOCK_TRANSFER |
> diff --git a/drivers/media/video/cx18/cx18-alsa.h b/drivers/media/video/cx18/cx18-alsa.h
> index 447da37..3c16b30 100644
> --- a/drivers/media/video/cx18/cx18-alsa.h
> +++ b/drivers/media/video/cx18/cx18-alsa.h
> @@ -52,24 +52,24 @@ static inline void snd_cx18_unlock(struct snd_cx18_card *cxsc)
> #define CX18_ALSA_DBGFLG_WARN (1 << 0)
> #define CX18_ALSA_DBGFLG_INFO (1 << 1)
>
> -#define CX18_ALSA_DEBUG(x, type, fmt, args...) \
> - do { \
> - if ((x) & cx18_alsa_debug) \
> - printk(KERN_INFO "%s-alsa: " type ": " fmt, \
> - v4l2_dev->name , ## args); \
> - } while (0)
> +#define CX18_ALSA_DEBUG(x, type, fmt, ...) \
> +do { \
> + if ((x) & cx18_alsa_debug) \
> + pr_info("%s-alsa: " type ": " fmt, \
> + v4l2_dev->name, ##__VA_ARGS__); \
> +} while (0)
>
> -#define CX18_ALSA_DEBUG_WARN(fmt, args...) \
> - CX18_ALSA_DEBUG(CX18_ALSA_DBGFLG_WARN, "warning", fmt , ## args)
> +#define CX18_ALSA_DEBUG_WARN(fmt, ...) \
> + CX18_ALSA_DEBUG(CX18_ALSA_DBGFLG_WARN, "warning", fmt, ##__VA_ARGS__)
>
> -#define CX18_ALSA_DEBUG_INFO(fmt, args...) \
> - CX18_ALSA_DEBUG(CX18_ALSA_DBGFLG_INFO, "info", fmt , ## args)
> +#define CX18_ALSA_DEBUG_INFO(fmt, ...) \
> + CX18_ALSA_DEBUG(CX18_ALSA_DBGFLG_INFO, "info", fmt, ##__VA_ARGS__)
>
> -#define CX18_ALSA_ERR(fmt, args...) \
> - printk(KERN_ERR "%s-alsa: " fmt, v4l2_dev->name , ## args)
> +#define CX18_ALSA_ERR(fmt, ...) \
> + pr_err("%s-alsa: " fmt, v4l2_dev->name, ##__VA_ARGS__)
>
> -#define CX18_ALSA_WARN(fmt, args...) \
> - printk(KERN_WARNING "%s-alsa: " fmt, v4l2_dev->name , ## args)
> +#define CX18_ALSA_WARN(fmt, ...) \
> + pr_warn("%s-alsa: " fmt, v4l2_dev->name, ##__VA_ARGS__)
>
> -#define CX18_ALSA_INFO(fmt, args...) \
> - printk(KERN_INFO "%s-alsa: " fmt, v4l2_dev->name , ## args)
> +#define CX18_ALSA_INFO(fmt, ...) \
> + pr_info("%s-alsa: " fmt, v4l2_dev->name, ##__VA_ARGS__)
> diff --git a/drivers/media/video/cx18/cx18-audio.c b/drivers/media/video/cx18/cx18-audio.c
> index 3526892..20ec9ff 100644
> --- a/drivers/media/video/cx18/cx18-audio.c
> +++ b/drivers/media/video/cx18/cx18-audio.c
> @@ -21,6 +21,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-cards.h"
> diff --git a/drivers/media/video/cx18/cx18-av-audio.c b/drivers/media/video/cx18/cx18-av-audio.c
> index 4a24ffb..4e39e6e 100644
> --- a/drivers/media/video/cx18/cx18-av-audio.c
> +++ b/drivers/media/video/cx18/cx18-av-audio.c
> @@ -22,6 +22,8 @@
> * 02110-1301, USA.
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
>
> static int set_audclk_freq(struct cx18 *cx, u32 freq)
> diff --git a/drivers/media/video/cx18/cx18-av-core.c b/drivers/media/video/cx18/cx18-av-core.c
> index f164b7f..50a9118 100644
> --- a/drivers/media/video/cx18/cx18-av-core.c
> +++ b/drivers/media/video/cx18/cx18-av-core.c
> @@ -22,6 +22,8 @@
> * 02110-1301, USA.
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include <media/v4l2-chip-ident.h>
> #include "cx18-driver.h"
> #include "cx18-io.h"
> diff --git a/drivers/media/video/cx18/cx18-av-firmware.c b/drivers/media/video/cx18/cx18-av-firmware.c
> index 280aa4d..f2c8a3b 100644
> --- a/drivers/media/video/cx18/cx18-av-firmware.c
> +++ b/drivers/media/video/cx18/cx18-av-firmware.c
> @@ -20,6 +20,8 @@
> * 02110-1301, USA.
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include <linux/firmware.h>
> diff --git a/drivers/media/video/cx18/cx18-av-vbi.c b/drivers/media/video/cx18/cx18-av-vbi.c
> index baa36fb..26b2013 100644
> --- a/drivers/media/video/cx18/cx18-av-vbi.c
> +++ b/drivers/media/video/cx18/cx18-av-vbi.c
> @@ -21,6 +21,7 @@
> * 02110-1301, USA.
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
>
> #include "cx18-driver.h"
>
> diff --git a/drivers/media/video/cx18/cx18-controls.c b/drivers/media/video/cx18/cx18-controls.c
> index 282a3d2..e0adc95 100644
> --- a/drivers/media/video/cx18/cx18-controls.c
> +++ b/drivers/media/video/cx18/cx18-controls.c
> @@ -20,6 +20,9 @@
> * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
> * 02111-1307 USA
> */
> +
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include <linux/kernel.h>
> #include <linux/slab.h>
>
> diff --git a/drivers/media/video/cx18/cx18-driver.c b/drivers/media/video/cx18/cx18-driver.c
> index 9e2f870..8a83d0b 100644
> --- a/drivers/media/video/cx18/cx18-driver.c
> +++ b/drivers/media/video/cx18/cx18-driver.c
> @@ -22,6 +22,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-version.h"
> @@ -315,9 +317,9 @@ static void cx18_eeprom_dump(struct cx18 *cx, unsigned char *eedata, int len)
> for (i = 0; i < len; i++) {
> if (0 == (i % 16))
> CX18_INFO("eeprom %02x:", i);
> - printk(KERN_CONT " %02x", eedata[i]);
> + pr_cont(" %02x", eedata[i]);
> if (15 == (i % 16))
> - printk(KERN_CONT "\n");
> + pr_cont("\n");
> }
> }
>
> @@ -684,7 +686,7 @@ done:
> CX18_ERR("Defaulting to %s card\n", cx->card->name);
> CX18_ERR("Please mail the vendor/device and subsystem vendor/device IDs and what kind of\n");
> CX18_ERR("card you have to the ivtv-devel mailinglist (www.ivtvdriver.org)\n");
> - CX18_ERR("Prefix your subject line with [UNKNOWN CX18 CARD].\n");
> + CX18_ERR("Prefix your subject line with [UNKNOWN CX18 CARD]\n");
> }
> cx->v4l2_cap = cx->card->v4l2_capabilities;
> cx->card_name = cx->card->name;
> @@ -903,15 +905,14 @@ static int __devinit cx18_probe(struct pci_dev *pci_dev,
> /* FIXME - module parameter arrays constrain max instances */
> i = atomic_inc_return(&cx18_instance) - 1;
> if (i >= CX18_MAX_CARDS) {
> - printk(KERN_ERR "cx18: cannot manage card %d, driver has a "
> - "limit of 0 - %d\n", i, CX18_MAX_CARDS - 1);
> + pr_err("cannot manage card %d, driver has a limit of 0 - %d\n",
> + i, CX18_MAX_CARDS - 1);
> return -ENOMEM;
> }
>
> cx = kzalloc(sizeof(struct cx18), GFP_ATOMIC);
> if (cx == NULL) {
> - printk(KERN_ERR "cx18: cannot manage card %d, out of memory\n",
> - i);
> + pr_err("cannot manage card %d, out of memory\n", i);
> return -ENOMEM;
> }
> cx->pci_dev = pci_dev;
> @@ -919,8 +920,8 @@ static int __devinit cx18_probe(struct pci_dev *pci_dev,
>
> retval = v4l2_device_register(&pci_dev->dev, &cx->v4l2_dev);
> if (retval) {
> - printk(KERN_ERR "cx18: v4l2_device_register of card %d failed"
> - "\n", cx->instance);
> + pr_err("v4l2_device_register of card %d failed\n",
> + cx->instance);
> kfree(cx);
> return retval;
> }
> @@ -993,8 +994,7 @@ static int __devinit cx18_probe(struct pci_dev *pci_dev,
> /* Initialize GPIO Reset Controller to do chip resets during i2c init */
> if (cx->card->hw_all & CX18_HW_GPIO_RESET_CTRL) {
> if (cx18_gpio_register(cx, CX18_HW_GPIO_RESET_CTRL) != 0)
> - CX18_WARN("Could not register GPIO reset controller"
> - "subdevice; proceeding anyway.\n");
> + CX18_WARN("Could not register GPIO reset controller subdevice; proceeding anyway.\n");
> else
> cx->hw_flags |= CX18_HW_GPIO_RESET_CTRL;
> }
> @@ -1325,26 +1325,25 @@ static struct pci_driver cx18_pci_driver = {
>
> static int __init module_start(void)
> {
> - printk(KERN_INFO "cx18: Start initialization, version %s\n",
> - CX18_VERSION);
> + pr_info(" Start initialization, version %s\n", CX18_VERSION);
>
> /* Validate parameters */
> if (cx18_first_minor < 0 || cx18_first_minor >= CX18_MAX_CARDS) {
> - printk(KERN_ERR "cx18: Exiting, cx18_first_minor must be between 0 and %d\n",
> - CX18_MAX_CARDS - 1);
> + pr_err(" Exiting, cx18_first_minor must be between 0 and %d\n",
> + CX18_MAX_CARDS - 1);
> return -1;
> }
>
> if (cx18_debug < 0 || cx18_debug > 511) {
> cx18_debug = 0;
> - printk(KERN_INFO "cx18: Debug value must be >= 0 and <= 511!\n");
> + pr_info(" Debug value must be >= 0 and <= 511!\n");
> }
>
> if (pci_register_driver(&cx18_pci_driver)) {
> - printk(KERN_ERR "cx18: Error detecting PCI card\n");
> + pr_err(" Error detecting PCI card\n");
> return -ENODEV;
> }
> - printk(KERN_INFO "cx18: End initialization\n");
> + pr_info(" End initialization\n");
> return 0;
> }
>
> diff --git a/drivers/media/video/cx18/cx18-driver.h b/drivers/media/video/cx18/cx18-driver.h
> index 1834207..68a0d5c 100644
> --- a/drivers/media/video/cx18/cx18-driver.h
> +++ b/drivers/media/video/cx18/cx18-driver.h
> @@ -170,89 +170,114 @@ struct cx18_enc_idx_entry {
> /* Flag to turn on high volume debugging */
> #define CX18_DBGFLG_HIGHVOL (1 << 8)
>
> -/* NOTE: extra space before comma in 'fmt , ## args' is required for
> - gcc-2.95, otherwise it won't compile. */
> -#define CX18_DEBUG(x, type, fmt, args...) \
> - do { \
> - if ((x) & cx18_debug) \
> - v4l2_info(&cx->v4l2_dev, " " type ": " fmt , ## args); \
> - } while (0)
> -#define CX18_DEBUG_WARN(fmt, args...) CX18_DEBUG(CX18_DBGFLG_WARN, "warning", fmt , ## args)
> -#define CX18_DEBUG_INFO(fmt, args...) CX18_DEBUG(CX18_DBGFLG_INFO, "info", fmt , ## args)
> -#define CX18_DEBUG_API(fmt, args...) CX18_DEBUG(CX18_DBGFLG_API, "api", fmt , ## args)
> -#define CX18_DEBUG_DMA(fmt, args...) CX18_DEBUG(CX18_DBGFLG_DMA, "dma", fmt , ## args)
> -#define CX18_DEBUG_IOCTL(fmt, args...) CX18_DEBUG(CX18_DBGFLG_IOCTL, "ioctl", fmt , ## args)
> -#define CX18_DEBUG_FILE(fmt, args...) CX18_DEBUG(CX18_DBGFLG_FILE, "file", fmt , ## args)
> -#define CX18_DEBUG_I2C(fmt, args...) CX18_DEBUG(CX18_DBGFLG_I2C, "i2c", fmt , ## args)
> -#define CX18_DEBUG_IRQ(fmt, args...) CX18_DEBUG(CX18_DBGFLG_IRQ, "irq", fmt , ## args)
> -
> -#define CX18_DEBUG_HIGH_VOL(x, type, fmt, args...) \
> - do { \
> - if (((x) & cx18_debug) && (cx18_debug & CX18_DBGFLG_HIGHVOL)) \
> - v4l2_info(&cx->v4l2_dev, " " type ": " fmt , ## args); \
> - } while (0)
> -#define CX18_DEBUG_HI_WARN(fmt, args...) CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_WARN, "warning", fmt , ## args)
> -#define CX18_DEBUG_HI_INFO(fmt, args...) CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_INFO, "info", fmt , ## args)
> -#define CX18_DEBUG_HI_API(fmt, args...) CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_API, "api", fmt , ## args)
> -#define CX18_DEBUG_HI_DMA(fmt, args...) CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_DMA, "dma", fmt , ## args)
> -#define CX18_DEBUG_HI_IOCTL(fmt, args...) CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_IOCTL, "ioctl", fmt , ## args)
> -#define CX18_DEBUG_HI_FILE(fmt, args...) CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_FILE, "file", fmt , ## args)
> -#define CX18_DEBUG_HI_I2C(fmt, args...) CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_I2C, "i2c", fmt , ## args)
> -#define CX18_DEBUG_HI_IRQ(fmt, args...) CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_IRQ, "irq", fmt , ## args)
> +#define CX18_DEBUG(x, type, fmt, ...) \
> +do { \
> + if ((x) & cx18_debug) \
> + v4l2_info(&cx->v4l2_dev, " " type ": " fmt, ##__VA_ARGS__); \
> +} while (0)
> +#define CX18_DEBUG_WARN(fmt, ...) \
> + CX18_DEBUG(CX18_DBGFLG_WARN, "warning", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_INFO(fmt, ...) \
> + CX18_DEBUG(CX18_DBGFLG_INFO, "info", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_API(fmt, ...) \
> + CX18_DEBUG(CX18_DBGFLG_API, "api", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_DMA(fmt, ...) \
> + CX18_DEBUG(CX18_DBGFLG_DMA, "dma", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_IOCTL(fmt, ...) \
> + CX18_DEBUG(CX18_DBGFLG_IOCTL, "ioctl", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_FILE(fmt, ...) \
> + CX18_DEBUG(CX18_DBGFLG_FILE, "file", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_I2C(fmt, ...) \
> + CX18_DEBUG(CX18_DBGFLG_I2C, "i2c", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_IRQ(fmt, ...) \
> + CX18_DEBUG(CX18_DBGFLG_IRQ, "irq", fmt, ##__VA_ARGS__)
> +
> +#define CX18_DEBUG_HIGH_VOL(x, type, fmt, ...) \
> +do { \
> + if (((x) & cx18_debug) && (cx18_debug & CX18_DBGFLG_HIGHVOL)) \
> + v4l2_info(&cx->v4l2_dev, " " type ": " fmt, ##__VA_ARGS__); \
> +} while (0)
> +#define CX18_DEBUG_HI_WARN(fmt, ...) \
> + CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_WARN, "warning", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_INFO(fmt, ...) \
> + CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_INFO, "info", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_API(fmt, ...) \
> + CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_API, "api", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_DMA(fmt, ...) \
> + CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_DMA, "dma", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_IOCTL(fmt, ...) \
> + CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_IOCTL, "ioctl", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_FILE(fmt, ...) \
> + CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_FILE, "file", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_I2C(fmt, ...) \
> + CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_I2C, "i2c", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_IRQ(fmt, ...) \
> + CX18_DEBUG_HIGH_VOL(CX18_DBGFLG_IRQ, "irq", fmt, ##__VA_ARGS__)
>
> /* Standard kernel messages */
> -#define CX18_ERR(fmt, args...) v4l2_err(&cx->v4l2_dev, fmt , ## args)
> -#define CX18_WARN(fmt, args...) v4l2_warn(&cx->v4l2_dev, fmt , ## args)
> -#define CX18_INFO(fmt, args...) v4l2_info(&cx->v4l2_dev, fmt , ## args)
> +#define CX18_ERR(fmt, ...) v4l2_err(&cx->v4l2_dev, fmt, ##__VA_ARGS__)
> +#define CX18_WARN(fmt, ...) v4l2_warn(&cx->v4l2_dev, fmt, ##__VA_ARGS__)
> +#define CX18_INFO(fmt, ...) v4l2_info(&cx->v4l2_dev, fmt, ##__VA_ARGS__)
>
> /* Messages for internal subdevs to use */
> -#define CX18_DEBUG_DEV(x, dev, type, fmt, args...) \
> - do { \
> - if ((x) & cx18_debug) \
> - v4l2_info(dev, " " type ": " fmt , ## args); \
> - } while (0)
> -#define CX18_DEBUG_WARN_DEV(dev, fmt, args...) \
> - CX18_DEBUG_DEV(CX18_DBGFLG_WARN, dev, "warning", fmt , ## args)
> -#define CX18_DEBUG_INFO_DEV(dev, fmt, args...) \
> - CX18_DEBUG_DEV(CX18_DBGFLG_INFO, dev, "info", fmt , ## args)
> -#define CX18_DEBUG_API_DEV(dev, fmt, args...) \
> - CX18_DEBUG_DEV(CX18_DBGFLG_API, dev, "api", fmt , ## args)
> -#define CX18_DEBUG_DMA_DEV(dev, fmt, args...) \
> - CX18_DEBUG_DEV(CX18_DBGFLG_DMA, dev, "dma", fmt , ## args)
> -#define CX18_DEBUG_IOCTL_DEV(dev, fmt, args...) \
> - CX18_DEBUG_DEV(CX18_DBGFLG_IOCTL, dev, "ioctl", fmt , ## args)
> -#define CX18_DEBUG_FILE_DEV(dev, fmt, args...) \
> - CX18_DEBUG_DEV(CX18_DBGFLG_FILE, dev, "file", fmt , ## args)
> -#define CX18_DEBUG_I2C_DEV(dev, fmt, args...) \
> - CX18_DEBUG_DEV(CX18_DBGFLG_I2C, dev, "i2c", fmt , ## args)
> -#define CX18_DEBUG_IRQ_DEV(dev, fmt, args...) \
> - CX18_DEBUG_DEV(CX18_DBGFLG_IRQ, dev, "irq", fmt , ## args)
> -
> -#define CX18_DEBUG_HIGH_VOL_DEV(x, dev, type, fmt, args...) \
> - do { \
> - if (((x) & cx18_debug) && (cx18_debug & CX18_DBGFLG_HIGHVOL)) \
> - v4l2_info(dev, " " type ": " fmt , ## args); \
> - } while (0)
> -#define CX18_DEBUG_HI_WARN_DEV(dev, fmt, args...) \
> - CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_WARN, dev, "warning", fmt , ## args)
> -#define CX18_DEBUG_HI_INFO_DEV(dev, fmt, args...) \
> - CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_INFO, dev, "info", fmt , ## args)
> -#define CX18_DEBUG_HI_API_DEV(dev, fmt, args...) \
> - CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_API, dev, "api", fmt , ## args)
> -#define CX18_DEBUG_HI_DMA_DEV(dev, fmt, args...) \
> - CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_DMA, dev, "dma", fmt , ## args)
> -#define CX18_DEBUG_HI_IOCTL_DEV(dev, fmt, args...) \
> - CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_IOCTL, dev, "ioctl", fmt , ## args)
> -#define CX18_DEBUG_HI_FILE_DEV(dev, fmt, args...) \
> - CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_FILE, dev, "file", fmt , ## args)
> -#define CX18_DEBUG_HI_I2C_DEV(dev, fmt, args...) \
> - CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_I2C, dev, "i2c", fmt , ## args)
> -#define CX18_DEBUG_HI_IRQ_DEV(dev, fmt, args...) \
> - CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_IRQ, dev, "irq", fmt , ## args)
> -
> -#define CX18_ERR_DEV(dev, fmt, args...) v4l2_err(dev, fmt , ## args)
> -#define CX18_WARN_DEV(dev, fmt, args...) v4l2_warn(dev, fmt , ## args)
> -#define CX18_INFO_DEV(dev, fmt, args...) v4l2_info(dev, fmt , ## args)
> +#define CX18_DEBUG_DEV(x, dev, type, fmt, ...) \
> +do { \
> + if ((x) & cx18_debug) \
> + v4l2_info(dev, " " type ": " fmt, ##__VA_ARGS__); \
> +} while (0)
> +#define CX18_DEBUG_WARN_DEV(dev, fmt, ...) \
> + CX18_DEBUG_DEV(CX18_DBGFLG_WARN, dev, "warning", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_INFO_DEV(dev, fmt, ...) \
> + CX18_DEBUG_DEV(CX18_DBGFLG_INFO, dev, "info", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_API_DEV(dev, fmt, ...) \
> + CX18_DEBUG_DEV(CX18_DBGFLG_API, dev, "api", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_DMA_DEV(dev, fmt, ...) \
> + CX18_DEBUG_DEV(CX18_DBGFLG_DMA, dev, "dma", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_IOCTL_DEV(dev, fmt, ...) \
> + CX18_DEBUG_DEV(CX18_DBGFLG_IOCTL, dev, "ioctl", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_FILE_DEV(dev, fmt, ...) \
> + CX18_DEBUG_DEV(CX18_DBGFLG_FILE, dev, "file", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_I2C_DEV(dev, fmt, ...) \
> + CX18_DEBUG_DEV(CX18_DBGFLG_I2C, dev, "i2c", fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_IRQ_DEV(dev, fmt, ...) \
> + CX18_DEBUG_DEV(CX18_DBGFLG_IRQ, dev, "irq", fmt, ##__VA_ARGS__)
> +
> +#define CX18_DEBUG_HIGH_VOL_DEV(x, dev, type, fmt, ...) \
> +do { \
> + if (((x) & cx18_debug) && (cx18_debug & CX18_DBGFLG_HIGHVOL)) \
> + v4l2_info(dev, " " type ": " fmt, ##__VA_ARGS__); \
> +} while (0)
> +#define CX18_DEBUG_HI_WARN_DEV(dev, fmt, ...) \
> + CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_WARN, dev, "warning", \
> + fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_INFO_DEV(dev, fmt, ...) \
> + CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_INFO, dev, "info", \
> + fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_API_DEV(dev, fmt, ...) \
> + CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_API, dev, "api", \
> + fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_DMA_DEV(dev, fmt, ...) \
> + CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_DMA, dev, "dma", \
> + fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_IOCTL_DEV(dev, fmt, ...) \
> + CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_IOCTL, dev, "ioctl", \
> + fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_FILE_DEV(dev, fmt, ...) \
> + CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_FILE, dev, "file", \
> + fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_I2C_DEV(dev, fmt, ...) \
> + CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_I2C, dev, "i2c", \
> + fmt, ##__VA_ARGS__)
> +#define CX18_DEBUG_HI_IRQ_DEV(dev, fmt, ...) \
> + CX18_DEBUG_HIGH_VOL_DEV(CX18_DBGFLG_IRQ, dev, "irq", \
> + fmt, ##__VA_ARGS__)
> +
> +#define CX18_ERR_DEV(dev, fmt, ...) \
> + v4l2_err(dev, fmt, ##__VA_ARGS__)
> +#define CX18_WARN_DEV(dev, fmt, ...) \
> + v4l2_warn(dev, fmt, ##__VA_ARGS__)
> +#define CX18_INFO_DEV(dev, fmt, ...) \
> + v4l2_info(dev, fmt, ##__VA_ARGS__)
>
> extern int cx18_debug;
>
> diff --git a/drivers/media/video/cx18/cx18-dvb.c b/drivers/media/video/cx18/cx18-dvb.c
> index f41922b..078ffe9 100644
> --- a/drivers/media/video/cx18/cx18-dvb.c
> +++ b/drivers/media/video/cx18/cx18-dvb.c
> @@ -20,6 +20,8 @@
> * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-version.h"
> #include "cx18-dvb.h"
> #include "cx18-io.h"
> diff --git a/drivers/media/video/cx18/cx18-fileops.c b/drivers/media/video/cx18/cx18-fileops.c
> index 07411f3..bc4339d 100644
> --- a/drivers/media/video/cx18/cx18-fileops.c
> +++ b/drivers/media/video/cx18/cx18-fileops.c
> @@ -22,6 +22,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-fileops.h"
> #include "cx18-i2c.h"
> @@ -48,8 +50,7 @@ int cx18_claim_stream(struct cx18_open_id *id, int type)
>
> /* Nothing should ever try to directly claim the IDX stream */
> if (type == CX18_ENC_STREAM_TYPE_IDX) {
> - CX18_WARN("MPEG Index stream cannot be claimed "
> - "directly, but something tried.\n");
> + CX18_WARN("MPEG Index stream cannot be claimed directly, but something tried\n");
> return -EINVAL;
> }
>
> @@ -173,8 +174,8 @@ static void cx18_dualwatch(struct cx18 *cx)
> if (new_stereo_mode == cx->dualwatch_stereo_mode)
> return;
>
> - CX18_DEBUG_INFO("dualwatch: change stereo flag from 0x%x to 0x%x.\n",
> - cx->dualwatch_stereo_mode, new_stereo_mode);
> + CX18_DEBUG_INFO("dualwatch: change stereo flag from 0x%x to 0x%x\n",
> + cx->dualwatch_stereo_mode, new_stereo_mode);
> if (v4l2_ctrl_s_ctrl(cx->cxhdl.audio_mode, new_stereo_mode))
> CX18_DEBUG_INFO("dualwatch: changing stereo flag failed\n");
> }
> diff --git a/drivers/media/video/cx18/cx18-firmware.c b/drivers/media/video/cx18/cx18-firmware.c
> index 1b3fb50..8418b6e 100644
> --- a/drivers/media/video/cx18/cx18-firmware.c
> +++ b/drivers/media/video/cx18/cx18-firmware.c
> @@ -20,6 +20,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-scb.h"
> @@ -207,7 +209,7 @@ static int load_apu_fw_direct(const char *fn, u8 __iomem *dst, struct cx18 *cx,
>
> void cx18_halt_firmware(struct cx18 *cx)
> {
> - CX18_DEBUG_INFO("Preparing for firmware halt.\n");
> + CX18_DEBUG_INFO("Preparing for firmware halt\n");
> cx18_write_reg_expect(cx, 0x000F000F, CX18_PROC_SOFT_RESET,
> 0x0000000F, 0x000F000F);
> cx18_write_reg_expect(cx, 0x00020002, CX18_ADEC_CONTROL,
> diff --git a/drivers/media/video/cx18/cx18-gpio.c b/drivers/media/video/cx18/cx18-gpio.c
> index 5374aeb..c497265 100644
> --- a/drivers/media/video/cx18/cx18-gpio.c
> +++ b/drivers/media/video/cx18/cx18-gpio.c
> @@ -22,6 +22,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-cards.h"
> diff --git a/drivers/media/video/cx18/cx18-i2c.c b/drivers/media/video/cx18/cx18-i2c.c
> index 040aaa8..050220d 100644
> --- a/drivers/media/video/cx18/cx18-i2c.c
> +++ b/drivers/media/video/cx18/cx18-i2c.c
> @@ -22,6 +22,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-cards.h"
> diff --git a/drivers/media/video/cx18/cx18-io.c b/drivers/media/video/cx18/cx18-io.c
> index 49b9dbd..673f9f2 100644
> --- a/drivers/media/video/cx18/cx18-io.c
> +++ b/drivers/media/video/cx18/cx18-io.c
> @@ -20,6 +20,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-irq.h"
> diff --git a/drivers/media/video/cx18/cx18-ioctl.c b/drivers/media/video/cx18/cx18-ioctl.c
> index afe0a29..a83c7da 100644
> --- a/drivers/media/video/cx18/cx18-ioctl.c
> +++ b/drivers/media/video/cx18/cx18-ioctl.c
> @@ -22,6 +22,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-version.h"
> @@ -665,7 +667,7 @@ int cx18_s_std(struct file *file, void *fh, v4l2_std_id *std)
> cx->vbi.count = cx->is_50hz ? 18 : 12;
> cx->vbi.start[0] = cx->is_50hz ? 6 : 10;
> cx->vbi.start[1] = cx->is_50hz ? 318 : 273;
> - CX18_DEBUG_INFO("Switching standard to %llx.\n",
> + CX18_DEBUG_INFO("Switching standard to %llx\n",
> (unsigned long long) cx->std);
>
> /* Tuner */
> diff --git a/drivers/media/video/cx18/cx18-irq.c b/drivers/media/video/cx18/cx18-irq.c
> index 80edfe9..c33b145 100644
> --- a/drivers/media/video/cx18/cx18-irq.c
> +++ b/drivers/media/video/cx18/cx18-irq.c
> @@ -20,6 +20,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-irq.h"
> diff --git a/drivers/media/video/cx18/cx18-mailbox.c b/drivers/media/video/cx18/cx18-mailbox.c
> index c07191e..fcc47cc 100644
> --- a/drivers/media/video/cx18/cx18-mailbox.c
> +++ b/drivers/media/video/cx18/cx18-mailbox.c
> @@ -20,6 +20,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include <stdarg.h>
>
> #include "cx18-driver.h"
> diff --git a/drivers/media/video/cx18/cx18-queue.c b/drivers/media/video/cx18/cx18-queue.c
> index 8884537..f3fd4ce 100644
> --- a/drivers/media/video/cx18/cx18-queue.c
> +++ b/drivers/media/video/cx18/cx18-queue.c
> @@ -22,6 +22,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-queue.h"
> #include "cx18-streams.h"
> diff --git a/drivers/media/video/cx18/cx18-scb.c b/drivers/media/video/cx18/cx18-scb.c
> index 85cc596..7ccbc9c 100644
> --- a/drivers/media/video/cx18/cx18-scb.c
> +++ b/drivers/media/video/cx18/cx18-scb.c
> @@ -20,6 +20,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-scb.h"
> diff --git a/drivers/media/video/cx18/cx18-streams.c b/drivers/media/video/cx18/cx18-streams.c
> index 852f420..470ac88 100644
> --- a/drivers/media/video/cx18/cx18-streams.c
> +++ b/drivers/media/video/cx18/cx18-streams.c
> @@ -22,6 +22,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-io.h"
> #include "cx18-fileops.h"
> diff --git a/drivers/media/video/cx18/cx18-vbi.c b/drivers/media/video/cx18/cx18-vbi.c
> index 6d3121f..930fd01 100644
> --- a/drivers/media/video/cx18/cx18-vbi.c
> +++ b/drivers/media/video/cx18/cx18-vbi.c
> @@ -21,6 +21,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-vbi.h"
> #include "cx18-ioctl.h"
> diff --git a/drivers/media/video/cx18/cx18-video.c b/drivers/media/video/cx18/cx18-video.c
> index 6dc84aa..797b13f 100644
> --- a/drivers/media/video/cx18/cx18-video.c
> +++ b/drivers/media/video/cx18/cx18-video.c
> @@ -19,6 +19,8 @@
> * 02111-1307 USA
> */
>
> +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> #include "cx18-driver.h"
> #include "cx18-video.h"
> #include "cx18-cards.h"


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/