Maverick_ 15 19 ноября, 2022 Опубликовано 19 ноября, 2022 · Жалоба Добрый! Вопрос по поводу DMA: в части логики объявлены 2 устройства AXI DMA, device tree файл обновлен и содержит описание модулей. При запуске видно, что отрабатывает создание только одного устройства (оно потом появляется в /dev). Конфликт связан с тем, что там одно имя на 2 устройства в драйвере. Можно ли как-то обойти эту ситуацию? Лог ошибки axidma: axidma_dma.c: axidma_dma_init: 745: DMA: Found 0 transmit channels and 1 receive channels. axidma: axidma_dma.c: axidma_dma_init: 747: VDMA: Found 0 transmit channels and 0 receive channels. axidma: axidma_dma.c: axidma_dma_init: 745: DMA: Found 0 transmit channels and 1 receive channels. axidma: axidma_dma.c: axidma_dma_init: 747: VDMA: Found 0 transmit channels and 0 receive channels. sysfs: cannot create duplicate filename '/class/axidma' CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.19.0-xilinx-v2019.1 #1 Hardware name: Xilinx Zynq Platform [<c010f18c>] (unwind_backtrace) from [<c010af0c>] (show_stack+0x10/0x14) [<c010af0c>] (show_stack) from [<c06949ac>] (dump_stack+0x80/0xa0) [<c06949ac>] (dump_stack) from [<c0243e00>] (sysfs_warn_dup+0x4c/0x64) [<c0243e00>] (sysfs_warn_dup) from [<c0243ef8>] (sysfs_create_dir_ns+0xa0/0xc8) [<c0243ef8>] (sysfs_create_dir_ns) from [<c0698c40>] (kobject_add_internal+0xb0/ 0x1f4) [<c0698c40>] (kobject_add_internal) from [<c0698e30>] (kset_register+0x20/0x3c) [<c0698e30>] (kset_register) from [<c03e96e4>] (__class_register+0xbc/0x130) [<c03e96e4>] (__class_register) from [<c03e9798>] (__class_create+0x40/0x70) [<c03e9798>] (__class_create) from [<c054ff2c>] (axidma_chrdev_init+0x54/0x15c) [<c054ff2c>] (axidma_chrdev_init) from [<c054ecb4>] (axidma_probe+0xf0/0x14c) [<c054ecb4>] (axidma_probe) from [<c03ea2e4>] (platform_drv_probe+0x48/0x94) [<c03ea2e4>] (platform_drv_probe) from [<c03e88fc>] (really_probe+0x1bc/0x280) [<c03e88fc>] (really_probe) from [<c03e8c48>] (driver_probe_device+0x140/0x158) [<c03e8c48>] (driver_probe_device) from [<c03e8cec>] (__driver_attach+0x8c/0xc8) [<c03e8cec>] (__driver_attach) from [<c03e6f74>] (bus_for_each_dev+0x64/0xa0) [<c03e6f74>] (bus_for_each_dev) from [<c03e7f00>] (bus_add_driver+0x16c/0x1d4) [<c03e7f00>] (bus_add_driver) from [<c03e94f4>] (driver_register+0xac/0xf0) [<c03e94f4>] (driver_register) from [<c0102670>] (do_one_initcall+0x70/0x140) [<c0102670>] (do_one_initcall) from [<c0900e1c>] (kernel_init_freeable+0x18c/0x1 d0) [<c0900e1c>] (kernel_init_freeable) from [<c06a5d80>] (kernel_init+0x8/0x10c) [<c06a5d80>] (kernel_init) from [<c01010e8>] (ret_from_fork+0x14/0x2c) Exception stack(0xef063fb0 to 0xef063ff8) 3fa0: 00000000 00000000 00000000 00000000 3fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 3fe0: 00000000 00000000 00000000 00000000 00000013 00000000 kobject_add_internal failed for axidma with -EEXIST, don't try to register thing s with the same name in the same directory. axidma: axidma_chrdev.c: axidma_chrdev_init: 584: Unable to create a device clas s. axidma: probe of amba_pl:axidma_chrdev@1 failed with error -38 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 19 марта, 2023 Опубликовано 19 марта, 2023 · Жалоба Прошу уточнить, что подразумевается под "Конфликт связан с тем, что там одно имя на 2 устройства в драйвере". Если можно, кусочек кода драйвера. А что значит ошибка -38, ее удалось посмотреть как расшифровывается? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться