Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp3639354imm; Fri, 25 May 2018 09:02:14 -0700 (PDT) X-Google-Smtp-Source: AB8JxZq2lBv9Wtopz3zadq9fnTC7my8MzLSHabLN0dSO8Lif3JFZH2ixavSES7je2DyByMLzziTh X-Received: by 2002:a62:ac14:: with SMTP id v20-v6mr3201557pfe.101.1527264134785; Fri, 25 May 2018 09:02:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527264134; cv=none; d=google.com; s=arc-20160816; b=fwXMBaTvQaVRxnAi/ov81wvj7IH4TTdWZke3CP8z7Vc2iO1nv1xtR/bsOUkBCUOHRf xkqK8WYgmz9qe4uILtOpA3/JAMwy/nUS8DiXG95CBQTaxAUzU/tuSAxM4JG5Yg895Jg3 aLigewOLBji3A6ZQgYKaYDZRYyAE2wObozdtUjtjfj+Gs5dEsgpXFiRJqPF+dmRkw/f8 2qgpopR4gG/4EjX5tUQPC3sPZ5wXPnICVEE+ejAJVgoQjk95fUmEnaVATuCb/3kxzd3r xXmXJimQtEQXfTaJ75LM/BmKtRfo10miN6Cwx+VXwOIxeX4oFazf+2NUDLO8DPaC0t2B eU2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=s58/Ys3ojiYrOPedn4VqtU2yb74mto9uNal6Phe+Qzs=; b=NUg5/RSM0oBdHU6mHDvLuZbOC3RnXgylOji36zK7LzPNFhtJ+HHHYuTjLlRPh2y+R6 EIsNJdB0w8Llv8DcX/BmRWIcbYUAKYssH5mKGeINKcr5kLOnUWxGGOdRKsaPbS0r9XK/ fVZeOhdjq04VwrTai8LkG7u18xjDgSTHdqwq6MnvEiAjEr8hydJzfw6wUShx+s+r2LnL L6YRD+as2YCxH6iPHBECL1II59n2ryDNgEuxwkRCtSXpyIWEhlRIJQuf/hNdnGLlGWej u+abpOB/yqU9dlqoiS6AYHjc3C5w2BaxNlj4TBhB34q7qUd9eV62BHh2fDoWSu6cS9W2 2GrQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=2OVb1vyl; 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 i1-v6si18758505pgq.327.2018.05.25.09.01.29; Fri, 25 May 2018 09:02:14 -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=2OVb1vyl; 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 S967035AbeEYQBJ (ORCPT + 99 others); Fri, 25 May 2018 12:01:09 -0400 Received: from mail.kernel.org ([198.145.29.99]:56102 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965666AbeEYQBE (ORCPT ); Fri, 25 May 2018 12:01:04 -0400 Received: from mail-qt0-f182.google.com (mail-qt0-f182.google.com [209.85.216.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 26BEC20891; Fri, 25 May 2018 16:01:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1527264064; bh=uzRElKwDu8NOc2YYKmhxctShY0xr0HTGQQluKX1Hz3w=; h=In-Reply-To:References:From:Date:Subject:To:Cc:From; b=2OVb1vylySJHeNQSKzv4DHmRKSIg8gPfVOcSYbHpvLyQBbpXG1FLZNeYENLdpxSPG bHRKeKNsoiF0z7NlVDq7LzRHBvy0I0Ei2aH3pAIL+frLJ7Guk4HCdMeQSeRdk7mHdJ CFM4LnV3ebioPjWWlBPdOi9T/U5rpTzDy8EytcXU= Received: by mail-qt0-f182.google.com with SMTP id q13-v6so7157849qtp.4; Fri, 25 May 2018 09:01:04 -0700 (PDT) X-Gm-Message-State: ALKqPwfMjaNskSbQij22T6pjn0a6vilz8MfpXbTGTimBA7ATrGyfUvJD 6k1oKWuMywyjm9G925etKwGP4XqPQSmUPQcH3A== X-Received: by 2002:a0c:aec8:: with SMTP id n8-v6mr2768183qvd.81.1527264063307; Fri, 25 May 2018 09:01:03 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a0c:9b02:0:0:0:0:0 with HTTP; Fri, 25 May 2018 09:00:42 -0700 (PDT) In-Reply-To: <767dc01f-abed-8192-0274-ff5fc092f60b@codeaurora.org> References: <1526194908-19027-1-git-send-email-rohitkr@codeaurora.org> <20180523062645.GY14924@minitux> <767dc01f-abed-8192-0274-ff5fc092f60b@codeaurora.org> From: Rob Herring Date: Fri, 25 May 2018 11:00:42 -0500 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] remoteproc: Add APSS based Qualcomm ADSP PIL driver for SDM845 To: Rohit Kumar Cc: Bjorn Andersson , Ohad Ben-Cohen , Mark Rutland , "open list:REMOTE PROCESSOR (REMOTEPROC) SUBSYSTEM" , devicetree@vger.kernel.org, "linux-kernel@vger.kernel.org" , Banajit Goswami , sbpata@codeaurora.org, asishb@codeaurora.org, rkarra@codeaurora.org, RajendraBabu Medisetti , Krishnamurthy Renu , asishb@qti.qualcomm.com, Ramlal Karra , Rohit Kumar Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, May 24, 2018 at 12:18 AM, Rohit Kumar wrote: > Thanks Bjorn for reviewing. > > > On 5/23/2018 11:56 AM, Bjorn Andersson wrote: >> >> On Sun 13 May 00:01 PDT 2018, Rohit kumar wrote: >> >> [..] >>> >>> +static inline void update_bits(void *reg, u32 mask_val, u32 set_val, u32 >>> shift) >>> +{ >>> + u32 reg_val = 0; >>> + >>> + reg_val = ((readl(reg)) & ~mask_val) | ((set_val << shift) & >>> mask_val); >>> + writel(reg_val, reg); >>> +} >>> + >>> +static inline unsigned int read_bit(void *reg, u32 mask, int shift) >>> +{ >>> + return ((readl(reg) & mask) >> shift); >>> +} >> >> I don't like these helper functions, their prototype is nonstandard and >> makes it really hard to read all the calling code. >> >> I would prefer if you just inline the operations directly, to make it >> clearer what's going on in each case - if not then at least follow the >> prototype of e.g. regmap_udpate_bits(), which people might be used to. > > Sure. Will update these APIs to follow standard format used in regmap and > other drivers. Just use readl/writel directly. If we wanted bit access functions, then we'd have common ones implemented already. They exist for regmap because with regmap you also need locking. Here you either don't need locking for RMW or you forgot it. Either way, wrapping a RMW operation into a function gives the illusion of being atomic when it is not. Rob