• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/arch/m68k/include/asm/
1/****************************************************************************/
2
3/*
4 *	nettel.h -- Lineo (formerly Moreton Bay) NETtel support.
5 *
6 *	(C) Copyright 1999-2000, Moreton Bay (www.moretonbay.com)
7 * 	(C) Copyright 2000-2001, Lineo Inc. (www.lineo.com)
8 * 	(C) Copyright 2001-2002, SnapGear Inc., (www.snapgear.com)
9 */
10
11/****************************************************************************/
12#ifndef	nettel_h
13#define	nettel_h
14/****************************************************************************/
15
16
17/****************************************************************************/
18#ifdef CONFIG_NETtel
19/****************************************************************************/
20
21#ifdef CONFIG_COLDFIRE
22#include <asm/coldfire.h>
23#include <asm/mcfsim.h>
24#endif
25
26/*---------------------------------------------------------------------------*/
27#if defined(CONFIG_M5307)
28/*
29 *	NETtel/5307 based hardware first. DTR/DCD lines are wired to
30 *	GPIO lines. Most of the LED's are driver through a latch
31 *	connected to CS2.
32 */
33#define	MCFPP_DCD1	0x0001
34#define	MCFPP_DCD0	0x0002
35#define	MCFPP_DTR1	0x0004
36#define	MCFPP_DTR0	0x0008
37
38#define	NETtel_LEDADDR	0x30400000
39
40#ifndef __ASSEMBLY__
41
42extern volatile unsigned short ppdata;
43
44/*
45 *	These functions defined to give quasi generic access to the
46 *	PPIO bits used for DTR/DCD.
47 */
48static __inline__ unsigned int mcf_getppdata(void)
49{
50	volatile unsigned short *pp;
51	pp = (volatile unsigned short *) MCFSIM_PADAT;
52	return((unsigned int) *pp);
53}
54
55static __inline__ void mcf_setppdata(unsigned int mask, unsigned int bits)
56{
57	volatile unsigned short *pp;
58	pp = (volatile unsigned short *) MCFSIM_PADAT;
59	ppdata = (ppdata & ~mask) | bits;
60	*pp = ppdata;
61}
62#endif
63
64/*---------------------------------------------------------------------------*/
65#elif defined(CONFIG_M5206e)
66/*
67 *	NETtel/5206e based hardware has leds on latch on CS3.
68 *	No support modem for lines??
69 */
70#define	NETtel_LEDADDR	0x50000000
71
72/*---------------------------------------------------------------------------*/
73#elif defined(CONFIG_M5272)
74/*
75 *	NETtel/5272 based hardware. DTR/DCD lines are wired to GPB lines.
76 */
77#define	MCFPP_DCD0	0x0080
78#define	MCFPP_DCD1	0x0000		/* Port 1 no DCD support */
79#define	MCFPP_DTR0	0x0040
80#define	MCFPP_DTR1	0x0000		/* Port 1 no DTR support */
81
82#ifndef __ASSEMBLY__
83/*
84 *	These functions defined to give quasi generic access to the
85 *	PPIO bits used for DTR/DCD.
86 */
87static __inline__ unsigned int mcf_getppdata(void)
88{
89	volatile unsigned short *pp;
90	pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PBDAT);
91	return((unsigned int) *pp);
92}
93
94static __inline__ void mcf_setppdata(unsigned int mask, unsigned int bits)
95{
96	volatile unsigned short *pp;
97	pp = (volatile unsigned short *) (MCF_MBAR + MCFSIM_PBDAT);
98	*pp = (*pp & ~mask) | bits;
99}
100#endif
101
102#endif
103/*---------------------------------------------------------------------------*/
104
105/****************************************************************************/
106#endif /* CONFIG_NETtel */
107/****************************************************************************/
108#endif	/* nettel_h */
109