Автор Тема: промяна на адреса на серииния порт  (Прочетена 2364 пъти)

Boiler

  • Напреднали
  • *****
  • Публикации: 48
    • Профил
Здравейте! Сблъсках се със следната ситуация: трябва да променя адреса на серииния порт, за да мога да трансферирам данни на висока скорост към една радиорелейна станция. Има ли някои идея как може да стане това. Което ми хрумва на мен е да попреработя серииния драйвер на ядрото и да си сменя адреса на порта, но не знам още дали този адрес се определя само от него.Ще се радвам на компетентно мнение по въпроса.Благодаря!
Активен

alex_c

  • Напреднали
  • *****
  • Публикации: 122
    • Профил
промяна на адреса на серииния порт
« Отговор #1 -: May 10, 2005, 18:46 »
Ами пробвай със setserial. На мен не ми се е налагало да го ползвам, но след бърз преглед на опциите видях, че има такава за настройка на I/O порта.
Best wishes!
Alex
Активен

the_real_maniac

  • Напреднали
  • *****
  • Публикации: 1258
  • Kernel panic, me - no panic ;-) :-)
    • Профил
промяна на адреса на серииния порт
« Отговор #2 -: May 10, 2005, 19:25 »
BIOS - в почти всички случей от там.
man setserial
Активен

Powered by Debian GNU / LINUX /// Intel inside ...

„Насилието е последното убежище на некомпетентността“ - Айзък Азимов (1920 — 1992)

Uvigii

  • Напреднали
  • *****
  • Публикации: 381
    • Профил
промяна на адреса на серииния порт
« Отговор #3 -: May 10, 2005, 23:28 »
Още 1 глас за BIOS
'<img'>
Активен

http://www.openlab.info мрежова лаборатория

  • Гост
промяна на адреса на серииния порт
« Отговор #4 -: May 11, 2005, 09:15 »
Благодаря за отговорите до момента, но забравих да спомена ,че системата няма BIOS. Става въпрос за малка embedded linux платформа на базата на процесор ARM920T.
Активен

laskov

  • Напреднали
  • *****
  • Публикации: 3166
    • Профил
промяна на адреса на серииния порт
« Отговор #5 -: May 11, 2005, 09:39 »
Интересна задачка!'<img'> Дай повече инфо. Доколкото разбрах онова 3F8h (2F8h) искаш да го смениш с друго? Ако е така ще трябва да ти пратим по пощата пакетче джъмпери, а може би и поялник? '<img'> А защо ТРЯБВА да го смениш? Адреса няма връзка със скоростта. И щом е сериен АСИНХРОНЕН RS232 максимума е 115200 kbps
Активен

Не си мислете, че понеже Вие мислите правилно, всички мислят като Вас! Затова, когато има избори, идете и гласувайте, за да не сте изненадани после от резултата, и за да не твърди всяка партия, че тя е спечелила, а Б.Б. (С.С., ...) е загубил, а трети да управлява.  Наздраве!  [_]3

Boiler

  • Напреднали
  • *****
  • Публикации: 48
    • Профил
промяна на адреса на серииния порт
« Отговор #6 -: May 12, 2005, 12:35 »
Ето и повече инфо.:) Онова 0x3F8 на тази платформа е 0xff8c0000 съответно за /dev/ttyAM0 и 0xff8d0000 за /dev/ttyAM1.Още веднъж: архитектурата не е i386 , а е ARM.Трябва ми да сменя адреса за да мога чрез драивера за серииния интерфеис и чрез ppp да си пренасочвам трафика от LAN-a към 8 или 16 пина директно все едно е серииния интерфеис. Само че така скоростта ще се вдигне много, защото въпросните пинове са директно на краката на процесора и работят на висока честота.
Активен

laskov

  • Напреднали
  • *****
  • Публикации: 3166
    • Профил
промяна на адреса на серииния порт
« Отговор #7 -: May 12, 2005, 15:51 »
Ако правилно разбирам, искаш да смениш адреса и по този начин да накараш драйвера на едно устройство да заработи с друго устройство? Това обаче не може да стане. Зад основния адрес на едно устройство, напр.3F8 за серийния порт при i386 архитектурата, се крият няколко вътрешни регистъра, от/в които драйвера чете/пише и тяхната структура е уникална за различните устройства. Затова и драйверите са уникални за всяко устройство. Смяна на адреса би била от полза единствено ако има някакъв проблем в адресацията (конфликт между две устройства, нужда от повече устройства). В такъв случай се променя (с помощта на джъмпери/поялник/настройки в BIOS) частта от хардуера, която отговаря за дешифрирането на адреса на устройството, прави се промяна и се прекомпилира драйвера, за да търси устройството на новия адрес. Ако обаче в твоята машина има изведени шини от процесора, то би трябвало те да са отделно устройство и достъпът до тях да е чрез специализиран драйвер, съответно програмите да виждат това устр. като /dev/нещо . Ако пък това са шините за адрес и данни, то ти можеш да си създадеш допълнителен хардуер, който да дешифрира адрес и зад който да стои някакво устройство.
Активен

