Lines Matching +full:canfd +full:- +full:2

2  * SPDX-License-Identifier: MIT
4 * QTests for the Xilinx Versal CANFD controller.
8 * Written-by: Vikram Garhwal<vikram.garhwal@amd.com>
57 /* CANFD modes. */
63 /* CANFD status. */
73 /* We are sending one canfd message. */
84 /* CANFD frame size ID, DLC and 16 DATA word. */
86 /* CAN frame size ID, DLC and 2 DATA word. */
89 /* Set the filters for CANFD controller. */
170 /* Generate random TX data for CANFD frame. */ in generate_random_data()
172 for (int i = 0; i < CANFD_FRAME_SIZE - 2; i++) { in generate_random_data()
173 buf_tx[2 + i] = g_random_int(); in generate_random_data()
177 for (int i = 0; i < CAN_FRAME_SIZE - 2; i++) { in generate_random_data()
178 buf_tx[2 + i] = g_random_int(); in generate_random_data()
191 /* Read the interrupt on CANFD rx. */ in read_data()
206 /* Read the RX register data for CANFD. */ in read_data()
210 for (int i = 0; i < frame_size - 2; i++) { in read_data()
211 buf_rx[i + 2] = qtest_readl(qts, in read_data()
222 /* Write the TX register data for CANFD. */ in write_data()
227 for (int i = 0; i < CANFD_FRAME_SIZE - 2; i++) { in write_data()
229 buf_tx[2 + i]); in write_data()
232 qtest_writel(qts, can_base_addr + R_TXDATA1_OFFSET, buf_tx[2]); in write_data()
244 /* Read the interrupt on CANFD for tx. */ in send_data()
275 * Xilinx CANFD supports both CAN and CANFD frames. This test will be
277 * canbus. CANFD0 initiate the data transfer to can-bus, CANFD1 receives the
290 QTestState *qts = qtest_init("-machine xlnx-versal-virt" in test_can_data_transfer()
291 " -object can-bus,id=canbus" in test_can_data_transfer()
292 " -machine canbus0=canbus" in test_can_data_transfer()
293 " -machine canbus1=canbus" in test_can_data_transfer()
317 * This test will be transferring CANFD frame i.e. 64 bytes of data from CANFD0
318 * and CANFD1 through canbus. CANFD0 initiate the data transfer to can-bus,
319 * CANFD1 receives the data. Test compares the CANFD frame data sent from CANFD0
330 QTestState *qts = qtest_init("-machine xlnx-versal-virt" in test_canfd_data_transfer()
331 " -object can-bus,id=canbus" in test_canfd_data_transfer()
332 " -machine canbus0=canbus" in test_canfd_data_transfer()
333 " -machine canbus1=canbus" in test_canfd_data_transfer()
359 * respective CANFD Controller.
369 QTestState *qts = qtest_init("-machine xlnx-versal-virt" in test_can_loopback()
370 " -object can-bus,id=canbus" in test_can_loopback()
371 " -machine canbus0=canbus" in test_can_loopback()
372 " -machine canbus1=canbus" in test_can_loopback()
407 qtest_add_func("/net/canfd/can_data_transfer", test_can_data_transfer); in main()
408 qtest_add_func("/net/canfd/canfd_data_transfer", test_canfd_data_transfer); in main()
409 qtest_add_func("/net/canfd/can_loopback", test_can_loopback); in main()