Пакеты поддержки модулей для ЗОСРВ «Нейтрино» > MIPS > BSP для устройств на базе процессора Элвис 1892ВМ206 > Проверка функционирования



Проверка функционирования

Проверка функционирования ППМ MCT-06EM-6U под ЗОСРВ «Нейтрино».


Список проверок:

Базовые проверки функционирования ОС
Проверка запуска на ПМ ядра ЗОСРВ в составе загружаемого образа
Проверка запуска компонентов
Проверка функционирования контроллера прерываний
Проверка функционирования таймера
Проверки интерфейсов
Проверка драйвера контроллера flash
Проверка драйвера контроллера UART
Проверка драйвера контроллера Gigabit Ethernet
Проверка драйвера контроллера GPIO
Проверка драйвера контроллера МКИО
Проверка драйвера контроллера MFBSP

Тестовый стенд

Тестовый стенд представляет из себя отладочный модуль MCT-06EM-6U, соединённый с инструментальным ПК по интерфейсам RS-232.


На инструментальный ПК должно быть установлено:

Подготовка

Перед проведением проверок необходимо запустить ЗОСРВ «Нейтрино» на отладочном модуле MCT-06EM-6U в соответствии с главой документации Загрузка образа ОС.

Базовые проверки функционирования ОС

Проверка запуска на ПМ ядра ЗОСРВ в составе загружаемого образа

В последовательном терминале выполнить команду:

# uname -s

Проверка считается выполненной успешно, если в терминале будет выведено сообщение вида:

KPDA

Проверка запуска компонентов

# pidin arg pid Arguments 1 procnto-32 -v 4099 devc-ser8250 -F -e -b115200 -c 120000000/16 0x182f3000^2,0xE 8194 slogger 8196 pipe 8197 devc-pty 8198 devf-generic -s 0x1C000000,64m -r 8199 devf-ram -s 0x18000000,128k,,,16k 12296 io-pkt-v4-hc -d nvcom verbose 20489 qconn 20491 inetd 24586 sh 24588 pidin arg

Проверка функционирования контроллера прерываний

Для вывода информации о процессоре и доступной оперативной памяти выполнить команду pidin info:

# pidin info CPU:MIPS Release:2024 FreeMem:51Mb/64Mb BootTime:Jan 01 00:00:00 UTC 1970 Processes: 11, Threads: 29 Processor1: 663553 1892VM10 125MHz FPU

Для проверки функционирования контроллера оперативной памяти используется утилита memcheck. Ее требуется запустить и дождаться завершения проверки:

# /tmp/memcheck

Проверка считается выполненной успешно, если выведено сообщение:

PASS: all memory allocated

Проверка функционирования таймера

Для вывода информации о используемых прерываниях выполнить команду pidin ir:

# pidin ir pid tid name 1 1 procnto-32 0 0x7 0 -P- @0x800ad600:0x0 1 2 procnto-32 1 3 procnto-32 1 5 procnto-32 1 6 procnto-32 1 7 procnto-32 1 8 procnto-32 1 9 procnto-32 1 10 procnto-32 1 11 procnto-32 1 12 procnto-32 1 13 procnto-32 8194 1 devc-ser8250 1 0xe 0 --- @0x80229a4:0x80381a8 8195 1 slogger 8196 1 pipe 8196 2 pipe 8196 3 pipe 8197 1 devc-pty 8198 1 devf-generic 8198 2 devf-generic 8198 3 devf-generic 8198 4 devf-generic 8198 5 devf-generic 8199 1 devf-ram 8199 2 devf-ram 8199 3 devf-ram 8199 4 devf-ram 12296 1 io-pkt-v4-hc 12296 2 io-pkt-v4-hc 2 0x5a 0 T-- @0x78204660:0x819b5c0 3 0x5c 0 T-- @0x782045c0:0x819b5c0 20489 1 qconn 20489 2 qconn 20489 3 qconn 20489 4 qconn 20491 1 inetd 24586 1 sh 73740 1 pidin

Проверка считается пройденной успешно, если вывод утилиты pidin ir содержит информацию об обработчиках прерывания, принадлежащих выполняемым процессам, в формате

pid tid Имя процесса id прерывания vector mask_count flags handler:area

Проверки интерфейсов

Проверка драйвера контроллера flash

Для работы с Flash используется драйвер devf-generic. В составе загрузочного образа драйвер запускается автоматически. В каталоге /dev должно появиться устройство fs0. Для формирования файловой системы встроенного флэш накопителя используется утилита flashctl. Выполнить стирание данных флэш памяти:

# flashctl -p /dev/fs0 -e

