[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [cdi-devel] [PATCH] e1000: Fix receive buffer size
Looks good to me.
Acked-by: Rich Edelman <redelman@xxxxxxxxx>
On Sun, Feb 13, 2011 at 3:31 PM, Kevin Wolf <kevin@xxxxxxxxxx> wrote:
> We use receive buffers of 1536 bytes, but tell the NIC that the buffer
> size is 2048. Probably not a good idea.
>
> While at it, make the buffer size setting in RCTL explicit, even though
> it's just a zero.
>
> Signed-off-by: Kevin Wolf <kevin@xxxxxxxxxx>
> ---
> e1000/device.c | 3 ++-
> e1000/device.h | 3 ++-
> 2 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/e1000/device.c b/e1000/device.c
> index 6ce814c..c817cc2 100644
> --- a/e1000/device.c
> +++ b/e1000/device.c
> @@ -323,7 +323,8 @@ static void reset_nic(struct e1000_device* netcard)
> netcard->rx_cur_buffer = 0;
>
> // Rx/Tx aktivieren
> - reg_outl(netcard, REG_RX_CTL, RCTL_ENABLE | RCTL_BROADCAST);
> + reg_outl(netcard, REG_RX_CTL, RCTL_ENABLE | RCTL_BROADCAST
> + | RCTL_2K_BUFSIZE);
> reg_outl(netcard, REG_TX_CTL, TCTL_ENABLE | TCTL_PADDING
> | TCTL_COLL_TSH | TCTL_COLL_DIST);
> }
> diff --git a/e1000/device.h b/e1000/device.h
> index af614c2..1fd1750 100644
> --- a/e1000/device.h
> +++ b/e1000/device.h
> @@ -83,6 +83,7 @@ enum {
> enum {
> RCTL_ENABLE = (1 << 1),
> RCTL_BROADCAST = (1 << 15), /* BAM */
> + RCTL_2K_BUFSIZE = (0 << 16), /* BSIZE */
> };
>
> enum {
> @@ -127,7 +128,7 @@ enum {
> #define TX_BUFFER_SIZE 2048
> //#define TX_BUFFER_NUM 64
>
> -#define RX_BUFFER_SIZE 1536
> +#define RX_BUFFER_SIZE 2048
> //#define RX_BUFFER_NUM 64
>
> // Die Anzahl von Deskriptoren muss jeweils ein vielfaches von 8 sein
> --
> 1.6.0.2
>
> _______________________________________________
> cdi-devel mailing list
> cdi-devel@xxxxxxxxxx
> http://list.tyndur.org/cgi-bin/mailman/listinfo/cdi-devel
>