Warning: touch() [function.touch]: Unable to create file /home/starterkit/starterkit.ru/html/error.log because Permission denied in /home/starterkit/starterkit.ru/html/errorhandler.php on line 51
Содержимое /dev - MAT91SAM9XE512 - SK - Форум - starterkit.ru
Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:3
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:7
Форум » starterkit.ru » Старый форум » SK-MAT91SAM9XE512
Содержимое /dev
moonloop (Guest)
Добавлено 30.11.1999 00:00 Редактировалось 13.03.2009 17:28
0
Сообщение: 1
moonloop (Guest)

Topic opened
Спуститься к концу Подняться к началу
moonloop (Guest)
Добавлено 12.03.2009 15:50 Редактировалось 12.03.2009 15:50 Сообщение: 2
moonloop (Guest)

Вот какая незадача - файловую систему новую buildroot`ом собрал, однако в ней нет многих вещей, присутствующих в авторской файловой системе. Таким образом, не смотря на то, что система видит воткнутые в нее накопители (usb и sd) примонтировать я их не могу...неоткуда - в dev тишина...
вручную созданые "mknod /dev/mmc b 254 0" эффекта не дали
Спуститься к концу Подняться к началу
sasamy (Guest)
Добавлено 12.03.2009 16:17 Редактировалось 12.03.2009 16:17 Сообщение: 3
sasamy (Guest)

Цитата
вручную созданые "mknod /dev/mmc b 254 0" эффекта не дали

Файлы устройств - это обычные файлы, можно скопировать их откуда угодно простым cp до заливки в датафлеш. Намного эфективней использовать mdev из состава busybox - файлы устройств создаются налету и только для тех устройств которые реально есть в системе, умеет работать в качестве hotplug-агента (например для загрузки firmware по требованию ядра)
Поиск по форуму по слову mdev думаю даст еще немного информации, где-то выкладывал конфиги свои одним архивом - там есть скелет моей корневой фс - загрузочные скрипты из buildroot немножко переделаны и там настроен mdev.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно sasamy 12.03.2009 г. в 16:20:43
Спуститься к концу Подняться к началу
moonloop (Guest)
Добавлено 12.03.2009 16:19 Редактировалось 12.03.2009 16:19 Сообщение: 4
moonloop (Guest)

Спасибо огромное!
Спуститься к концу Подняться к началу
repairman (Guest)
Добавлено 12.03.2009 17:20 Редактировалось 12.03.2009 17:20 Сообщение: 5
repairman (Guest)

Цитата

вручную созданые "mknod /dev/mmc b 254 0" эффекта не дали


Конечно не дали... откуда родилось устройство еще и с таким мажором ?

В buildroot все устройства создаются с файла:
[buildroot]/target/device/Atmel/root/device_table.txt

Все знесенные туда записи сгенерят nod'ы в /dev при сборке rootfs...

Для mmc у меня такие записи:
Код

/dev/mmcblk b 640 0 0 179 0 0 0 1
/dev/mmcblk0p b 640 0 0 179 1 1 1 4


Для mtd:
Код

# MTD stuff
/dev/mtd c 640 0 0 90 0 0 2 6
/dev/mtdblock b 640 0 0 31 0 0 1 6


Для USB приводов:
Код

# SCSI Devices
/dev/sda b 640 0 0 8 0 0 0 -
/dev/sda b 640 0 0 8 1 1 1 4


Читайте комменты, все понятно что и как генерится...

Общее правило для "ручного" монтирования любого диска:
1. Смотрим /dev, нету -> п.2, есть - монтируем
2. Смотрим содержимое /proc/partitions, нету нужного -> п.3, есть - создаем соотв. линк на блочный девайс с указанными name/minor/major с помощью mknod, монтируем.
3. Ядро не распознало устройство/раздел/FS... если драйвер собран модулем - modprobe, -> п.2, иначе пересобрать ядро с поддержкой таковых.

p.s. аналогичный подход и к девайсам, только вместо /proc/partitions нужно смотреть /proc/devices....

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно repairman 12.03.2009 г. в 17:42:02
Спуститься к концу Подняться к началу
moonloop (Guest)
Добавлено 13.03.2009 14:42 Редактировалось 13.03.2009 14:42 Сообщение: 6
moonloop (Guest)

А какому устройству соответствует второй распаяный (через джампера J8, J7) UART?
Спуститься к концу Подняться к началу
sasamy (Guest)
Добавлено 13.03.2009 15:49 Редактировалось 13.03.2009 15:49 Сообщение: 7
sasamy (Guest)

Судя по всему никакому :)
Цитата
atmel_usart.0: ttyS0 at MMIO 0xfefff200 (irq = 1) is a ATMEL_SERIAL
atmel_usart.1: ttyS1 at MMIO 0xfffb0000 (irq = 6) is a ATMEL_SERIAL
atmel_usart.2: ttyS2 at MMIO 0xfffb4000 (irq = 7) is a ATMEL_SERIAL

0xfefff200 - dbgu
0xfffb0000 - usart0
0xfffb4000 - usart1
а на рзъем судя по схеме выведен usart2
Спуститься к концу Подняться к началу
moonloop (Guest)
Добавлено 13.03.2009 16:06 Редактировалось 13.03.2009 16:06 Сообщение: 8
moonloop (Guest)

У меня при переключении джамперов почему-то образ файловой системы портит - приходится перезаливать. Так то есть порт распаян, но к нему ничего не ведет...А есть ли выход?

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно moonloop 13.03.2009 г. в 16:08:33
Спуститься к концу Подняться к началу
sasamy (Guest)
Добавлено 13.03.2009 16:26 Редактировалось 13.03.2009 16:26 Сообщение: 9
sasamy (Guest)

Что значит "ничего не ведет" ? Все там в порядке - драйверы ядра для оригинальной атмеловской платы написаны - есть различия как вы понимаете. Сам не пользовался usart, помоему будет лостаточно поменять инициализацию в
linux-2.6.28.1/arch/arm/mach-at91/board-sam9260ek.c
Код
static void __init ek_map_io(void)
{
/* Initialize processor: 12.000 MHz crystal */
at91sam9260_initialize(12000000);

/* DGBU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);

/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);

/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);

/* set serial console to ttyS0 (ie, DBGU) */
at91_set_serial_console(0);
}

Например чтобы повесить на ttyS2 - поменять

Код
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);

например на токой
Код
/* USART2 on ttyS2 */
at91_register_uart(AT91SAM9260_ID_US2, 2, 0);

а вот линии контроля передачи там в воздухе висят - только TX и RX заведены на max так что это нужно учитывать в своих программах.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно sasamy 13.03.2009 г. в 16:33:06
Спуститься к концу Подняться к началу
moonloop (Guest)
Добавлено 13.03.2009 17:08 Редактировалось 13.03.2009 17:08 Сообщение: 10
moonloop (Guest)

Так, это хорошо, это понятно. А в 2.6.24 где подобное живет?
Спуститься к концу Подняться к началу
Форум » starterkit.ru » Старый форум » SK-MAT91SAM9XE512