1*97fb5e8dSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2af2c3834SStanimir Varbanov /* 3af2c3834SStanimir Varbanov * Copyright (C) 2017 Linaro Ltd. 4af2c3834SStanimir Varbanov */ 5af2c3834SStanimir Varbanov #ifndef __VENUS_FIRMWARE_H__ 6af2c3834SStanimir Varbanov #define __VENUS_FIRMWARE_H__ 7af2c3834SStanimir Varbanov 8af2c3834SStanimir Varbanov struct device; 9af2c3834SStanimir Varbanov 10f9799fccSStanimir Varbanov int venus_firmware_init(struct venus_core *core); 11f9799fccSStanimir Varbanov void venus_firmware_deinit(struct venus_core *core); 12a4cf7e3cSVikash Garodia int venus_boot(struct venus_core *core); 13df381dc8SVikash Garodia int venus_shutdown(struct venus_core *core); 145df317c8SVikash Garodia int venus_set_hw_state(struct venus_core *core, bool suspend); 155df317c8SVikash Garodia venus_set_hw_state_suspend(struct venus_core * core)165df317c8SVikash Garodiastatic inline int venus_set_hw_state_suspend(struct venus_core *core) 175df317c8SVikash Garodia { 185df317c8SVikash Garodia return venus_set_hw_state(core, false); 195df317c8SVikash Garodia } 205df317c8SVikash Garodia venus_set_hw_state_resume(struct venus_core * core)215df317c8SVikash Garodiastatic inline int venus_set_hw_state_resume(struct venus_core *core) 225df317c8SVikash Garodia { 235df317c8SVikash Garodia return venus_set_hw_state(core, true); 245df317c8SVikash Garodia } 25af2c3834SStanimir Varbanov 26af2c3834SStanimir Varbanov #endif 27