Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3201fce0 authored by Dave Mitchell's avatar Dave Mitchell Committed by David S. Miller
Browse files

ibm_newemac: Added 16K Tx FIFO size support for EMAC4



Some of the EMAC V4 implementations support 16K Tx FIFOs. This
patch adds support for this functionality and fixes typos in the
Tx FIFO size error messages.

Signed-off-by: default avatarDave Mitchell <dmitchell@appliedmicro.com>
Acked-by: default avatarProdyut Hazarika <phazarika@appliedmicro.com>
Acked-by: default avatarVictor Gallardo <vgallardo@appliedmicro.com>
Acked-by: default avatarLoc Ho <lho@appliedmicro.com>
Acked-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent efd7d261
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -443,7 +443,7 @@ static u32 __emac_calc_base_mr1(struct emac_instance *dev, int tx_size, int rx_s
		ret |= EMAC_MR1_TFS_2K;
		break;
	default:
		printk(KERN_WARNING "%s: Unknown Rx FIFO size %d\n",
		printk(KERN_WARNING "%s: Unknown Tx FIFO size %d\n",
		       dev->ndev->name, tx_size);
	}

@@ -470,6 +470,9 @@ static u32 __emac4_calc_base_mr1(struct emac_instance *dev, int tx_size, int rx_
	DBG2(dev, "__emac4_calc_base_mr1" NL);

	switch(tx_size) {
	case 16384:
		ret |= EMAC4_MR1_TFS_16K;
		break;
	case 4096:
		ret |= EMAC4_MR1_TFS_4K;
		break;
@@ -477,7 +480,7 @@ static u32 __emac4_calc_base_mr1(struct emac_instance *dev, int tx_size, int rx_
		ret |= EMAC4_MR1_TFS_2K;
		break;
	default:
		printk(KERN_WARNING "%s: Unknown Rx FIFO size %d\n",
		printk(KERN_WARNING "%s: Unknown Tx FIFO size %d\n",
		       dev->ndev->name, tx_size);
	}

+1 −0
Original line number Diff line number Diff line
@@ -153,6 +153,7 @@ struct emac_regs {
#define EMAC4_MR1_RFS_16K		0x00280000
#define EMAC4_MR1_TFS_2K       		0x00020000
#define EMAC4_MR1_TFS_4K		0x00030000
#define EMAC4_MR1_TFS_16K		0x00050000
#define EMAC4_MR1_TR			0x00008000
#define EMAC4_MR1_MWSW_001		0x00001000
#define EMAC4_MR1_JPSM			0x00000800