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

Драйвер NPort для Linux 4.x


Recommended Posts

Добрый день!

К сожалению, пока поддерживаемые версии ядра только 3.х. Попробуйте, установить последнюю доступную версию драйвера (во вложении), но не факт, что она заработает на Linux 4.х

ver1.18.51.zip

Link to comment

Драйвера установились (ОС AstraLinux SE 1.5 ядро  4.2.0-23-generic) и заработали на серверах HP и в виртуалке.

Но есть проблема с серверами DEPO.

Схема такая:

Соединяем два порта NPort перемычкой (P1 <-> P4).

В одном терминале пишем в порт:

echo "123" >> /dev/ttyr00

Проходит нормально, индикаторы на NPort моргают.

В другом терминале читаем из порта:

cat /dev/ttyr03

В итоге cat зависает, а в первом терминале получаем:

Oct 20 16:32:17 astra kernel: [ 2115.725171] BUG: unable to handle kernel paging request at 0000000002010e60
Oct 20 16:32:17 astra kernel: [ 2115.725194] IP: [<ffffffff813748b6>] memcpy_erms+0x6/0x10
Oct 20 16:32:17 astra kernel: [ 2115.725211] PGD 35ca9067 PUD 35ca1067 PMD 35eff067 PTE 800000025ecd1867
Oct 20 16:32:17 astra kernel: [ 2115.725231] Oops: 0001 [#1] SMP 
Oct 20 16:32:17 astra kernel: [ 2115.725242] Modules linked in: nls_iso8859_1 uas usb_storage parport_pc ppdev lp parport rfcomm bnep bluetooth npreal2(O) joydev input_leds mei_me shpchp mei acpi_als ipmi_ssif kfifo_buf ipmi_si ipmi_msghandler industrialio intel_lpss_acpi intel_lpss acpi_power_meter 8250_fintek pinctrl_sunrisepoint pinctrl_intel mac_hid acpi_pad parsec(O) uvesafb hid_generic usbhid ast syscopyarea sysfillrect sysimgblt ttm drm_kms_helper drm igb dca ptp pps_core i2c_algo_bit ahci libahci i2c_hid hid video digsig_verif(O)
Oct 20 16:32:17 astra kernel: [ 2115.725402] CPU: 0 PID: 3489 Comm: npreal2d Tainted: G           O    4.2.0-23-generic #28astra39
Oct 20 16:32:17 astra kernel: [ 2115.725422] Hardware name: DEPO Computers Super Server/X11SSM-F, BIOS 1.0b 12/29/2015
Oct 20 16:32:17 astra kernel: [ 2115.725440] task: ffff880035f24980 ti: ffff880035f252e8 task.ti: ffff880035f252e8
Oct 20 16:32:17 astra kernel: [ 2115.725457] RIP: 0010:[<ffffffff813748b6>]  [<ffffffff813748b6>] memcpy_erms+0x6/0x10
Oct 20 16:32:17 astra kernel: [ 2115.725477] RSP: 0018:ffff880035e63dc0  EFLAGS: 00010282
Oct 20 16:32:17 astra kernel: [ 2115.725489] RAX: ffff88026bf2bc20 RBX: 0000000000000000 RCX: 0000000000000001
Oct 20 16:32:17 astra kernel: [ 2115.725505] RDX: 0000000000000001 RSI: 0000000002010e60 RDI: ffff88026bf2bc20
Oct 20 16:32:17 astra kernel: [ 2115.725521] RBP: ffff880035e63e28 R08: 0000000000000001 R09: 0000000000000001
Oct 20 16:32:17 astra kernel: [ 2115.725537] R10: ffffffff81461744 R11: 0000000000000246 R12: 0000000002010e60
Oct 20 16:32:17 astra kernel: [ 2115.725553] R13: ffffffffc0434c10 R14: 0000000000000000 R15: 0000000000000001
Oct 20 16:32:17 astra kernel: [ 2115.725569] FS:  00007fa9dbea1740(0000) GS:ffff880277800000(0000) knlGS:0000000000000000
Oct 20 16:32:17 astra kernel: [ 2115.725587] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Oct 20 16:32:17 astra kernel: [ 2115.725600] CR2: 0000000002010e60 CR3: 000000007735f000 CR4: 00000000003606f0
Oct 20 16:32:17 astra kernel: [ 2115.725617] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
Oct 20 16:32:17 astra kernel: [ 2115.725632] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Oct 20 16:32:17 astra kernel: [ 2115.725649] Stack:
Oct 20 16:32:17 astra kernel: [ 2115.725654]  ffffffff81461a14 ffff880035e63e18 0000000000000001 ffff88026bf2bc00
Oct 20 16:32:17 astra kernel: [ 2115.725675]  0000000000000001 0000000000000292 ffff88026bf2bc20 ffffffffc0434c10
Oct 20 16:32:17 astra kernel: [ 2115.725696]  ffffffffc0434c08 ffffffffc0434c10 0000000002010e60 ffffffffc0434f18
Oct 20 16:32:17 astra kernel: [ 2115.725718] Call Trace:
Oct 20 16:32:17 astra kernel: [ 2115.725726]  [<ffffffff81461a14>] ? tty_insert_flip_string_fixed_flag+0x94/0x100
Oct 20 16:32:17 astra kernel: [ 2115.725746]  [<ffffffffc0482766>] npreal_net_write+0xc6/0x150 [npreal2]
Oct 20 16:32:17 astra kernel: [ 2115.725763]  [<ffffffff81250e2d>] proc_reg_write+0x3d/0x70
Oct 20 16:32:17 astra kernel: [ 2115.725777]  [<ffffffff811e6658>] __vfs_write+0x18/0x40
Oct 20 16:32:17 astra kernel: [ 2115.725790]  [<ffffffff811e788c>] vfs_write+0x12c/0x210
Oct 20 16:32:17 astra kernel: [ 2115.725803]  [<ffffffff811e7c2f>] SyS_write+0x4f/0xa0
Oct 20 16:32:17 astra kernel: [ 2115.725817]  [<ffffffff8178caf6>] entry_SYSCALL_64_fastpath+0x16/0x79
Oct 20 16:32:17 astra kernel: [ 2115.725832] Code: 90 90 90 90 90 eb 1e 0f 1f 00 48 89 f8 48 89 d1 48 c1 e9 03 83 e2 07 f3 48 a5 89 d1 f3 a4 c3 66 0f 1f 44 00 00 48 89 f8 48 89 d1 <f3> a4 c3 0f 1f 80 00 00 00 00 48 89 f8 48 83 fa 20 72 7e 40 38 
Oct 20 16:32:17 astra kernel: [ 2115.725941] RIP  [<ffffffff813748b6>] memcpy_erms+0x6/0x10
Oct 20 16:32:17 astra kernel: [ 2115.725956]  RSP <ffff880035e63dc0>
Oct 20 16:32:17 astra kernel: [ 2115.725964] CR2: 0000000002010e60
Oct 20 16:32:17 astra kernel: [ 2115.725973] ---[ end trace d01bc76cbc5015cd ]---

Может кто сталкивался с таким?

 
PS: NPort IA 5450
Link to comment
  • 2 months later...

Аналогичная проблема с такими же логами ядра... похоже, зависит от железа. В моем случае успешно работает на чипсете Intel H81 и ловит ошибку на Intel H110. ОС одинаковая - Ubuntu 16.04 64bit. Обновление ядра с 4.4 до 4.9, переход на 32bit, полная замена железа (материнская, память, проц, HDD) не помогает...

Проверено на Nport 5430 и 5110.

Link to comment
  • 9 months later...

День добрый
Пытаюсь установить драйверы под TI Linux RT

Получаю ошибку:

In file included from include/linux/spinlock_types.h:19:0,
                 from include/linux/spinlock.h:81,
                 from include/linux/seqlock.h:35,
                 from include/linux/time.h:5,
                 from include/linux/stat.h:18,
                 from include/linux/module.h:10,
                 from /home/root/npreal2_1.18.65_build_17062316/moxa/kernel3.x/npreal2.c:39:
/home/root/npreal2_1.18.65_build_17062316/moxa/kernel3.x/npreal2.c: In function 'npreal_init_tty':
include/linux/spinlock_types_rt.h:42:2: error: expected expression before '{' token
  { .lock = __RT_SPIN_INITIALIZER(name.lock),  \
  ^
/home/root/npreal2_1.18.65_build_17062316/moxa/kernel3.x/npreal2.c:601:23: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
   tty_node->tx_lock = __SPIN_LOCK_UNLOCKED(tty_node->tx_lock);
 
Подобное обсуждалось здесь: https://forums.ni.com/t5/NI-Linux-Real-Time-Discussions/Install-Moxa-Nport-5323-on-NI-Linux-RT/td-p/3650031
но как модифицировать код драйвера, чтобы он заработал с использованием rtmutexes, я не понял. Прошу оказать посильную помощь.

Спасибо.
 
Link to comment

 

День добрый

Пытаюсь установить драйверы под TI Linux RT

 

Получаю ошибку:

In file included from include/linux/spinlock_types.h:19:0,
                 from include/linux/spinlock.h:81,
                 from include/linux/seqlock.h:35,
                 from include/linux/time.h:5,
                 from include/linux/stat.h:18,
                 from include/linux/module.h:10,
                 from /home/root/npreal2_1.18.65_build_17062316/moxa/kernel3.x/npreal2.c:39:
/home/root/npreal2_1.18.65_build_17062316/moxa/kernel3.x/npreal2.c: In function 'npreal_init_tty':
include/linux/spinlock_types_rt.h:42:2: error: expected expression before '{' token
  { .lock = __RT_SPIN_INITIALIZER(name.lock),  \
  ^
/home/root/npreal2_1.18.65_build_17062316/moxa/kernel3.x/npreal2.c:601:23: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
   tty_node->tx_lock = __SPIN_LOCK_UNLOCKED(tty_node->tx_lock);
 
Подобное обсуждалось здесь: https://forums.ni.com/t5/NI-Linux-Real-Time-Discussions/Install-Moxa-Nport-5323-on-NI-Linux-RT/td-p/3650031

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

 

Спасибо.

 

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

 

Adding Server...
 
ttyr00, cur00
Added RealCom server: ip : 192.168.12.251
 
mknod -m 666 ttyr00 c 33 0
mknod -m 666 cur00 c 38 0
 System startup links for /etc/init.d/npreals already exist.
[  390.231428] ------------[ cut here ]------------
[  390.242632] WARNING: CPU: 0 PID: 1755 at fs/sysfs/dir.c:31 sysfs_warn_dup+0x6c/0x7c()
[  390.261348] sysfs: cannot create duplicate filename '/devices/virtual/tty/ttyr0'
[  390.278916] Modules linked in: npreal2(O) pvrsrvkm(O) sha512_generic sha512_arm drbg des_generic cbc xfrm_user usb_f_mass_storage usb_f_rndis u_ether libcomposite configfs xfrm4_tunnel udc_core ipcomp xfrm_ipcomp esp4 bluetooth ah4 af_key xfrm_algo ti_am335x_adc kfifo_buf pru_rproc pruss_intc pm33xx sha256_generic hmac rotary_encoder input_polldev md5 wkup_m3_ipc sha1_generic sha1_arm_neon sha1_arm ti_emif_sram wkup_m3_rproc ecb pruss remoteproc virtio virtio_ring omap_sham omap_aes_driver omap_rng rng_core gpio_pisosr gpio_pca953x ti_am335x_tsc gpio_tpic2810 omap_wdt rtc_omap ti_am335x_tscadc sch_fq_codel cryptodev(O) [last unloaded: npreal2]
[  390.396827] CPU: 0 PID: 1755 Comm: npreal2d Tainted: G      D W  O    4.4.32-rt41-ge26c84b0ac #1
[  390.405656] Hardware name: Generic AM33XX (Flattened Device Tree)
[  390.438159] Backtrace:
[  390.440673] [<c0013490>] (dump_backtrace) from [<c001368Complete.
 
c>] (show_stack+0x18/0x1c)
[  390.461272]  r7:c01654d4 r6:0000001f r5:00000009root@am335x-evm:/usr/lib/npreal2/driver#  r4:00000000
[  390.475070] [<c0013674>] (show_stack) from [<c02967f0>] (dump_stack+0x24/0x28)
[  390.486235] [<c02967cc>] (dump_stack) from [<c00316bc>] (warn_slowpath_common+0x88/0xb4)
[  390.494380] [<c0031634>] (warn_slowpath_common) from [<c0031720>] (warn_slowpath_fmt+0x38/0x40)
[  390.506626]  r8:00000000 r7:cf1a3900 r6:cf1ad7d0 r5:cabcca80 r4:c07cb580
[  390.513430] [<c00316ec>] (warn_slowpath_fmt) from [<c01654d4>] (sysfs_warn_dup+0x6c/0x7c)
[  390.524924]  r3:cf565feb r2:c07cb580
[  390.528591]  r4:cf565000
[  390.531160] [<c0165468>] (sysfs_warn_dup) from [<c01655c0>] (sysfs_create_dir_ns+0x8c/0x9c)
[  390.543927]  r6:cf1ad7d0 r5:cae14008 r4:ffffffef
[  390.548710] [<c0165534>] (sysfs_create_dir_ns) from [<c029945c>] (kobject_add_internal+0xa4/0x2f4)
[  390.560972]  r6:cf1a3900 r5:00000000 r4:cae14008
[  390.565660] [<c02993b8>] (kobject_add_internal) from [<c0299700>] (kobject_add+0x54/0x98)
[  390.577219]  r7:00000000 r6:cf1a3900 r5:00000000 r4:cae14008
[  390.582969] [<c02996b0>] (kobject_add) from [<c03c7914>] (device_add+0xe0/0x56c)
[  390.593609]  r3:ca955480 r2:00000000
[  390.597273]  r6:00000000 r5:cae14000 r4:cae14008
[  390.601950] [<c03c7834>] (device_add) from [<c03c7dbc>] (device_register+0x1c/0x20)
[  390.614149]  r10:cae14000 r9:00000000 r8:00000000 r7:cf58bd10 r6:00000000 r5:02100000
[  390.622109]  r4:cae14000
[  390.624681] [<c03c7da0>] (device_register) from [<c0331874>] (tty_register_device_attr+0x1d0/0x234)
[  390.638193]  r5:02100000 r4:cae12900
[  390.641827] [<c03316a4>] (tty_register_device_attr) from [<c03318f4>] (tty_register_device+0x1c/0x24)
[  390.654277]  r10:cf58bf5c r9:c5847c98 r8:bf28a1cc r7:bf2b4a78 r6:00000000 r5:ca965d80
[  390.662274]  r4:bf2b490c
[  390.664864] [<c03318d8>] (tty_register_device) from [<bf28a2f0>] (npreal_net_open+0xc8/0xec [npreal2])
[  390.679032] [<bf28a228>] (npreal_net_open [npreal2]) from [<c0154230>] (proc_reg_open+0x90/0x124)
[  390.689819]  r7:c5847bc0 r6:cabcc680 r5:ca965d80 r4:cae12c80
[  390.695568] [<c01541a0>] (proc_reg_open) from [<c00fe708>] (do_dentry_open+0x1d4/0x2f4)
[  390.706963]  r9:c5847c98 r8:00000000 r7:c5847bc0 r6:c01541a0 r5:ca965d88 r4:ca965d80
[  390.714808] [<c00fe534>] (do_dentry_open) from [<c00ff84c>] (vfs_open+0x60/0x88)
[  390.725423]  r9:c59c46e0 r8:00000000 r7:00000000 r6:cf58beb0 r5:ca965d80 r4:cf58beb0
[  390.733349] [<c00ff7ec>] (vfs_open) from [<c010d0f0>] (path_openat+0x17c/0xfa4)
[  390.743867]  r5:00000000 r4:00000002
[  390.747567] [<c010cf74>] (path_openat) from [<c010f0a4>] (do_filp_open+0x6c/0xd0)
[  390.755083]  r10:00000000 r9:cf58a000 r8:c000fb84 r7:00000001 r6:cf58bf5c r5:cf58beb0
[  390.766165]  r4:00000005
[  390.768748] [<c010f038>] (do_filp_open) from [<c00ffbb0>] (do_sys_open+0x118/0x1dc)
[  390.781079]  r7:fffff000 r6:cf564000 r5:ffffff9c r4:00000005
[  390.786866] [<c00ffa98>] (do_sys_open) from [<c00ffc94>] (SyS_open+0x20/0x24)
[  390.794035]  r9:cf58a000 r8:c000fb84 r7:00000005 r6:00000000 r5:00000000 r4:00000003
[  390.805096] [<c00ffc74>] (SyS_open) from [<c000f9c0>] (ret_fast_syscall+0x0/0x44)
[  390.815911] ---[ end trace 0000000000000005 ]---
[  390.820564] ------------[ cut here ]------------
[  390.825217] WARNING: CPU: 0 PID: 1755 at lib/kobject.c:240 kobject_add_internal+0x288/0x2f4()
[  390.838369] kobject_add_internal failed for ttyr0 with -EEXIST, don't try to register things with the same name in the same directory.
[  390.852293] Modules linked in: npreal2(O) pvrsrvkm(O) sha512_generic sha512_arm drbg des_generic cbc xfrm_user usb_f_mass_storage usb_f_rndis u_ether libcomposite configfs xfrm4_tunnel udc_core ipcomp xfrm_ipcomp esp4 bluetooth ah4 af_key xfrm_algo ti_am335x_adc kfifo_buf pru_rproc pruss_intc pm33xx sha256_generic hmac rotary_encoder input_polldev md5 wkup_m3_ipc sha1_generic sha1_arm_neon sha1_arm ti_emif_sram wkup_m3_rproc ecb pruss remoteproc virtio virtio_ring omap_sham omap_aes_driver omap_rng rng_core gpio_pisosr gpio_pca953x ti_am335x_tsc gpio_tpic2810 omap_wdt rtc_omap ti_am335x_tscadc sch_fq_codel cryptodev(O) [last unloaded: npreal2]
[  390.909692] CPU: 0 PID: 1755 Comm: npreal2d Tainted: G      D W  O    4.4.32-rt41-ge26c84b0ac #1
[  390.922830] Hardware name: Generic AM33XX (Flattened Device Tree)
[  390.934464] Backtrace:
[  390.940048] [<c0013490>] (dump_backtrace) from [<c001368c>] (show_stack+0x18/0x1c)
[  390.950984]  r7:c0299640 r6:000000f0 r5:00000009 r4:00000000
[  390.956790] [<c0013674>] (show_stack) from [<c02967f0>] (dump_stack+0x24/0x28)
[  390.964060] [<c02967cc>] (dump_stack) from [<c00316bc>] (warn_slowpath_common+0x88/0xb4)
[  390.976739] [<c0031634>] (warn_slowpath_common) from [<c0031720>] (warn_slowpath_fmt+0x38/0x40)
[  390.985487]  r8:00000000 r7:cf1a3900 r6:cf1a3900 r5:ffffffef r4:c07ef314
[  390.994147] [<c00316ec>] (warn_slowpath_fmt) from [<c0299640>] (kobject_add_internal+0x288/0x2f4)
[  391.006449]  r3:c066b270 r2:c07ef314
[  391.010063]  r4:cae14008
[  391.012628] [<c02993b8>] (kobject_add_internal) from [<c0299700>] (kobject_add+0x54/0x98)
[  391.025391]  r7:00000000 r6:cf1a3900 r5:00000000 r4:cae14008
[  391.031257] [<c02996b0>] (kobject_add) from [<c03c7914>] (device_add+0xe0/0x56c)
[  391.041869]  r3:ca955480 r2:00000000
[  391.045481]  r6:00000000 r5:cae14000 r4:cae14008
[  391.052193] [<c03c7834>] (device_add) from [<c03c7dbc>] (device_register+0x1c/0x20)
[  391.063148]  r10:cae14000 r9:00000000 r8:00000000 r7:cf58bd10 r6:00000000 r5:02100000
[  391.071137]  r4:cae14000
[  391.073706] [<c03c7da0>] (device_register) from [<c0331874>] (tty_register_device_attr+0x1d0/0x234)
[  391.087321]  r5:02100000 r4:cae12900
[  391.090955] [<c03316a4>] (tty_register_device_attr) from [<c03318f4>] (tty_register_device+0x1c/0x24)
[  391.103533]  r10:cf58bf5c r9:c5847c98 r8:bf28a1cc r7:bf2b4a78 r6:00000000 r5:ca965d80
[  391.111496]  r4:bf2b490c
[  391.114089] [<c03318d8>] (tty_register_device) from [<bf28a2f0>] (npreal_net_open+0xc8/0xec [npreal2])
[  391.128161] [<bf28a228>] (npreal_net_open [npreal2]) from [<c0154230>] (proc_reg_open+0x90/0x124)
[  391.138964]  r7:c5847bc0 r6:cabcc680 r5:ca965d80 r4:cae12c80
[  391.144712] [<c01541a0>] (proc_reg_open) from [<c00fe708>] (do_dentry_open+0x1d4/0x2f4)
[  391.156104]  r9:c5847c98 r8:00000000 r7:c5847bc0 r6:c01541a0 r5:ca965d88 r4:ca965d80
[  391.163948] [<c00fe534>] (do_dentry_open) from [<c00ff84c>] (vfs_open+0x60/0x88)
[  391.174575]  r9:c59c46e0 r8:00000000 r7:00000000 r6:cf58beb0 r5:ca965d80 r4:cf58beb0
[  391.182472] [<c00ff7ec>] (vfs_open) from [<c010d0f0>] (path_openat+0x17c/0xfa4)
[  391.193225]  r5:00000000 r4:00000002
[  391.196955] [<c010cf74>] (path_openat) from [<c010f0a4>] (do_filp_open+0x6c/0xd0)
[  391.204474]  r10:00000000 r9:cf58a000 r8:c000fb84 r7:00000001 r6:cf58bf5c r5:cf58beb0
[  391.216175]  r4:00000005
[  391.218765] [<c010f038>] (do_filp_open) from [<c00ffbb0>] (do_sys_open+0x118/0x1dc)
[  391.231248]  r7:fffff000 r6:cf564000 r5:ffffff9c r4:00000005
[  391.237050] [<c00ffa98>] (do_sys_open) from [<c00ffc94>] (SyS_open+0x20/0x24)
[  391.244220]  r9:cf58a000 r8:c000fb84 r7:00000005 r6:00000000 r5:00000000 r4:00000003
[  391.255284] [<c00ffc74>] (SyS_open) from [<c000f9c0>] (ret_fast_syscall+0x0/0x44)
[  391.266814] ---[ end trace 0000000000000006 ]---
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...