15#ifndef LIBBSP_POWERPC_MOTOROLA_POWERPC_BSP_H
16#define LIBBSP_POWERPC_MOTOROLA_POWERPC_BSP_H
93#define _IO_BASE CHRP_ISA_IO_BASE
94#define _ISA_MEM_BASE CHRP_ISA_MEM_BASE
96#define PCI_DRAM_OFFSET CHRP_PCI_DRAM_OFFSET
100#define PCI_MEM_WIN0 0x80000000
103#define _IO_BASE PREP_ISA_IO_BASE
104#define _ISA_MEM_BASE PREP_ISA_MEM_BASE
107#define PCI_DRAM_OFFSET PREP_PCI_DRAM_OFFSET
109#define PCI_MEM_BASE PREP_ISA_MEM_BASE
110#define PCI_MEM_WIN0 0
112#define PCI_DRAM_OFFSET 0
113#define PCI_MEM_BASE 0
114#define PCI_MEM_WIN0 PREP_ISA_MEM_BASE
121#define BSP_HAS_PC_PCI
126#define RTEMS_BSP_PCI_IO_REGION_BASE 0
127#define RTEMS_BSP_PCI_MEM_REGION_BASE PCI_DRAM_OFFSET
132#define RTEMS_BSP_ADDR_PTR(_type) uint ## _type ## _t __volatile*
133#define RTEMS_BSP_ADDR_CPTR(_type) const RTEMS_BSP_ADDR_PTR(_type)
134#define RTEMS_BSP_ADDRESS_READ(_addr, _type) \
135 *((RTEMS_BSP_ADDR_CPTR(_type)) (((RTEMS_BSP_ADDR_CPTR(8)) _addr) + PCI_DRAM_OFFSET))
136#define RTEMS_BSP_ADDRESS_WRITE(_addr, _val, _type) \
137 *((RTEMS_BSP_ADDR_PTR(_type)) (((RTEMS_BSP_ADDR_PTR(8)) _addr) + PCI_DRAM_OFFSET)) = (_val)
139#define RTEMS_BSP_READ_1(_addr) RTEMS_BSP_ADDRESS_READ(_addr, 8)
140#define RTEMS_BSP_READ_2(_addr) RTEMS_BSP_ADDRESS_READ(_addr, 16)
141#define RTEMS_BSP_READ_4(_addr) RTEMS_BSP_ADDRESS_READ(_addr, 32)
142#define RTEMS_BSP_READ_8(_addr) RTEMS_BSP_ADDRESS_READ(_addr, 64)
144#define RTEMS_BSP_WRITE_1(_addr, _val) RTEMS_BSP_ADDRESS_WRITE(_addr, _val, 8)
145#define RTEMS_BSP_WRITE_2(_addr, _val) RTEMS_BSP_ADDRESS_WRITE(_addr, _val, 16)
146#define RTEMS_BSP_WRITE_4(_addr, _val) RTEMS_BSP_ADDRESS_WRITE(_addr, _val, 32)
147#define RTEMS_BSP_WRITE_8(_addr, _val) RTEMS_BSP_ADDRESS_WRITE(_addr, _val, 64)
158#define BSP_UART_IOBASE_COM1 ((_IO_BASE)+0x01e10000)
160#define BSP_OPEN_PIC_BASE_OFFSET 0x40000
162#define MVME_HAS_DEC21140
164#define BSP_UART_IOBASE_COM1 ((_IO_BASE)+0x3f8)
165#define BSP_UART_IOBASE_COM2 ((_IO_BASE)+0x2f8)
168#define BSP_KBD_IOBASE ((_IO_BASE)+0x60)
169#define BSP_VGA_IOBASE ((_IO_BASE)+0x3c0)
173#define MVME_HAS_DEC21140
177#define BSP_CONSOLE_PORT BSP_UART_COM1
178#define BSP_UART_BAUD_BASE 115200
180struct rtems_bsdnet_ifconfig;
182#if defined(MVME_HAS_DEC21140)
183#define RTEMS_BSP_NETWORK_DRIVER_NAME "dc1"
184#define RTEMS_BSP_NETWORK_DRIVER_ATTACH rtems_dec21140_driver_attach
185extern int rtems_dec21140_driver_attach(
struct rtems_bsdnet_ifconfig *,
int);
189#define RTEMS_BSP_NETWORK_DRIVER_NAME "ne1"
190#define RTEMS_BSP_NETWORK_DRIVER_ATTACH rtems_ne_driver_attach
191extern int rtems_ne_driver_attach(
struct rtems_bsdnet_ifconfig *,
int);
200#define BSP_IDLE_TASK_BODY bsp_ppc_idle_task_body
201extern void *bsp_ppc_idle_task_body(uintptr_t arg);
204#include <bsp/openpic.h>
219#define BSP_PIC_DO_EOI openpic_eoi(0)
222#define outport_byte(port,value) outb(value,port)
223#define outport_word(port,value) outw(value,port)
224#define outport_long(port,value) outl(value,port)
226#define inport_byte(port,value) (value = inb(port))
227#define inport_word(port,value) (value = inw(port))
228#define inport_long(port,value) (value = inl(port))
237extern unsigned int BSP_mem_size;
241extern unsigned int BSP_heap_start;
245extern unsigned int BSP_bus_frequency;
249extern unsigned int BSP_processor_frequency;
253extern unsigned int BSP_time_base_divisor;
258extern char *BSP_commandline_string;
260#define BSP_Convert_decrementer( _value ) \
261 ((unsigned long long) ((((unsigned long long)BSP_time_base_divisor) * 1000000ULL) /((unsigned long long) BSP_bus_frequency)) * ((unsigned long long) (_value)))
264extern int BSP_disconnect_clock_handler (
void);
277extern unsigned long _BSP_clear_hostbridge_errors(
int enableMCP,
int quiet);
282char *save_boot_params(
294void VIA_isa_bridge_interrupts_setup(
void);
BSP Command Line Handler.
DEFAULT_INITIAL_EXTENSION Support.
const char * rtems_bsp_cmdline_get_param_raw(const char *name)
Obtain Pointer to the Entire Matching Argument.
Definition: bspcmdline_getparamraw.c:28
int BSP_connect_clock_handler(void)
Clock Tick Device Driver.
Definition: p_clock.c:37
#define RTEMS_INLINE_ROUTINE
Definition: basedefs.h:66