/**
 * \file icss_tlk110.h
 * \brief
 * 
 *
 * \copyright Copyright (c) 2012 Texas Instruments Incorporated ALL RIGHTS RESERVED
 *
*/
#ifndef _ICSS_TLK110_H_
#define _ICSS_TLK110_H_


#include <ti/sysbios/knl/Task.h>
#include "mdio.h"
#include "icss_common.h"
#include "osdrv_ndkdeviceconfig.h"
#include "icss_miimdio_regs.h"
#include "icss_miimdio.h"

/**
 *  \name tlkMDIXFixinit
 *  \brief Initializes the task which does Auto MDI/MDI-X for the PHY in Software
 *
 *  \param none No arguments
 *
 *  \return none No arguments
 */
void tlkMDIXFixinit(Uint32 phyBaseAddress);

/**
 *  \name tlkMDIXFixinit
 *  \brief Deletes the task which does Auto MDI/MDI-X for the PHY in Software
 *
 *  \param none No arguments
 *
 *  \return none No arguments
 */
void tlkMDIXFixDeinit();

/**
 *  \name tlkEnableAutoMDIX
 *  \brief Enable AutoMDIX for the particular Port
 *
 *  \param phyInst PHY Instance for Port0 or Port 1
 *
 *  \return none No arguments
 */
void tlkEnableAutoMDIX(Uint32 phyBaseAddress,Uint32 phyInst);

/**
 *  \name tlkMDIXFixinit
 *  \brief Deletes the task which does Auto MDI/MDI-X for the PHY in Software
 *
 *  \param phyInst PHY Instance for Port0 or Port 1
 *
 *  \return none No arguments
 */
void tlkDisableAutoMDIX(Uint32 phyBaseAddress,Uint32 phyInst);
/**
 *  \name tlkNLPFix
 *  \brief Fix for issue where the link partner change from 10 half to 100 was not detected by TLK 110
 *
 *  \param phyInst PHY Instance for Port0 or Port 1
 *
 *  \return none No arguments
 */
void tlkNLPFix(Uint32 phyBaseAddress,Uint32 phyInst);

#endif
