162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
262306a36Sopenharmony_ci/* include/linux/dm9000.h
362306a36Sopenharmony_ci *
462306a36Sopenharmony_ci * Copyright (c) 2004 Simtec Electronics
562306a36Sopenharmony_ci *   Ben Dooks <ben@simtec.co.uk>
662306a36Sopenharmony_ci *
762306a36Sopenharmony_ci * Header file for dm9000 platform data
862306a36Sopenharmony_ci*/
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci#ifndef __DM9000_PLATFORM_DATA
1162306a36Sopenharmony_ci#define __DM9000_PLATFORM_DATA __FILE__
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci#include <linux/if_ether.h>
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci/* IO control flags */
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci#define DM9000_PLATF_8BITONLY	(0x0001)
1862306a36Sopenharmony_ci#define DM9000_PLATF_16BITONLY	(0x0002)
1962306a36Sopenharmony_ci#define DM9000_PLATF_32BITONLY	(0x0004)
2062306a36Sopenharmony_ci#define DM9000_PLATF_EXT_PHY	(0x0008)
2162306a36Sopenharmony_ci#define DM9000_PLATF_NO_EEPROM	(0x0010)
2262306a36Sopenharmony_ci#define DM9000_PLATF_SIMPLE_PHY (0x0020)  /* Use NSR to find LinkStatus */
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci/* platform data for platform device structure's platform_data field */
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_cistruct dm9000_plat_data {
2762306a36Sopenharmony_ci	unsigned int	flags;
2862306a36Sopenharmony_ci	unsigned char	dev_addr[ETH_ALEN];
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci	/* allow replacement IO routines */
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci	void	(*inblk)(void __iomem *reg, void *data, int len);
3362306a36Sopenharmony_ci	void	(*outblk)(void __iomem *reg, void *data, int len);
3462306a36Sopenharmony_ci	void	(*dumpblk)(void __iomem *reg, int len);
3562306a36Sopenharmony_ci};
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci#endif /* __DM9000_PLATFORM_DATA */
3862306a36Sopenharmony_ci
39