1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0 */
2f1df9364SStefan Roese /*
3f1df9364SStefan Roese  * Copyright (C) Marvell International Ltd. and its affiliates
4f1df9364SStefan Roese  */
5f1df9364SStefan Roese 
6f1df9364SStefan Roese #ifndef _DDR3_TRAINING_IP_PBS_H_
7f1df9364SStefan Roese #define _DDR3_TRAINING_IP_PBS_H_
8f1df9364SStefan Roese 
9f1df9364SStefan Roese enum {
10f1df9364SStefan Roese 	EBA_CONFIG,
11f1df9364SStefan Roese 	EEBA_CONFIG,
12f1df9364SStefan Roese 	SBA_CONFIG
13f1df9364SStefan Roese };
14f1df9364SStefan Roese 
15f1df9364SStefan Roese enum hws_training_load_op {
16f1df9364SStefan Roese 	TRAINING_LOAD_OPERATION_UNLOAD,
17f1df9364SStefan Roese 	TRAINING_LOAD_OPERATION_LOAD
18f1df9364SStefan Roese };
19f1df9364SStefan Roese 
20f1df9364SStefan Roese enum hws_edge {
21f1df9364SStefan Roese 	TRAINING_EDGE_1,
22f1df9364SStefan Roese 	TRAINING_EDGE_2
23f1df9364SStefan Roese };
24f1df9364SStefan Roese 
25f1df9364SStefan Roese enum hws_edge_search {
26f1df9364SStefan Roese 	TRAINING_EDGE_MAX,
27f1df9364SStefan Roese 	TRAINING_EDGE_MIN
28f1df9364SStefan Roese };
29f1df9364SStefan Roese 
30f1df9364SStefan Roese enum pbs_dir {
31f1df9364SStefan Roese 	PBS_TX_MODE = 0,
32f1df9364SStefan Roese 	PBS_RX_MODE,
33f1df9364SStefan Roese 	NUM_OF_PBS_MODES
34f1df9364SStefan Roese };
35f1df9364SStefan Roese 
36f1df9364SStefan Roese int ddr3_tip_pbs_rx(u32 dev_num);
37f1df9364SStefan Roese int ddr3_tip_print_all_pbs_result(u32 dev_num);
38f1df9364SStefan Roese int ddr3_tip_pbs_tx(u32 dev_num);
39f1df9364SStefan Roese 
40f1df9364SStefan Roese #endif /* _DDR3_TRAINING_IP_PBS_H_ */
41