// SPDX-License-Identifier: GPL-2.0 /* * Support for Intel Camera Imaging ISP subsystem. * Copyright (c) 2010 - 2015, Intel Corporation. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, * version 2, as published by the Free Software Foundation. * * This program is distributed in the hope it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. */ #include "hmm.h" #include "ia_css_types.h" #define __INLINE_SP__ #include "sp.h" #include "assert_support.h" #include "ia_css_spctrl.h" #include "ia_css_debug.h" struct spctrl_context_info { … }; static struct spctrl_context_info spctrl_cofig_info[N_SP_ID]; static bool spctrl_loaded[N_SP_ID] = …; /* Load firmware */ int ia_css_spctrl_load_fw(sp_ID_t sp_id, ia_css_spctrl_cfg *spctrl_cfg) { … } /* ISP2401 */ /* reload pre-loaded FW */ void sh_css_spctrl_reload_fw(sp_ID_t sp_id) { … } ia_css_ptr get_sp_code_addr(sp_ID_t sp_id) { … } int ia_css_spctrl_unload_fw(sp_ID_t sp_id) { … } /* Initialize dmem_cfg in SP dmem and start SP program*/ int ia_css_spctrl_start(sp_ID_t sp_id) { … } /* Query the state of SP1 */ ia_css_spctrl_sp_sw_state ia_css_spctrl_get_state(sp_ID_t sp_id) { … } int ia_css_spctrl_is_idle(sp_ID_t sp_id) { … }