Во время работы модулей Тион-Про270, полученных нами недавно (ставили
их на плату Сириус270), встретилась следующая проблема.
После загрузки системы на ядре linux-2.6.22.19_tion270_svn1091,
начинаются проблемы с сетью.
1) ping в любую сторону работает хорошо
2) ping размера пакета >10*MTU показывает потери на уровне 10%,
которые растут при увеличении размера
3) Попытки установить TCP соединения (как входящие, так и исходящие)
неудачны: SYN доходит всегда, с последующими пакетами непонятно
С сетевым оборудованием всё в порядке.
Был найден workaround: если перед загрузкой в uBoot сделать ping
любого адреса, работа нормализуется, по крайней мере работает ping и
устанавливаются tcp-соединения. Видимо, uBoot делает что-то, чего не
делает драйвер для инициализации устройства. Пока добавили ping в
bootcmd.
 
 
 Проверить USB-client. Работает с g_file_storage гаджетом, сделать изменение host/client по OTG_ID
 
 USB OTG
 
 Найти и проверить драйвер клавиатуры: GPIO / Matrix / Direct
 
 Проверить / доделать звук (выход и микрофон) на UCB1400. Выход наушников и микрофон работают в 
КФС из PTXdist. 
Линейный вход не работает? – похоже, работает, нужно выбирать источник в микшере.
 
 
 Ethernet работает только на 100 Mbit, по крайней мере в U-Boot
 
 DMA для Ethernet (DM9000, LAN9221) в Linux
 
 Драйвер для АЦП на UCB1400 (в рассылке есть драйвер для GPIO)
 
 Драйвер TPS650020 (в ядре есть TPS65010)
 
 Драйвер для PWM
 
 watchdog
 
 Сохранение (в U-Boot?) и чтение MAC-адреса (в Linux) (MAC = 00, нет EPROM) через чтение конфигурации U-Boot. Не подходит для NFS – 
MAC адрес передаётся через serial_tag (U-Boot svn886)
 
 
 Чтение и сохранение 
MAC-адресов в переменные U-Boot из EPROM на Тион-Про270E2
 
 
 Драйвер подсветки дисплеев (сейчас только включена/выключена /sys/class/graphics/fb0/blank)
 
 Просыпание экрана по нажатию сенсорного экрана (возможно, это делается в userland)
 
 Просыпание/засыпание (код есть в 2.6.22, не понятно как им пользоваться)
 
 QT работает с 18 bpp, добавлено 18 bpp в tslib. Графическое приложение (GPE?) и Mplayer с 18 bpp цветом
 
 Отображение картинки при загрузке в U-Boot (есть в 1.3.3 и есть какой-то патч, пробовал Рома; нужно добавить переменную для указания дисплея/разрешения как это сделано для EP93xx)
 
 Изменение вывода на последовательный порт в U-Boot, serial multi, код есть, надо проверить
 
 Передача параметра размера 
RAM из U-Boot в Linux
 
 
 Защита и снятие защиты Flash командами по CFI в U-Boot (пару раз программная защита устанавливалась у пользователей при попытках использования OpenOCD  и снималась (нами) командами того же OpenOCD)
 
 Отключение периферии при программном выключении, power management
 
 Запуск 
RAM-диск без принудительного копирования его в 
RAM в U-Boot? 
Loading Ramdisk to 03487000, end 03db9053 … OK
Maybe gmane has a better search interface...
> I don't understand if I should patch kernel or U-Boot.
> Can anyone clarify this and advise me keywords to find appropriate patch?
It's a Linux kernel problem, not an U-Boot issue.
As a work around, you can load the image to RAM in U-Boot...
Best regards,
Wolfgang Denk
 
 
 Задание частоты процессора в загрузчике (нужно для E416, сейчас решается пересборкой загрузчика)
 
 Изменение частоты процессора в Linux
 
 Запуск ядра из Flash? (code storage)
 
 Второй UART для RS485 (BT_RTS не той полярности, BT_CTS не выведен и не подтянут к земле) — не будем ставить, BT_RTS зависит от входного FIFO, не годиться для управления передачей RS485 по прерываниям. Если включать передатчик GPIO, то 2 мс задержка до отключения (по таймауту).
 
 Третий UART. Работает без режима MCR_AFE (ядро)
 
 Конфигурацию для U-Boot при 64 и 128 МБ памяти (e.g make tion_pro270_128m_config; make или tion_pro270_config mem=128; make) – сделано
 
 Второй USB-host. Работает, дело в over current сигнале второго порта USB host