On Wed, 30 Apr 2008 22:51:26 +0530
Ramachandra K <[EMAIL PROTECTED]> wrote:

> From: Poornima Kamath <[EMAIL PROTECTED]>
> 
> This patch adds the driver utility file which mainly contains utility
> macros for debugging of QLogic VNIC driver.
> 
> Signed-off-by: Ramachandra K <[EMAIL PROTECTED]>
> Signed-off-by: Amar Mudrankit <[EMAIL PROTECTED]>
> ---
> 
>  drivers/infiniband/ulp/qlgc_vnic/vnic_util.h |  251 
> ++++++++++++++++++++++++++
>  1 files changed, 251 insertions(+), 0 deletions(-)
>  create mode 100644 drivers/infiniband/ulp/qlgc_vnic/vnic_util.h
> 
> diff --git a/drivers/infiniband/ulp/qlgc_vnic/vnic_util.h 
> b/drivers/infiniband/ulp/qlgc_vnic/vnic_util.h
> new file mode 100644
> index 0000000..4d7d540
> --- /dev/null
> +++ b/drivers/infiniband/ulp/qlgc_vnic/vnic_util.h
> @@ -0,0 +1,251 @@
> +/*
> + * Copyright (c) 2006 QLogic, Inc.  All rights reserved.
> + *
> + * This software is available to you under a choice of one of two
> + * licenses.  You may choose to be licensed under the terms of the GNU
> + * General Public License (GPL) Version 2, available from the file
> + * COPYING in the main directory of this source tree, or the
> + * OpenIB.org BSD license below:
> + *
> + *     Redistribution and use in source and binary forms, with or
> + *     without modification, are permitted provided that the following
> + *     conditions are met:
> + *
> + *      - Redistributions of source code must retain the above
> + *        copyright notice, this list of conditions and the following
> + *        disclaimer.
> + *
> + *      - Redistributions in binary form must reproduce the above
> + *        copyright notice, this list of conditions and the following
> + *        disclaimer in the documentation and/or other materials
> + *        provided with the distribution.
> + *
> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
> + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
> + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
> + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
> + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
> + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
> + * SOFTWARE.
> + */
> +
> +#ifndef VNIC_UTIL_H_INCLUDED
> +#define VNIC_UTIL_H_INCLUDED
> +
> +#define MODULE_NAME "QLGC_VNIC"
> +
> +#define VNIC_MAJORVERSION    1
> +#define VNIC_MINORVERSION    1
> +
> +#define is_power_of2(value)  (((value) & ((value - 1))) == 0)
> +#define ALIGN_DOWN(x, a)     ((x)&(~((a)-1)))

In kernel.h already

> +extern u32 vnic_debug;

Use msg level macros instead?

