Kevin Barnett | 6c22376 | 2016-06-27 16:41:00 -0500 | [diff] [blame] | 1 | /* |
| 2 | * driver for Microsemi PQI-based storage controllers |
| 3 | * Copyright (c) 2016 Microsemi Corporation |
| 4 | * Copyright (c) 2016 PMC-Sierra, Inc. |
| 5 | * |
| 6 | * This program is free software; you can redistribute it and/or modify |
| 7 | * it under the terms of the GNU General Public License as published by |
| 8 | * the Free Software Foundation; version 2 of the License. |
| 9 | * |
| 10 | * This program is distributed in the hope that it will be useful, |
| 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 12 | * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or |
| 13 | * NON INFRINGEMENT. See the GNU General Public License for more details. |
| 14 | * |
| 15 | * Questions/Comments/Bugfixes to esc.storagedev@microsemi.com |
| 16 | * |
| 17 | */ |
| 18 | |
| 19 | #if !defined(_SMARTPQI_SIS_H) |
| 20 | #define _SMARTPQI_SIS_H |
| 21 | |
| 22 | int sis_wait_for_ctrl_ready(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 061ef06 | 2017-05-03 18:53:05 -0500 | [diff] [blame^] | 23 | int sis_wait_for_ctrl_ready_resume(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 6c22376 | 2016-06-27 16:41:00 -0500 | [diff] [blame] | 24 | bool sis_is_firmware_running(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 162d775 | 2017-05-03 18:52:46 -0500 | [diff] [blame] | 25 | bool sis_is_kernel_up(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 6c22376 | 2016-06-27 16:41:00 -0500 | [diff] [blame] | 26 | int sis_get_ctrl_properties(struct pqi_ctrl_info *ctrl_info); |
| 27 | int sis_get_pqi_capabilities(struct pqi_ctrl_info *ctrl_info); |
| 28 | int sis_init_base_struct_addr(struct pqi_ctrl_info *ctrl_info); |
| 29 | void sis_enable_msix(struct pqi_ctrl_info *ctrl_info); |
| 30 | void sis_disable_msix(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 061ef06 | 2017-05-03 18:53:05 -0500 | [diff] [blame^] | 31 | void sis_enable_intx(struct pqi_ctrl_info *ctrl_info); |
| 32 | void sis_disable_intx(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 6c22376 | 2016-06-27 16:41:00 -0500 | [diff] [blame] | 33 | void sis_soft_reset(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 5b0fba0 | 2017-05-03 18:52:40 -0500 | [diff] [blame] | 34 | void sis_shutdown_ctrl(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 6c22376 | 2016-06-27 16:41:00 -0500 | [diff] [blame] | 35 | int sis_reenable_sis_mode(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | ff6abb7 | 2016-08-31 14:54:41 -0500 | [diff] [blame] | 36 | void sis_write_driver_scratch(struct pqi_ctrl_info *ctrl_info, u32 value); |
| 37 | u32 sis_read_driver_scratch(struct pqi_ctrl_info *ctrl_info); |
Kevin Barnett | 6c22376 | 2016-06-27 16:41:00 -0500 | [diff] [blame] | 38 | |
| 39 | #endif /* _SMARTPQI_SIS_H */ |