Lines Matching +full:non +full:- +full:coresight
1 /* SPDX-License-Identifier: GPL-2.0 */
17 /* Peripheral id registers (0xFD0-0xFEC) */
26 /* Component id registers (0xFF0-0xFFC) */
78 * union coresight_dev_subtype - further characterisation of a type
99 * struct coresight_platform_data - data harvested from the firmware
118 * struct csdev_access - Abstraction of a CoreSight device access.
144 * struct coresight_desc - description of a component required from drivers
152 * in the component's sysfs sub-directory.
153 * @name: name for the coresight device, also shown under sysfs.
168 * struct coresight_connection - representation of a single connection
182 * +-----------------------------+ +-----------------------------+
184 * |-----------------------------| |-----------------------------|
186 * | | | dest_dev*|<--
187 * |pdata->out_conns[nr_outconns]|<->|src_dev* | |
189 * +-----------------------------+ +-----------------------------+ |
191 * +-----------------------------+ |
193 * |------------------------------ |
195 * | pdata->in_conns[nr_inconns]|<--
197 * +-----------------------------+
213 * struct coresight_sysfs_link - representation of a connection in sysfs.
214 * @orig: Originating (master) coresight device for the link.
215 * @orig_name: Name to use for the link orig->target.
216 * @target: Target (slave) coresight device for the link.
217 * @target_name: Name to use for the link target->orig.
245 * struct coresight_device - representation of a device as used by the framework
256 * but wherever it's done from within the Coresight device's lock,
257 * a non-atomic read would also work. This is the main point of
309 * coresight_dev_list - Mapping for devices to "name" index for device
338 #define source_ops(csdev) csdev->ops->source_ops
339 #define sink_ops(csdev) csdev->ops->sink_ops
340 #define link_ops(csdev) csdev->ops->link_ops
341 #define helper_ops(csdev) csdev->ops->helper_ops
342 #define ect_ops(csdev) csdev->ops->ect_ops
345 * struct coresight_ops_sink - basic operations for a sink
367 * struct coresight_ops_link - basic operations for a link
382 * struct coresight_ops_source - basic operations for a source
398 * struct coresight_ops_helper - Operations for a helper device.
422 if (likely(csa->io_mem))
423 return readl_relaxed(csa->base + offset);
425 return csa->read(offset, true, false);
452 * clk - Clock is found and enabled
453 * NULL - clock is not found
454 * ERROR - Clock is found but failed to enable
488 if (likely(csa->io_mem)) {
489 return readl_relaxed(csa->base + lo_offset) |
490 ((u64)readl_relaxed(csa->base + hi_offset) << 32);
493 return csa->read(lo_offset, true, false) | (csa->read(hi_offset, true, false) << 32);
499 if (likely(csa->io_mem)) {
500 writel_relaxed((u32)val, csa->base + lo_offset);
501 writel_relaxed((u32)(val >> 32), csa->base + hi_offset);
503 csa->write((u32)val, lo_offset, true, false);
504 csa->write((u32)(val >> 32), hi_offset, true, false);
510 if (likely(csa->io_mem))
511 return readl(csa->base + offset);
513 return csa->read(offset, false, false);
519 if (likely(csa->io_mem))
520 writel_relaxed(val, csa->base + offset);
522 csa->write(val, offset, true, false);
527 if (likely(csa->io_mem))
528 writel(val, csa->base + offset);
530 csa->write(val, offset, false, false);
538 if (likely(csa->io_mem))
539 return readq_relaxed(csa->base + offset);
541 return csa->read(offset, true, true);
546 if (likely(csa->io_mem))
547 return readq(csa->base + offset);
549 return csa->read(offset, false, true);
555 if (likely(csa->io_mem))
556 writeq_relaxed(val, csa->base + offset);
558 csa->write(val, offset, true, true);
563 if (likely(csa->io_mem))
564 writeq(val, csa->base + offset);
566 csa->write(val, offset, false, true);
598 return csdev && (csdev->type == CORESIGHT_DEV_TYPE_SOURCE);
604 (csdev->subtype.source_subtype == CORESIGHT_DEV_SUBTYPE_SOURCE_PROC);
609 return csdev && (csdev->type == CORESIGHT_DEV_TYPE_SINK) &&
610 (csdev->subtype.sink_subtype == CORESIGHT_DEV_SUBTYPE_SINK_PERCPU_SYSMEM);
620 return local_cmpxchg(&csdev->mode, CS_MODE_DISABLED, new_mode) ==
626 return local_read(&csdev->mode);
642 local_set(&csdev->mode, new_mode);