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 13 static struct cscfg_feature_desc *preload_feats[] = { 14 #if IS_ENABLED(CONFIG_CORESIGHT_SOURCE_ETM4X) 15 &strobe_etm4x, 16 #endif 17 NULL 18 }; 19 20 static struct cscfg_config_desc *preload_cfgs[] = { 21 #if IS_ENABLED(CONFIG_CORESIGHT_SOURCE_ETM4X) 22 &afdo_etm4x, 23 #endif 24 NULL 25 }; 26 27 static struct cscfg_load_owner_info preload_owner = { 28 .type = CSCFG_OWNER_PRELOAD, 29 }; 30 31 /* preload called on initialisation */ 32 int 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 } 37