The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/src/arm/stm32f7-pinctrl.dtsi

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
    2 /*
    3  * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
    4  * Author: Alexandre Torgue  <alexandre.torgue@st.com> for STMicroelectronics.
    5  */
    6 
    7 #include <dt-bindings/pinctrl/stm32-pinfunc.h>
    8 #include <dt-bindings/mfd/stm32f7-rcc.h>
    9 
   10 / {
   11         soc {
   12                 pinctrl: pinctrl@40020000 {
   13                         #address-cells = <1>;
   14                         #size-cells = <1>;
   15                         ranges = <0 0x40020000 0x3000>;
   16                         interrupt-parent = <&exti>;
   17                         st,syscfg = <&syscfg 0x8>;
   18                         pins-are-numbered;
   19 
   20                         gpioa: gpio@40020000 {
   21                                 gpio-controller;
   22                                 #gpio-cells = <2>;
   23                                 interrupt-controller;
   24                                 #interrupt-cells = <2>;
   25                                 reg = <0x0 0x400>;
   26                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOA)>;
   27                                 st,bank-name = "GPIOA";
   28                         };
   29 
   30                         gpiob: gpio@40020400 {
   31                                 gpio-controller;
   32                                 #gpio-cells = <2>;
   33                                 interrupt-controller;
   34                                 #interrupt-cells = <2>;
   35                                 reg = <0x400 0x400>;
   36                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOB)>;
   37                                 st,bank-name = "GPIOB";
   38                         };
   39 
   40                         gpioc: gpio@40020800 {
   41                                 gpio-controller;
   42                                 #gpio-cells = <2>;
   43                                 interrupt-controller;
   44                                 #interrupt-cells = <2>;
   45                                 reg = <0x800 0x400>;
   46                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOC)>;
   47                                 st,bank-name = "GPIOC";
   48                         };
   49 
   50                         gpiod: gpio@40020c00 {
   51                                 gpio-controller;
   52                                 #gpio-cells = <2>;
   53                                 interrupt-controller;
   54                                 #interrupt-cells = <2>;
   55                                 reg = <0xc00 0x400>;
   56                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOD)>;
   57                                 st,bank-name = "GPIOD";
   58                         };
   59 
   60                         gpioe: gpio@40021000 {
   61                                 gpio-controller;
   62                                 #gpio-cells = <2>;
   63                                 interrupt-controller;
   64                                 #interrupt-cells = <2>;
   65                                 reg = <0x1000 0x400>;
   66                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOE)>;
   67                                 st,bank-name = "GPIOE";
   68                         };
   69 
   70                         gpiof: gpio@40021400 {
   71                                 gpio-controller;
   72                                 #gpio-cells = <2>;
   73                                 interrupt-controller;
   74                                 #interrupt-cells = <2>;
   75                                 reg = <0x1400 0x400>;
   76                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOF)>;
   77                                 st,bank-name = "GPIOF";
   78                         };
   79 
   80                         gpiog: gpio@40021800 {
   81                                 gpio-controller;
   82                                 #gpio-cells = <2>;
   83                                 interrupt-controller;
   84                                 #interrupt-cells = <2>;
   85                                 reg = <0x1800 0x400>;
   86                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOG)>;
   87                                 st,bank-name = "GPIOG";
   88                         };
   89 
   90                         gpioh: gpio@40021c00 {
   91                                 gpio-controller;
   92                                 #gpio-cells = <2>;
   93                                 interrupt-controller;
   94                                 #interrupt-cells = <2>;
   95                                 reg = <0x1c00 0x400>;
   96                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOH)>;
   97                                 st,bank-name = "GPIOH";
   98                         };
   99 
  100                         gpioi: gpio@40022000 {
  101                                 gpio-controller;
  102                                 #gpio-cells = <2>;
  103                                 interrupt-controller;
  104                                 #interrupt-cells = <2>;
  105                                 reg = <0x2000 0x400>;
  106                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOI)>;
  107                                 st,bank-name = "GPIOI";
  108                         };
  109 
  110                         gpioj: gpio@40022400 {
  111                                 gpio-controller;
  112                                 #gpio-cells = <2>;
  113                                 interrupt-controller;
  114                                 #interrupt-cells = <2>;
  115                                 reg = <0x2400 0x400>;
  116                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOJ)>;
  117                                 st,bank-name = "GPIOJ";
  118                         };
  119 
  120                         gpiok: gpio@40022800 {
  121                                 gpio-controller;
  122                                 #gpio-cells = <2>;
  123                                 interrupt-controller;
  124                                 #interrupt-cells = <2>;
  125                                 reg = <0x2800 0x400>;
  126                                 clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOK)>;
  127                                 st,bank-name = "GPIOK";
  128                         };
  129 
  130                         cec_pins_a: cec-0 {
  131                                 pins {
  132                                         pinmux = <STM32_PINMUX('A', 15, AF4)>; /* HDMI CEC */
  133                                         slew-rate = <0>;
  134                                         drive-open-drain;
  135                                         bias-disable;
  136                                 };
  137                         };
  138 
  139                         usart1_pins_a: usart1-0 {
  140                                 pins1 {
  141                                         pinmux = <STM32_PINMUX('A', 9, AF7)>; /* USART1_TX */
  142                                         bias-disable;
  143                                         drive-push-pull;
  144                                         slew-rate = <0>;
  145                                 };
  146                                 pins2 {
  147                                         pinmux = <STM32_PINMUX('A', 10, AF7)>; /* USART1_RX */
  148                                         bias-disable;
  149                                 };
  150                         };
  151 
  152                         usart1_pins_b: usart1-1 {
  153                                 pins1 {
  154                                         pinmux = <STM32_PINMUX('A', 9, AF7)>; /* USART1_TX */
  155                                         bias-disable;
  156                                         drive-push-pull;
  157                                         slew-rate = <0>;
  158                                 };
  159                                 pins2 {
  160                                         pinmux = <STM32_PINMUX('B', 7, AF7)>; /* USART1_RX */
  161                                         bias-disable;
  162                                 };
  163                         };
  164 
  165                         i2c1_pins_b: i2c1-0 {
  166                                 pins {
  167                                         pinmux = <STM32_PINMUX('B', 9, AF4)>, /* I2C1 SDA */
  168                                                  <STM32_PINMUX('B', 8, AF4)>; /* I2C1 SCL */
  169                                         bias-disable;
  170                                         drive-open-drain;
  171                                         slew-rate = <0>;
  172                                 };
  173                         };
  174 
  175                         usbotg_hs_pins_a: usbotg-hs-0 {
  176                                 pins {
  177                                         pinmux = <STM32_PINMUX('H', 4, AF10)>, /* OTG_HS_ULPI_NXT */
  178                                                  <STM32_PINMUX('I', 11, AF10)>, /* OTG_HS_ULPI_DIR */
  179                                                  <STM32_PINMUX('C', 0, AF10)>, /* OTG_HS_ULPI_STP */
  180                                                  <STM32_PINMUX('A', 5, AF10)>, /* OTG_HS_ULPI_CK */
  181                                                  <STM32_PINMUX('A', 3, AF10)>, /* OTG_HS_ULPI_D0 */
  182                                                  <STM32_PINMUX('B', 0, AF10)>, /* OTG_HS_ULPI_D1 */
  183                                                  <STM32_PINMUX('B', 1, AF10)>, /* OTG_HS_ULPI_D2 */
  184                                                  <STM32_PINMUX('B', 10, AF10)>, /* OTG_HS_ULPI_D3 */
  185                                                  <STM32_PINMUX('B', 11, AF10)>, /* OTG_HS_ULPI_D4 */
  186                                                  <STM32_PINMUX('B', 12, AF10)>, /* OTG_HS_ULPI_D5 */
  187                                                  <STM32_PINMUX('B', 13, AF10)>, /* OTG_HS_ULPI_D6 */
  188                                                  <STM32_PINMUX('B', 5, AF10)>; /* OTG_HS_ULPI_D7 */
  189                                         bias-disable;
  190                                         drive-push-pull;
  191                                         slew-rate = <2>;
  192                                 };
  193                         };
  194 
  195                         usbotg_hs_pins_b: usbotg-hs-1 {
  196                                 pins {
  197                                         pinmux = <STM32_PINMUX('H', 4, AF10)>, /* OTG_HS_ULPI_NXT */
  198                                                  <STM32_PINMUX('C', 2, AF10)>, /* OTG_HS_ULPI_DIR */
  199                                                  <STM32_PINMUX('C', 0, AF10)>, /* OTG_HS_ULPI_STP */
  200                                                  <STM32_PINMUX('A', 5, AF10)>, /* OTG_HS_ULPI_CK */
  201                                                  <STM32_PINMUX('A', 3, AF10)>, /* OTG_HS_ULPI_D0 */
  202                                                  <STM32_PINMUX('B', 0, AF10)>, /* OTG_HS_ULPI_D1 */
  203                                                  <STM32_PINMUX('B', 1, AF10)>, /* OTG_HS_ULPI_D2 */
  204                                                  <STM32_PINMUX('B', 10, AF10)>, /* OTG_HS_ULPI_D3 */
  205                                                  <STM32_PINMUX('B', 11, AF10)>, /* OTG_HS_ULPI_D4 */
  206                                                  <STM32_PINMUX('B', 12, AF10)>, /* OTG_HS_ULPI_D5 */
  207                                                  <STM32_PINMUX('B', 13, AF10)>, /* OTG_HS_ULPI_D6 */
  208                                                  <STM32_PINMUX('B', 5, AF10)>; /* OTG_HS_ULPI_D7 */
  209                                         bias-disable;
  210                                         drive-push-pull;
  211                                         slew-rate = <2>;
  212                                 };
  213                         };
  214 
  215                         usbotg_fs_pins_a: usbotg-fs-0 {
  216                                 pins {
  217                                         pinmux = <STM32_PINMUX('A', 10, AF10)>, /* OTG_FS_ID */
  218                                                  <STM32_PINMUX('A', 11, AF10)>, /* OTG_FS_DM */
  219                                                  <STM32_PINMUX('A', 12, AF10)>; /* OTG_FS_DP */
  220                                         bias-disable;
  221                                         drive-push-pull;
  222                                         slew-rate = <2>;
  223                                 };
  224                         };
  225 
  226                         sdio_pins_a: sdio-pins-a-0 {
  227                                 pins {
  228                                         pinmux = <STM32_PINMUX('C', 8, AF12)>, /* SDMMC1 D0 */
  229                                                  <STM32_PINMUX('C', 9, AF12)>, /* SDMMC1 D1 */
  230                                                  <STM32_PINMUX('C', 10, AF12)>, /* SDMMC1 D2 */
  231                                                  <STM32_PINMUX('C', 11, AF12)>, /* SDMMC1 D3 */
  232                                                  <STM32_PINMUX('C', 12, AF12)>, /* SDMMC1 CLK */
  233                                                  <STM32_PINMUX('D', 2, AF12)>; /* SDMMC1 CMD */
  234                                         drive-push-pull;
  235                                         slew-rate = <2>;
  236                                 };
  237                         };
  238 
  239                         sdio_pins_od_a: sdio-pins-od-a-0 {
  240                                 pins1 {
  241                                         pinmux = <STM32_PINMUX('C', 8, AF12)>, /* SDMMC1 D0 */
  242                                                  <STM32_PINMUX('C', 9, AF12)>, /* SDMMC1 D1 */
  243                                                  <STM32_PINMUX('C', 10, AF12)>, /* SDMMC1 D2 */
  244                                                  <STM32_PINMUX('C', 11, AF12)>, /* SDMMC1 D3 */
  245                                                  <STM32_PINMUX('C', 12, AF12)>; /* SDMMC1 CLK */
  246                                         drive-push-pull;
  247                                         slew-rate = <2>;
  248                                 };
  249 
  250                                 pins2 {
  251                                         pinmux = <STM32_PINMUX('D', 2, AF12)>; /* SDMMC1 CMD */
  252                                         drive-open-drain;
  253                                         slew-rate = <2>;
  254                                 };
  255                         };
  256 
  257                         sdio_pins_b: sdio-pins-b-0 {
  258                                 pins {
  259                                         pinmux = <STM32_PINMUX('G', 9, AF11)>, /* SDMMC2 D0 */
  260                                                  <STM32_PINMUX('G', 10, AF11)>, /* SDMMC2 D1 */
  261                                                  <STM32_PINMUX('B', 3, AF10)>, /* SDMMC2 D2 */
  262                                                  <STM32_PINMUX('B', 4, AF10)>, /* SDMMC2 D3 */
  263                                                  <STM32_PINMUX('D', 6, AF11)>, /* SDMMC2 CLK */
  264                                                  <STM32_PINMUX('D', 7, AF11)>; /* SDMMC2 CMD */
  265                                         drive-push-pull;
  266                                         slew-rate = <2>;
  267                                 };
  268                         };
  269 
  270                         sdio_pins_od_b: sdio-pins-od-b-0 {
  271                                 pins1 {
  272                                         pinmux = <STM32_PINMUX('G', 9, AF11)>, /* SDMMC2 D0 */
  273                                                  <STM32_PINMUX('G', 10, AF11)>, /* SDMMC2 D1 */
  274                                                  <STM32_PINMUX('B', 3, AF10)>, /* SDMMC2 D2 */
  275                                                  <STM32_PINMUX('B', 4, AF10)>, /* SDMMC2 D3 */
  276                                                  <STM32_PINMUX('D', 6, AF11)>; /* SDMMC2 CLK */
  277                                         drive-push-pull;
  278                                         slew-rate = <2>;
  279                                 };
  280 
  281                                 pins2 {
  282                                         pinmux = <STM32_PINMUX('D', 7, AF11)>; /* SDMMC2 CMD */
  283                                         drive-open-drain;
  284                                         slew-rate = <2>;
  285                                 };
  286                         };
  287                 };
  288         };
  289 };

Cache object: 339c7220eb13e9621fc4d9928fa8509c


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.