#define SUPPORT_SYSRQ
 #endif
 
+#include <linux/compiler.h>
 #include <linux/console.h>
 #include <linux/delay.h>
 #include <linux/errno.h>
 
 static struct sbd_duart sbd_duarts[DUART_MAX_CHIP];
 
-#define __unused __attribute__((__unused__))
-
 
 /*
  * Reading and writing SB1250 DUART registers.
        return loops;
 }
 
-static int __unused sbd_transmit_ready(struct sbd_port *sport)
+static int __maybe_unused sbd_transmit_ready(struct sbd_port *sport)
 {
        return read_sbdchn(sport, R_DUART_STATUS) & M_DUART_TX_RDY;
 }
 
-static int __unused sbd_transmit_drain(struct sbd_port *sport)
+static int __maybe_unused sbd_transmit_drain(struct sbd_port *sport)
 {
        int loops = 10000;
 
 
 static int sbd_map_port(struct uart_port *uport)
 {
-       static const char *err = KERN_ERR "sbd: Cannot map MMIO\n";
+       const char *err = KERN_ERR "sbd: Cannot map MMIO\n";
        struct sbd_port *sport = to_sport(uport);
        struct sbd_duart *duart = sport->duart;
 
 
 static int sbd_request_port(struct uart_port *uport)
 {
-       static const char *err = KERN_ERR
-                                "sbd: Unable to reserve MMIO resource\n";
+       const char *err = KERN_ERR "sbd: Unable to reserve MMIO resource\n";
        struct sbd_duart *duart = to_sport(uport)->duart;
        int map_guard;
        int ret = 0;
 }
 
 
-static struct uart_ops sbd_ops = {
+static const struct uart_ops sbd_ops = {
        .tx_empty       = sbd_tx_empty,
        .set_mctrl      = sbd_set_mctrl,
        .get_mctrl      = sbd_get_mctrl,