1 /*
2  * Copyright (c) 2017 - 2020, Broadcom
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef FSX_H
8 #define FSX_H
9 
10 #include <stdbool.h>
11 
12 typedef enum FSX_TYPE {
13 	eFS4_RAID,
14 	eFS4_CRYPTO,
15 	eFS6_PKI,
16 } eFSX_TYPE;
17 
18 void fsx_init(eFSX_TYPE fsx_type,
19 	      unsigned int ring_count,
20 	      unsigned int dme_count,
21 	      unsigned int ae_count,
22 	      unsigned int start_stream_id,
23 	      unsigned int msi_dev_id,
24 	      uintptr_t idm_io_control_direct,
25 	      uintptr_t idm_reset_control,
26 	      uintptr_t base,
27 	      uintptr_t dme_base);
28 
29 void fsx_meminit(const char *name,
30 		 uintptr_t idm_io_control_direct,
31 		 uintptr_t idm_io_status);
32 
33 void fs4_disable_clocks(bool disable_sram,
34 			bool disable_crypto,
35 			bool disable_raid);
36 
37 #endif /* FSX_H */
38