Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * This header provides constants for most at91 pinctrl bindings.
0004  *
0005  * Copyright (C) 2013 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
0006  */
0007 
0008 #ifndef __DT_BINDINGS_AT91_PINCTRL_H__
0009 #define __DT_BINDINGS_AT91_PINCTRL_H__
0010 
0011 #define AT91_PINCTRL_NONE       (0 << 0)
0012 #define AT91_PINCTRL_PULL_UP        (1 << 0)
0013 #define AT91_PINCTRL_MULTI_DRIVE    (1 << 1)
0014 #define AT91_PINCTRL_DEGLITCH       (1 << 2)
0015 #define AT91_PINCTRL_PULL_DOWN      (1 << 3)
0016 #define AT91_PINCTRL_DIS_SCHMIT     (1 << 4)
0017 #define AT91_PINCTRL_OUTPUT     (1 << 7)
0018 #define AT91_PINCTRL_OUTPUT_VAL(x)  ((x & 0x1) << 8)
0019 #define AT91_PINCTRL_SLEWRATE       (1 << 9)
0020 #define AT91_PINCTRL_DEBOUNCE       (1 << 16)
0021 #define AT91_PINCTRL_DEBOUNCE_VAL(x)    (x << 17)
0022 
0023 #define AT91_PINCTRL_PULL_UP_DEGLITCH   (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DEGLITCH)
0024 
0025 #define AT91_PINCTRL_DRIVE_STRENGTH_DEFAULT     (0x0 << 5)
0026 #define AT91_PINCTRL_DRIVE_STRENGTH_LOW         (0x1 << 5)
0027 #define AT91_PINCTRL_DRIVE_STRENGTH_MED         (0x2 << 5)
0028 #define AT91_PINCTRL_DRIVE_STRENGTH_HI          (0x3 << 5)
0029 
0030 #define AT91_PINCTRL_SLEWRATE_ENA   (0x0 << 9)
0031 #define AT91_PINCTRL_SLEWRATE_DIS   (0x1 << 9)
0032 
0033 #define AT91_PIOA   0
0034 #define AT91_PIOB   1
0035 #define AT91_PIOC   2
0036 #define AT91_PIOD   3
0037 #define AT91_PIOE   4
0038 
0039 #define AT91_PERIPH_GPIO    0
0040 #define AT91_PERIPH_A       1
0041 #define AT91_PERIPH_B       2
0042 #define AT91_PERIPH_C       3
0043 #define AT91_PERIPH_D       4
0044 
0045 #define ATMEL_PIO_DRVSTR_LO 1
0046 #define ATMEL_PIO_DRVSTR_ME 2
0047 #define ATMEL_PIO_DRVSTR_HI 3
0048 
0049 #endif /* __DT_BINDINGS_AT91_PINCTRL_H__ */