Logo Search packages:      
Sourcecode: linux version File versions  Download package

nettel.h

/****************************************************************************/

/*
 *    nettel.h -- Lineo (formerly Moreton Bay) NETtel support.
 *
 *    (C) Copyright 1999-2000, Moreton Bay (www.moretonbay.com)
 *    (C) Copyright 2000-2001, Lineo Inc. (www.lineo.com) 
 *    (C) Copyright 2001-2002, SnapGear Inc., (www.snapgear.com) 
 */

/****************************************************************************/
#ifndef     nettel_h
#define     nettel_h
/****************************************************************************/


/****************************************************************************/
#ifdef CONFIG_NETtel
/****************************************************************************/

#ifdef CONFIG_COLDFIRE
#include <asm/coldfire.h>
#include <asm/mcfsim.h>
#endif

/*---------------------------------------------------------------------------*/
#if defined(CONFIG_M5307)
/*
 *    NETtel/5307 based hardware first. DTR/DCD lines are wired to
 *    GPIO lines. Most of the LED's are driver through a latch
 *    connected to CS2.
 */
#define     MCFPP_DCD1  0x0001
#define     MCFPP_DCD0  0x0002
#define     MCFPP_DTR1  0x0004
#define     MCFPP_DTR0  0x0008

#define     NETtel_LEDADDR    0x30400000

#ifndef __ASSEMBLY__

extern volatile unsigned short ppdata;

/*
 *    These functions defined to give quasi generic access to the
 *    PPIO bits used for DTR/DCD.
 */
static __inline__ unsigned int mcf_getppdata(void)
{
      volatile unsigned short *pp;
      pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PADAT);
      return((unsigned int) *pp);
}

static __inline__ void mcf_setppdata(unsigned int mask, unsigned int bits)
{
      volatile unsigned short *pp;
      pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PADAT);
      ppdata = (ppdata & ~mask) | bits;
      *pp = ppdata;
}
#endif

/*---------------------------------------------------------------------------*/
#elif defined(CONFIG_M5206e)
/*
 *    NETtel/5206e based hardware has leds on latch on CS3.
 *    No support modem for lines??
 */
#define     NETtel_LEDADDR    0x50000000

/*---------------------------------------------------------------------------*/
#elif defined(CONFIG_M5272)
/*
 *    NETtel/5272 based hardware. DTR/DCD lines are wired to GPB lines.
 */
#define     MCFPP_DCD0  0x0080
#define     MCFPP_DCD1  0x0000            /* Port 1 no DCD support */
#define     MCFPP_DTR0  0x0040
#define     MCFPP_DTR1  0x0000            /* Port 1 no DTR support */

#ifndef __ASSEMBLY__
/*
 *    These functions defined to give quasi generic access to the
 *    PPIO bits used for DTR/DCD.
 */
static __inline__ unsigned int mcf_getppdata(void)
{
      volatile unsigned short *pp;
      pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PBDAT);
      return((unsigned int) *pp);
}

static __inline__ void mcf_setppdata(unsigned int mask, unsigned int bits)
{
      volatile unsigned short *pp;
      pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PBDAT);
      *pp = (*pp & ~mask) | bits;
}
#endif

#endif
/*---------------------------------------------------------------------------*/

/****************************************************************************/
#endif /* CONFIG_NETtel */
/****************************************************************************/
#endif      /* nettel_h */

Generated by  Doxygen 1.6.0   Back to index