
#ifndef SERVO_HEADER_SERVO_BOARD_H_
#define SERVO_HEADER_SERVO_BOARD_H_

//
// Included Files
//

#include "driverlib.h"
#include "device.h"

//*****************************************************************************
//
// PinMux Configurations
//
//*****************************************************************************

//
// ETHERNET -> myETHERNET0 Pinmux
//
//
// ENET_MII_RX_CLK - GPIO Settings
//
#define GPIO_PIN_ENET_MII_RX_CLK 			111
#define myETHERNET0_ENETMII_RX_CLK_GPIO 	111
#define myETHERNET0_ENETMII_RX_CLK_PIN_CONFIG 	GPIO_111_ENET_MII_RX_CLK
//
// ENET_MII_RX_DV - GPIO Settings
//
#define GPIO_PIN_ENET_MII_RX_DV 			112
#define myETHERNET0_ENETMII_RX_DV_GPIO 		112
#define myETHERNET0_ENETMII_RX_DV_PIN_CONFIG 		GPIO_112_ENET_MII_RX_DV
//
// ENET_MII_RX_ERR - GPIO Settings
//
#define GPIO_PIN_ENET_MII_RX_ERR 			113
#define myETHERNET0_ENETMII_RX_ERR_GPIO 	113
#define myETHERNET0_ENETMII_RX_ERR_PIN_CONFIG 		GPIO_113_ENET_MII_RX_ERR
//
// ENET_MII_RX_DATA0 - GPIO Settings
//
#define GPIO_PIN_ENET_MII_RX_DATA0 			114
#define myETHERNET0_ENETMII_RX_DATA0_GPIO 	114
#define myETHERNET0_ENETMII_RX_DATA0_PIN_CONFIG 	GPIO_114_ENET_MII_RX_DATA0
//
// ENET_MII_RX_DATA1 - GPIO Settings
//
#define GPIO_PIN_ENET_MII_RX_DATA1 			115
#define myETHERNET0_ENETMII_RX_DATA1_GPIO 	115
#define myETHERNET0_ENETMII_RX_DATA1_PIN_CONFIG 	GPIO_115_ENET_MII_RX_DATA1
//
// ENET_MII_RX_DATA2 - GPIO Settings
//
#define GPIO_PIN_ENET_MII_RX_DATA2 			116
#define myETHERNET0_ENETMII_RX_DATA2_GPIO 	116
#define myETHERNET0_ENETMII_RX_DATA2_PIN_CONFIG 	GPIO_116_ENET_MII_RX_DATA2
//
// ENET_MII_RX_DATA3 - GPIO Settings
//
#define GPIO_PIN_ENET_MII_RX_DATA3 			117
#define myETHERNET0_ENETMII_RX_DATA3_GPIO 	117
#define myETHERNET0_ENETMII_RX_DATA3_PIN_CONFIG 	GPIO_117_ENET_MII_RX_DATA3
//
// ENET_MII_TX_EN - GPIO Settings
//
#define GPIO_PIN_ENET_MII_TX_EN 			118
#define myETHERNET0_ENETMII_TX_EN_GPIO 		118
#define myETHERNET0_ENETMII_TX_EN_PIN_CONFIG 		GPIO_118_ENET_MII_TX_EN
//
// ENET_MII_TX_CLK - GPIO Settings
//
#define GPIO_PIN_ENET_MII_TX_CLK 			120
#define myETHERNET0_ENETMII_TX_CLK_GPIO 	120
#define myETHERNET0_ENETMII_TX_CLK_PIN_CONFIG 		GPIO_120_ENET_MII_TX_CLK
//
// ENET_MII_TX_DATA0 - GPIO Settings
//
#define GPIO_PIN_ENET_MII_TX_DATA0 			121
#define myETHERNET0_ENETMII_TX_DATA0_GPIO 	121
#define myETHERNET0_ENETMII_TX_DATA0_PIN_CONFIG 	GPIO_121_ENET_MII_TX_DATA0
//
// ENET_MII_TX_DATA1 - GPIO Settings
//
#define GPIO_PIN_ENET_MII_TX_DATA1 			122
#define myETHERNET0_ENETMII_TX_DATA1_GPIO 	122
#define myETHERNET0_ENETMII_TX_DATA1_PIN_CONFIG 	GPIO_122_ENET_MII_TX_DATA1
//
// ENET_MII_TX_DATA2 - GPIO Settings
//
#define GPIO_PIN_ENET_MII_TX_DATA2 			123
#define myETHERNET0_ENETMII_TX_DATA2_GPIO 	123
#define myETHERNET0_ENETMII_TX_DATA2_PIN_CONFIG 	GPIO_123_ENET_MII_TX_DATA2
//
// ENET_MII_TX_DATA3 - GPIO Settings
//
#define GPIO_PIN_ENET_MII_TX_DATA3 			124
#define myETHERNET0_ENETMII_TX_DATA3_GPIO 	124
#define myETHERNET0_ENETMII_TX_DATA3_PIN_CONFIG 	GPIO_124_ENET_MII_TX_DATA3
//
// ENET_MDIO_CLK - GPIO Settings
//
#define GPIO_PIN_ENET_MDIO_CLK 				105
#define myETHERNET0_ENETMDIO_CLK_GPIO 		105
#define myETHERNET0_ENETMDIO_CLK_PIN_CONFIG 		GPIO_105_ENET_MDIO_CLK
//
// ENET_MDIO_DATA - GPIO Settings
//
#define GPIO_PIN_ENET_MDIO_DATA 			106
#define myETHERNET0_ENETMDIO_DATA_GPIO 		106
#define myETHERNET0_ENETMDIO_DATA_PIN_CONFIG 		GPIO_106_ENET_MDIO_DATA

