* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+#define KMSG_COMPONENT         "lcs"
+#define pr_fmt(fmt) KMSG_COMPONENT ": " fmt
+
 #include <linux/module.h>
 #include <linux/if.h>
 #include <linux/netdevice.h>
 #error Cannot compile lcs.c without some net devices switched on.
 #endif
 
-#define PRINTK_HEADER          " lcs: "
-
 /**
  * initialization string for output
  */
        lcs_dbf_setup = debug_register("lcs_setup", 2, 1, 8);
        lcs_dbf_trace = debug_register("lcs_trace", 4, 1, 8);
        if (lcs_dbf_setup == NULL || lcs_dbf_trace == NULL) {
-               PRINT_ERR("Not enough memory for debug facility.\n");
+               pr_err("Not enough memory for debug facility.\n");
                lcs_unregister_debug_facility();
                return -ENOMEM;
        }
        if (rc) {
                LCS_DBF_TEXT_(4,trace,"essh%s",
                              dev_name(&channel->ccwdev->dev));
-               PRINT_ERR("Error in starting channel, rc=%d!\n", rc);
+               dev_err(&channel->ccwdev->dev,
+                       "Starting an LCS device resulted in an error,"
+                       " rc=%d!\n", rc);
        }
        return rc;
 }
        if (rc) {
                LCS_DBF_TEXT_(4, trace, "ersc%s",
                              dev_name(&channel->ccwdev->dev));
-               PRINT_ERR("Error in lcs_resume_channel: rc=%d\n",rc);
+               dev_err(&channel->ccwdev->dev,
+                       "Sending data from the LCS device to the LAN failed"
+                       " with rc=%d\n",rc);
        } else
                channel->state = LCS_CH_STATE_RUNNING;
        return rc;
        cmd->cmd.lcs_qipassist.num_ip_pairs = 1;
        rc = lcs_send_lancmd(card, buffer, __lcs_check_multicast_cb);
        if (rc != 0) {
-               PRINT_ERR("Query IPAssist failed. Assuming unsupported!\n");
+               pr_err("Query IPAssist failed. Assuming unsupported!\n");
                return -EOPNOTSUPP;
        }
        if (card->ip_assists_supported & LCS_IPASS_MULTICAST_SUPPORT)
                        rc = lcs_send_setipm(card, ipm);
                        spin_lock_irqsave(&card->ipm_lock, flags);
                        if (rc) {
-                               PRINT_INFO("Adding multicast address failed. "
-                                          "Table possibly full!\n");
+                               pr_info("Adding multicast address failed."
+                                       " Table possibly full!\n");
                                /* store ipm in failed list -> will be added
                                 * to ipm_list again, so a retry will be done
                                 * during the next call of this function */
                ipm = (struct lcs_ipm_list *)
                        kzalloc(sizeof(struct lcs_ipm_list), GFP_ATOMIC);
                if (ipm == NULL) {
-                       PRINT_INFO("Not enough memory to add "
-                                  "new multicast entry!\n");
+                       pr_info("Not enough memory to add"
+                               " new multicast entry!\n");
                        break;
                }
                memcpy(&ipm->ipm.mac_addr, buf, LCS_MAC_LENGTH);
 
        switch (PTR_ERR(irb)) {
        case -EIO:
-               PRINT_WARN("i/o-error on device %s\n", dev_name(&cdev->dev));
+               dev_warn(&cdev->dev,
+                       "An I/O-error occurred on the LCS device\n");
                LCS_DBF_TEXT(2, trace, "ckirberr");
                LCS_DBF_TEXT_(2, trace, "  rc%d", -EIO);
                break;
        case -ETIMEDOUT:
-               PRINT_WARN("timeout on device %s\n", dev_name(&cdev->dev));
+               dev_warn(&cdev->dev,
+                       "A command timed out on the LCS device\n");
                LCS_DBF_TEXT(2, trace, "ckirberr");
                LCS_DBF_TEXT_(2, trace, "  rc%d", -ETIMEDOUT);
                break;
        default:
-               PRINT_WARN("unknown error %ld on device %s\n", PTR_ERR(irb),
-                          dev_name(&cdev->dev));
+               dev_warn(&cdev->dev,
+                       "An error occurred on the LCS device, rc=%ld\n",
+                       PTR_ERR(irb));
                LCS_DBF_TEXT(2, trace, "ckirberr");
                LCS_DBF_TEXT(2, trace, "  rc???");
        }
        /* Check for channel and device errors presented */
        rc = lcs_get_problem(cdev, irb);
        if (rc || (dstat & DEV_STAT_UNIT_EXCEP)) {
-               PRINT_WARN("check on device %s, dstat=0x%X, cstat=0x%X \n",
-                           dev_name(&cdev->dev), dstat, cstat);
+               dev_warn(&cdev->dev,
+                       "The LCS device stopped because of an error,"
+                       " dstat=0x%X, cstat=0x%X \n",
+                           dstat, cstat);
                if (rc) {
                        channel->state = LCS_CH_STATE_ERROR;
                }
                        lcs_schedule_recovery(card);
                        break;
                case LCS_CMD_STOPLAN:
-                       PRINT_WARN("Stoplan for %s initiated by LGW.\n",
-                                       card->dev->name);
+                       pr_warning("Stoplan for %s initiated by LGW.\n",
+                                  card->dev->name);
                        if (card->dev)
                                netif_carrier_off(card->dev);
                        break;
 
        skb = dev_alloc_skb(skb_len);
        if (skb == NULL) {
-               PRINT_ERR("LCS: alloc_skb failed for device=%s\n",
+               dev_err(&card->dev->dev,
+                       " Allocating a socket buffer to interface %s failed\n",
                          card->dev->name);
                card->stats.rx_dropped++;
                return;
                (card->write.state != LCS_CH_STATE_RUNNING));
        rc = lcs_stopcard(card);
        if (rc)
-               PRINT_ERR("Try it again!\n ");
+               dev_err(&card->dev->dev,
+                       " Shutting down the LCS device failed\n ");
        return rc;
 }
 
        /* initialize statistics */
        rc = lcs_detect(card);
        if (rc) {
-               PRINT_ERR("LCS:Error in opening device!\n");
+               pr_err("Error in opening device!\n");
 
        } else {
                dev->flags |= IFF_UP;
        rc = lcs_detect(card);
        if (rc) {
                LCS_DBF_TEXT(2, setup, "dtctfail");
-               PRINT_WARN("Detection of LCS card failed with return code "
-                          "%d (0x%x)\n", rc, rc);
+               dev_err(&card->dev->dev,
+                       "Detecting a network adapter for LCS devices"
+                       " failed with rc=%d (0x%x)\n", rc, rc);
                lcs_stopcard(card);
                goto out;
        }
 #endif
        default:
                LCS_DBF_TEXT(3, setup, "errinit");
-               PRINT_ERR("LCS: Initialization failed\n");
+               pr_err(" Initialization failed\n");
                goto out;
        }
        if (!dev)
                goto out;
 
        /* Print out supported assists: IPv6 */
-       PRINT_INFO("LCS device %s %s IPv6 support\n", card->dev->name,
-                  (card->ip_assists_supported & LCS_IPASS_IPV6_SUPPORT) ?
-                  "with" : "without");
+       pr_info("LCS device %s %s IPv6 support\n", card->dev->name,
+               (card->ip_assists_supported & LCS_IPASS_IPV6_SUPPORT) ?
+               "with" : "without");
        /* Print out supported assist: Multicast */
-       PRINT_INFO("LCS device %s %s Multicast support\n", card->dev->name,
-                  (card->ip_assists_supported & LCS_IPASS_MULTICAST_SUPPORT) ?
-                  "with" : "without");
+       pr_info("LCS device %s %s Multicast support\n", card->dev->name,
+               (card->ip_assists_supported & LCS_IPASS_MULTICAST_SUPPORT) ?
+               "with" : "without");
        return 0;
 out:
 
                return 0;
        LCS_DBF_TEXT(4, trace, "recover2");
        gdev = card->gdev;
-       PRINT_WARN("Recovery of device %s started...\n", dev_name(&gdev->dev));
+       dev_warn(&gdev->dev,
+               "A recovery process has been started for the LCS device\n");
        rc = __lcs_shutdown_device(gdev, 1);
        rc = lcs_new_device(gdev);
        if (!rc)
-               PRINT_INFO("Device %s successfully recovered!\n",
-                               card->dev->name);
+               pr_info("Device %s successfully recovered!\n",
+                       card->dev->name);
        else
-               PRINT_INFO("Device %s could not be recovered!\n",
-                               card->dev->name);
+               pr_info("Device %s could not be recovered!\n",
+                       card->dev->name);
        lcs_clear_thread_running_bit(card, LCS_RECOVERY_THREAD);
        return 0;
 }
 {
        int rc;
 
-       PRINT_INFO("Loading %s\n",version);
+       pr_info("Loading %s\n", version);
        rc = lcs_register_debug_facility();
        LCS_DBF_TEXT(0, setup, "lcsinit");
        if (rc) {
-               PRINT_ERR("Initialization failed\n");
+               pr_err("Initialization failed\n");
                return rc;
        }
 
        rc = register_cu3088_discipline(&lcs_group_driver);
        if (rc) {
-               PRINT_ERR("Initialization failed\n");
+               pr_err("Initialization failed\n");
                return rc;
        }
        return 0;
 static void
 __exit lcs_cleanup_module(void)
 {
-       PRINT_INFO("Terminating lcs module.\n");
+       pr_info("Terminating lcs module.\n");
        LCS_DBF_TEXT(0, trace, "cleanup");
        unregister_cu3088_discipline(&lcs_group_driver);
        lcs_unregister_debug_facility();