From patchwork Thu Feb 4 11:25:56 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Torek X-Patchwork-Id: 44459 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 900A3B7D48 for ; Thu, 4 Feb 2010 22:26:11 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756348Ab0BDL0I (ORCPT ); Thu, 4 Feb 2010 06:26:08 -0500 Received: from mail.windriver.com ([147.11.1.11]:44488 "EHLO mail.windriver.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756509Ab0BDL0G (ORCPT ); Thu, 4 Feb 2010 06:26:06 -0500 Received: from ALA-MAIL03.corp.ad.wrs.com (ala-mail03 [147.11.57.144]) by mail.windriver.com (8.14.3/8.14.3) with ESMTP id o14BQ4BA002799; Thu, 4 Feb 2010 03:26:04 -0800 (PST) Received: from ala-mail06.corp.ad.wrs.com ([147.11.57.147]) by ALA-MAIL03.corp.ad.wrs.com with Microsoft SMTPSVC(6.0.3790.1830); Thu, 4 Feb 2010 03:26:04 -0800 Received: from localhost.localdomain ([172.25.39.238]) by ala-mail06.corp.ad.wrs.com with Microsoft SMTPSVC(6.0.3790.1830); Thu, 4 Feb 2010 03:26:04 -0800 From: Chris Torek To: sparclinux@vger.kernel.org Cc: chris.torek@gmail.com Subject: [PATCH 2/8] niu: increase ring size Date: Thu, 4 Feb 2010 04:25:56 -0700 Message-Id: <14d7f5a63a7026b4413d4b4efa4ce6ddea0e055b.1265231568.git.chris.torek@windriver.com> X-Mailer: git-send-email 1.6.0.4.766.g6fc4a In-Reply-To: References: <1265282762-13954-1-git-send-email-chris.torek@windriver.com> In-Reply-To: References: X-OriginalArrivalTime: 04 Feb 2010 11:26:04.0423 (UTC) FILETIME=[D661F970:01CAA58C] Sender: sparclinux-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: sparclinux@vger.kernel.org From: Hong H. Pham Configurable niu parameters made it possible to overrun the rings, which requires a hardware reset to recover. Since all RCR and TR entries must fit within a page (hardware constraint), calculate the maximums. (Note: this means the TX ring size is actually unchanged on x86, but doubled on SPARC.) Signed-off-by: Hong H. Pham Signed-off-by: Chris Torek --- drivers/net/niu.h | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/niu.h b/drivers/net/niu.h index 3bd0b59..0c1d17a 100644 --- a/drivers/net/niu.h +++ b/drivers/net/niu.h @@ -2843,7 +2843,7 @@ struct txdma_mailbox { __le64 resv2[2]; } __attribute__((aligned(64))); -#define MAX_TX_RING_SIZE 256 +#define MAX_TX_RING_SIZE (PAGE_SIZE / sizeof(u64)) #define MAX_TX_DESC_LEN 4076 struct tx_ring_info { @@ -2893,8 +2893,8 @@ struct rxdma_mailbox { __le64 resv2[2]; } __attribute__((aligned(64))); -#define MAX_RBR_RING_SIZE 128 -#define MAX_RCR_RING_SIZE (MAX_RBR_RING_SIZE * 2) +#define MAX_RBR_RING_SIZE 256 +#define MAX_RCR_RING_SIZE (PAGE_SIZE / sizeof(u64)) #define RBR_REFILL_MIN 16