Merge tag 'u-boot-atmel-fixes-2020.07-a' of https://gitlab.denx.de/u-boot/custodians...
[oweals/u-boot.git] / arch / arm / include / asm / arch-imx8 / sci / svc / pad / api.h
1 /* SPDX-License-Identifier:     GPL-2.0+ */
2 /*
3  * Copyright 2018 NXP
4  */
5
6 #ifndef SC_PAD_API_H
7 #define SC_PAD_API_H
8
9 /* Defines for type widths */
10 #define SC_PAD_MUX_W            3U    /* Width of mux parameter */
11
12 /* Defines for sc_pad_config_t */
13 #define SC_PAD_CONFIG_NORMAL    0U      /* Normal */
14 #define SC_PAD_CONFIG_OD        1U      /* Open Drain */
15 #define SC_PAD_CONFIG_OD_IN     2U      /* Open Drain and input */
16 #define SC_PAD_CONFIG_OUT_IN    3U      /* Output and input */
17
18 /* Defines for sc_pad_iso_t */
19 #define SC_PAD_ISO_OFF          0U      /* ISO latch is transparent */
20 #define SC_PAD_ISO_EARLY        1U      /* Follow EARLY_ISO */
21 #define SC_PAD_ISO_LATE         2U      /* Follow LATE_ISO */
22 #define SC_PAD_ISO_ON           3U      /* ISO latched data is held */
23
24 /* Defines for sc_pad_28fdsoi_dse_t */
25 #define SC_PAD_28FDSOI_DSE_18V_1MA      0U /* Drive strength of 1mA for 1.8v */
26 #define SC_PAD_28FDSOI_DSE_18V_2MA      1U /* Drive strength of 2mA for 1.8v */
27 #define SC_PAD_28FDSOI_DSE_18V_4MA      2U /* Drive strength of 4mA for 1.8v */
28 #define SC_PAD_28FDSOI_DSE_18V_6MA      3U /* Drive strength of 6mA for 1.8v */
29 #define SC_PAD_28FDSOI_DSE_18V_8MA      4U /* Drive strength of 8mA for 1.8v */
30 #define SC_PAD_28FDSOI_DSE_18V_10MA     5U /* Drive strength of 10mA for 1.8v */
31 #define SC_PAD_28FDSOI_DSE_18V_12MA     6U /* Drive strength of 12mA for 1.8v */
32 #define SC_PAD_28FDSOI_DSE_18V_HS       7U /* High-speed for 1.8v */
33 #define SC_PAD_28FDSOI_DSE_33V_2MA      0U /* Drive strength of 2mA for 3.3v */
34 #define SC_PAD_28FDSOI_DSE_33V_4MA      1U /* Drive strength of 4mA for 3.3v */
35 #define SC_PAD_28FDSOI_DSE_33V_8MA      2U /* Drive strength of 8mA for 3.3v */
36 #define SC_PAD_28FDSOI_DSE_33V_12MA     3U /* Drive strength of 12mA for 3.3v */
37 #define SC_PAD_28FDSOI_DSE_DV_HIGH      0U /* High drive strength dual volt */
38 #define SC_PAD_28FDSOI_DSE_DV_LOW       1U /* Low drive strength  dual volt */
39
40 /* Defines for sc_pad_28fdsoi_ps_t */
41 #define SC_PAD_28FDSOI_PS_KEEPER 0U /* Bus-keeper (only valid for 1.8v) */
42 #define SC_PAD_28FDSOI_PS_PU    1U /* Pull-up */
43 #define SC_PAD_28FDSOI_PS_PD    2U /* Pull-down */
44 #define SC_PAD_28FDSOI_PS_NONE  3U /* No pull (disabled) */
45
46 /* Defines for sc_pad_28fdsoi_pus_t */
47 #define SC_PAD_28FDSOI_PUS_30K_PD       0U /* 30K pull-down */
48 #define SC_PAD_28FDSOI_PUS_100K_PU      1U /* 100K pull-up */
49 #define SC_PAD_28FDSOI_PUS_3K_PU        2U /* 3K pull-up */
50 #define SC_PAD_28FDSOI_PUS_30K_PU       3U /* 30K pull-up */
51
52 /* Defines for sc_pad_wakeup_t */
53 #define SC_PAD_WAKEUP_OFF       0U /* Off */
54 #define SC_PAD_WAKEUP_CLEAR     1U /* Clears pending flag */
55 #define SC_PAD_WAKEUP_LOW_LVL   4U /* Low level */
56 #define SC_PAD_WAKEUP_FALL_EDGE 5U /* Falling edge */
57 #define SC_PAD_WAKEUP_RISE_EDGE 6U /* Rising edge */
58 #define SC_PAD_WAKEUP_HIGH_LVL  7U /* High-level */
59
60 #endif /* SC_PAD_API_H */