cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

coresight-cfg-preload.c (866B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * Copyright(C) 2020 Linaro Limited. All rights reserved.
      4 * Author: Mike Leach <mike.leach@linaro.org>
      5 */
      6
      7#include "coresight-cfg-preload.h"
      8#include "coresight-config.h"
      9#include "coresight-syscfg.h"
     10
     11/* Basic features and configurations pre-loaded on initialisation */
     12
     13static struct cscfg_feature_desc *preload_feats[] = {
     14#if IS_ENABLED(CONFIG_CORESIGHT_SOURCE_ETM4X)
     15	&strobe_etm4x,
     16#endif
     17	NULL
     18};
     19
     20static struct cscfg_config_desc *preload_cfgs[] = {
     21#if IS_ENABLED(CONFIG_CORESIGHT_SOURCE_ETM4X)
     22	&afdo_etm4x,
     23#endif
     24	NULL
     25};
     26
     27static struct cscfg_load_owner_info preload_owner = {
     28	.type = CSCFG_OWNER_PRELOAD,
     29};
     30
     31/* preload called on initialisation */
     32int cscfg_preload(void *owner_handle)
     33{
     34	preload_owner.owner_handle = owner_handle;
     35	return cscfg_load_config_sets(preload_cfgs, preload_feats, &preload_owner);
     36}