Не си мислете, че понеже Вие мислите правилно, всички мислят като Вас! Затова, когато има избори, идете и гласувайте, за да не сте изненадани после от резултата, и за да не твърди всяка партия, че тя е спечелила, а Б.Б. (С.С., ...) е загубил, а трети да управлява.  Наздраве!  [_]3

Boiler

  • Напреднали
  • *****
  • Публикации: 48
    • Профил
промяна на адреса на серииния порт
« Отговор #8 -: May 12, 2005, 16:00 »
В общи линии правилно си ме разбрал. Ще се опитам да обясня своята цел по-ясно. Трябва ми да пренасоча трафика, примерно чрез pppd, но на много по-висока скорост отколкото
се поддържа от стандартните сериини интерфейси. Ако ползвам някои вече мапнати адреси на шини които са на висика честота, дали ще мога да рутирам?
Активен

  • Гост
промяна на адреса на серииния порт
« Отговор #9 -: May 12, 2005, 22:34 »
Цитат
мапнати адреси на шини които са на висика честота, дали ще мога да рутирам?

Sledq temata ...
oba4e si mislq 4e ne6to smesva6 ne6tata ! Rutiraneto nqma ni6to ob6to sas skorostta na porta ako procesora ti moje da poeme tova natovarvane !
Активен

Boiler

  • Напреднали
  • *****
  • Публикации: 48
    • Профил
промяна на адреса на серииния порт
« Отговор #10 -: May 17, 2005, 16:26 »
Процесорът може да понесе натоварването, но главният ми въпрос е как да излъжа линукса и pppd-то да използват други адреси и да не се съобразяват със фиксираните скорости на сериините интерфейси.
Активен

zarrro

  • Напреднали
  • *****
  • Публикации: 46
    • Профил
промяна на адреса на серииния порт
« Отговор #11 -: May 18, 2005, 11:06 »
Цитат (Boiler @ Май 12 2005,13:35)
Ето и повече инфо.:) Онова 0x3F8 на тази платформа е 0xff8c0000 съответно за /dev/ttyAM0 и 0xff8d0000 за /dev/ttyAM1.Още веднъж: архитектурата не е i386 , а е ARM.Трябва ми да сменя адреса за да мога чрез драивера за серииния интерфеис и чрез ppp да си пренасочвам трафика от LAN-a към 8 или 16 пина директно все едно е серииния интерфеис. Само че така скоростта ще се вдигне много, защото въпросните пинове са директно на краката на процесора и работят на висока честота.


Какъв сериен интерфейс на 8/16 пина??
Или на тези 8/16 пина ти е закачен външен UART модул??

Ако там няма UART или някакво друго желязо което емулира UART просто няма да стане. По добре пробвай с някакъв вариант на PPP върху паралелен порт(ако има такова нещо де).
Активен

laskov

  • Напреднали
  • *****
  • Публикации: 3166
    • Профил
промяна на адреса на серииния порт
« Отговор #12 -: May 18, 2005, 17:02 »
Добре, а с какъв интерфейс другото устройство ще посрещне данните на това устройство? И какво е разстоянието помежду им? ...
Активен

Не си мислете, че понеже Вие мислите правилно, всички мислят като Вас! Затова, когато има избори, идете и гласувайте, за да не сте изненадани после от резултата, и за да не твърди всяка партия, че тя е спечелила, а Б.Б. (С.С., ...) е загубил, а трети да управлява.  Наздраве!  [_]3

Boiler

  • Напреднали
  • *****
  • Публикации: 48
    • Профил
промяна на адреса на серииния порт
« Отговор #13 -: May 20, 2005, 12:15 »
Естесвено че ще има UART истройство оето да поема трафика.Този проблем е решен.Остава нерешен въпросът с драйвера на ядрото и как ще бъде излъгана системата да ползва новите адреси.
Активен