--- linux-bk-2.3/arch/ppc/kernel/ppc_ksyms.c.ori Sun Jul 16 09:00:19 2000 +++ linux-bk-2.3/arch/ppc/kernel/ppc_ksyms.c Sun Jul 16 09:03:03 2000 @@ -254,7 +254,7 @@ EXPORT_SYMBOL(pmac_xpram_read); EXPORT_SYMBOL(pmac_xpram_write); #endif /* CONFIG_NVRAM */ -#ifdef CONFIG_PPC_RTC +#ifdef CONFIG_PPC_RTC_MODULE EXPORT_SYMBOL(mktime); EXPORT_SYMBOL(to_tm); #endif --- linux-bk-2.3/drivers/macintosh/Makefile.ori Sat Jul 15 23:56:39 2000 +++ linux-bk-2.3/drivers/macintosh/Makefile Sat Jul 15 23:56:09 2000 @@ -41,7 +41,7 @@ endif ifeq ($(CONFIG_PPC_RTC),y) - L_OBJS += rtc.o + O_OBJS += rtc.o else ifeq ($(CONFIG_PPC_RTC),m) M_OBJS += rtc.o --- linux-bk-2.2/drivers/macintosh/rtc.c Mon Jun 26 09:09:05 2000 +++ linux-bk-2.3/drivers/macintosh/rtc.c Sun Jul 16 08:42:25 2000 @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -53,7 +54,7 @@ nowtime = mktime(t->tm_year+1900, t->tm_mon+1, t->tm_mday, t->tm_hour, t->tm_min, t->tm_sec); - printk(KERN_INFO "rtc.c:set_rtc_time: set rtc time to %d seconds.\n", nowtime); + printk(KERN_INFO "rtc.c:set_rtc_time: set rtc time to %ld seconds.\n", nowtime); (ppc_md.set_rtc_time)(nowtime); } @@ -109,29 +110,23 @@ rtc_busy = 1; - MOD_INC_USE_COUNT; - return 0; } static int rtc_release(struct inode *inode, struct file *file) { - MOD_DEC_USE_COUNT; + lock_kernel(); rtc_busy = 0; + unlock_kernel(); return 0; } static struct file_operations rtc_fops = { - rtc_lseek, - NULL, /* rtc_read */ - NULL, /* rtc_write */ - NULL, /* rtc_readdir */ - NULL, /* rtc_poll */ - rtc_ioctl, - NULL, /* rtc_mmap */ - rtc_open, - NULL, /* flush */ - rtc_release + owner: THIS_MODULE, + llseek: rtc_lseek, + ioctl: rtc_ioctl, + open: rtc_open, + release: rtc_release, }; static struct miscdevice rtc_dev = { RTC_MINOR, "rtc", &rtc_fops }; @@ -141,7 +136,7 @@ #ifdef MODULE int init_module(void) #else -__initfunc(int rtc_init(void)) +int __init rtc_init(void) #endif { int error;