mirror of
				https://source.denx.de/u-boot/u-boot.git
				synced 2025-10-31 00:11:51 +01:00 
			
		
		
		
	When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one. Signed-off-by: Tom Rini <trini@konsulko.com>
		
			
				
	
	
		
			142 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			142 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0+ */
 | |
| /*
 | |
|  * Faraday FTMAC100 Ethernet
 | |
|  *
 | |
|  * (C) Copyright 2009 Faraday Technology
 | |
|  * Po-Yu Chuang <ratbert@faraday-tech.com>
 | |
|  */
 | |
| 
 | |
| #ifndef __FTMAC100_H
 | |
| #define __FTMAC100_H
 | |
| 
 | |
| struct ftmac100 {
 | |
| 	unsigned int	isr;		/* 0x00 */
 | |
| 	unsigned int	imr;		/* 0x04 */
 | |
| 	unsigned int	mac_madr;	/* 0x08 */
 | |
| 	unsigned int	mac_ladr;	/* 0x0c */
 | |
| 	unsigned int	maht0;		/* 0x10 */
 | |
| 	unsigned int	maht1;		/* 0x14 */
 | |
| 	unsigned int	txpd;		/* 0x18 */
 | |
| 	unsigned int	rxpd;		/* 0x1c */
 | |
| 	unsigned int	txr_badr;	/* 0x20 */
 | |
| 	unsigned int	rxr_badr;	/* 0x24 */
 | |
| 	unsigned int	itc;		/* 0x28 */
 | |
| 	unsigned int	aptc;		/* 0x2c */
 | |
| 	unsigned int	dblac;		/* 0x30 */
 | |
| 	unsigned int	pad1[3];	/* 0x34 - 0x3c */
 | |
| 	unsigned int	pad2[16];	/* 0x40 - 0x7c */
 | |
| 	unsigned int	pad3[2];	/* 0x80 - 0x84 */
 | |
| 	unsigned int	maccr;		/* 0x88 */
 | |
| 	unsigned int	macsr;		/* 0x8c */
 | |
| 	unsigned int	phycr;		/* 0x90 */
 | |
| 	unsigned int	phywdata;	/* 0x94 */
 | |
| 	unsigned int	fcr;		/* 0x98 */
 | |
| 	unsigned int	bpr;		/* 0x9c */
 | |
| 	unsigned int	pad4[8];	/* 0xa0 - 0xbc */
 | |
| 	unsigned int	pad5;		/* 0xc0 */
 | |
| 	unsigned int	ts;		/* 0xc4 */
 | |
| 	unsigned int	dmafifos;	/* 0xc8 */
 | |
| 	unsigned int	tm;		/* 0xcc */
 | |
| 	unsigned int	pad6;		/* 0xd0 */
 | |
| 	unsigned int	tx_mcol_scol;	/* 0xd4 */
 | |
| 	unsigned int	rpf_aep;	/* 0xd8 */
 | |
| 	unsigned int	xm_pg;		/* 0xdc */
 | |
| 	unsigned int	runt_tlcc;	/* 0xe0 */
 | |
| 	unsigned int	crcer_ftl;	/* 0xe4 */
 | |
| 	unsigned int	rlc_rcc;	/* 0xe8 */
 | |
| 	unsigned int	broc;		/* 0xec */
 | |
| 	unsigned int	mulca;		/* 0xf0 */
 | |
| 	unsigned int	rp;		/* 0xf4 */
 | |
| 	unsigned int	xp;		/* 0xf8 */
 | |
| };
 | |
| 
 | |
| /*
 | |
|  * Interrupt status register & interrupt mask register
 | |
|  */
 | |
| #define FTMAC100_INT_RPKT_FINISH	(1 << 0)
 | |
| #define FTMAC100_INT_NORXBUF		(1 << 1)
 | |
| #define FTMAC100_INT_XPKT_FINISH	(1 << 2)
 | |
| #define FTMAC100_INT_NOTXBUF		(1 << 3)
 | |
| #define FTMAC100_INT_XPKT_OK		(1 << 4)
 | |
| #define FTMAC100_INT_XPKT_LOST		(1 << 5)
 | |
| #define FTMAC100_INT_RPKT_SAV		(1 << 6)
 | |
| #define FTMAC100_INT_RPKT_LOST		(1 << 7)
 | |
| #define FTMAC100_INT_AHB_ERR		(1 << 8)
 | |
| #define FTMAC100_INT_PHYSTS_CHG		(1 << 9)
 | |
| 
 | |
| /*
 | |
|  * Automatic polling timer control register
 | |
|  */
 | |
| #define FTMAC100_APTC_RXPOLL_CNT(x)	(((x) & 0xf) << 0)
 | |
| #define FTMAC100_APTC_RXPOLL_TIME_SEL	(1 << 4)
 | |
