Jump to content
Форум по продукции MOXA

Recommended Posts

Здрасте коллеги.

Я думаю админы перенесут этоту ветку куда надо я не придумал где ей будет лучше - Это манул по решению проблемы из названия топика

Итaк есть Ubuntu 20.04

 

Quote

inspiron Moxa # uname -a
Linux inspiron 5.4.0-33-generic #37-Ubuntu SMP Thu May 21 12:53:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
 

И драйвер  driv_linux_uport1p_v1.3.21_build_17112717.tgz скачаный с этого форума

Проблема: не собирасется.

Трабшутинг:

1-я ошибка сборки:  flex: not found 

Quote

inspiron mxu11x0 # ./mxinstall
************************************************************************
 Ubuntu 20.04 LTS 
 \l 5.4.0-33-generic
 MOXA UPort 11x0 series driver ver 1.3.11
 Release Date: 2013/10/22
************************************************************************
**********************************WARNING*******************************
 MOXA UPort 11x0 series driver may not be compatible with 
 Linux kernel versions newer than 3.13.0 . 
 To download the latest driver, please visit Moxa at: http://www.moxa.com
 If you have questions, please contact Moxa support at: support@moxa.com 
************************************************************************
  *******************************************************************
  # MOXA UPort 1110/1130/1150/1150I USB to Serial Hub Driver v1.3.11 #
  #                for Linux Kernel 2.6.x & above                   #
  #                                                                 #
  #               release date : 12/16/2014                         #
  *******************************************************************
/bin/sh: 1: flex: not found
make[4]: *** [scripts/Makefile.host:9: scripts/kconfig/lexer.lex.c] Ошибка 127
make[3]: *** [Makefile:594: syncconfig] Ошибка 2
make[2]: *** [Makefile:704: include/config/auto.conf.cmd] Ошибка 2
make[2]: *** [include/config/auto.conf.cmd] Удаляется файл «include/config/tristate.conf»
make[1]: *** [Makefile:35: module] Ошибка 2
make: *** [Makefile:9: install] Ошибка 2
 

Решение: apt install flex

Link to comment

2-я ошибка сборки: bison: not found

Quote

inspiron driver # make
************************************************************************
 Ubuntu 20.04 LTS 
 \l 5.4.0-33-generic
 MOXA UPort 11x0 series driver ver 1.3.11
 Release Date: 2013/10/22
************************************************************************
**********************************WARNING*******************************
 MOXA UPort 11x0 series driver may not be compatible with 
 Linux kernel versions newer than 3.13.0 . 
 To download the latest driver, please visit Moxa at: http://www.moxa.com
 If you have questions, please contact Moxa support at: support@moxa.com 
************************************************************************
  *******************************************************************
  # MOXA UPort 1110/1130/1150/1150I USB to Serial Hub Driver v1.3.11 #
  #                for Linux Kernel 2.6.x & above                   #
  #                                                                 #
  #               release date : 12/16/2014                         #
  *******************************************************************
make -C /lib/modules/5.4.0-33-generic/build SUBDIRS=/home/boris/Distr/Moxa/mxu11x0/driver modules 
make[1]: вход в каталог «/usr/src/linux-headers-5.4.0-33-generic»
  LEX     scripts/kconfig/lexer.lex.c
  YACC    scripts/kconfig/parser.tab.[ch]
/bin/sh: 1: bison: not found
make[3]: *** [scripts/Makefile.host:17: scripts/kconfig/parser.tab.h] Ошибка 127
make[3]: *** [scripts/kconfig/parser.tab.h] Удаляется файл «scripts/kconfig/parser.tab.c»
make[2]: *** [Makefile:594: syncconfig] Ошибка 2
make[1]: *** [Makefile:704: include/config/auto.conf.cmd] Ошибка 2
make[1]: выход из каталога «/usr/src/linux-headers-5.4.0-33-generic»
make: *** [Makefile:35: module] Ошибка 2
 

Решение: apt install bison

Link to comment

3-я ошибка сборки (уже позабористей): ошибка в Makefile

Quote

inspiron driver # make
************************************************************************
 Ubuntu 20.04 LTS 
 \l 5.4.0-33-generic
 MOXA UPort 11x0 series driver ver 1.3.21
 Release Date: 2017/11/27
************************************************************************
**********************************WARNING*******************************
 MOXA UPort 11x0 series driver may not be compatible with 
 Linux kernel versions newer than 4.13.0 . 
 To download the latest driver, please visit Moxa at: http://www.moxa.com
 If you have questions, please contact Moxa support at: support@moxa.com 
************************************************************************
  *******************************************************************
  # MOXA UPort 11x0 series USB to Serial Hub Driver v1.3.21         #
  #                for Linux Kernel 2.6.x & above                   #
  #                                                                 #
  #               release date : 11/27/2017                         #
  #               dir : /home/boris/Distr/Moxa/mxu11x0/driver                                       #
  *******************************************************************
