Subject: Re: [PATCH] [v3] PA Semi PWRficient Ethernet driver

From: Stephen Hemminger <[email-masked]>
Date: Wed, 31 Jan 2007 10:38:06 -0800

O
> +static noinline void pasemi_mac_free_tx_resources(struct net_device *dev)

Why tell compiler how to do it's job.  marking it noinline?

> Index: merge/drivers/net/pasemi_mac.h
> ===================================================================
> --- /dev/null
> +++ merge/drivers/net/pasemi_mac.h
					 PAS_IOB_DMA_COM_TIMEOUTCFG_TCNT_M)
> +
> +struct pas_dma_xct_descr {
> +	union {
> + 		u64	mactx;
> +#define	XCT_MACTX_T		0x8000000000000000
> +#define	XCT_MACTX_ST		0x4000000000000000
> +#define XCT_MACTX_NORES		0x0000000000000000
> +#define XCT_MACTX_8BRES		0x1000000000000000
> +#define XCT_MACTX_24BRES	0x2000000000000000
> +#define XCT_MACTX_40BRES	0x3000000000000000
> +#define XCT_MACTX_I		0x0800000000000000
> +#define XCT_MACTX_O		0x0400000000000000
> +#define XCT_MACTX_E		0x0200000000000000
> +#define XCT_MACTX_VLAN_M	0x0180000000000000
> +#define XCT_MACTX_VLAN_NOP	0x0000000000000000
> +#define XCT_MACTX_VLAN_REMOVE	0x0080000000000000
> +#define XCT_MACTX_VLAN_INSERT   0x0100000000000000
> +#define XCT_MACTX_VLAN_REPLACE  0x0180000000000000
> +#define XCT_MACTX_CRC_M		0x0060000000000000
> +#define XCT_MACTX_CRC_NOP	0x0000000000000000
> +#define XCT_MACTX_CRC_INSERT	0x0020000000000000
> +#define XCT_MACTX_CRC_PAD	0x0040000000000000
> +#define XCT_MACTX_CRC_REPLACE	0x0060000000000000
> +#define XCT_MACTX_SS		0x0010000000000000
> +#define XCT_MACTX_LLEN_M	0x00007fff00000000
> +#define XCT_MACTX_LLEN_S	32ull
> +#define XCT_MACTX_LLEN(x)	((((long)(x)) << XCT_MACTX_LLEN_S) & XCT_MACTX_LLEN_M)
> +#define XCT_MACTX_IPH_M		0x00000000f8000000
> +#define XCT_MACTX_IPH_S		27ull
> +#define XCT_MACTX_IPH(x)	((((long)(x)) << XCT_MACTX_IPH_S) & XCT_MACTX_IPH_M)
> +#define XCT_MACTX_IPO_M		0x0000000007c00000
> +#define XCT_MACTX_IPO_S		22ull
> +#define XCT_MACTX_IPO(x)	((((long)(x)) << XCT_MACTX_IPO_S) & XCT_MACTX_IPO_M)
> +#define XCT_MACTX_CSUM_M	0x0000000000000060
> +#define XCT_MACTX_CSUM_NOP	0x0000000000000000
> +#define XCT_MACTX_CSUM_TCP	0x0000000000000040
> +#define XCT_MACTX_CSUM_UDP	0x0000000000000060
> +#define XCT_MACTX_V6		0x0000000000000010
> +#define XCT_MACTX_C		0x0000000000000004
> +#define XCT_MACTX_AL2		0x0000000000000002
> +		u64	macrx;

Mixing definitions and structure values gets confusing.

-- 
Stephen Hemminger <[email-masked]>