#define DEBUG 1
 #ifdef DEBUG
-#  define DPRINTK(fmt, args...)        printk("%s: " fmt, __FUNCTION__ , ## args)
+#  define DPRINTK(fmt, args...)        printk("%s: " fmt, __func__, ## args)
 #else
 #  define DPRINTK(fmt, args...)
 #endif
 
 /* #define DEBUG_SIG */
 
 #ifdef DEBUG_SIG
-#  define DEBUGP(fmt, args...) printk("%s: " fmt, __FUNCTION__ , ##args)
+#  define DEBUGP(fmt, args...) printk("%s: " fmt, __func__, ##args)
 #else
 #  define DEBUGP(fmt, args...)
 #endif
 
 
                loops--;
                if (loops == 0) {
-                       printk("%s : Arbiter Locked.\n", __FUNCTION__);
+                       printk("%s : Arbiter Locked.\n", __func__);
                }
        }
 
        clear_status();
        if ((pci_cmd == PCI_CMD_IOR) || (pci_cmd == PCI_CMD_IOW)) {
                printk("%s timeout (GPPM_CTRL=%X) ioaddr %lX pci_cmd %X\n",
-                      __FUNCTION__, inl(PCI_BASE | PCI_GPPM_CTRL), ioaddr,
+                      __func__, inl(PCI_BASE | PCI_GPPM_CTRL), ioaddr,
                       pci_cmd);
        }
 
 
        reg_c = CMOS_READ(RTC_INTR_FLAGS);
        if (!(reg_c & RTC_IRQF)) {
                printk(KERN_WARNING
-                       "%s: RTC IRQ without RTC_IRQF\n", __FUNCTION__);
+                       "%s: RTC IRQ without RTC_IRQF\n", __func__);
        }
        /* Wait until interrupt goes away */
        disable_irq(MACEISA_RTC_IRQ);
 
         { \
            char tmp[100]; \
            sprintf( tmp, str ); \
-           printk( "%s(%s:%u)::%s", __FUNCTION__, __FILE__, __LINE__, tmp ); \
+           printk( "%s(%s:%u)::%s", __func__, __FILE__, __LINE__, tmp ); \
         }
 #else
 #define TOSHIBA_RBTX4927_IRQ_DPRINTK(flag, str...)
 
         { \
            char tmp[100]; \
            sprintf( tmp, str ); \
-           printk( "%s(%s:%u)::%s", __FUNCTION__, __FILE__, __LINE__, tmp ); \
+           printk( "%s(%s:%u)::%s", __func__, __FILE__, __LINE__, tmp ); \
         }
 #else
 #define TOSHIBA_RBTX4927_SETUP_DPRINTK(flag, str...)