driver/fsl-mc: Add support of MC Flibs
[platform/kernel/u-boot.git] / include / fsl-mc / fsl_mc_private.h
1 /*
2  * Copyright (C) 2014 Freescale Semiconductor
3  *
4  * SPDX-License-Identifier:     GPL-2.0+
5  */
6
7 #ifndef _FSL_MC_PRIVATE_H_
8 #define _FSL_MC_PRIVATE_H_
9
10 #include <errno.h>
11 #include <malloc.h>
12 #include <asm/io.h>
13 #include <linux/compat.h>
14 #include <linux/types.h>
15 #include <linux/stringify.h>
16
17 #include <fsl-mc/fsl_mc_sys.h>
18 #include <fsl-mc/fsl_mc_cmd.h>
19 #include <fsl-mc/fsl_dpbp.h>
20
21 extern struct fsl_mc_io *dflt_mc_io;
22
23 /**
24  * struct dpbp_node - DPBP strucuture
25  * @uint16_t handle: DPBP object handle
26  * @int dpbp_id: DPBP id
27  */
28 struct fsl_dpbp_obj {
29         uint16_t dpbp_handle;
30         struct dpbp_attr dpbp_attr;
31 };
32
33 extern struct fsl_dpbp_obj *dflt_dpbp;
34
35 /**
36  * struct fsl_dpio_obj - DPIO strucuture
37  * @int dpio_id: DPIO id
38  * @struct qbman_swp *sw_portal: SW portal object
39  */
40 struct fsl_dpio_obj {
41         int dpio_id;
42         struct qbman_swp *sw_portal; /** SW portal object */
43 };
44
45 extern struct fsl_dpio_obj *dflt_dpio;
46
47 int mc_init(void);
48 #endif /* _FSL_MC_PRIVATE_H_ */