18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_cimenuconfig FSL_DPAA 38c2ecf20Sopenharmony_ci bool "QorIQ DPAA1 framework support" 48c2ecf20Sopenharmony_ci depends on ((FSL_SOC_BOOKE || ARCH_LAYERSCAPE) && ARCH_DMA_ADDR_T_64BIT) 58c2ecf20Sopenharmony_ci select GENERIC_ALLOCATOR 68c2ecf20Sopenharmony_ci help 78c2ecf20Sopenharmony_ci The Freescale Data Path Acceleration Architecture (DPAA) is a set of 88c2ecf20Sopenharmony_ci hardware components on specific QorIQ multicore processors. 98c2ecf20Sopenharmony_ci This architecture provides the infrastructure to support simplified 108c2ecf20Sopenharmony_ci sharing of networking interfaces and accelerators by multiple CPUs. 118c2ecf20Sopenharmony_ci The major h/w blocks composing DPAA are BMan and QMan. 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci The Buffer Manager (BMan) is a hardware buffer pool management block 148c2ecf20Sopenharmony_ci that allows software and accelerators on the datapath to acquire and 158c2ecf20Sopenharmony_ci release buffers in order to build frames. 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci The Queue Manager (QMan) is a hardware queue management block 188c2ecf20Sopenharmony_ci that allows software and accelerators on the datapath to enqueue and 198c2ecf20Sopenharmony_ci dequeue frames in order to communicate. 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ciif FSL_DPAA 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ciconfig FSL_DPAA_CHECKING 248c2ecf20Sopenharmony_ci bool "Additional driver checking" 258c2ecf20Sopenharmony_ci help 268c2ecf20Sopenharmony_ci Compiles in additional checks, to sanity-check the drivers and 278c2ecf20Sopenharmony_ci any use of the exported API. Not recommended for performance. 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ciconfig FSL_BMAN_TEST 308c2ecf20Sopenharmony_ci tristate "BMan self-tests" 318c2ecf20Sopenharmony_ci help 328c2ecf20Sopenharmony_ci Compile the BMan self-test code. These tests will 338c2ecf20Sopenharmony_ci exercise the BMan APIs to confirm functionality 348c2ecf20Sopenharmony_ci of both the software drivers and hardware device. 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ciconfig FSL_BMAN_TEST_API 378c2ecf20Sopenharmony_ci bool "High-level API self-test" 388c2ecf20Sopenharmony_ci depends on FSL_BMAN_TEST 398c2ecf20Sopenharmony_ci default y 408c2ecf20Sopenharmony_ci help 418c2ecf20Sopenharmony_ci This requires the presence of cpu-affine portals, and performs 428c2ecf20Sopenharmony_ci high-level API testing with them (whichever portal(s) are affine 438c2ecf20Sopenharmony_ci to the cpu(s) the test executes on). 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ciconfig FSL_QMAN_TEST 468c2ecf20Sopenharmony_ci tristate "QMan self-tests" 478c2ecf20Sopenharmony_ci help 488c2ecf20Sopenharmony_ci Compile self-test code for QMan. 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ciconfig FSL_QMAN_TEST_API 518c2ecf20Sopenharmony_ci bool "QMan high-level self-test" 528c2ecf20Sopenharmony_ci depends on FSL_QMAN_TEST 538c2ecf20Sopenharmony_ci default y 548c2ecf20Sopenharmony_ci help 558c2ecf20Sopenharmony_ci This requires the presence of cpu-affine portals, and performs 568c2ecf20Sopenharmony_ci high-level API testing with them (whichever portal(s) are affine to 578c2ecf20Sopenharmony_ci the cpu(s) the test executes on). 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ciconfig FSL_QMAN_TEST_STASH 608c2ecf20Sopenharmony_ci bool "QMan 'hot potato' data-stashing self-test" 618c2ecf20Sopenharmony_ci depends on FSL_QMAN_TEST 628c2ecf20Sopenharmony_ci default y 638c2ecf20Sopenharmony_ci help 648c2ecf20Sopenharmony_ci This performs a "hot potato" style test enqueuing/dequeuing a frame 658c2ecf20Sopenharmony_ci across a series of FQs scheduled to different portals (and cpus), with 668c2ecf20Sopenharmony_ci DQRR, data and context stashing always on. 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ciendif # FSL_DPAA 69