diff options
Diffstat (limited to 'drivers/pnp')
-rw-r--r-- | drivers/pnp/Kconfig | 14 | ||||
-rw-r--r-- | drivers/pnp/base.h | 10 | ||||
-rw-r--r-- | drivers/pnp/core.c | 11 |
3 files changed, 35 insertions, 0 deletions
diff --git a/drivers/pnp/Kconfig b/drivers/pnp/Kconfig index 821933f9aa5..8a3237f9f2a 100644 --- a/drivers/pnp/Kconfig +++ b/drivers/pnp/Kconfig @@ -20,6 +20,20 @@ menuconfig PNP If unsure, say Y. +config PNP_DEBUG_MESSAGES + default y + bool "PNP debugging messages" + depends on PNP + help + Say Y here if you want the PNP layer to be able to produce debugging + messages if needed. The messages can be enabled at boot-time with + the pnp.debug kernel parameter. + + This option allows you to save a bit of space if you do not want + the messages to even be built into the kernel. + + If you have any doubts about this, say Y here. + if PNP config PNP_DEBUG diff --git a/drivers/pnp/base.h b/drivers/pnp/base.h index 9fd7bb9b7dc..5e4e82c8265 100644 --- a/drivers/pnp/base.h +++ b/drivers/pnp/base.h @@ -166,3 +166,13 @@ struct pnp_resource *pnp_add_io_resource(struct pnp_dev *dev, struct pnp_resource *pnp_add_mem_resource(struct pnp_dev *dev, resource_size_t start, resource_size_t end, int flags); + +extern int pnp_debug; + +#if defined(CONFIG_PNP_DEBUG_MESSAGES) +#define pnp_dbg(dev, format, arg...) \ + ({ if (pnp_debug) dev_printk(KERN_DEBUG, dev, format, ## arg); 0; }) +#else +#define pnp_dbg(dev, format, arg...) \ + ({ if (0) dev_printk(KERN_DEBUG, dev, format, ## arg); 0; }) +#endif diff --git a/drivers/pnp/core.c b/drivers/pnp/core.c index 7cb1ffc14d4..61291b5bfe1 100644 --- a/drivers/pnp/core.c +++ b/drivers/pnp/core.c @@ -221,3 +221,14 @@ static int __init pnp_init(void) } subsys_initcall(pnp_init); + +int pnp_debug; + +#if defined(CONFIG_PNP_DEBUG_MESSAGES) +static int __init pnp_debug_setup(char *__unused) +{ + pnp_debug = 1; + return 1; +} +__setup("pnp.debug", pnp_debug_setup); +#endif |