Hi Stephen,
Am 01.05.2010 um 18:11 schrieb Steve Arnold:
On Sat, 1 May 2010 12:34:21 +0200
"Dr. H. Nikolaus Schaller" <h...@computer.org> wrote:
Am 01.05.2010 um 11:54 schrieb Ruben Viets:
[snip]
- For rtc you can disable the option to startup/reset the rtc
everytime for boot in the kernel make xconfig.
I see this in your dmesg:
PCF8563 RTC installed !!!
long before I see this:
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
By looking into source file: this means
rtc_class_open(CONFIG_RTC_HCTOSYS_DEVICE) returns NULL.
CONFIG_RTC_HCTOSYS_DEVICE is "rtc0".
so I guess I'd like to see your rtc and clock driver config
settings. I'm assuming that CONFIG_RTC_DRV_PCF8563 is set or you
wouldn't get the first part, but I think it also depends on whether
it's built against the old or new rtc clock code. I haven't built
2.6.24 in a long time, so maybe the old code is still enabled?
Good question. I even don't know if there are old or new ones...
$ ls -l rivers/rtc/rtc-pcf8563.c
-rw-r--r--@ 1 hns hns 9767 26 Feb 2008 drivers/rtc/rtc-pcf8563.c
so at least 26 months old... And the first few lines reveal Version
"0.4.2"
/*
* An I2C driver for the Philips PCF8563 RTC
* Copyright 2005-06 Tower Technologies
*
* Author: Alessandro Zummo <a.zu...@towertech.it>
* Maintainers: http://www.nslu2-linux.org/
*
* based on the other drivers in this same directory.
*
* http://www.semiconductors.philips.com/acrobat/datasheets/PCF8563-04.pdf
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#include <linux/i2c.h>
#include <linux/bcd.h>
#include <linux/rtc.h>
#define DRV_VERSION "0.4.2"
I guess it depends on what code is actually there (in that version
of the kernel) but you could try disabling either the old char
device rtc stuff or the new rtc code and see if that helps...
I am not experienced enough to understand what you mean with "old" and
"new code", but this are all the "RTC" configs:
$ fgrep RTC .config
# CONFIG_RTC is not set
CONFIG_RTC_PCF8563=y
# CONFIG_RTC_JZ is not set
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
# CONFIG_RTC_DEBUG is not set
# RTC interfaces
CONFIG_RTC_INTF_SYSFS=y
# CONFIG_RTC_INTF_PROC is not set
CONFIG_RTC_INTF_DEV=y
# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
# CONFIG_RTC_DRV_TEST is not set
# I2C RTC drivers
# CONFIG_RTC_DRV_DS1307 is not set
# CONFIG_RTC_DRV_DS1374 is not set
# CONFIG_RTC_DRV_DS1672 is not set
# CONFIG_RTC_DRV_MAX6900 is not set
# CONFIG_RTC_DRV_RS5C372 is not set
# CONFIG_RTC_DRV_ISL1208 is not set
# CONFIG_RTC_DRV_X1205 is not set
# CONFIG_RTC_DRV_PCF8563 is not set
CONFIG_RTC_DRV_PCF8583=y
# CONFIG_RTC_DRV_M41T80 is not set
# SPI RTC drivers
# Platform RTC drivers
# CONFIG_RTC_DRV_CMOS is not set
# CONFIG_RTC_DRV_DS1553 is not set
# CONFIG_RTC_DRV_STK17TA8 is not set
# CONFIG_RTC_DRV_DS1742 is not set
# CONFIG_RTC_DRV_M48T86 is not set
# CONFIG_RTC_DRV_M48T59 is not set
# CONFIG_RTC_DRV_V3020 is not set
# on-CPU RTC drivers
Hm. Finally I had an idea:
$ find /sys -name '*rtc*'
/sys/class/misc/rtc
/sys/class/rtc
/sys/module/rtc_pcf8583
So it may be as simple as changing
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
to
CONFIG_RTC_HCTOSYS_DEVICE="rtc"
I will give it a try tomorrow...
Trying to move everything to a newer kernel (2.6.33_rc?) might also
I think someone had discussed a migration some time ago but support of
the JZ4730 CPU appears to be weak in more modern kernels :(
help, since there seems to be more and more embedded support (eg,
OLPC hardware support is now there) in the newest mainstream kernel.
Regards, Steve
PS. In general, the rtc stuff seems to like being built directly
into the kernel rather than as modules.
The RTC is an external I2C device, but the module is not a loaded one
but directly linked into the kernel.
PPS. Two other approaches to building this stuff would be:
1) Create a hardware config for bitbake (didn't someone else
mention that at one point?)
2) Use a Gentoo-embedded ARM stage3 and build everything inside an
image file using Qemu (or do the debian thing in Qemu). The
advantage of using Gentoo is full customization and the latest
toolchain, kernel/headers and glibc/uclibc, etc.
If I can ever get the time I will try the Gentoo/Qemu thing...
In case anyone is interested, there are some updated ebuilds for
qemuctl and qemu-launcher in my local overlay:
http://www.gentoogeek.org/portage-overlay/app-emulation/
and some (non-JZ) custom kernel ebuilds here:
http://www.gentoogeek.org/portage-overlay/sys-kernel/
Any patches are in the files/ dir in the ebuild directory, or on the
Gentoo distfiles mirrors (or in http://www.gentoogeek.org/files/).
BR,
Nikolaus
_______________________________________________
Mipsbook-devel mailing list
Mipsbook-devel@linuxtogo.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/mipsbook-devel