ЗАО «ЗЭО»

Пожалуйста, войдите или зарегистрируйтесь.

Расширенный поиск  

Новости:

Автор Тема: Сборка U-boot 1.3.3 для работы с ядром 2.6.32.3  (Прочитано 22316 раз)

0 Пользователей и 1 Гость просматривают эту тему.

speculzzz

  • Jr. Member
  • **
  • Оффлайн Оффлайн
  • Сообщений: 69
Re: Сборка U-boot 1.3.3 для работы с ядром 2.6.32.3
« Ответ #30 : 16 Февраля, 2010, 14:59:05 »

Интересная штука эти таги :)...
Посмотрел последний патч для убута. И возник вопрос: если объединить функционал чтения SPI-флеша и создания "серийного номера" платы из ethaddr, то что будет вызываться первым
board_late_init (где читаем мас из ЕЕПРОМа) или get_board_serial()... т.е. какой в итоге "серийный номер" получим?
Записан

speculzzz

  • Jr. Member
  • **
  • Оффлайн Оффлайн
  • Сообщений: 69
Re: Сборка U-boot 1.3.3 для работы с ядром 2.6.32.3
« Ответ #31 : 17 Февраля, 2010, 16:46:07 »

Попробовал - все работает нормально:
1) в убуте читаем мак из ЕЕПРОМ и записываем в ethaddr и ATAG_SERIAL
2) в ядре (в сетевом драйвере) тег разбираем и используем по назначению
В общем, получилось симпатично ;) (благодаря Вашим патчам).

Остался только один организационный момент, решить который пока не получилось (т.к. не знаю где искать.... пока): не пойму, кто переписывает МАС-адрес для интерфейса в 00:BA:D0:0B:AD:00  ??? Происходит так:
1) Если в конфигурацию ядра включаем драйвер ep93xx-eth (становится eth0) и драйвер своей 2-х портовки (eth1 и eth2), то имеем следующее:
eth0      Link encap:Ethernet  HWaddr 00:BA:D0:0B:AD:00
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

/ # ifconfig eth1
eth1      Link encap:Ethernet  HWaddr AA:BB:CC:DD:EE:F2
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:34 Memory:71000300-7100030f

/ # ifconfig eth2
eth2      Link encap:Ethernet  HWaddr AA:BB:CC:DD:EE:F2
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:34 Memory:71000300-7100030f
/ #
т.е. маки у eth1 и eth2 нормальные - осталось только IP задать и вперед.
2) Если драйвер ep93xx-eth убрать из конфигурации, что логично (т.к. этой сетки реально нет), то нам доступны только 2 интерфейса eth0 и eth1... Но в данном случае у eth0 после старта мак-адрес тоже 00:BA:D0:0B:AD:00, а у eth1 как и положено AA:BB:CC:DD:EE:F2. И теперь придется для eth0 сперва заменить мак-адрес, чтобы была по нему связь.
Кто прописывает этот 00:BA:D0:0B:AD:00 для eth0 и как от этого избавится?
Записан

dimaz

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 14
Re: Сборка U-boot 1.3.3 для работы с ядром 2.6.32.3
« Ответ #32 : 23 Февраля, 2010, 00:04:33 »

Извините, что немного не в тему, но думаю, для этого создавать новую ветку не стоит))
Поглядел я на текущее состояние u-boot, оказывается, у нас версия полуторогодичной давности...
Из вкусного в последних версиях - это к примеру, поддержка сжатия LZMA.
Это было бы нам наверное полезно, позволяло бы место существенно экономить.
Переходить на новые версии u-boot никто не собирается?)
Можно, конечно, для поддержки lzma попробовать патч найти какой-нить...
Записан