Lines Matching +full:full +full:- +full:bit

1 /* SPDX-License-Identifier: GPL-2.0 */
10 #include <linux/dma-mapping.h>
45 /* TMC_CTL - 0x020 */
46 #define TMC_CTL_CAPT_EN BIT(0)
47 /* TMC_STS - 0x00C */
49 #define TMC_STS_FULL BIT(0)
50 #define TMC_STS_TRIGGERED BIT(1)
51 #define TMC_STS_MEMERR BIT(5)
53 * TMC_AXICTL - 0x110
55 * TMC AXICTL format for SoC-400
56 * Bits [0-1] : ProtCtrlBit0-1
57 * Bits [2-5] : CacheCtrlBits 0-3 (AXCACHE)
58 * Bit 6 : Reserved
59 * Bit 7 : ScatterGatherMode
60 * Bits [8-11] : WrBurstLen
61 * Bits [12-31] : Reserved.
62 * TMC AXICTL format for SoC-600, as above except:
63 * Bits [2-5] : AXI WCACHE
64 * Bits [16-19] : AXI RCACHE
65 * Bits [20-31] : Reserved
70 #define TMC_AXICTL_PROT_CTL_B0 BIT(0)
71 #define TMC_AXICTL_PROT_CTL_B1 BIT(1)
72 #define TMC_AXICTL_SCT_GAT_MODE BIT(7)
75 /* Write-back Read and Write-allocate */
79 /* TMC_FFCR - 0x304 */
81 #define TMC_FFCR_EN_FMT BIT(0)
82 #define TMC_FFCR_EN_TI BIT(1)
83 #define TMC_FFCR_FON_FLIN BIT(4)
84 #define TMC_FFCR_FON_TRIG_EVT BIT(5)
85 #define TMC_FFCR_TRIGON_TRIGIN BIT(8)
86 #define TMC_FFCR_STOP_ON_FLUSH BIT(12)
89 #define TMC_DEVID_NOSCAT BIT(24)
91 #define TMC_DEVID_AXIAW_VALID BIT(16)
116 /* TMC ETR Capability bit definitions */
121 * TMC_ETR_SAVE_RESTORE - Values of RRP/RWP/STS.Full are
124 * the RRP/RWP/STS.Full should always be programmed to the correct
130 /* Coresight SoC-600 TMC-ETR unadvertised capabilities */
136 ETR_MODE_ETR_SG, /* Uses in-built TMC ETR SG mechanism */
144 * struct etr_buf - Details of the buffer used by ETR
147 * @full : Trace data overflow
158 bool full; member
168 * struct tmc_drvdata - specifics associated to an TMC component
176 * @etr_buf: details of buffer used in TMC-ETR
180 * TMC-ETR on AXI bus.
228 * struct tmc_pages - Collection of pages used for SG.
240 * struct tmc_sg_table - Generic SG table for TMC
287 return csdev_access_relaxed_read_pair(&drvdata->csdev->access, lo_off, hi_off); \
292 csdev_access_relaxed_write_pair(&drvdata->csdev->access, val, lo_off, hi_off); \
302 WARN_ON(drvdata->etr_caps); in TMC_REG_PAIR()
303 drvdata->etr_caps = dev_caps; in TMC_REG_PAIR()
308 drvdata->etr_caps |= cap; in tmc_etr_set_cap()
313 return !!(drvdata->etr_caps & cap); in tmc_etr_has_cap()
330 return (unsigned long)sg_table->data_pages.nr_pages << PAGE_SHIFT; in tmc_sg_table_buf_size()