59 lines
1.4 KiB
C
59 lines
1.4 KiB
C
/*
|
|
* arch/arm/mach-ixp23xx/include/mach/platform.h
|
|
*
|
|
* Various bits of code used by platform-level code.
|
|
*
|
|
* Author: Deepak Saxena <dsaxena@plexity.net>
|
|
*
|
|
* Copyright 2005 (c) MontaVista Software, Inc.
|
|
*
|
|
* This file is licensed under the terms of the GNU General Public
|
|
* License version 2. This program is licensed "as is" without any
|
|
* warranty of any kind, whether express or implied.
|
|
*/
|
|
|
|
#ifndef __ASSEMBLY__
|
|
|
|
static inline unsigned long ixp2000_reg_read(volatile void *reg)
|
|
{
|
|
return *((volatile unsigned long *)reg);
|
|
}
|
|
|
|
static inline void ixp2000_reg_write(volatile void *reg, unsigned long val)
|
|
{
|
|
*((volatile unsigned long *)reg) = val;
|
|
}
|
|
|
|
static inline void ixp2000_reg_wrb(volatile void *reg, unsigned long val)
|
|
{
|
|
*((volatile unsigned long *)reg) = val;
|
|
}
|
|
|
|
struct pci_sys_data;
|
|
|
|
void ixp23xx_map_io(void);
|
|
void ixp23xx_init_irq(void);
|
|
void ixp23xx_sys_init(void);
|
|
void ixp23xx_restart(char, const char *);
|
|
int ixp23xx_pci_setup(int, struct pci_sys_data *);
|
|
void ixp23xx_pci_preinit(void);
|
|
struct pci_bus *ixp23xx_pci_scan_bus(int, struct pci_sys_data*);
|
|
void ixp23xx_pci_slave_init(void);
|
|
|
|
extern struct sys_timer ixp23xx_timer;
|
|
|
|
#define IXP23XX_UART_XTAL 14745600
|
|
|
|
#ifndef __ASSEMBLY__
|
|
/*
|
|
* Is system memory on the XSI or CPP bus?
|
|
*/
|
|
static inline unsigned ixp23xx_cpp_boot(void)
|
|
{
|
|
return (*IXP23XX_EXP_CFG0 & IXP23XX_EXP_CFG0_XSI_NOT_PRES);
|
|
}
|
|
#endif
|
|
|
|
|
|
#endif
|