1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyunmenuconfig FSL_DPAA 3*4882a593Smuzhiyun bool "QorIQ DPAA1 framework support" 4*4882a593Smuzhiyun depends on ((FSL_SOC_BOOKE || ARCH_LAYERSCAPE) && ARCH_DMA_ADDR_T_64BIT) 5*4882a593Smuzhiyun select GENERIC_ALLOCATOR 6*4882a593Smuzhiyun help 7*4882a593Smuzhiyun The Freescale Data Path Acceleration Architecture (DPAA) is a set of 8*4882a593Smuzhiyun hardware components on specific QorIQ multicore processors. 9*4882a593Smuzhiyun This architecture provides the infrastructure to support simplified 10*4882a593Smuzhiyun sharing of networking interfaces and accelerators by multiple CPUs. 11*4882a593Smuzhiyun The major h/w blocks composing DPAA are BMan and QMan. 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun The Buffer Manager (BMan) is a hardware buffer pool management block 14*4882a593Smuzhiyun that allows software and accelerators on the datapath to acquire and 15*4882a593Smuzhiyun release buffers in order to build frames. 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun The Queue Manager (QMan) is a hardware queue management block 18*4882a593Smuzhiyun that allows software and accelerators on the datapath to enqueue and 19*4882a593Smuzhiyun dequeue frames in order to communicate. 20*4882a593Smuzhiyun 21*4882a593Smuzhiyunif FSL_DPAA 22*4882a593Smuzhiyun 23*4882a593Smuzhiyunconfig FSL_DPAA_CHECKING 24*4882a593Smuzhiyun bool "Additional driver checking" 25*4882a593Smuzhiyun help 26*4882a593Smuzhiyun Compiles in additional checks, to sanity-check the drivers and 27*4882a593Smuzhiyun any use of the exported API. Not recommended for performance. 28*4882a593Smuzhiyun 29*4882a593Smuzhiyunconfig FSL_BMAN_TEST 30*4882a593Smuzhiyun tristate "BMan self-tests" 31*4882a593Smuzhiyun help 32*4882a593Smuzhiyun Compile the BMan self-test code. These tests will 33*4882a593Smuzhiyun exercise the BMan APIs to confirm functionality 34*4882a593Smuzhiyun of both the software drivers and hardware device. 35*4882a593Smuzhiyun 36*4882a593Smuzhiyunconfig FSL_BMAN_TEST_API 37*4882a593Smuzhiyun bool "High-level API self-test" 38*4882a593Smuzhiyun depends on FSL_BMAN_TEST 39*4882a593Smuzhiyun default y 40*4882a593Smuzhiyun help 41*4882a593Smuzhiyun This requires the presence of cpu-affine portals, and performs 42*4882a593Smuzhiyun high-level API testing with them (whichever portal(s) are affine 43*4882a593Smuzhiyun to the cpu(s) the test executes on). 44*4882a593Smuzhiyun 45*4882a593Smuzhiyunconfig FSL_QMAN_TEST 46*4882a593Smuzhiyun tristate "QMan self-tests" 47*4882a593Smuzhiyun help 48*4882a593Smuzhiyun Compile self-test code for QMan. 49*4882a593Smuzhiyun 50*4882a593Smuzhiyunconfig FSL_QMAN_TEST_API 51*4882a593Smuzhiyun bool "QMan high-level self-test" 52*4882a593Smuzhiyun depends on FSL_QMAN_TEST 53*4882a593Smuzhiyun default y 54*4882a593Smuzhiyun help 55*4882a593Smuzhiyun This requires the presence of cpu-affine portals, and performs 56*4882a593Smuzhiyun high-level API testing with them (whichever portal(s) are affine to 57*4882a593Smuzhiyun the cpu(s) the test executes on). 58*4882a593Smuzhiyun 59*4882a593Smuzhiyunconfig FSL_QMAN_TEST_STASH 60*4882a593Smuzhiyun bool "QMan 'hot potato' data-stashing self-test" 61*4882a593Smuzhiyun depends on FSL_QMAN_TEST 62*4882a593Smuzhiyun default y 63*4882a593Smuzhiyun help 64*4882a593Smuzhiyun This performs a "hot potato" style test enqueuing/dequeuing a frame 65*4882a593Smuzhiyun across a series of FQs scheduled to different portals (and cpus), with 66*4882a593Smuzhiyun DQRR, data and context stashing always on. 67*4882a593Smuzhiyun 68*4882a593Smuzhiyunendif # FSL_DPAA 69