Merge branch 'master' of git://git.denx.de/u-boot-fdt
[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_dprc.h>
20 #include <fsl-mc/fsl_dpbp.h>
21
22 extern struct fsl_mc_io *dflt_mc_io;
23
24 /**
25  * struct dpbp_node - DPBP strucuture
26  * @uint16_t handle: DPBP object handle
27  * @int dpbp_id: DPBP id
28  */
29 struct fsl_dpbp_obj {
30         uint16_t dpbp_handle;
31         struct dpbp_attr dpbp_attr;
32 };
33
34 extern struct fsl_dpbp_obj *dflt_dpbp;
35
36 /**
37  * struct fsl_dpio_obj - DPIO strucuture
38  * @int dpio_id: DPIO id
39  * @struct qbman_swp *sw_portal: SW portal object
40  */
41 struct fsl_dpio_obj {
42         int dpio_id;
43         struct qbman_swp *sw_portal; /** SW portal object */
44 };
45
46 extern struct fsl_dpio_obj *dflt_dpio;
47
48 int mc_init(void);
49 int ldpaa_eth_init(struct dprc_obj_desc obj_desc);
50 #endif /* _FSL_MC_PRIVATE_H_ */