![Ben Dooks](/assets/img/avatar_default.png)
The DM9000's internal PHY reports a copy of the link status in the NSR register of the chip. Reading the status when polling for link status is faster as it eliminates the need to sleep, but does not print as much information. Add an platform flag to force this behaviour, and a Kconfig option to allow it to be forced to the faster method always. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
40 lines
1 KiB
C
40 lines
1 KiB
C
/* include/linux/dm9000.h
|
|
*
|
|
* Copyright (c) 2004 Simtec Electronics
|
|
* Ben Dooks <ben@simtec.co.uk>
|
|
*
|
|
* Header file for dm9000 platform data
|
|
*
|
|
* 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.
|
|
*
|
|
*/
|
|
|
|
#ifndef __DM9000_PLATFORM_DATA
|
|
#define __DM9000_PLATFORM_DATA __FILE__
|
|
|
|
/* IO control flags */
|
|
|
|
#define DM9000_PLATF_8BITONLY (0x0001)
|
|
#define DM9000_PLATF_16BITONLY (0x0002)
|
|
#define DM9000_PLATF_32BITONLY (0x0004)
|
|
#define DM9000_PLATF_EXT_PHY (0x0008)
|
|
#define DM9000_PLATF_NO_EEPROM (0x0010)
|
|
#define DM9000_PLATF_SIMPLE_PHY (0x0020) /* Use NSR to find LinkStatus */
|
|
|
|
/* platfrom data for platfrom device structure's platfrom_data field */
|
|
|
|
struct dm9000_plat_data {
|
|
unsigned int flags;
|
|
|
|
/* allow replacement IO routines */
|
|
|
|
void (*inblk)(void __iomem *reg, void *data, int len);
|
|
void (*outblk)(void __iomem *reg, void *data, int len);
|
|
void (*dumpblk)(void __iomem *reg, int len);
|
|
};
|
|
|
|
#endif /* __DM9000_PLATFORM_DATA */
|
|
|