162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_cimenuconfig FSL_DPAA 362306a36Sopenharmony_ci bool "QorIQ DPAA1 framework support" 462306a36Sopenharmony_ci depends on ((FSL_SOC_BOOKE || ARCH_LAYERSCAPE) && ARCH_DMA_ADDR_T_64BIT) 562306a36Sopenharmony_ci select GENERIC_ALLOCATOR 662306a36Sopenharmony_ci help 762306a36Sopenharmony_ci The Freescale Data Path Acceleration Architecture (DPAA) is a set of 862306a36Sopenharmony_ci hardware components on specific QorIQ multicore processors. 962306a36Sopenharmony_ci This architecture provides the infrastructure to support simplified 1062306a36Sopenharmony_ci sharing of networking interfaces and accelerators by multiple CPUs. 1162306a36Sopenharmony_ci The major h/w blocks composing DPAA are BMan and QMan. 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci The Buffer Manager (BMan) is a hardware buffer pool management block 1462306a36Sopenharmony_ci that allows software and accelerators on the datapath to acquire and 1562306a36Sopenharmony_ci release buffers in order to build frames. 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ci The Queue Manager (QMan) is a hardware queue management block 1862306a36Sopenharmony_ci that allows software and accelerators on the datapath to enqueue and 1962306a36Sopenharmony_ci dequeue frames in order to communicate. 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ciif FSL_DPAA 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciconfig FSL_DPAA_CHECKING 2462306a36Sopenharmony_ci bool "Additional driver checking" 2562306a36Sopenharmony_ci help 2662306a36Sopenharmony_ci Compiles in additional checks, to sanity-check the drivers and 2762306a36Sopenharmony_ci any use of the exported API. Not recommended for performance. 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ciconfig FSL_BMAN_TEST 3062306a36Sopenharmony_ci tristate "BMan self-tests" 3162306a36Sopenharmony_ci help 3262306a36Sopenharmony_ci Compile the BMan self-test code. These tests will 3362306a36Sopenharmony_ci exercise the BMan APIs to confirm functionality 3462306a36Sopenharmony_ci of both the software drivers and hardware device. 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ciconfig FSL_BMAN_TEST_API 3762306a36Sopenharmony_ci bool "High-level API self-test" 3862306a36Sopenharmony_ci depends on FSL_BMAN_TEST 3962306a36Sopenharmony_ci default y 4062306a36Sopenharmony_ci help 4162306a36Sopenharmony_ci This requires the presence of cpu-affine portals, and performs 4262306a36Sopenharmony_ci high-level API testing with them (whichever portal(s) are affine 4362306a36Sopenharmony_ci to the cpu(s) the test executes on). 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ciconfig FSL_QMAN_TEST 4662306a36Sopenharmony_ci tristate "QMan self-tests" 4762306a36Sopenharmony_ci help 4862306a36Sopenharmony_ci Compile self-test code for QMan. 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ciconfig FSL_QMAN_TEST_API 5162306a36Sopenharmony_ci bool "QMan high-level self-test" 5262306a36Sopenharmony_ci depends on FSL_QMAN_TEST 5362306a36Sopenharmony_ci default y 5462306a36Sopenharmony_ci help 5562306a36Sopenharmony_ci This requires the presence of cpu-affine portals, and performs 5662306a36Sopenharmony_ci high-level API testing with them (whichever portal(s) are affine to 5762306a36Sopenharmony_ci the cpu(s) the test executes on). 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ciconfig FSL_QMAN_TEST_STASH 6062306a36Sopenharmony_ci bool "QMan 'hot potato' data-stashing self-test" 6162306a36Sopenharmony_ci depends on FSL_QMAN_TEST 6262306a36Sopenharmony_ci default y 6362306a36Sopenharmony_ci help 6462306a36Sopenharmony_ci This performs a "hot potato" style test enqueuing/dequeuing a frame 6562306a36Sopenharmony_ci across a series of FQs scheduled to different portals (and cpus), with 6662306a36Sopenharmony_ci DQRR, data and context stashing always on. 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ciendif # FSL_DPAA 69