2007-03-26 19:09:16 +00:00
|
|
|
/*
|
2007-07-11 13:00:27 +00:00
|
|
|
* $Id$
|
2007-03-29 22:21:22 +00:00
|
|
|
*
|
2007-07-11 13:00:27 +00:00
|
|
|
* Copyright (C) 2007 OpenWrt.org
|
2007-08-29 17:27:11 +00:00
|
|
|
* Copyright (C) 2007 Gabor Juhos <juhosg at openwrt.org>
|
2007-03-29 22:21:22 +00:00
|
|
|
*
|
2008-01-30 13:15:51 +00:00
|
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
|
|
* under the terms of the GNU General Public License version 2 as published
|
|
|
|
* by the Free Software Foundation.
|
2007-07-11 13:00:27 +00:00
|
|
|
*
|
2007-03-26 19:09:16 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _ADM5120_INFO_H
|
|
|
|
#define _ADM5120_INFO_H
|
|
|
|
|
|
|
|
#include <linux/types.h>
|
|
|
|
|
2007-07-11 13:00:27 +00:00
|
|
|
extern unsigned int adm5120_prom_type;
|
|
|
|
#define ADM5120_PROM_GENERIC 0
|
|
|
|
#define ADM5120_PROM_CFE 1
|
|
|
|
#define ADM5120_PROM_MYLOADER 2
|
|
|
|
#define ADM5120_PROM_ROUTERBOOT 3
|
|
|
|
#define ADM5120_PROM_BOOTBASE 4
|
|
|
|
#define ADM5120_PROM_UBOOT 5
|
|
|
|
#define ADM5120_PROM_LAST 5
|
2007-04-16 09:55:30 +00:00
|
|
|
|
|
|
|
extern unsigned int adm5120_product_code;
|
|
|
|
extern unsigned int adm5120_revision;
|
|
|
|
extern unsigned int adm5120_nand_boot;
|
2007-03-26 19:09:16 +00:00
|
|
|
|
2007-04-16 09:55:30 +00:00
|
|
|
extern unsigned long adm5120_speed;
|
|
|
|
#define ADM5120_SPEED_175 175000000
|
|
|
|
#define ADM5120_SPEED_200 200000000
|
|
|
|
#define ADM5120_SPEED_225 225000000
|
|
|
|
#define ADM5120_SPEED_250 250000000
|
|
|
|
|
|
|
|
extern unsigned int adm5120_package;
|
|
|
|
#define ADM5120_PACKAGE_PQFP 0
|
|
|
|
#define ADM5120_PACKAGE_BGA 1
|
2007-03-26 19:09:16 +00:00
|
|
|
|
2007-06-14 11:59:31 +00:00
|
|
|
extern unsigned long adm5120_memsize;
|
|
|
|
|
2007-07-11 13:00:27 +00:00
|
|
|
/*
|
|
|
|
* TODO:remove adm5120_eth* variables when the switch driver will be
|
|
|
|
* converted into a real platform driver
|
|
|
|
*/
|
|
|
|
extern unsigned int adm5120_eth_num_ports;
|
|
|
|
extern unsigned char adm5120_eth_macs[6][6];
|
2007-08-01 16:54:51 +00:00
|
|
|
extern unsigned char adm5120_eth_vlans[6];
|
2007-07-11 13:00:27 +00:00
|
|
|
|
2007-07-17 08:32:29 +00:00
|
|
|
extern void adm5120_soc_init(void) __init;
|
2007-07-11 13:00:27 +00:00
|
|
|
extern void adm5120_mem_init(void) __init;
|
|
|
|
extern void adm5120_ndelay(u32 ns);
|
|
|
|
|
|
|
|
extern void adm5120_restart(char *command);
|
|
|
|
extern void adm5120_halt(void);
|
|
|
|
|
|
|
|
extern void (*adm5120_board_reset)(void);
|
2007-03-26 19:09:16 +00:00
|
|
|
|
2007-12-10 14:05:01 +00:00
|
|
|
extern void adm5120_gpio_init(void) __init;
|
|
|
|
extern void adm5120_gpio_csx0_enable(void) __init;
|
|
|
|
extern void adm5120_gpio_csx1_enable(void) __init;
|
|
|
|
extern void adm5120_gpio_ew_enable(void) __init;
|
|
|
|
|
2007-05-20 19:47:41 +00:00
|
|
|
static inline int adm5120_package_pqfp(void)
|
|
|
|
{
|
|
|
|
return (adm5120_package == ADM5120_PACKAGE_PQFP);
|
|
|
|
}
|
|
|
|
|
|
|
|
static inline int adm5120_package_bga(void)
|
|
|
|
{
|
|
|
|
return (adm5120_package == ADM5120_PACKAGE_BGA);
|
|
|
|
}
|
|
|
|
|
2007-03-29 22:21:22 +00:00
|
|
|
static inline int adm5120_has_pci(void)
|
|
|
|
{
|
2007-04-16 09:55:30 +00:00
|
|
|
return (adm5120_package == ADM5120_PACKAGE_BGA);
|
|
|
|
}
|
|
|
|
|
|
|
|
static inline int adm5120_has_gmii(void)
|
|
|
|
{
|
|
|
|
return (adm5120_package == ADM5120_PACKAGE_BGA);
|
|
|
|
}
|
|
|
|
|
2007-03-26 19:09:16 +00:00
|
|
|
#endif /* _ADM5120_INFO_H */
|