18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci *    driver for Microsemi PQI-based storage controllers
48c2ecf20Sopenharmony_ci *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
58c2ecf20Sopenharmony_ci *    Copyright (c) 2016-2018 Microsemi Corporation
68c2ecf20Sopenharmony_ci *    Copyright (c) 2016 PMC-Sierra, Inc.
78c2ecf20Sopenharmony_ci *
88c2ecf20Sopenharmony_ci *    Questions/Comments/Bugfixes to storagedev@microchip.com
98c2ecf20Sopenharmony_ci *
108c2ecf20Sopenharmony_ci */
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci#if !defined(_SMARTPQI_SIS_H)
138c2ecf20Sopenharmony_ci#define _SMARTPQI_SIS_H
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciint sis_wait_for_ctrl_ready(struct pqi_ctrl_info *ctrl_info);
168c2ecf20Sopenharmony_ciint sis_wait_for_ctrl_ready_resume(struct pqi_ctrl_info *ctrl_info);
178c2ecf20Sopenharmony_cibool sis_is_firmware_running(struct pqi_ctrl_info *ctrl_info);
188c2ecf20Sopenharmony_cibool sis_is_kernel_up(struct pqi_ctrl_info *ctrl_info);
198c2ecf20Sopenharmony_ciint sis_get_ctrl_properties(struct pqi_ctrl_info *ctrl_info);
208c2ecf20Sopenharmony_ciint sis_get_pqi_capabilities(struct pqi_ctrl_info *ctrl_info);
218c2ecf20Sopenharmony_ciint sis_init_base_struct_addr(struct pqi_ctrl_info *ctrl_info);
228c2ecf20Sopenharmony_civoid sis_enable_msix(struct pqi_ctrl_info *ctrl_info);
238c2ecf20Sopenharmony_civoid sis_enable_intx(struct pqi_ctrl_info *ctrl_info);
248c2ecf20Sopenharmony_civoid sis_shutdown_ctrl(struct pqi_ctrl_info *ctrl_info);
258c2ecf20Sopenharmony_ciint sis_pqi_reset_quiesce(struct pqi_ctrl_info *ctrl_info);
268c2ecf20Sopenharmony_ciint sis_reenable_sis_mode(struct pqi_ctrl_info *ctrl_info);
278c2ecf20Sopenharmony_civoid sis_write_driver_scratch(struct pqi_ctrl_info *ctrl_info, u32 value);
288c2ecf20Sopenharmony_ciu32 sis_read_driver_scratch(struct pqi_ctrl_info *ctrl_info);
298c2ecf20Sopenharmony_civoid sis_soft_reset(struct pqi_ctrl_info *ctrl_info);
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci#endif	/* _SMARTPQI_SIS_H */
32