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)
74 /* Write-back Read and Write-allocate */
78 /* TMC_FFCR - 0x304 */
80 #define TMC_FFCR_EN_FMT BIT(0)
81 #define TMC_FFCR_EN_TI BIT(1)
82 #define TMC_FFCR_FON_FLIN BIT(4)
83 #define TMC_FFCR_FON_TRIG_EVT BIT(5)
84 #define TMC_FFCR_TRIGON_TRIGIN BIT(8)
85 #define TMC_FFCR_STOP_ON_FLUSH BIT(12)
88 #define TMC_DEVID_NOSCAT BIT(24)
90 #define TMC_DEVID_AXIAW_VALID BIT(16)
115 /* TMC ETR Capability bit definitions */
120 * TMC_ETR_SAVE_RESTORE - Values of RRP/RWP/STS.Full are
123 * the RRP/RWP/STS.Full should always be programmed to the correct
129 /* Coresight SoC-600 TMC-ETR unadvertised capabilities */
135 ETR_MODE_ETR_SG, /* Uses in-built TMC ETR SG mechanism */
142 * struct etr_buf - Details of the buffer used by ETR
145 * @full : Trace data overflow
156 bool full; member
166 * struct tmc_drvdata - specifics associated to an TMC component
174 * @etr_buf: details of buffer used in TMC-ETR
222 * struct tmc_pages - Collection of pages used for SG.
234 * struct tmc_sg_table - Generic SG table for TMC
281 return coresight_read_reg_pair(drvdata->base, lo_off, hi_off); \
286 coresight_write_reg_pair(drvdata->base, val, lo_off, hi_off); \
296 WARN_ON(drvdata->etr_caps); in TMC_REG_PAIR()
297 drvdata->etr_caps = dev_caps; in TMC_REG_PAIR()
302 drvdata->etr_caps |= cap; in tmc_etr_set_cap()
307 return !!(drvdata->etr_caps & cap); in tmc_etr_has_cap()
324 return sg_table->data_pages.nr_pages << PAGE_SHIFT; in tmc_sg_table_buf_size()