xref: /openwifi/driver/xilinx_dma/README.md (revision a6085186d94dfe08b0e09c18c8d4b1b4fe38ea35)
1<!--
2SPDX-FileCopyrightText: 2019 Jiao Xianjun <[email protected]>
3SPDX-License-Identifier: AGPL-3.0-or-later
4-->
5===============Following are obsolete content=================
6
7Currently used driver xilinx_dma-orig.c is based on 552d3f11e374ca0d435aa93a571507819eabdda2 of https://github.com/Xilinx/linux-xlnx )
8
9instruction to generate our customized xilinx dma driver:
10
11./make_xilinx_dma.sh
12
13instruction to generate our customized xilinx dma test program:
14
15./make_xilinx_dma_test.sh
16
17test dma driver on board: login to zc706, then:
18
19    rm axidmatest.ko
20    wget ftp://192.168.10.1/driver/xilinx_dma/axidmatest.ko
21    rm ddc.ko
22    wget ftp://192.168.10.1/driver/ddc/ddc.ko
23    rm xilinx_dma.ko
24    wget ftp://192.168.10.1/driver/xilinx_dma/xilinx_dma.ko
25    rmmod axidmatest
26    rmmod ddc
27    rmmod xilinx_dma
28    insmod xilinx_dma.ko
29    insmod ddc.ko
30    insmod axidmatest.ko
31    dmesg -c
32
33dmesg will show test result printed by "insmod axidmatest.ko". Like this:
34
35    root@analog:~#     dmesg -c
36    xilinx_dmatest: dropped channel dma5chan0
37    xilinx_dmatest: dropped channel dma5chan1
38
39    sdr,ddc dev_remove base_addr 0xf14e0000
40    sdr,ddc dev_remove ddc_driver_api_inst 0xbf032284
41    sdr,ddc dev_remove             ddc_api 0xbf032284
42    sdr,ddc dev_remove succeed!
43    xilinx-vdma 43000000.axivdma: Xilinx AXI VDMA Engine Driver Probed!!
44    xilinx-vdma 80400000.dma: Xilinx AXI DMA Engine Driver Probed!!
45    xilinx-vdma 80410000.dma: Xilinx AXI DMA Engine Driver Probed!!
46
47    sdr,ddc dev_probe match!
48    sdr,ddc dev_probe io start 0x83c20000 end 0x83c2ffff name /fpga-axi@0/rx_intf@83c20000 flags 0x00000200 desc 0x00000000
49    sdr,ddc dev_probe base_addr 0xf18e0000
50    sdr,ddc dev_probe ddc_driver_api_inst 0xbf0e1284
51    sdr,ddc dev_probe             ddc_api 0xbf0e1284
52    sdr,ddc dev_probe reset tsf timer
53    sdr,ddc dev_probe tsf timer runtime read 1 33007 100015us
54    sdr,ddc dev_probe succeed!
55    sdr,ddc hw_init mode 0
56    sdr,ddc hw_init mode DDC_AXIS_LOOP_BACK
57    sdr,ddc hw_init err 0
58    dmatest: Started 1 threads using dma5chan0 dma5chan1
59    align 3
60    sdr,ddc hw_init mode 0
61    sdr,ddc hw_init mode DDC_AXIS_LOOP_BACK
62    sdr,ddc hw_init err 0
63    tx_tmo 99 status 0 len 6448 DMA_COMPLETE 0
64    dma5chan0-dma5c: verifying source buffer...
65    dma5chan0-dma5c: verifying dest buffer...
66    dma5chan0-dma5c: #0: No errors with
67    src_off=0x448 dst_off=0x568 len=0x1930
68    align 3
69    sdr,ddc hw_init mode 0
70    sdr,ddc hw_init mode DDC_AXIS_LOOP_BACK
71    sdr,ddc hw_init err 0
72    tx_tmo 100 status 0 len 3248 DMA_COMPLETE 0
73    dma5chan0-dma5c: verifying source buffer...
74    dma5chan0-dma5c: verifying dest buffer...
75    dma5chan0-dma5c: #1: No errors with
76    src_off=0x458 dst_off=0xf08 len=0xcb0
77    align 3
78    sdr,ddc hw_init mode 0
79    sdr,ddc hw_init mode DDC_AXIS_LOOP_BACK
80    sdr,ddc hw_init err 0
81    tx_tmo 100 status 0 len 8112 DMA_COMPLETE 0
82    dma5chan0-dma5c: verifying source buffer...
83    dma5chan0-dma5c: verifying dest buffer...
84    dma5chan0-dma5c: #2: No errors with
85    src_off=0x10 dst_off=0x20 len=0x1fb0
86    align 3
87    sdr,ddc hw_init mode 0
88    sdr,ddc hw_init mode DDC_AXIS_LOOP_BACK
89    sdr,ddc hw_init err 0
90    tx_tmo 100 status 0 len 840 DMA_COMPLETE 0
91    dma5chan0-dma5c: verifying source buffer...
92    dma5chan0-dma5c: verifying dest buffer...
93    dma5chan0-dma5c: #3: No errors with
94    src_off=0x1890 dst_off=0x1268 len=0x348
95    align 3
96    sdr,ddc hw_init mode 0
97    sdr,ddc hw_init mode DDC_AXIS_LOOP_BACK
98    sdr,ddc hw_init err 0
99    tx_tmo 100 status 0 len 7816 DMA_COMPLETE 0
100    dma5chan0-dma5c: verifying source buffer...
101    dma5chan0-dma5c: verifying dest buffer...
102    dma5chan0-dma5c: #4: No errors with
103    src_off=0x80 dst_off=0x168 len=0x1e88
104    dma5chan0-dma5c: terminating after 5 tests, 0 failures (status 0)
105
106