//
// GPIO90 - GPIO Settings
//
//#define mGPIO_LED5_GPIO_PIN_CONFIG 		GPIO_145_GPIO145
#define mGPIO_LED5_GPIO_PIN_CONFIG      GPIO_34_GPIO34
//
// GPIO6 - GPIO Settings
//
//#define mGPIO_LED4_GPIO_PIN_CONFIG 		GPIO_146_GPIO146
#define mGPIO_LED4_GPIO_PIN_CONFIG      GPIO_31_GPIO31
//
// GPIO2 - GPIO Settings
//
#define mGPIO_LED12_GPIO_PIN_CONFIG 	GPIO_147_GPIO147

//
// GPIO119 - GPIO Settings
//
#define mPhyRest_GPIO_PIN_CONFIG 		GPIO_119_GPIO119

//*****************************************************************************
//
// GPIO Configurations
//
//*****************************************************************************

//
// ESC_LED_ERR - GPIO Settings
//
//#define mGPIO_PIN_LED5  145//90
#define mGPIO_PIN_LED5  34//90
void mGPIO145_init();

//
// ESC_LED_RUN - GPIO Settings
//
//#define mGPIO_PIN_LED4  146//6
#define mGPIO_PIN_LED4  31//6
void mGPIO146_init();


#define mGPIO_PIN_LED12  147//2
void mGPIO147_init();

// Enet PHY Reset
#define mPhyRest 	119
void mPhyRest_init();


//*****************************************************************************
//
// INTERRUPT Configurations
//
//*****************************************************************************



//*****************************************************************************
//
// IPC Configurations
//
//*****************************************************************************
#define BOOT_MODE_CPU2 	BOOTMODE_BOOT_TO_FLASH_SECTOR0
#define IPC_SYNC 		IPC_FLAG31

//*****************************************************************************
//
// MEMCFG Configurations
//
//*****************************************************************************


//*****************************************************************************
//
// SYNC Scheme Configurations
//
//*****************************************************************************


//*****************************************************************************
//
// Board Configurations
//
//*****************************************************************************
void    Board_init();
void    GPIO_init();
void    IPC_SYSCFG_init();
void    PinMux_init();
void    ETHERNET_init();

//*****************************************************************************
//
// Mark the end of the C bindings section for C++ compilers.
//
//*****************************************************************************



#endif /* SERVO_HEADER_SERVO_BOARD_H_ */
