and73y
Пункты: 1154
Регистрация: 25.11.2009
Продолжаю тему)
Подключил к плате SK-AT91SAM9260-SIM300 микросхему rtc PCF8583 (Phillips) по i2c, запитал.
Проверяю в лоб i2c - работает, секунды тикают, всё гуд. Но в лоб работать тяжело. Есть желание использовать встроенные драйвера, ставлю галки:
RTC_CLASS
RTC_DRV_PCF8583
RTC_HCTOSYS
RTC_HCTOSYS_DEVICE=rtc0
RTC_INTF_REV
Собираю ядро (2.6.28), гружу плату, при загрузки выдаётся мессага:
Код drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
Полный лог загрузки
Конфиг ядра
Есть только девайс:
/dev/rtc
Код
hwclock -f/dev/rtc
hwclock: can't open '/dev/rtc': No such device
Надо чтобы время в системе автоматически синхронизировалось с подключенной микросхемой.
Куда бечь? Где копать?
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата Куда бечь? Где копать?
а в файле платы в структуре i2c устройств не забыли прописать свой чип?
На любой вопрос есть любой ответ.
and73y
Пункты: 1154
Регистрация: 25.11.2009
Цитата а в файле платы в структуре i2c устройств не забыли прописать свой чип?
забыл)
спасибо за наводку
and73y
Пункты: 1154
Регистрация: 25.11.2009
прописал чип в файле платы:
Код static struct i2c_board_info __initdata ek_i2c_devices[] = {
// {
// I2C_BOARD_INFO("24c512", 0x50),
// .platform_data = &at24c512,
// },
{
I2C_BOARD_INFO("PCF8583", 0x50),
},
/* more devices can be added using expansion connectors */
};
файл платы
та же беда:
Код drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата та же беда:
о как.. тогда выложите сюда выхлоп:
Код i2cdetect -y 0
Код dmesg | grep i2c
Цитата Проверяю в лоб i2c - работает, секунды тикают, всё гуд.
т.е. железо подключенно правильно. случайно контакт "А0" не в "1"? строчку, как проверяли покажите.. i2cget
хотя думаю, что ошибка вот тут:
Код I2C_BOARD_INFO("PCF8583", 0x50),
пропишите имя маленькими буковками - pcf8583
На любой вопрос есть любой ответ.
and73y
Пункты: 1154
Регистрация: 25.11.2009
Цитата пропишите имя маленькими буковками - pcf8583
прописал, теперь когда грузится, выдает следующее:
Код
pcf8583 0-0050: rtc core: registered pcf8583 as rtc0
i2c-gpio i2c-gpio: using pins 55 (SDA) and 56 (SCL)
Advanced Linux Sound Architecture Driver Version 1.0.18rc3.
ALSA device list:
No soundcards found.
TCP cubic registered
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
pcf8583 0-0050: hctosys: invalid date/time
Код # ls /dev/rtc*
/dev/rtc
hwclock не работает:
Код # hwclock -f/dev/rtc
hwclock: can't open '/dev/rtc': No such device
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
не надо rtc пинать - ваша цель rtc0
если его в /dev нет, то попробуйте
Код cd /dev
mknod /dev/rtc0 c 254 0
ln -s rtc0 rtc
смысл операции - прописать это устройство - возможно у вас из-за старого ядра или корневой не создается устройство
после создания попробовать просто
Код hwclock
На любой вопрос есть любой ответ.
and73y
Пункты: 1154
Регистрация: 25.11.2009
Цитата не надо rtc пинать - ваша цель rtc0
Да, действительно, если руками создать rtc0, то работает! Спасибо!!! Заработало))))
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата Цитата не надо rtc пинать - ваша цель rtc0
Да, действительно, если руками создать rtc0, то работает! Спасибо!!! Заработало))))
бинго! теперь проследите, чтобы после перезагрузки устройство не пропадало или ищите куда его прописать для автоматического создания.. или копайте менеджер mdev/udev и как формируется список устройств..
На любой вопрос есть любой ответ.