Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp4148868imm; Mon, 18 Jun 2018 09:55:34 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIb1O+jWn7v5hlDi+pG6TkM/Ov4wtcHH4txxTAkdeC+2O/PtJMKrS9HrkIBqBHHzL1X8B/E X-Received: by 2002:a63:721d:: with SMTP id n29-v6mr11470976pgc.194.1529340934184; Mon, 18 Jun 2018 09:55:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529340934; cv=none; d=google.com; s=arc-20160816; b=Xe9CLDVu5esdFgb99hKAvfP2uMbeo+lYPXw6ivL9t9kNIFRSIhrE13diE+WOncbJqu JyrMsUhyfyhbGEvFjuh9NNFQI4qaGcCiEJhiJjJJscriCRH7LxjdnNe6zfguaAemsATx 30Emr84Ts/spZlcUGdqUsuYE8MoDZv7hCQuzsZhfKhs/Px6Z/Gepj2DjehAVUuJ8SnTG o4HkJZlJDpnDOjJO6IKuz3MGZgbSsasC4PDoEkA0A+wQF8Xz+mn0EkShSMrD3z4gcR6a za8S/NXCsEVcVNgeT0g185kGk2SyIJ9++5uLVFCz1Wcks/LB6XQi1Ut+J8EnF0tAdhC4 MzAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=ZN9l1arnM8sv7lnxsglBEVhrvELA01xIFus+Ju0Fr84=; b=XtA9w3+I4uD4eKX3RSNeWVAiSoH9hn+PFYeK6oNcfhnE7mGqMj27UAC+2jV/TGG/4k el78t+NKQow0vG1tXIjjByanAvl2KaZD74F+e5/JdEf7O2y5+vrg7/hCqKYTeZyk+giC TJ9ubJvTtw8+IQ7mPKM6LnEu8XeQefQmYPuLgb0ZqVjogOi8nTQ07kxfYMjLwA9f0MiP vU5CvK4eojCMTUJ/NH2+zJVt4DTdmEPmeNWZ1Plmy9pQVTsf6M0+q9z6cdVqFD5ipwja z+txPDevQlQzQq+fiST0TlD8EgAezsxeiemuRkMioLkDA9OUim0+3hKa8NS3IOZcYfs7 X+xw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=zqLARv5W; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t19-v6si12203884pgb.196.2018.06.18.09.55.19; Mon, 18 Jun 2018 09:55:34 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=zqLARv5W; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934199AbeFRQyk (ORCPT + 99 others); Mon, 18 Jun 2018 12:54:40 -0400 Received: from mail.kernel.org ([198.145.29.99]:43440 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754619AbeFRQyi (ORCPT ); Mon, 18 Jun 2018 12:54:38 -0400 Received: from localhost (unknown [122.167.71.214]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 9A1F520863; Mon, 18 Jun 2018 16:54:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1529340878; bh=MOKzRQPybiFQkQeGTcN8+Nbot3QMvDB3IU+aWEoiwE4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=zqLARv5WhlUbp5u9cGtBL8hNXKEEoLhB1bGEGrWqzAQ7Hedk01dv1IY5In4CuzD5k H610XfkKPjwOhPBY3Rx+HHXDktzrgCyP4HgPJr8eINtyS4HY4uJh63apGEihKKT+eT bC1arpGuaDJPX5oRYa+GAzA852j7bums7Czn+ihg= Date: Mon, 18 Jun 2018 22:24:27 +0530 From: Vinod To: Stephen Boyd Cc: linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org, Matt Mackall , Herbert Xu , Arnd Bergmann , Greg Kroah-Hartman , linux-arm-msm@vger.kernel.org Subject: Re: [PATCH 1/3] hwrng: msm - Move hwrng to a table Message-ID: <20180618165427.GI25852@vkoul-mobl> References: <20180618141259.23141-1-vkoul@kernel.org> <20180618141259.23141-2-vkoul@kernel.org> <152933750484.16708.1950713243960317531@swboyd.mtv.corp.google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <152933750484.16708.1950713243960317531@swboyd.mtv.corp.google.com> User-Agent: Mutt/1.9.2 (2017-12-15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 18-06-18, 08:58, Stephen Boyd wrote: > Quoting Vinod Koul (2018-06-18 07:12:57) > > @@ -127,6 +125,13 @@ static void msm_rng_cleanup(struct hwrng *hwrng) > > msm_rng_enable(hwrng, 0); > > } > > > > +static struct hwrng msm_rng = { > > + .name = KBUILD_MODNAME, > > + .init = msm_rng_init, > > + .cleanup = msm_rng_cleanup, > > + .read = msm_rng_read, > > +}; > > + > > static int msm_rng_probe(struct platform_device *pdev) > > { > > struct resource *res; > > @@ -148,12 +153,10 @@ static int msm_rng_probe(struct platform_device *pdev) > > if (IS_ERR(rng->clk)) > > return PTR_ERR(rng->clk); > > > > - rng->hwrng.name = KBUILD_MODNAME, > > - rng->hwrng.init = msm_rng_init, > > - rng->hwrng.cleanup = msm_rng_cleanup, > > Wouldn't it be a lot easier to skip assigning the init and cleanup > functions on v2 devices with an if statement? It would be smaller size > wise too because then we don't have two structs for v1 and v2 hwrngs. > Plus the patch would be smaller overall because we would do everything > else pretty much the same besides the if condition in probe. Yes it would be an alternate approach and would involve lesser code change. My personal preference is table based init rather open coding and it makes adding future revs easier, but said that I can change this... -- ~Vinod