> +
> +enum {
> +     DEBUG_IB_INFO                   = 0x00000001,
> +     DEBUG_IB_FUNCTION               = 0x00000002,
> +     DEBUG_IB_FSTATUS                = 0x00000004,
> +     DEBUG_IB_ASSERTS                = 0x00000008,
> +     DEBUG_CONTROL_INFO              = 0x00000010,
> +     DEBUG_CONTROL_FUNCTION  = 0x00000020,
> +     DEBUG_CONTROL_PACKET    = 0x00000040,
> +     DEBUG_CONFIG_INFO               = 0x00000100,
> +     DEBUG_DATA_INFO                 = 0x00001000,
> +     DEBUG_DATA_FUNCTION             = 0x00002000,
> +     DEBUG_NETPATH_INFO              = 0x00010000,
> +     DEBUG_VIPORT_INFO               = 0x00100000,
> +     DEBUG_VIPORT_FUNCTION   = 0x00200000,
> +     DEBUG_LINK_STATE                = 0x00400000,
> +     DEBUG_VNIC_INFO                 = 0x01000000,
> +     DEBUG_VNIC_FUNCTION             = 0x02000000,
> +     DEBUG_MCAST_INFO                = 0x04000000,
> +     DEBUG_MCAST_FUNCTION    = 0x08000000,
> +     DEBUG_SYS_INFO                  = 0x10000000,
> +     DEBUG_SYS_VERBOSE               = 0x40000000
> +};
> +
> +#ifdef CONFIG_INFINIBAND_QLGC_VNIC_DEBUG
> +#define PRINT(level, x, fmt, arg...)                                 \
> +     printk(level "%s: %s: %s, line %d: " fmt,                       \
> +            MODULE_NAME, x, __FILE__, __LINE__, ##arg)
> +
> +#define PRINT_CONDITIONAL(level, x, condition, fmt, arg...)          \
> +     do {                                                            \
> +             if (condition)                                          \
> +                     printk(level "%s: %s: %s, line %d: " fmt,       \
> +                            MODULE_NAME, x, __FILE__, __LINE__,      \
> +                            ##arg);                                  \
> +     } while (0)
> +#else
> +#define PRINT(level, x, fmt, arg...)                                 \
> +     printk(level "%s: " fmt, MODULE_NAME, ##arg)
> +
> +#define PRINT_CONDITIONAL(level, x, condition, fmt, arg...)          \
> +     do {                                                            \
> +              if (condition)                                         \
> +                     printk(level "%s: %s: " fmt,                    \
> +                            MODULE_NAME, x, ##arg);                  \
> +     } while (0)
> +#endif       /*CONFIG_INFINIBAND_QLGC_VNIC_DEBUG*/
> +
> +#define IB_PRINT(fmt, arg...)                        \
> +     PRINT(KERN_INFO, "IB", fmt, ##arg)
> +#define IB_ERROR(fmt, arg...)                        \
> +     PRINT(KERN_ERR, "IB", fmt, ##arg)
> +
> +#define IB_FUNCTION(fmt, arg...)                             \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "IB",                                 \
> +                       (vnic_debug & DEBUG_IB_FUNCTION),     \
> +                       fmt, ##arg)
> +
> +#define IB_INFO(fmt, arg...)                                 \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "IB",                                 \
> +                       (vnic_debug & DEBUG_IB_INFO),         \
> +                       fmt, ##arg)
> +
> +#define IB_ASSERT(x)                                                 \
> +     do {                                                            \
> +              if ((vnic_debug & DEBUG_IB_ASSERTS) && !(x))           \
> +                     panic("%s assertion failed, file:  %s,"         \
> +                             " line %d: ",                           \
> +                             MODULE_NAME, __FILE__, __LINE__)        \
> +     } while (0)
> +
> +#define CONTROL_PRINT(fmt, arg...)                   \
> +     PRINT(KERN_INFO, "CONTROL", fmt, ##arg)
> +#define CONTROL_ERROR(fmt, arg...)                   \
> +     PRINT(KERN_ERR, "CONTROL", fmt, ##arg)
> +
> +#define CONTROL_INFO(fmt, arg...)                                    \
> +     PRINT_CONDITIONAL(KERN_INFO,                                    \
> +                       "CONTROL",                                    \
> +                       (vnic_debug & DEBUG_CONTROL_INFO),            \
> +                       fmt, ##arg)
> +
> +#define CONTROL_FUNCTION(fmt, arg...)                                        
> \
> +     PRINT_CONDITIONAL(KERN_INFO,                                    \
> +                     "CONTROL",                                      \
> +                     (vnic_debug & DEBUG_CONTROL_FUNCTION),          \
> +                     fmt, ##arg)
> +
> +#define CONTROL_PACKET(pkt)                                  \
> +     do {                                                    \
> +              if (vnic_debug & DEBUG_CONTROL_PACKET)         \
> +                     control_log_control_packet(pkt);        \
> +     } while (0)
> +
> +#define CONFIG_PRINT(fmt, arg...)            \
> +     PRINT(KERN_INFO, "CONFIG", fmt, ##arg)
> +#define CONFIG_ERROR(fmt, arg...)            \
> +     PRINT(KERN_ERR, "CONFIG", fmt, ##arg)
> +
> +#define CONFIG_INFO(fmt, arg...)                             \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "CONFIG",                             \
> +                       (vnic_debug & DEBUG_CONFIG_INFO),     \
> +                       fmt, ##arg)
> +
> +#define DATA_PRINT(fmt, arg...)                      \
> +     PRINT(KERN_INFO, "DATA", fmt, ##arg)
> +#define DATA_ERROR(fmt, arg...)                      \
> +     PRINT(KERN_ERR, "DATA", fmt, ##arg)
> +
> +#define DATA_INFO(fmt, arg...)                                       \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "DATA",                               \
> +                       (vnic_debug & DEBUG_DATA_INFO),       \
> +                       fmt, ##arg)
> +
> +#define DATA_FUNCTION(fmt, arg...)                           \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "DATA",                               \
> +                       (vnic_debug & DEBUG_DATA_FUNCTION),   \
> +                       fmt, ##arg)
> +
> +
> +#define MCAST_PRINT(fmt, arg...)        \
> +    PRINT(KERN_INFO, "MCAST", fmt, ##arg)
> +#define MCAST_ERROR(fmt, arg...)        \
> +    PRINT(KERN_ERR, "MCAST", fmt, ##arg)
> +
> +#define MCAST_INFO(fmt, arg...)                              \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                     "MCAST",                                \
> +                     (vnic_debug & DEBUG_MCAST_INFO),        \
> +                     fmt, ##arg)
> +
> +#define MCAST_FUNCTION(fmt, arg...)                          \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                     "MCAST",                                \
> +                     (vnic_debug & DEBUG_MCAST_FUNCTION),    \
> +                     fmt, ##arg)
> +
> +#define NETPATH_PRINT(fmt, arg...)           \
> +     PRINT(KERN_INFO, "NETPATH", fmt, ##arg)
> +#define NETPATH_ERROR(fmt, arg...)           \
> +     PRINT(KERN_ERR, "NETPATH", fmt, ##arg)
> +
> +#define NETPATH_INFO(fmt, arg...)                            \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "NETPATH",                            \
> +                       (vnic_debug & DEBUG_NETPATH_INFO),    \
> +                       fmt, ##arg)
> +
> +#define VIPORT_PRINT(fmt, arg...)            \
> +     PRINT(KERN_INFO, "VIPORT", fmt, ##arg)
> +#define VIPORT_ERROR(fmt, arg...)            \
> +     PRINT(KERN_ERR, "VIPORT", fmt, ##arg)
> +
> +#define VIPORT_INFO(fmt, arg...)                             \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "VIPORT",                             \
> +                       (vnic_debug & DEBUG_VIPORT_INFO),     \
> +                       fmt, ##arg)
> +
> +#define VIPORT_FUNCTION(fmt, arg...)                         \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "VIPORT",                             \
> +                       (vnic_debug & DEBUG_VIPORT_FUNCTION), \
> +                       fmt, ##arg)
> +
> +#define LINK_STATE(fmt, arg...)                              \
> +     PRINT_CONDITIONAL(KERN_INFO,                            \
> +                       "LINK",                               \
> +                       (vnic_debug & DEBUG_LINK_STATE),      \
> +                       fmt, ##arg)
> +
> +#define VNIC_PRINT(fmt, arg...)                      \
> +     PRINT(KERN_INFO, "NIC", fmt, ##arg)
> +#define VNIC_ERROR(fmt, arg...)                      \
> +     PRINT(KERN_ERR, "NIC", fmt, ##arg)
> +#define VNIC_INIT(fmt, arg...)                       \
> +     PRINT(KERN_INFO, "NIC", fmt, ##arg)
> +
> +#define VNIC_INFO(fmt, arg...)                                       \
> +      PRINT_CONDITIONAL(KERN_INFO,                           \
> +                        "NIC",                               \
> +                        (vnic_debug & DEBUG_VNIC_INFO),      \
> +                        fmt, ##arg)
> +
> +#define VNIC_FUNCTION(fmt, arg...)                           \
> +      PRINT_CONDITIONAL(KERN_INFO,                           \
> +                        "NIC",                               \
> +                        (vnic_debug & DEBUG_VNIC_FUNCTION),  \
> +                        fmt, ##arg)
> +
> +#define SYS_PRINT(fmt, arg...)                       \
> +     PRINT(KERN_INFO, "SYS", fmt, ##arg)
> +#define SYS_ERROR(fmt, arg...)                       \
> +     PRINT(KERN_ERR, "SYS", fmt, ##arg)
> +
> +#define SYS_INFO(fmt, arg...)                                        \
> +      PRINT_CONDITIONAL(KERN_INFO,                           \
> +                        "SYS",                               \
> +                        (vnic_debug & DEBUG_SYS_INFO),       \
> +                        fmt, ##arg)
> +
> +#endif       /* VNIC_UTIL_H_INCLUDED */


Many of these are already in standard macros pr_info, pr_err etc.
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to