aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68k/include/asm/nettel.h
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2009-01-16 06:58:10 -0500
committerGreg Ungerer <gerg@uclinux.org>2009-01-16 06:58:10 -0500
commit49148020bcb6910ce71417bd990a5ce7017f9bd3 (patch)
treee410cc433a69075a0254ee4000cb10d71df3a641 /arch/m68k/include/asm/nettel.h
parentae04d1401577bb63151480a053057de58b8e10bb (diff)
m68k,m68knommu: merge header files
Merge header files for m68k and m68knommu to the single location: arch/m68k/include/asm The majority of this patch was the result of the script that is included in the changelog below. The script was originally written by Arnd Bergman and exten by me to cover a few more files. When the header files differed the script uses the following: The original m68k file is named <file>_mm.h [mm for memory manager] The m68knommu file is named <file>_no.h [no for no memory manager] The files uses the following include guard: This include gaurd works as the m68knommu toolchain set the __uClinux__ symbol - so this should work in userspace too. Merging the header files for m68k and m68knommu exposes the (unexpected?) ABI differences thus it is easier to actually identify these and thus to fix them. The commit has been build tested with both a m68k and a m68knommu toolchain - with success. The commit has also been tested with "make headers_check" and this patch fixes make headers_check for m68knommu. The script used: TARGET=arch/m68k/include/asm SOURCE=arch/m68knommu/include/asm INCLUDE="cachectl.h errno.h fcntl.h hwtest.h ioctls.h ipcbuf.h \ linkage.h math-emu.h md.h mman.h movs.h msgbuf.h openprom.h \ oplib.h poll.h posix_types.h resource.h rtc.h sembuf.h shmbuf.h \ shm.h shmparam.h socket.h sockios.h spinlock.h statfs.h stat.h \ termbits.h termios.h tlb.h types.h user.h" EQUAL="auxvec.h cputime.h device.h emergency-restart.h futex.h \ ioctl.h irq_regs.h kdebug.h local.h mutex.h percpu.h \ sections.h topology.h" NOMUUFILES="anchor.h bootstd.h coldfire.h commproc.h dbg.h \ elia.h flat.h m5206sim.h m520xsim.h m523xsim.h m5249sim.h \ m5272sim.h m527xsim.h m528xsim.h m5307sim.h m532xsim.h \ m5407sim.h m68360_enet.h m68360.h m68360_pram.h m68360_quicc.h \ m68360_regs.h MC68328.h MC68332.h MC68EZ328.h MC68VZ328.h \ mcfcache.h mcfdma.h mcfmbus.h mcfne.h mcfpci.h mcfpit.h \ mcfsim.h mcfsmc.h mcftimer.h mcfuart.h mcfwdebug.h \ nettel.h quicc_simple.h smp.h" FILES="atomic.h bitops.h bootinfo.h bug.h bugs.h byteorder.h cache.h \ cacheflush.h checksum.h current.h delay.h div64.h \ dma-mapping.h dma.h elf.h entry.h fb.h fpu.h hardirq.h hw_irq.h io.h \ irq.h kmap_types.h machdep.h mc146818rtc.h mmu.h mmu_context.h \ module.h page.h page_offset.h param.h pci.h pgalloc.h \ pgtable.h processor.h ptrace.h scatterlist.h segment.h \ setup.h sigcontext.h siginfo.h signal.h string.h system.h swab.h \ thread_info.h timex.h tlbflush.h traps.h uaccess.h ucontext.h \ unaligned.h unistd.h" mergefile() { BASE=${1%.h} git mv ${SOURCE}/$1 ${TARGET}/${BASE}_no.h git mv ${TARGET}/$1 ${TARGET}/${BASE}_mm.h cat << EOF > ${TARGET}/$1 EOF git add ${TARGET}/$1 } set -e mkdir -p ${TARGET} git mv include/asm-m68k/* ${TARGET} rmdir include/asm-m68k git rm ${SOURCE}/Kbuild for F in $INCLUDE $EQUAL; do git rm ${SOURCE}/$F done for F in $NOMUUFILES; do git mv ${SOURCE}/$F ${TARGET}/$F done for F in $FILES ; do mergefile $F done rmdir arch/m68knommu/include/asm rmdir arch/m68knommu/include Cc: Arnd Bergmann <arnd@arndb.de> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Diffstat (limited to 'arch/m68k/include/asm/nettel.h')
-rw-r--r--arch/m68k/include/asm/nettel.h108
1 files changed, 108 insertions, 0 deletions
diff --git a/arch/m68k/include/asm/nettel.h b/arch/m68k/include/asm/nettel.h
new file mode 100644
index 000000000000..0299f6a2deeb
--- /dev/null
+++ b/arch/m68k/include/asm/nettel.h
@@ -0,0 +1,108 @@
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 *) (MCF_MBAR + 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 *) (MCF_MBAR + 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 */