* refs/heads/tmp-d92620d: BACKPORT: media: v4l2-ctrl: Add base layer priority id control. ANDROID: GKI: defconfig: disable CONFIG_ION ANDROID: scsi: ufs: replace variants with android vendor hooks BACKPORT: media: v4l2-ctrl: Add layer wise bitrate controls for h264 BACKPORT: media: v4l2-ctrl: Add frame-specific min/max qp controls for hevc FROMLIST: dts: bindings: Document device tree bindings for Arm TRBE FROMLIST: coresight: sink: Add TRBE driver FROMLIST: coresight: core: Add support for dedicated percpu sinks FROMLIST: coresight: etm-perf: Handle stale output handles FROMLIST: dts: bindings: Document device tree bindings for ETE FROMLIST: coresight: ete: Add support for ETE tracing FROMLIST: coresight: ete: Add support for ETE sysreg access FROMLIST: coresight: etm4x: Add support for PE OS lock FROMLIST: coresight: Do not scan for graph if none is present FROMLIST: coresight: etm-perf: Allow an event to use different sinks FROMLIST: coresight: etm4x: Move ETM to prohibited region for disable FROMLIST: arm64: kvm: Enable access to TRBE support for host FROMLIST: arm64: Add TRBE definitions FROMLIST: arm64: Add support for trace synchronization barrier FROMLIST: kvm: arm64: Disable guest access to trace filter controls FROMLIST: kvm: arm64: nvhe: Save the SPE context early FROMLIST: kvm: arm64: Hide system instruction access to Trace registers FROMLIST: perf: aux: Add CoreSight PMU buffer formats FROMLIST: perf: aux: Add flags for the buffer format UPSTREAM: Documentation: coresight: Add PID tracing description UPSTREAM: coresight: etm-perf: Support PID tracing for kernel at EL2 UPSTREAM: coresight: etm-perf: Clarify comment on perf options UPSTREAM: coresight: etm4x: Fix merge resolution for amba rework UPSTREAM: coresight: etm4x: Handle accesses to TRCSTALLCTLR UPSTREAM: coresight: Add support for v8.4 SelfHosted tracing UPSTREAM: arm64: Add TRFCR_ELx definitions UPSTREAM: dts: bindings: coresight: ETM system register access only units UPSTREAM: coresight: etm4x: Add support for sysreg only devices UPSTREAM: coresight: etm4x: Run arch feature detection on the CPU UPSTREAM: coresight: etm4x: Refactor probing routine UPSTREAM: coresight: etm4x: Detect system instructions support UPSTREAM: coresight: etm4x: Add necessary synchronization for sysreg access UPSTREAM: coresight: etm4x: Expose trcdevarch via sysfs UPSTREAM: coresight: etm4x: Use TRCDEVARCH for component discovery UPSTREAM: coresight: etm4x: Detect access early on the target CPU UPSTREAM: coresight: etm4x: Handle ETM architecture version UPSTREAM: coresight: etm4x: Clean up exception level masks UPSTREAM: coresight: etm4x: Cleanup secure exception level masks UPSTREAM: coresight: etm4x: Check for Software Lock UPSTREAM: coresight: etm4x: Define DEVARCH register fields UPSTREAM: coresight: etm4x: Hide sysfs attributes for unavailable registers UPSTREAM: coresight: etm4x: Add sysreg access helpers UPSTREAM: coresight: etm4x: Add commentary on the registers UPSTREAM: coresight: etm4x: Make offset available for sysfs attributes UPSTREAM: coresight: etm4x: Convert all register accesses UPSTREAM: coresight: etm4x: Always read the registers on the host CPU UPSTREAM: coresight: Convert claim/disclaim operations to use access wrappers UPSTREAM: coresight: Convert coresight_timeout to use access abstraction UPSTREAM: coresight: tpiu: Prepare for using coresight device access abstraction UPSTREAM: coresight: Introduce device access abstraction UPSTREAM: coresight: etm4x: Skip accessing TRCPDCR in save/restore UPSTREAM: coresight: etm4x: Handle access to TRCSSPCICRn UPSTREAM: coresight: etm4x: add AMBA id for Cortex-A55 and Cortex-A75 UPSTREAM: coresight: cti: Reduce scope for the variable 'cs_fwnode' in cti_plat_create_connection() BACKPORT: UPSTREAM: amba: Make the remove callback return void UPSTREAM: coresight: etm4x: Modify core-commit to avoid HiSilicon ETM overflow ANDROID: GKI: Enable CONFIG_NETFILTER_XT_TARGET_TEE=y ANDROID: GKI: Update abi_gki_aarch64_qcom for zram and zsmalloc ANDROID: sched/rt: Only enable RT sync for SMP targets UPSTREAM: kfence: report sensitive information based on no_hash_pointers ANDROID: Incremental fs: set the correct access to mapped files ANDROID: Incremental fs: Build merkle tree when enabling verity ANDROID: Incremental fs: Add FS_IOC_MEASURE_VERITY ANDROID: Incremental fs: Store fs-verity state in backing file ANDROID: Incremental fs: Add FS_IOC_GETFLAGS ANDROID: Incremental fs: Add FS_IOC_ENABLE_VERITY ANDROID: fs-verity: Export function to check signatures ANDROID: Incremental fs: Fix memory leak on closing file ANDROID: Incremental fs: inotify on create mapped file ANDROID: Incremental fs: inotify support fs-verity: support reading signature with ioctl fs-verity: support reading descriptor with ioctl fs-verity: support reading Merkle tree with ioctl fs-verity: add FS_IOC_READ_VERITY_METADATA ioctl fs-verity: don't pass whole descriptor to fsverity_verify_signature() fs-verity: factor out fsverity_get_descriptor() fs: simplify freeze_bdev/thaw_bdev f2fs: remove FAULT_ALLOC_BIO f2fs: use blkdev_issue_flush in __submit_flush_wait f2fs: remove a few bd_part checks Documentation: f2fs: fix typo s/automaic/automatic f2fs: give a warning only for readonly partition f2fs: don't grab superblock freeze for flush/ckpt thread f2fs: add ckpt_thread_ioprio sysfs node f2fs: introduce checkpoint_merge mount option f2fs: relocate inline conversion from mmap() to mkwrite() f2fs: fix a wrong condition in __submit_bio f2fs: remove unnecessary initialization in xattr.c f2fs: fix to avoid inconsistent quota data f2fs: flush data when enabling checkpoint back f2fs: deprecate f2fs_trace_io f2fs: Remove readahead collision detection f2fs: remove unused stat_{inc, dec}_atomic_write f2fs: introduce sb_status sysfs node f2fs: fix to use per-inode maxbytes f2fs: compress: fix potential deadlock libfs: unexport generic_ci_d_compare() and generic_ci_d_hash() f2fs: fix to set/clear I_LINKABLE under i_lock f2fs: fix null page reference in redirty_blocks f2fs: clean up post-read processing f2fs: trival cleanup in move_data_block() f2fs: fix out-of-repair __setattr_copy() f2fs: fix to tag FIEMAP_EXTENT_MERGED in f2fs_fiemap() f2fs: introduce a new per-sb directory in sysfs f2fs: compress: support compress level f2fs: compress: deny setting unsupported compress algorithm f2fs: relocate f2fs_precache_extents() f2fs: enforce the immutable flag on open files f2fs: enhance to update i_mode and acl atomically in f2fs_setattr() f2fs: fix to set inode->i_mode correctly for posix_acl_update_mode f2fs: Replace expression with offsetof() f2fs: handle unallocated section and zone on pinned/atgc Conflicts: Documentation/devicetree/bindings Documentation/devicetree/bindings/arm/coresight.txt drivers/hwtracing/coresight/Kconfig drivers/hwtracing/coresight/coresight-core.c include/linux/coresight.h Change-Id: I88ddc19d690ecf6657527b172bd7b2602fcc2c8c Signed-off-by: Ivaylo Georgiev <irgeorgiev@codeaurora.org>
47 lines
1.3 KiB
C
47 lines
1.3 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* Copyright(C) 2015 Linaro Limited. All rights reserved.
|
|
* Author: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
*/
|
|
|
|
#ifndef _LINUX_CORESIGHT_PMU_H
|
|
#define _LINUX_CORESIGHT_PMU_H
|
|
|
|
#define CORESIGHT_ETM_PMU_NAME "cs_etm"
|
|
#define CORESIGHT_ETM_PMU_SEED 0x01
|
|
|
|
/*
|
|
* Below are the definition of bit offsets for perf option, and works as
|
|
* arbitrary values for all ETM versions.
|
|
*
|
|
* Most of them are orignally from ETMv3.5/PTM's ETMCR config, therefore,
|
|
* ETMv3.5/PTM doesn't define ETMCR config bits with prefix "ETM3_" and
|
|
* directly use below macros as config bits.
|
|
*/
|
|
#define ETM_OPT_CYCACC 12
|
|
#define ETM_OPT_CTXTID 14
|
|
#define ETM_OPT_CTXTID2 15
|
|
#define ETM_OPT_TS 28
|
|
#define ETM_OPT_RETSTK 29
|
|
|
|
/* ETMv4 CONFIGR programming bits for the ETM OPTs */
|
|
#define ETM4_CFG_BIT_CYCACC 4
|
|
#define ETM4_CFG_BIT_CTXTID 6
|
|
#define ETM4_CFG_BIT_VMID 7
|
|
#define ETM4_CFG_BIT_TS 11
|
|
#define ETM4_CFG_BIT_RETSTK 12
|
|
#define ETM4_CFG_BIT_VMID_OPT 15
|
|
|
|
static inline int coresight_get_trace_id(int cpu)
|
|
{
|
|
/*
|
|
* A trace ID of value 0 is invalid, so let's start at some
|
|
* random value that fits in 7 bits and go from there. Since
|
|
* the common convention is to have data trace IDs be I(N) + 1,
|
|
* set instruction trace IDs as a function of the CPU number.
|
|
*/
|
|
return (CORESIGHT_ETM_PMU_SEED + cpu);
|
|
}
|
|
|
|
#endif
|