Path: blob/master/arch/m32r/include/asm/m32700ut/m32700ut_lan.h
10820 views
#ifndef _M32700UT_M32700UT_LAN_H1#define _M32700UT_M32700UT_LAN_H23/*4* include/asm-m32r/m32700ut/m32700ut_lan.h5*6* M32700UT-LAN board7*8* Copyright (c) 2002 Takeo Takahashi9*10* This file is subject to the terms and conditions of the GNU General11* Public License. See the file "COPYING" in the main directory of12* this archive for more details.13*/1415#ifndef __ASSEMBLY__16/*17* C functions use non-cache address.18*/19#define M32700UT_LAN_BASE (0x10000000 /* + NONCACHE_OFFSET */)20#else21#define M32700UT_LAN_BASE (0x10000000 + NONCACHE_OFFSET)22#endif /* __ASSEMBLY__ */2324/* ICU25* ICUISTS: status register26* ICUIREQ0: request register27* ICUIREQ1: request register28* ICUCR3: control register for CFIREQ# interrupt29* ICUCR4: control register for CFC Card insert interrupt30* ICUCR5: control register for CFC Card eject interrupt31* ICUCR6: control register for external interrupt32* ICUCR11: control register for MMC Card insert/eject interrupt33* ICUCR13: control register for SC error interrupt34* ICUCR14: control register for SC receive interrupt35* ICUCR15: control register for SC send interrupt36* ICUCR16: control register for SIO0 receive interrupt37* ICUCR17: control register for SIO0 send interrupt38*/39#define M32700UT_LAN_IRQ_LAN (M32700UT_LAN_PLD_IRQ_BASE + 1) /* LAN */40#define M32700UT_LAN_IRQ_I2C (M32700UT_LAN_PLD_IRQ_BASE + 3) /* I2C */4142#define M32700UT_LAN_ICUISTS __reg16(M32700UT_LAN_BASE + 0xc0002)43#define M32700UT_LAN_ICUISTS_VECB_MASK (0xf000)44#define M32700UT_LAN_VECB(x) ((x) & M32700UT_LAN_ICUISTS_VECB_MASK)45#define M32700UT_LAN_ICUISTS_ISN_MASK (0x07c0)46#define M32700UT_LAN_ICUISTS_ISN(x) ((x) & M32700UT_LAN_ICUISTS_ISN_MASK)47#define M32700UT_LAN_ICUIREQ0 __reg16(M32700UT_LAN_BASE + 0xc0004)48#define M32700UT_LAN_ICUCR1 __reg16(M32700UT_LAN_BASE + 0xc0010)49#define M32700UT_LAN_ICUCR3 __reg16(M32700UT_LAN_BASE + 0xc0014)5051/*52* AR register on PLD53*/54#define ARVCR0 __reg32(M32700UT_LAN_BASE + 0x40000)55#define ARVCR0_VDS 0x0008000056#define ARVCR0_RST 0x0001000057#define ARVCR1 __reg32(M32700UT_LAN_BASE + 0x40004)58#define ARVCR1_QVGA 0x0200000059#define ARVCR1_NORMAL 0x0100000060#define ARVCR1_HIEN 0x0001000061#define ARVHCOUNT __reg32(M32700UT_LAN_BASE + 0x40008)62#define ARDATA __reg32(M32700UT_LAN_BASE + 0x40010)63#define ARINTSEL __reg32(M32700UT_LAN_BASE + 0x40014)64#define ARINTSEL_INT3 0x10000000 /* CPU INT3 */65#define ARDATA32 __reg32(M32700UT_LAN_BASE + 0x04040010) // Block 566/*67#define ARINTSEL_SEL2 0x0000200068#define ARINTSEL_SEL3 0x0000100069#define ARINTSEL_SEL6 0x0000020070#define ARINTSEL_SEL7 0x0000010071#define ARINTSEL_SEL9 0x0000004072#define ARINTSEL_SEL10 0x0000002073#define ARINTSEL_SEL11 0x0000001074#define ARINTSEL_SEL12 0x0000000875*/7677/*78* I2C register on PLD79*/80#define PLDI2CCR __reg32(M32700UT_LAN_BASE + 0x40040)81#define PLDI2CCR_ES0 0x00000001 /* enable I2C interface */82#define PLDI2CMOD __reg32(M32700UT_LAN_BASE + 0x40044)83#define PLDI2CMOD_ACKCLK 0x0000020084#define PLDI2CMOD_DTWD 0x0000010085#define PLDI2CMOD_10BT 0x0000000486#define PLDI2CMOD_ATM_NORMAL 0x0000000087#define PLDI2CMOD_ATM_AUTO 0x0000000388#define PLDI2CACK __reg32(M32700UT_LAN_BASE + 0x40048)89#define PLDI2CACK_ACK 0x0000000190#define PLDI2CFREQ __reg32(M32700UT_LAN_BASE + 0x4004c)91#define PLDI2CCND __reg32(M32700UT_LAN_BASE + 0x40050)92#define PLDI2CCND_START 0x0000000193#define PLDI2CCND_STOP 0x0000000294#define PLDI2CSTEN __reg32(M32700UT_LAN_BASE + 0x40054)95#define PLDI2CSTEN_STEN 0x0000000196#define PLDI2CDATA __reg32(M32700UT_LAN_BASE + 0x40060)97#define PLDI2CSTS __reg32(M32700UT_LAN_BASE + 0x40064)98#define PLDI2CSTS_TRX 0x0000002099#define PLDI2CSTS_BB 0x00000010100#define PLDI2CSTS_NOACK 0x00000001 /* 0:ack, 1:noack */101102#endif /* _M32700UT_M32700UT_LAN_H */103104105