xref: /OK3568_Linux_fs/kernel/drivers/soc/fsl/qbman/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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