/*
 *  Copyright (C) 2021-2024 Texas Instruments Incorporated
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions
 *  are met:
 *
 *    Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *
 *    Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the
 *    distribution.
 *
 *    Neither the name of Texas Instruments Incorporated nor the names of
 *    its contributors may be used to endorse or promote products derived
 *    from this software without specific prior written permission.
 *
 *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

/*
 * Auto generated file
 */
#include "ti_drivers_config.h"
#include <drivers/pinmux.h>

static Pinmux_PerCfg_t gPinMuxMainDomainCfg[] = {
            /* I2C0 pin config */
    /* I2C0_SCL -> I2C0_SCL (A13) */
    {
        PIN_I2C0_SCL,
        ( PIN_MODE(0) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* I2C0 pin config */
    /* I2C0_SDA -> I2C0_SDA (B13) */
    {
        PIN_I2C0_SDA,
        ( PIN_MODE(0) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
            /* I2C2 pin config */
    /* I2C2_SCL -> UART0_RTSn (C7) */
    {
        PIN_UART0_RTSN,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* I2C2 pin config */
    /* I2C2_SDA -> UART0_CTSn (B7) */
    {
        PIN_UART0_CTSN,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },

            /* MDIO pin config */
    /* MDIO_MDIO -> MDIO_MDIO (N16) */
    {
        PIN_MDIO_MDIO,
        ( PIN_MODE(0) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* MDIO pin config */
    /* MDIO_MDC -> MDIO_MDC (M17) */
    {
        PIN_MDIO_MDC,
        ( PIN_MODE(0) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII1 pin config */
    /* RMII1_CRS_DV -> PIN_RGMII1_TD2 (P18) */
    {
        PIN_RGMII1_TD2,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII1 pin config */
    /* RMII1_RXD0 -> PIN_RGMII1_RD0 (U17) */
    {
        PIN_RGMII1_RD0,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII1 pin config */
    /* RMII1_RXD1 -> PIN_RGMII1_RD1 (T17) */
    {
        PIN_RGMII1_RD1,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII1 pin config */
    /* RMII1_RX_ER -> PIN_RGMII1_RX_CTL (R18) */
    {
        PIN_RGMII1_RX_CTL,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII1 pin config */
    /* RMII1_TXD0 -> PIN_RGMII1_TD0 (P16) */
    {
        PIN_RGMII1_TD0,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII1 pin config */
    /* RMII1_TXD1 -> PIN_RGMII1_TD1 (P17) */
    {
        PIN_RGMII1_TD1,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII1 pin config */
    /* RMII1_TX_EN -> PIN_RGMII1_TX_CTL (M18) */
    {
        PIN_RGMII1_TX_CTL,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII1 pin config */
    /* RMII1_REF_CLK -> PIN_RGMII1_RXC (R17) */
    {
     PIN_RGMII1_RXC,
        ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII2 pin config */
    /* RMII2_CRS_DV -> PR0_PRU0_GPIO10 (G18) */
    {
        PIN_PR0_PRU0_GPIO10,
        ( PIN_MODE(2) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII2 pin config */
    /* RMII2_RXD0 -> PR0_PRU0_GPIO0 (K17) */
    {
        PIN_PR0_PRU0_GPIO0,
        ( PIN_MODE(2) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII2 pin config */
    /* RMII2_RXD1 -> PR0_PRU0_GPIO1 (K18) */
    {
        PIN_PR0_PRU0_GPIO1,
        ( PIN_MODE(2) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII2 pin config */
    /* RMII2_RX_ER -> PR0_PRU0_GPIO5 (G17) */
    {
        PIN_PR0_PRU0_GPIO5,
        ( PIN_MODE(2) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII2 pin config */
    /* RMII2_TXD0 -> PR0_PRU0_GPIO11 (M16) */
    {
        PIN_PR0_PRU0_GPIO11,
        ( PIN_MODE(2) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII2 pin config */
    /* RMII2_TXD1 -> PR0_PRU0_GPIO12 (M15) */
    {
        PIN_PR0_PRU0_GPIO12,
        ( PIN_MODE(2) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII2 pin config */
    /* RMII2_TX_EN -> PR0_PRU0_GPIO15 (L16) */
    {
        PIN_PR0_PRU0_GPIO15,
        ( PIN_MODE(2) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* RMII2 pin config */
    /* RMII2_REF_CLK -> PR0_PRU0_GPIO6 (K15) */
    {
        PIN_PR0_PRU0_GPIO6,
        ( PIN_MODE(2) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },

            /* UART0 pin config */
    /* UART0_RXD -> UART0_RXD (A7) */
    {
        PIN_UART0_RXD,
        ( PIN_MODE(0) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },
    /* UART0 pin config */
    /* UART0_TXD -> UART0_TXD (A6) */
    {
        PIN_UART0_TXD,
        ( PIN_MODE(0) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
    },

    {PINMUX_END, PINMUX_END}
};


/*
 * Pinmux
 */


void Pinmux_init(void)
{



    Pinmux_config(gPinMuxMainDomainCfg, PINMUX_DOMAIN_ID_MAIN);
    
}