make -C /lib/modules/5.4.0-33-generic/build SUBDIRS=/home/boris/Distr/Moxa/mxu11x0/driver modules 
make[1]: вход в каталог «/usr/src/linux-headers-5.4.0-33-generic»
make[2]: *** Нет правила для сборки цели «arch/x86/tools/relocs_32.c», требуемой для «arch/x86/tools/relocs_32.o».  Останов.
make[1]: *** [arch/x86/Makefile:232: archscripts] Ошибка 2
make[1]: выход из каталога «/usr/src/linux-headers-5.4.0-33-generic»
make: *** [Makefile:48: module] Ошибка 2
 

Нет четкой подсказаньки как раньше как быть, но гугл нам дает решение: https://askubuntu.com/questions/232840/my-makefile-results-in-no-rule-to-make-target-arch-x86-tools-relocs-c-needed

Cook reciрe:

Заходим в ./mxu11x0/driver и правим Makefile (48 строку или около того):

Нужно: $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules

Заменить на: $(MAKE) -C $(KDIR) M=$(PWD) modules

Profit - драйвер собрался загрузился 

 

 

Link to comment

4-я ошибка уже не связанная с драйвером от мохи, а возникшая из-за левого левого драйвера загруженного самой убунтой при подключении UPort: Зовут героя так: ti_usb_3410_5052

Как ранее писали где-то в ветках про эти UPortы - необходимо выгрузить ядерный модуль 

rmmod  ti_usb_3410_5052

Но грабли в том, что при повторном подключении переходника грузятся сразу два драйвера 

Quote

inspiron mxu11x0 # lsmod
Module                  Size  Used by
mxu11x0               106496  0
ti_usb_3410_5052       36864  0
usbserial              53248  2 ti_usb_3410_5052,mxu11x0

rfcomm                 81920  4
vboxnetadp             28672  0
vboxnetflt             28672  0
 

 

Link to comment

Решение 4-й проблемы, (так себе вариант):

Запретить загрузку ti_usb_3410_5052

Делается довольно просто - указанный модуль помещается в черный список

Я сделал так в каталог /etc/modprobe.d добавил файл blacklist-moxa.conf

Со следущим содержанием:

Quote

inspiron modprobe.d # 
cat blacklist-moxa.conf 
# This file lists those modules which we don't want to be loaded by
# alias expansion, usually so some other driver will be loaded for the
# device instead.

#The module ti_usb_3410_5052 interferes with the operation of the original Moxa Uport driver, mxu11x0 and is therefore blacklisted.
#But this is not the best option, so if you know another option how to remove the alias for specific devices, tell us.
blacklist ti_usb_3410_5052
 

По другому строку 

Quote

blacklist ti_usb_3410_5052

Можно добавить в любой другой файл начинающийся с blacklist....

Выдернуть  переходник и выгрузить модули:

Quote

rmmod mxu11x0 ti_usb_3410_5052 usbserial

Вставить обратно упорт и убедится в отсутствии лишнего модуля 

Quote

inspiron modprobe.d # lsmod | more
Module                  Size  Used by
mxu11x0               106496  0
usbserial              53248  1 mxu11x0

rfcomm                 81920  4
vboxnetadp             28672  0
 

Все.

Но нет теперь модуль ti_usb_3410_5052 никогда не будет загружен даже если будет нужен, что не совсем хорошо.

Чтобы этого избежать нужно удалить алиасы из modprobe.alias  который храниться в /lib/modules/5.4.0-33-generic

Quote

alias usb:v110Ap1151d*dc*dsc*dp*ic*isc*ip*in* ti_usb_3410_5052
alias usb:v110Ap1150d*dc*dsc*dp*ic*isc*ip*in* ti_usb_3410_5052
alias usb:v110Ap1131d*dc*dsc*dp*ic*isc*ip*in* ti_usb_3410_5052
alias usb:v110Ap1130d*dc*dsc*dp*ic*isc*ip*in* ti_usb_3410_5052
alias usb:v110Ap1110d*dc*dsc*dp*ic*isc*ip*in* ti_usb_3410_5052
 

Но просто удаление не поможет -  тут нужно драйвер (ядерный модуль) отвязать от устройства, а это я не знаю как. Возможно пока не знаю

Link to comment

Борис добрый день, вы несомненно большой молодец и спасибо вам за этот замечательный топик, я думаю он многим пригодится и поможет, но скажите мне пожалуйста, зачем вы взяли такой старый драйвер, когда у нас прям на сайте лежит драйвер специально для 5.х https://moxa.ru/files/drivers_utilities_3/uport-1000-series-linux-kernel-5_0-for-uport-11x0-series-driver-v5_0.zip ?

Link to comment

Хороший вопрос, повелитель - давно не имел проблем с драйверами прям года так  с 2015-2016.  А в то время я драйвера с форума брал на сайте moxa были старые драйвера.

Поэтому ответ - привычка. - Но теперь буду знать :)

 

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...