| #define FTMAC100_APTC_TXPOLL_CNT(x)	(((x) & 0xf) << 8)
 | |
| #define FTMAC100_APTC_TXPOLL_TIME_SEL	(1 << 12)
 | |
| 
 | |
| /*
 | |
|  * MAC control register
 | |
|  */
 | |
| #define FTMAC100_MACCR_XDMA_EN		(1 << 0)
 | |
| #define FTMAC100_MACCR_RDMA_EN		(1 << 1)
 | |
| #define FTMAC100_MACCR_SW_RST		(1 << 2)
 | |
| #define FTMAC100_MACCR_LOOP_EN		(1 << 3)
 | |
| #define FTMAC100_MACCR_CRC_DIS		(1 << 4)
 | |
| #define FTMAC100_MACCR_XMT_EN		(1 << 5)
 | |
| #define FTMAC100_MACCR_ENRX_IN_HALFTX	(1 << 6)
 | |
| #define FTMAC100_MACCR_RCV_EN		(1 << 8)
 | |
| #define FTMAC100_MACCR_HT_MULTI_EN	(1 << 9)
 | |
| #define FTMAC100_MACCR_RX_RUNT		(1 << 10)
 | |
| #define FTMAC100_MACCR_RX_FTL		(1 << 11)
 | |
| #define FTMAC100_MACCR_RCV_ALL		(1 << 12)
 | |
| #define FTMAC100_MACCR_CRC_APD		(1 << 14)
 | |
| #define FTMAC100_MACCR_FULLDUP		(1 << 15)
 | |
| #define FTMAC100_MACCR_RX_MULTIPKT	(1 << 16)
 | |
| #define FTMAC100_MACCR_RX_BROADPKT	(1 << 17)
 | |
| 
 | |
| /*
 | |
|  * Transmit descriptor, aligned to 16 bytes
 | |
|  */
 | |
| struct ftmac100_txdes {
 | |
| 	unsigned int	txdes0;
 | |
| 	unsigned int	txdes1;
 | |
| 	unsigned int	txdes2;	/* TXBUF_BADR */
 | |
| 	unsigned int	txdes3;	/* not used by HW */
 | |
| } __attribute__ ((aligned(16)));
 | |
| 
 | |
| #define FTMAC100_TXDES0_TXPKT_LATECOL	(1 << 0)
 | |
| #define FTMAC100_TXDES0_TXPKT_EXSCOL	(1 << 1)
 | |
| #define FTMAC100_TXDES0_TXDMA_OWN	(1 << 31)
 | |
| 
 | |
| #define FTMAC100_TXDES1_TXBUF_SIZE(x)	((x) & 0x7ff)
 | |
| #define FTMAC100_TXDES1_LTS		(1 << 27)
 | |
| #define FTMAC100_TXDES1_FTS		(1 << 28)
 | |
| #define FTMAC100_TXDES1_TX2FIC		(1 << 29)
 | |
| #define FTMAC100_TXDES1_TXIC		(1 << 30)
 | |
| #define FTMAC100_TXDES1_EDOTR		(1 << 31)
 | |
| 
 | |
| /*
 | |
|  * Receive descriptor, aligned to 16 bytes
 | |
|  */
 | |
| struct ftmac100_rxdes {
 | |
| 	unsigned int	rxdes0;
 | |
| 	unsigned int	rxdes1;
 | |
| 	unsigned int	rxdes2;	/* RXBUF_BADR */
 | |
| 	unsigned int	rxdes3;	/* not used by HW */
 | |
| } __attribute__ ((aligned(16)));
 | |
| 
 | |
| #define FTMAC100_RXDES0_RFL(des)	((des) & 0x7ff)
 | |
| #define FTMAC100_RXDES0_MULTICAST	(1 << 16)
 | |
| #define FTMAC100_RXDES0_BROADCAST	(1 << 17)
 | |
| #define FTMAC100_RXDES0_RX_ERR		(1 << 18)
 | |
| #define FTMAC100_RXDES0_CRC_ERR		(1 << 19)
 | |
| #define FTMAC100_RXDES0_FTL		(1 << 20)
 | |
| #define FTMAC100_RXDES0_RUNT		(1 << 21)
 | |
| #define FTMAC100_RXDES0_RX_ODD_NB	(1 << 22)
 | |
| #define FTMAC100_RXDES0_LRS		(1 << 28)
 | |
| #define FTMAC100_RXDES0_FRS		(1 << 29)
 | |
| #define FTMAC100_RXDES0_RXDMA_OWN	(1 << 31)
 | |
| 
 | |
| #define FTMAC100_RXDES1_RXBUF_SIZE(x)	((x) & 0x7ff)
 | |
| #define FTMAC100_RXDES1_EDORR		(1 << 31)
 | |
| 
 | |
| #endif	/* __FTMAC100_H */
 |