Создать разделы с файловой системой между 1 МБ и 3 МБ в неформатированном разделе размером 4 МБ:

# flashctl -p /dev/fs0p0 -o 1M -l 2M -e -f

Выполнить перезапуск драйвера для обновления таблицы разделов:

# slay devf-generic # devf-generic -s 0x1C000000,64m -r

результатом проведения данных команд должно являться появление каталога /fs0p3/ в корневом каталоге файловой системы. Далее выполнить следующие команды:

# touch /tmp/test_file # cp /tmp/test_file /fs0p3// # cksum //fs0p3//test_file # cksum /tmp/test_file

Проверка считается выполненной успешно, если контрольные суммы, выведенные двумя последними командами, совпадают.

Проверка драйвера контроллера UART

Для работы с последовательным портом используется драйвер devc-ser8250. Настройки последовательного порта по умолчанию: скорость 115200, 8 бит, без контроля четности, 1 стоп-бит. В составе загрузочного образа драйвер запускается автоматически.

В случае успешного запуска драйвера в директории /dev/ будут создано устройство ser1.

# ls /dev/ser* /dev/ser1

Для проверки функционирования драйвера UART подключить ПМ к ПК через преобразователь по USB в один из разъемов и запустить терминальную программу minicom. В последовательном или удалённом терминале выполнить следующую команду:

# echo Test message > /dev/ser1

Проверка считается выполненной успешно, если в терминальной программе будет выведено сообщение:

Test message

Проверка драйвера контроллера Gigabit Ethernet

Для работы с контроллером интерфейса Gigabit Ethernet используется драйвер devnp-nvcom.so и менеджер ресурсов io-pkt-v4-hc. В составе загрузочного образа драйвер запускается автоматически. Для вывода информации о сетевых интерфейсах выполнить команду ifconfig.

В случае успешного запуска драйвера будут созданы сетевые интерфейсы nvc0 nvc1 и в результате выполнения команды ifconfig на экран будут выведены данные, аналогичные следующим, с указанием текущего ip-адреса, маски и широковещательного адреса:

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33192 inet 127.0.0.1 netmask 0xff000000 nvc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 address: 82:28:16:7a:85:f7 media: Ethernet none inet <ip адрес> netmask <маска> broadcast <широковещательный адрес> nvc1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 address: 42:24:60:95:af:31 media: Ethernet autoselect (100baseTX full-duplex) status: active inet <ip адрес> netmask <маска> broadcast <широковещательный адрес>

Для проверки функционирования сетевого обмена выполнить следующую команду, инициирующую отправку ICMP пакетов существующему сетевому узлу:

# ping -c 3 <ip получателя> PING <ip получателя> (<ip получателя>): 56 data bytes 64 bytes from <ip получателя>: icmp_seq=0 ttl=64 time=0 ms 64 bytes from <ip получателя>: icmp_seq=1 ttl=64 time=0 ms 64 bytes from <ip получателя>: icmp_seq=2 ttl=64 time=0 ms ----<ip получателя> PING Statistics---- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 0/0/0 ms variance = 0 ms^2

Проверка считается выполненной успешно, если все 3 пакета были успешно получены (процент потерь равен нулю).

Проверка драйвера контроллера GPIO

Для работы с контроллером GPIO используется менеджер ресурсов gpio-vm206.

Выполнить запуск менеджера ресурсов и проверить появилось ли устройство в каталоге /dev:

# gpio-vm206 # ls /dev/gpio

Выполнить чтение состояний и напрвлений GPIO:

# cat /dev/gpio 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 0i 0i 0i 1o 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i

Проверка считается выполненной успешно, если в директории /dev есть устройство gpio и удалось выполнить чтение состояний и напрвлений GPIO.

Проверка драйвера контроллера МКИО

Для работы с контроллером МКИО используется Библиотека для работы с контроллером МКИО микропроцессора 1892ВМ206 и тестовая утилита mkio-test.

Для проверки необходимо запустить тестовую утилиту.

# mkio-test

Проверка считается выполненной успешно, если программа завершится с кодом '0'.

Проверка драйвера контроллера MFBSP

Для работы с контроллером MFBSP (SPI/I2S) используется Библиотека для работы с контроллером MFBSP микропроцессора 1892ВМ206 и тестовая утилита mfbsp-test.

Для проверки в режиме SPI необходимо запустить тестовую утилиту.

# mfbsp-test -m spi

Проверка считается выполненной успешно, если программа завершится с кодом '0'.

Для проверки в режиме I2S необходимо запустить тестовую утилиту.

# mfbsp-test -m i2s

Проверка считается выполненной успешно, если программа завершится с кодом '0'.




Предыдущий раздел: перейти