Hallo!
Steck mitten in der Diplomarbeit und hab ein Problem mit der RTC.
Obwohl ich in meiner Software die RTC öffnen und diverse Einstellungen ohne Fehlermeldungen vornehmen kann, werden diese vom meinem Gentoo System offenbar nicht übernommen. Auf anderen Systemen (Gentoo als auch Kubuntu) klappt es bestens. Hat jemand ne idee?
Bin dankbar für jeden Hint!
Gruss busa
Hier ein kleines Testprog
Und der Output sieht folgendermassen aus:
Steck mitten in der Diplomarbeit und hab ein Problem mit der RTC.
Obwohl ich in meiner Software die RTC öffnen und diverse Einstellungen ohne Fehlermeldungen vornehmen kann, werden diese vom meinem Gentoo System offenbar nicht übernommen. Auf anderen Systemen (Gentoo als auch Kubuntu) klappt es bestens. Hat jemand ne idee?
Bin dankbar für jeden Hint!
Gruss busa
Hier ein kleines Testprog
Code:
#include <fcntl.h> #include <stdio.h> #include <unistd.h> #include <linux/rtc.h> #include <sys/ioctl.h> static int rtc; unsigned long ticks; int rc; char g[3]; int main(int argc, char *argv[]) { printf("Opening /dev/rtc.\n"); if(-1==(rtc=(rc=open("/dev/rtc",O_RDONLY)))) return -1; printf("RC is %i\n\n",rc); printf("Turning on interrupts.\n"); if(-1==(rc=ioctl(rtc,RTC_PIE_ON,0))) return -1; printf("RC is %i\n\n",rc); printf("Setting Freq.\n"); if(-1==(rc=ioctl(rtc,RTC_IRQP_SET,8192))) return -1; printf("RC is %i\n\n",rc); ioctl(rtc,RTC_IRQP_READ,&ticks); printf("RTC is running at %li Hz.\n",ticks); fflush(stdout); ioctl(rtc,RTC_IRQP_SET,64); close(rtc); return 0;
Code:
# ./compile.sh && ./test Opening /dev/rtc. RC is 3 Turning on interrupts. RC is 0 Setting Freq. RC is 0 RTC is running at 1024 Hz. # cat /proc/driver/rtc rtc_time : 15:19:40 rtc_date : 2007-10-15 rtc_epoch : 1900 alarm : 14:58:15 DST_enable : no BCD : yes 24hr : yes square_wave : no alarm_IRQ : no update_IRQ : no periodic_IRQ : no periodic_freq : 1024 batt_status : okay