diff options
| author | Mike Frysinger <vapier@gentoo.org> | 2011-10-26 00:17:15 +0000 | 
|---|---|---|
| committer | Stefano Babic <sbabic@denx.de> | 2011-11-22 08:39:25 +0100 | 
| commit | 2cc8b5c0e83a120bf80a8ac33e2d3825e2fd30a7 (patch) | |
| tree | d2a91a5a0e97e239a1fd4f07f53a67b2a6b2e786 | |
| parent | 79afc88d2ccfd78fa8735719bb2648dac3c686b6 (diff) | |
| download | olio-uboot-2014.01-2cc8b5c0e83a120bf80a8ac33e2d3825e2fd30a7.tar.xz olio-uboot-2014.01-2cc8b5c0e83a120bf80a8ac33e2d3825e2fd30a7.zip | |
net: rtl8109: drop unused !NET_MULTI driver
No one uses this driver, and it isn't converted to the NET_MULTI
framework (which we dropped recently), so drop this driver too.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| -rw-r--r-- | arch/arm/lib/board.c | 4 | ||||
| -rw-r--r-- | drivers/net/Makefile | 1 | ||||
| -rw-r--r-- | drivers/net/rtl8019.c | 271 | ||||
| -rw-r--r-- | drivers/net/rtl8019.h | 114 | 
4 files changed, 0 insertions, 390 deletions
| diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c index a482706fe..3d7827407 100644 --- a/arch/arm/lib/board.c +++ b/arch/arm/lib/board.c @@ -73,10 +73,6 @@ extern int  AT91F_DataflashInit(void);  extern void dataflash_print_info(void);  #endif -#ifdef CONFIG_DRIVER_RTL8019 -extern void rtl8019_get_enetaddr (uchar * addr); -#endif -  #if defined(CONFIG_HARD_I2C) || \      defined(CONFIG_SOFT_I2C)  #include <i2c.h> diff --git a/drivers/net/Makefile b/drivers/net/Makefile index 15eee8d8c..d3df82ee3 100644 --- a/drivers/net/Makefile +++ b/drivers/net/Makefile @@ -63,7 +63,6 @@ COBJS-$(CONFIG_NETCONSOLE) += netconsole.o  COBJS-$(CONFIG_NS8382X) += ns8382x.o  COBJS-$(CONFIG_PCNET) += pcnet.o  COBJS-$(CONFIG_PLB2800_ETHER) += plb2800_eth.o -COBJS-$(CONFIG_DRIVER_RTL8019) += rtl8019.o  COBJS-$(CONFIG_RTL8139) += rtl8139.o  COBJS-$(CONFIG_RTL8169) += rtl8169.o  COBJS-$(CONFIG_SH_ETHER) += sh_eth.o diff --git a/drivers/net/rtl8019.c b/drivers/net/rtl8019.c deleted file mode 100644 index f516afe6b..000000000 --- a/drivers/net/rtl8019.c +++ /dev/null @@ -1,271 +0,0 @@ -/* - * Realtek 8019AS Ethernet - * (C) Copyright 2002-2003 - * Xue Ligong(lgxue@hotmail.com),Wang Kehao, ESLAB, whut.edu.cn - * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ - -/* - * This code works in 8bit mode. - * If you need to work in 16bit mode, PLS change it! - */ - -#include <common.h> -#include <command.h> -#include "rtl8019.h" -#include <net.h> - -/* packet page register access functions */ - -static unsigned char get_reg (unsigned int regno) -{ -	return (*(unsigned char *) regno); -} - -static void put_reg (unsigned int regno, unsigned char val) -{ -	*(volatile unsigned char *) regno = val; -} - -static void eth_reset (void) -{ -	unsigned char ucTemp; - -	/* reset NIC */ -	ucTemp = get_reg (RTL8019_RESET); -	put_reg (RTL8019_RESET, ucTemp); -	put_reg (RTL8019_INTERRUPTSTATUS, 0xff); -	udelay (2000);		/* wait for 2ms */ -} - -void rtl8019_get_enetaddr (uchar * addr) -{ -	unsigned char i; -	unsigned char temp; - -	eth_reset (); - -	put_reg (RTL8019_COMMAND, RTL8019_REMOTEDMARD); -	put_reg (RTL8019_DATACONFIGURATION, 0x48); -	put_reg (RTL8019_REMOTESTARTADDRESS0, 0x00); -	put_reg (RTL8019_REMOTESTARTADDRESS1, 0x00); -	put_reg (RTL8019_REMOTEBYTECOUNT0, 12); -	put_reg (RTL8019_REMOTEBYTECOUNT1, 0x00); -	put_reg (RTL8019_COMMAND, RTL8019_REMOTEDMARD); -	printf ("MAC: "); -	for (i = 0; i < 6; i++) { -		temp = get_reg (RTL8019_DMA_DATA); -		*addr++ = temp; -		temp = get_reg (RTL8019_DMA_DATA); -		printf ("%x:", temp); -	} - -	while ((!get_reg (RTL8019_INTERRUPTSTATUS) & 0x40)); -	printf ("\b \n"); -	put_reg (RTL8019_REMOTEBYTECOUNT0, 0x00); -	put_reg (RTL8019_REMOTEBYTECOUNT1, 0x00); -	put_reg (RTL8019_COMMAND, RTL8019_PAGE0); -} - -void eth_halt (void) -{ -	put_reg (RTL8019_COMMAND, 0x01); -} - -int eth_init (bd_t * bd) -{ -	uchar enetaddr[6]; -	eth_reset (); -	put_reg (RTL8019_COMMAND, RTL8019_PAGE0STOP); -	put_reg (RTL8019_DATACONFIGURATION, 0x48); -	put_reg (RTL8019_REMOTEBYTECOUNT0, 0x00); -	put_reg (RTL8019_REMOTEBYTECOUNT1, 0x00); -	put_reg (RTL8019_RECEIVECONFIGURATION, 0x00);	/*00; */ -	put_reg (RTL8019_TRANSMITPAGE, RTL8019_TPSTART); -	put_reg (RTL8019_TRANSMITCONFIGURATION, 0x02); -	put_reg (RTL8019_PAGESTART, RTL8019_PSTART); -	put_reg (RTL8019_BOUNDARY, RTL8019_PSTART); -	put_reg (RTL8019_PAGESTOP, RTL8019_PSTOP); -	put_reg (RTL8019_INTERRUPTSTATUS, 0xff); -	put_reg (RTL8019_INTERRUPTMASK, 0x11);	/*b; */ -	put_reg (RTL8019_COMMAND, RTL8019_PAGE1STOP); -	eth_getenv_enetaddr("ethaddr", enetaddr); -	put_reg (RTL8019_PHYSICALADDRESS0, enetaddr[0]); -	put_reg (RTL8019_PHYSICALADDRESS1, enetaddr[1]); -	put_reg (RTL8019_PHYSICALADDRESS2, enetaddr[2]); -	put_reg (RTL8019_PHYSICALADDRESS3, enetaddr[3]); -	put_reg (RTL8019_PHYSICALADDRESS4, enetaddr[4]); -	put_reg (RTL8019_PHYSICALADDRESS5, enetaddr[5]); -	put_reg (RTL8019_MULTIADDRESS0, 0x00); -	put_reg (RTL8019_MULTIADDRESS1, 0x00); -	put_reg (RTL8019_MULTIADDRESS2, 0x00); -	put_reg (RTL8019_MULTIADDRESS3, 0x00); -	put_reg (RTL8019_MULTIADDRESS4, 0x00); -	put_reg (RTL8019_MULTIADDRESS5, 0x00); -	put_reg (RTL8019_MULTIADDRESS6, 0x00); -	put_reg (RTL8019_MULTIADDRESS7, 0x00); -	put_reg (RTL8019_CURRENT, RTL8019_PSTART); -	put_reg (RTL8019_COMMAND, RTL8019_PAGE0); -	put_reg (RTL8019_TRANSMITCONFIGURATION, 0xe0);	/*58; */ - -	return 0; -} - -static unsigned char nic_to_pc (void) -{ -	unsigned char rec_head_status; -	unsigned char next_packet_pointer; -	unsigned char packet_length0; -	unsigned char packet_length1; -	unsigned short rxlen = 0; -	unsigned int i = 4; -	unsigned char current_point; -	unsigned char *addr; - -	/* -	 * The RTL8019's first 4B is packet status,page of next packet -	 * and packet length(2B).So we receive the fist 4B. -	 */ -	put_reg (RTL8019_REMOTESTARTADDRESS1, get_reg (RTL8019_BOUNDARY)); -	put_reg (RTL8019_REMOTESTARTADDRESS0, 0x00); -	put_reg (RTL8019_REMOTEBYTECOUNT1, 0x00); -	put_reg (RTL8019_REMOTEBYTECOUNT0, 0x04); - -	put_reg (RTL8019_COMMAND, RTL8019_REMOTEDMARD); - -	rec_head_status = get_reg (RTL8019_DMA_DATA); -	next_packet_pointer = get_reg (RTL8019_DMA_DATA); -	packet_length0 = get_reg (RTL8019_DMA_DATA); -	packet_length1 = get_reg (RTL8019_DMA_DATA); - -	put_reg (RTL8019_COMMAND, RTL8019_PAGE0); -	/*Packet length is in two 8bit registers */ -	rxlen = packet_length1; -	rxlen = (((rxlen << 8) & 0xff00) + packet_length0); -	rxlen -= 4; - -	if (rxlen > PKTSIZE_ALIGN + PKTALIGN) -		printf ("packet too big!\n"); - -	/*Receive the packet */ -	put_reg (RTL8019_REMOTESTARTADDRESS0, 0x04); -	put_reg (RTL8019_REMOTESTARTADDRESS1, get_reg (RTL8019_BOUNDARY)); - -	put_reg (RTL8019_REMOTEBYTECOUNT0, (rxlen & 0xff)); -	put_reg (RTL8019_REMOTEBYTECOUNT1, ((rxlen >> 8) & 0xff)); - - -	put_reg (RTL8019_COMMAND, RTL8019_REMOTEDMARD); - -	for (addr = (unsigned char *) NetRxPackets[0], i = rxlen; i > 0; i--) -		*addr++ = get_reg (RTL8019_DMA_DATA); -	/* Pass the packet up to the protocol layers. */ -	NetReceive (NetRxPackets[0], rxlen); - -	while (!(get_reg (RTL8019_INTERRUPTSTATUS)) & 0x40);	/* wait for the op. */ - -	/* -	 * To test whether the packets are all received,get the -	 * location of current point -	 */ -	put_reg (RTL8019_COMMAND, RTL8019_PAGE1); -	current_point = get_reg (RTL8019_CURRENT); -	put_reg (RTL8019_COMMAND, RTL8019_PAGE0); -	put_reg (RTL8019_BOUNDARY, next_packet_pointer); -	return current_point; -} - -/* Get a data block via Ethernet */ -extern int eth_rx (void) -{ -	unsigned char temp, current_point; - -	put_reg (RTL8019_COMMAND, RTL8019_PAGE0); - -	while (1) { -		temp = get_reg (RTL8019_INTERRUPTSTATUS); - -		if (temp & 0x90) { -			/*overflow */ -			put_reg (RTL8019_COMMAND, RTL8019_PAGE0STOP); -			udelay (2000); -			put_reg (RTL8019_REMOTEBYTECOUNT0, 0); -			put_reg (RTL8019_REMOTEBYTECOUNT1, 0); -			put_reg (RTL8019_TRANSMITCONFIGURATION, 2); -			do { -				current_point = nic_to_pc (); -			} while (get_reg (RTL8019_BOUNDARY) != current_point); - -			put_reg (RTL8019_TRANSMITCONFIGURATION, 0xe0); -		} - -		if (temp & 0x1) { -			/*packet received */ -			do { -				put_reg (RTL8019_INTERRUPTSTATUS, 0x01); -				current_point = nic_to_pc (); -			} while (get_reg (RTL8019_BOUNDARY) != current_point); -		} - -		if (!(temp & 0x1)) -			return 0; -		/* done and exit. */ -	} -} - -/* Send a data block via Ethernet. */ -extern int eth_send (volatile void *packet, int length) -{ -	volatile unsigned char *p; -	unsigned int pn; - -	pn = length; -	p = (volatile unsigned char *) packet; - -	while (get_reg (RTL8019_COMMAND) == RTL8019_TRANSMIT); - -	put_reg (RTL8019_REMOTESTARTADDRESS0, 0); -	put_reg (RTL8019_REMOTESTARTADDRESS1, RTL8019_TPSTART); -	put_reg (RTL8019_REMOTEBYTECOUNT0, (pn & 0xff)); -	put_reg (RTL8019_REMOTEBYTECOUNT1, ((pn >> 8) & 0xff)); - -	put_reg (RTL8019_COMMAND, RTL8019_REMOTEDMAWR); -	while (pn > 0) { -		put_reg (RTL8019_DMA_DATA, *p++); -		pn--; -	} - -	pn = length; - -	while (pn < 60) {	/*Padding */ -		put_reg (RTL8019_DMA_DATA, 0); -		pn++; -	} - -	while (!(get_reg (RTL8019_INTERRUPTSTATUS)) & 0x40); - -	put_reg (RTL8019_INTERRUPTSTATUS, 0x40); -	put_reg (RTL8019_TRANSMITPAGE, RTL8019_TPSTART); -	put_reg (RTL8019_TRANSMITBYTECOUNT0, (pn & 0xff)); -	put_reg (RTL8019_TRANSMITBYTECOUNT1, ((pn >> 8 & 0xff))); -	put_reg (RTL8019_COMMAND, RTL8019_TRANSMIT); - -	return 0; -} diff --git a/drivers/net/rtl8019.h b/drivers/net/rtl8019.h deleted file mode 100644 index ae5163c43..000000000 --- a/drivers/net/rtl8019.h +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Realtek 8019AS Ethernet - * (C) Copyright 2002-2003 - * Xue Ligong(lgxue@hotmail.com),Wang Kehao, ESLAB, whut.edu.cn - * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ - -/* - * This code works in 8bit mode. - * If you need to work in 16bit mode, PLS change it! - */ - -#include <asm/types.h> -#include <config.h> - -#ifdef CONFIG_DRIVER_RTL8019 - -#define RTL8019_REG_00			(RTL8019_BASE + 0x00) -#define	RTL8019_REG_01			(RTL8019_BASE + 0x01) -#define	RTL8019_REG_02			(RTL8019_BASE + 0x02) -#define	RTL8019_REG_03			(RTL8019_BASE + 0x03) -#define	RTL8019_REG_04			(RTL8019_BASE + 0x04) -#define	RTL8019_REG_05			(RTL8019_BASE + 0x05) -#define	RTL8019_REG_06			(RTL8019_BASE + 0x06) -#define	RTL8019_REG_07			(RTL8019_BASE + 0x07) -#define	RTL8019_REG_08			(RTL8019_BASE + 0x08) -#define	RTL8019_REG_09			(RTL8019_BASE + 0x09) -#define	RTL8019_REG_0a			(RTL8019_BASE + 0x0a) -#define	RTL8019_REG_0b			(RTL8019_BASE + 0x0b) -#define	RTL8019_REG_0c			(RTL8019_BASE + 0x0c) -#define	RTL8019_REG_0d			(RTL8019_BASE + 0x0d) -#define	RTL8019_REG_0e			(RTL8019_BASE + 0x0e) -#define	RTL8019_REG_0f			(RTL8019_BASE + 0x0f) -#define	RTL8019_REG_10			(RTL8019_BASE + 0x10) -#define	RTL8019_REG_1f			(RTL8019_BASE + 0x1f) - -#define RTL8019_COMMAND			RTL8019_REG_00 -#define RTL8019_PAGESTART		RTL8019_REG_01 -#define RTL8019_PAGESTOP		RTL8019_REG_02 -#define RTL8019_BOUNDARY		RTL8019_REG_03 -#define RTL8019_TRANSMITSTATUS		RTL8019_REG_04 -#define RTL8019_TRANSMITPAGE		RTL8019_REG_04 -#define RTL8019_TRANSMITBYTECOUNT0	RTL8019_REG_05 -#define RTL8019_NCR			RTL8019_REG_05 -#define RTL8019_TRANSMITBYTECOUNT1	RTL8019_REG_06 -#define RTL8019_INTERRUPTSTATUS		RTL8019_REG_07 -#define RTL8019_CURRENT			RTL8019_REG_07 -#define RTL8019_REMOTESTARTADDRESS0	RTL8019_REG_08 -#define RTL8019_CRDMA0			RTL8019_REG_08 -#define RTL8019_REMOTESTARTADDRESS1	RTL8019_REG_09 -#define RTL8019_CRDMA1			RTL8019_REG_09 -#define RTL8019_REMOTEBYTECOUNT0	RTL8019_REG_0a -#define RTL8019_REMOTEBYTECOUNT1	RTL8019_REG_0b -#define RTL8019_RECEIVESTATUS		RTL8019_REG_0c -#define RTL8019_RECEIVECONFIGURATION	RTL8019_REG_0c -#define RTL8019_TRANSMITCONFIGURATION	RTL8019_REG_0d -#define RTL8019_FAE_TALLY		RTL8019_REG_0d -#define RTL8019_DATACONFIGURATION	RTL8019_REG_0e -#define RTL8019_CRC_TALLY		RTL8019_REG_0e -#define RTL8019_INTERRUPTMASK		RTL8019_REG_0f -#define RTL8019_MISS_PKT_TALLY		RTL8019_REG_0f -#define RTL8019_PHYSICALADDRESS0	RTL8019_REG_01 -#define	RTL8019_PHYSICALADDRESS1	RTL8019_REG_02 -#define RTL8019_PHYSICALADDRESS2	RTL8019_REG_03 -#define RTL8019_PHYSICALADDRESS3	RTL8019_REG_04 -#define RTL8019_PHYSICALADDRESS4	RTL8019_REG_05 -#define RTL8019_PHYSICALADDRESS5	RTL8019_REG_06 -#define RTL8019_MULTIADDRESS0		RTL8019_REG_08 -#define RTL8019_MULTIADDRESS1		RTL8019_REG_09 -#define RTL8019_MULTIADDRESS2		RTL8019_REG_0a -#define RTL8019_MULTIADDRESS3		RTL8019_REG_0b -#define RTL8019_MULTIADDRESS4		RTL8019_REG_0c -#define RTL8019_MULTIADDRESS5		RTL8019_REG_0d -#define RTL8019_MULTIADDRESS6		RTL8019_REG_0e -#define RTL8019_MULTIADDRESS7		RTL8019_REG_0f -#define RTL8019_DMA_DATA		RTL8019_REG_10 -#define RTL8019_RESET			RTL8019_REG_1f - -#define	RTL8019_PAGE0			0x22 -#define	RTL8019_PAGE1			0x62 -#define	RTL8019_PAGE0DMAWRITE		0x12 -#define	RTL8019_PAGE2DMAWRITE		0x92 -#define	RTL8019_REMOTEDMAWR		0x12 -#define	RTL8019_REMOTEDMARD		0x0A -#define	RTL8019_ABORTDMAWR		0x32 -#define	RTL8019_ABORTDMARD		0x2A -#define	RTL8019_PAGE0STOP		0x21 -#define	RTL8019_PAGE1STOP		0x61 -#define	RTL8019_TRANSMIT		0x26 -#define	RTL8019_TXINPROGRESS		0x04 -#define	RTL8019_SEND			0x1A - -#define RTL8019_PSTART			0x4c -#define RTL8019_PSTOP			0x80 -#define RTL8019_TPSTART			0x40 - -#endif /*end of CONFIG_DRIVER_RTL8019*/ |