target.nr
资源名称:idt438.rar [点击查看]
上传用户:yingyi0918
上传日期:2022-06-26
资源大小:214k
文件大小:13k
源码类别:
VxWorks
开发平台:
C/C++
- '" t
- .so wrs.an
- ." IDT79PMC438/target.nr - IDT79PMC438 target specific documentation
- ."
- ." Copyright 1984-2002 Wind River Systems, Inc.
- ."
- ." This file has been developed or significantly modified by the
- ." MIPS Center of Excellence Dedicated Engineering Staff.
- ." This notice is as per the MIPS Center of Excellence Master Partner
- ." Agreement, do not remove this notice without checking first with
- ." WR/Platforms MIPS Center of Excellence engineering management.
- ."
- ." modification history
- ." --------------------
- ." 01a,09jul02,agf remove references to Tornado 2.1 Arch Suppl from
- ." BIBLIOGRAPHY
- ." 01d,19mar02,d_c Brought up to date for T2.1.2 release.
- ." 01c,18dec01,d_c Add some words about configuring FEI cards.
- ." 01b,11dec01,d_c Modify board diagram slightly - move switches down.
- ." Change interrupt table to reflect new organization.
- ." 01a,06dec01,d_c derived from original target.nr for IDT S143 BSP
- ."
- ."
- .TH "IDT79PMC438" T "IDT 79PMC438 Board Support Package" "12/15/2002" "TORNADO REFERENCE: VXWORKS"
- .SH "NAME"
- .aX "IDT 79PMC438 Board Support Package"
- .SH "INTRODUCTION"
- This manual entry provides board-specific information necessary to run
- VxWorks for the IDT79PMC438 BSP. Before using a board with VxWorks,
- verify that the board runs in the factory configuration by using
- vendor-supplied switch and jumper settings and checking the RS-232
- connection.
- .SS "Boot ROMs"
- The IDT 79PMC438 uses one AM29DL163DT flash as the VxWorks boot ROM. The
- flash is two megabyte in size and is accessed via an 16 bit port.
- .SS "Switches and Jumpers"
- .TS E
- expand;
- cf3 s s
- lf3 lf3 lf3
- l l lw(3i) .
- .ne 5
- IDT 79PMC438
- .sp .25
- Jumper Setting Description
- _
- W1 A-B Close Enables LP2995 and powers the CPU core via LP2995
- W1 C-D Close Provides 3.3 v input to LT1764A when LT1764 is used
- W2 A-B Open LT1764A provides 1.2v to board
- W2 B-C Close LP2995 provides 1.2v to board
- W2 D-E Open LT1764A provides 1.2v to board
- W2 E-F Close LP2995 provides 1.2v to board
- W3 A-B Open LT1764A provides 1.2v to board
- W3 B-C Close LP2995 provides 1.2v to board
- W3 D-E Open LT1764A provides 1.2v to board
- W3 E-F Close LP2995 provides 1.2v to board
- W4 A-B Close Enables host mode pull-ups
- W4 C-D Close Pulls M66EN low
- W5 A-B Close Disables I2C write protect
- W5 C-D Close I2C device write address set to 000
- W5 E-F Close I2C device write address set to 000
- W5 G-H Close I2C device write address set to 000
- .TE
- .TS E
- expand;
- cf3 s s
- lf3 lf3 lf3
- l l lw(3i) .
- Switch Setting Description
- _
- S2-1 OFF Selects the Tx Output Slew rate control(3.3ns)
- S2-2 OFF Selects the Tx Output Slew rate control(3.3ns)
- S2-3 OFF Enables PHY0 MDIO Port
- S2-4 OFF Enables PHY1 MDIO Port
- S2-5 OFF Disables PHY0 power-down mode
- S2-6 OFF Disables PHY1 power down mode
- S2-7 OFF Ethernet PHY address are 1 and 0
- S2-8 OFF Etherent PHY address are 1 and 0
- S3-1 OFF Ethernet PHY LED configuration
- S3-2 ON Ethernet PHY LED Configuration
- S3-3 ON Enables auto negotiation for eth port 0
- S3-4 ON Selects full duplex for eth port 0
- S3-5 ON Selectes 100 Mbps for Eth port 0
- S3-6 ON Enables auto negotiation for Eth port 1
- S3-7 ON Selects full duplex for Ethernet port 1
- S3-8 ON Selects 100 MBPS for Eth port 1
- S4-1 ON Selects normal reset
- S4-2 ON Host mode with internal arbiter using fixed priority
- S4-3 ON Host mode with internal arbiter using fixed priority
- S4-4 OFF Host mode with internal arbiter using fixed priority
- S4-5 OFF Disables watchdog timer
- S4-6 ON Default
- S4-7 ON Default
- S4-8 ON Default
- S5-1 OFF Multiplies master clock by 6
- S5-2 OFF Multiplies master clock by 6
- S5-3 ON Multiplies master clock by 6
- S5-4 ON Multiplies master clock by 6
- S5-5 ON Divides IP bus clock by 1
- S5-6 ON Divides IP bus clock by 1
- S5-7 OFF Selects big endian
- S5-8 OFF Port width of boot device is 16 bits.
- .TE
- .PP
- For details of jumper configuration, see the board diagram at the end
- of this entry. Also see the board's hardware manual for other jumpers
- not directly related to VxWorks operation.
- .SH "FEATURES"
- This section describes all features of the board, supported or not.
- .SS "Supported Features"
- .PP
- The following features are supported by the BSP:
- .IP
- Big endian addressing mode, with compensating code for PCI (little
- endian) access.
- .IP
- PCI bus, with automatic initialization of PCI configuration headers.
- .IP
- Two Internal 10/100 Full/Half duplex Ethernet port J3 and J6
- .IP
- Internal 16550 DUART using internal serial ports A (J1)
- .IP
- System clock (using counter timer0).
- .IP
- Aux clock (using timer 1).
- .IP
- MIPS4Kc cache support.
- .IP
- 33 MHz CPU crystal, with X6 CPU clock multiplier.
- .IP
- 200 MHz 64 MByte DDRRAM.
- .IP
- PCI host mode.
- .SS "Unsupported Features"
- .PP
- The following board features are not supported:
- .IP
- Little endian address mode.
- .IP
- 32 bit FLASH access.
- .IP
- 32 bit EEPROM access.
- .IP
- PCI satellite mode.
- .IP
- Boot from PCI. Needs code change. Contact IDT for help.
- .IP
- General purpose timers 1-2.
- .SH "HARDWARE DETAILS"
- This section documents the details of the device drivers and board
- hardware elements.
- .SS "Devices"
- Supported drivers include:
- .IP
- ns16550Sio.c - 16550 serial driver initialized to support the 2 internal
- serial ports (See sysSerial.c).
- .IP
- idt32438End.c - On Chip 10/100 MHZ Full/Half Duplex Ethernet Driver.
- .IP
- Aux clock is supported in sysTimers.c using timer 1.
- .SS "Memory Map"
- .TS E
- expand;
- cf3 s s s
- lf3 lf3 lf3 lf3
- lw(1i) lw(1i) lw(1i) lw(1i) .
- .ne 5
- CPU Virtual Memory
- .sp .25
- Start End Size Use
- _
- 8000_0000 83FF_FFFF 32MB SDRAM (cached)
- A000_0000 A3FF_FFFF 32MB SDRAM (uncached)
- B000_0000 B000_0000 1W Interrupt status
- B800_0000 B87F_FFFF - RC32438 internal registers
- B880_0000 B88F_FFFF 1MB CPU->PCI I/O space
- B8C0_0000 B8FF_FFFF 4MB CPU->PCI Memory Space 3
- BFC0_0000 BFCF_FFFF 1MB EEPROM
- E000_0000 E1FF_FFFF 32MB CPU->PCI Memory Space 1
- F000_0000 F1FF_FFFF 32MB CPU->PCI Memory Space 2
- _
- .TE
- .SS "Interrupts"
- .TS E
- expand;
- cf3 s s s
- lf3 lf3 lf3 lf3
- lw(1i) lw(1i) lw(2i) lw(2i) .
- .ne 5
- .sp .25
- Interrupt | Handler | Device | Action
- _
- 64 | sysClkInt | Timer 0 | Timer 0 interrupt
- 65 | - | - | SW interrupt 1
- 66 | - | - | (not used)
- 67 | sysRc32438GpioDemux| INT1:INT A,B,C,D | Chain PCI ISRs (see note 1)
- 69 | sysRc32438IntDemux | INT3: RC32438 | Demultiplex (see note 2)
- 70 | - | - | (not used)
- 71 | - | - | (not used)
- 72 | Not used | INT5: CP0 Timer | System clock tick
- .TE
- .IP "Note 1"
- All PCI interrupts are handled by the pciIntLib module, which calls
- interrupt handlers for all installed PCI devices. Therefore PCI interrupt
- handlers must be installed with pciIntConnect(), rather than intConnect().
- .IP "Note 2"
- Internal RC32438 devices all share the same interrupt request line
- (INT 3). sysLib.c/sysRc32438IntDemux() determines the device that
- caused a particular interrupt and returns the appropriate interrupt
- number so that the correct handler is dispatched. It does this by
- checking the group 0 interrupt pending register in the Expansion
- Interrupt Controller.
- .SS "Serial Configuration"
- The default baud rate is 9600 baud, 8 data bits, no parity bit, 1 stop
- bit, no flow control. UART_DEFAULT_BAUD_RATE may be modified to change
- this. The console port is located on INT UART PORT 0 (J1) at the top
- left corner of the board.
- .SS "Network Configuration"
- The BSP supports two Internal Ethernet Interfaces.
- Set NUM_IDT_UNITS in config.h to the number of IDT devices you
- are using.
- The IP addresses for the board and host node are set in the boot shell.
- By default the BSP is designed to download the VxWorks image from Ethernet
- port 0(J3). Software changes are needed in case you wish to change the
- default boot device.
- .SS "PCI Access"
- .IP "CPU -> PCI Memory and I/O Access"
- CPU -> PCI memory access is mapped in kseg2 using the TLB (see
- sysPci.c/sysPciTlbInit()). The PCI bridge is programmed for a
- compensating translation (sysPciHostBridgeInit()). So PCI memory space
- pointers are the same from the CPU and PCI perspective.
- PCI I/O space is accessed via kseg1, so the TLB is not
- involved. However, the PCI bridge is again employed to create a
- compensating translation, making I/O addresses uniform between CPU and
- PCI.
- There are two areas set aside high in kseg2 for PCI memory access -
- one to be used for non-prefetchable PCI device memory (0xE000_0000)
- and another for pre-fetchable PCI device memory (0xF000_0000). Each of
- those blocks of memory is 32MBytes in size. The pciAutoConfigLib
- module is employed to discover all devices on the PCI bus and query
- their configuration headers for requested memory sizes. The
- pciAutoConfigLib module then assigns each of the devices a part of the
- kseg2 memory space. To find out where PCI device memory and I/O is
- located, you must query it's configuration header after
- pciAutoConfigLib has completed.
- .IP "PCI -> CPU Memory Access"
- For PCI -> CPU memory access, no compensating translation is employed,
- so software must convert addresses for PCI and CPU perspectives.
- Memory to be used for PCI->CPU memory access is allocated
- using cacheDmaMalloc().
- PCI->CPU I/O access is not supported.
- .SS "Boot Devices"
- Any of the interfaces can be used as Boot device. By default Ethernet port
- 0 is setup as the boot device.
- .SS "Boot Methods"
- The standard VxWorks ROM-based network boot methods are available.
- .SS "ROM Considerations"
- A single 2 MByte Flash is used to store the bootrom code, which is
- created by making the bootrom target.
- .SH "SPECIAL CONSIDERATIONS"
- The BSP supports 33 MHZ CPU crystal.
- The default setting on the board multiplies this clock by 6 and is the CPU Clock rate.
- Therefore by default the board is set to be running at 200 MHZ.
- There are four PCI connectors - All of them are 3.3V.
- .SS "Known Problems"
- The internal CP0 timer does not cause an interrupt to be generated.
- Therefore we are using Counter Timer 0 to generate clock ticks.
- .SH "BOARD LAYOUT"
- The diagram below shows jumpers relevant to VxWorks configuration.
- .bS
- ________________________________________________________________________
- | |
- |___ W1S W2T W3Z W4S |
- | S | +-------+ |
- | I | | DDR | |
- | 0 | +-------+ |
- |___| |
- | |
- | |
- |_____ |
- | J3 | |
- | | |
- | | |
- |_____| +-----+ |
- | | F | |
- | | L | |
- |_____ | A | |
- | J6 | | S | |
- | | | H | |
- | | W5Y +-----+ |
- |_____| |
- | S2 00000000 S3 01111111 S4 11100111 S5 11011100 |
- |________________________________________________________________________|
- .bE
- Key:
- X vertical jumper installed
- : vertical jumper absent
- - horizontal jumper installed
- " horizontal jumper absent
- 0 switch off
- 1 switch on
- U three-pin vertical jumper, upper jumper installed
- D three-pin vertical jumper, lower jumper installed
- L three-pin horizontal jumper, left jumper installed
- R three-pin horizontal jumper, right jumper installed
- S Four-pin Jumper, AB shorted and CD shorted.
- T Six-pin Jumper, BC & EF shorted.
- Z Six-pin Jumper, FE Shorted.
- Y Eight pin Jumper, AB, CD, EF & GH Shorted.
- .SH "BIBLIOGRAPHY"
- .iB "IDT79PMC438 Evaluation Board Manual"
- .iB "IDT79RC3438 User Reference Manual"
- .iB "http://iwww.idt.com/products/pages/Integrated_Processors-79RC32438.html"