From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756105AbdDEWZe (ORCPT ); Wed, 5 Apr 2017 18:25:34 -0400 Received: from mga02.intel.com ([134.134.136.20]:55690 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752189AbdDEWZ0 (ORCPT ); Wed, 5 Apr 2017 18:25:26 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.37,280,1488873600"; d="scan'208";a="83659080" Date: Wed, 5 Apr 2017 15:25:24 -0700 (PDT) From: matthew.gerlach@linux.intel.com X-X-Sender: mgerlach@mgerlach-VirtualBox To: Moritz Fischer cc: Alan Tull , linux-fpga@vger.kernel.org, Linux Kernel Mailing List Subject: Re: [PATCH] fpga fr br: fix warning for unexpected version number In-Reply-To: Message-ID: References: <1491419155-17440-1-git-send-email-matthew.gerlach@linux.intel.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 5 Apr 2017, Moritz Fischer wrote: > Hi Matthew, > Hi Moritz, > On Wed, Apr 5, 2017 at 12:05 PM, wrote: >> From: Matthew Gerlach >> >> The value in the version register of the altera freeze bridge >> controller changed from the beta value of 2 to the >> value of 0xad000003 in the official release of the IP. >> This patch supports the old and new version numbers >> without printing an warning. >> >> Signed-off-by: Matthew Gerlach >> --- >> drivers/fpga/altera-freeze-bridge.c | 9 ++++++--- >> 1 file changed, 6 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/fpga/altera-freeze-bridge.c b/drivers/fpga/altera-freeze-bridge.c >> index 8dcd9fb..bdfd5eb 100644 >> --- a/drivers/fpga/altera-freeze-bridge.c >> +++ b/drivers/fpga/altera-freeze-bridge.c >> @@ -28,6 +28,7 @@ >> #define FREEZE_CSR_REG_VERSION 12 >> >> #define FREEZE_CSR_SUPPORTED_VERSION 2 >> +#define FREEZE_CSR_OFFICIAL_VERSION 0xad000003 >> >> #define FREEZE_CSR_STATUS_FREEZE_REQ_DONE BIT(0) >> #define FREEZE_CSR_STATUS_UNFREEZE_REQ_DONE BIT(1) >> @@ -241,10 +242,12 @@ static int altera_freeze_br_probe(struct platform_device *pdev) >> priv->enable = 1; >> >> revision = readl(priv->base_addr + FREEZE_CSR_REG_VERSION); >> - if (revision != FREEZE_CSR_SUPPORTED_VERSION) >> + if ((revision != FREEZE_CSR_SUPPORTED_VERSION) && >> + (revision != FREEZE_CSR_OFFICIAL_VERSION)) >> dev_warn(dev, >> - "%s Freeze Controller unexpected revision %d != %d\n", >> - __func__, revision, FREEZE_CSR_SUPPORTED_VERSION); >> + "%s unexpected revision 0x%x != 0x%x != 0x%x\n", >> + __func__, revision, FREEZE_CSR_SUPPORTED_VERSION, >> + FREEZE_CSR_OFFICIAL_VERSION); > > Maybe you actually wanna bail out if you read a random other value > instead of what you > expect instead of printing a warning. I thought about making it an error if the version didn't match, but it was a dev_warn() before and that allowed folks to use the "old" driver with the new IP version. >> >> return fpga_bridge_register(dev, FREEZE_BRIDGE_NAME, >> &altera_freeze_br_br_ops, priv); >> -- >> 2.7.4 >> > > Cheers, > > Moritz >