Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp1539680ybk; Thu, 14 May 2020 11:25:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwpTdhm9K4PqI2/xSz3u/p2dJGzgmQDW+0CISqmyVvz5f0SyPYY88LC71t+Ut/M+hhoBCI9 X-Received: by 2002:a50:ec83:: with SMTP id e3mr2378285edr.349.1589480757458; Thu, 14 May 2020 11:25:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589480757; cv=none; d=google.com; s=arc-20160816; b=i7zPPZKmZIhj9rBQp6STFbWeqKyoW1eDcNbcGoF9TTTfDzEPeACcagNOeth1pGveET YXTj6ArmYaHA9N/u3SCbMD9YMpVyOZulzlofSw3ZWJwMVCu4OiuI409oo2DWWWG0IetK xso7LAmro633fEEbshce8EeUX6QjHgTur5YGpgIJwVWfEtKbvNDCoVkyU1aUvPWwWvDE c/y28ePRjSAntvQB32OvUpetf4Tn7xPCjzbJqlVi9hX2Byu1r83nmWkhn8IeAxf1kRXj RlO4AhJk94SZg2L5jaUg67JeoAnpGNJ0CQyvSEgz3mhEcLslwb4vIsi+Vs7P3YVh0lN/ 4zZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=gJSIP+0eqqWilJF7ZA2rg5bve/1TAei35i2SbwZD4Bs=; b=yMAjNpsemEn0mt4AG0kD6ii8YD5MKHijgu+ZYh/P9L/zLBZyA2IJj3fG2sCjo8M5Ba 2TRhhFI2qbzWbdJXTZoNHVPosk0mwb0z2HHH+mQaMN1UMyLPkF8nAYDhooPTip2X2xMC gwGT07b1jl9U6cAyGiKnzuRvxgVTvjCa8lMiEU6rDfC+juKuFhKNDbTURyD7haZW1Cx3 OtFWL58+JH2tvLJAg4Gh1bU14YkE+WMTZ14mn+ugIIj05CscVDeqIygXHqBDAO2iIj+J /fjKzoarYThNsr7wumqsZUOH/sioCec3qBsxooVihtHAiR1Ss1m2dh91np6w53qMU0BP jLeA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=bu8l9OVt; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m9si2183774ejr.100.2020.05.14.11.25.33; Thu, 14 May 2020 11:25:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=bu8l9OVt; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726726AbgENSVp (ORCPT + 99 others); Thu, 14 May 2020 14:21:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43600 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726075AbgENSVp (ORCPT ); Thu, 14 May 2020 14:21:45 -0400 Received: from mail-vk1-xa42.google.com (mail-vk1-xa42.google.com [IPv6:2607:f8b0:4864:20::a42]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2A4D9C061A0E for ; Thu, 14 May 2020 11:21:45 -0700 (PDT) Received: by mail-vk1-xa42.google.com with SMTP id 134so1040060vky.2 for ; Thu, 14 May 2020 11:21:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=gJSIP+0eqqWilJF7ZA2rg5bve/1TAei35i2SbwZD4Bs=; b=bu8l9OVt14njQprs5kzcvxA6818I+95hsh8B/huC4fowfeyldDzvj64XeryyaxpQyY BBjGSN72DzjaustBIY5HSR/8qQAYDAm5djubj+Xrlw5Kx/b69hcBuWdDSoOlRx5ky/4M KHaOPCgkkaWDYAz/ruVVsoPmZ7+/xWOp1SEx0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=gJSIP+0eqqWilJF7ZA2rg5bve/1TAei35i2SbwZD4Bs=; b=n1xTrWemuVDL/nT97lJleEouzHL4BeKTjTzlDhGMAN0QgQNYv2oK6irlp2vaT+k0kO klPBqQ3FyvMBU7Qes2w4JsRc6hz1K4xTYQ7P0gaWrIZnM+PwUuwWMkoHrDEXtQCiU3jX fYh9Rk8sDDr9T9SO2n5o34pArlOCneiqGcak1njbjavxgrDIqQW478kHuOgwwJQoVIMg WfyF7zKV3dfZ2Z8z3jrWfG9PaCq7CjAGvrffCIYAyYShDZ8z0Zr3kx1KDTHzSoLE5NhX gWlVgEgKskS7M6CC4JVDerhTtgRQ/dTPRwR8eL38eQCxt9+vbWloVsOVcy4Kjeid70dG vK/w== X-Gm-Message-State: AOAM5309s9gxunUpmMAT9OqE+p1NN/IJ4gquAS9JMql2zqlI7GgK9SUv LM4NfxX/1IAlGYfEOnNyirOgrnrGY6I= X-Received: by 2002:a1f:54c5:: with SMTP id i188mr3367725vkb.4.1589480503788; Thu, 14 May 2020 11:21:43 -0700 (PDT) Received: from mail-ua1-f51.google.com (mail-ua1-f51.google.com. [209.85.222.51]) by smtp.gmail.com with ESMTPSA id h23sm874285uap.7.2020.05.14.11.21.42 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 14 May 2020 11:21:42 -0700 (PDT) Received: by mail-ua1-f51.google.com with SMTP id a7so1507613uak.2 for ; Thu, 14 May 2020 11:21:42 -0700 (PDT) X-Received: by 2002:ab0:69cc:: with SMTP id u12mr5012954uaq.22.1589480501535; Thu, 14 May 2020 11:21:41 -0700 (PDT) MIME-Version: 1.0 References: <1589307480-27508-1-git-send-email-rbokka@codeaurora.org> In-Reply-To: From: Doug Anderson Date: Thu, 14 May 2020 11:21:30 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [RFC v1 0/3] Add QTI QFPROM-Efuse driver support To: "Ravi Kumar Bokka (Temp)" Cc: Srinivas Kandagatla , Rob Herring , LKML , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , Rajendra Nayak , Sai Prakash Ranjan , dhavalp@codeaurora.org, mturney@codeaurora.org, sparate@codeaurora.org, c_rbokka@codeaurora.org, mkurumel@codeaurora.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On Wed, May 13, 2020 at 8:35 PM Ravi Kumar Bokka (Temp) wrote: > > Hi doug, > > Thanks for your feedback. Please find below inline comments. Probably the mailing list didn't see them. You responded with HTML mail. Please be careful to only respond in plain text. > Regards, > > Ravi Kumar.B > > > > On 5/13/2020 4:33 AM, Doug Anderson wrote: > > Hi, > > On Tue, May 12, 2020 at 11:18 AM Ravi Kumar Bokka = wrote: > > This patch series adds qfprom-efuse controller driver support. > > This driver can access the raw qfprom regions for fuse blowing. > > The current existed qfprom driver is only supports for cpufreq, thermal s= ensors > drivers by read out calibration data, speed bins..etc which is stored by > qfprom efuses. > > I don't understand the interaction between this driver and the > existing "qcom,qfprom" driver. Can you please explain? Are they both > acting on the same values and this one has write access? Are there > two instances of the same hardware block and you're managing one of > them with this new driver and one with thue old driver? Something > else? > > [Ravi] Existing QFPROM driver in upstream kernel has limited support whic= h is some hard coded mapping of id vs set of fuses and user can read those = fuse with those id-bucket. > That is simply reading Hw-registers and it doesn't involve any hardware p= rogramming sequence etc. Based on information given to us by QC-kernel team= , existing driver was created to read calibration/sensor fuses and it is ve= ry basic/limited/fixed in functionalities and orthogonal to what we need to= on Trogdor. > > Requirement for Trogdor fuse blow driver is different which allows to rea= d/write almost whole fuse block and requires to follow HW programming guide= . Both are completely separate and has no overlapping in terms of functiona= lities and capability. Please ignore the similarity of names of drivers, th= ey are different in terms of functionalities and driver internals etc. If they are targeting the same type of hardware IP block then, in the very least, the bindings need to be the same. The bindings are supposed to be describing the hardware. Presumably if the underlying hardware is the same you should be able to write one driver and it can just operate in some sort of "read-only" mode if it's running somewhere it doesn't have access permissions to actually change the fuses. > Ravi Kumar Bokka (3): > dt-bindings: nvmem: Add devicetree bindings for qfprom-efuse > drivers: nvmem: Add driver for QTI qfprom-efuse support > arm64: dts: qcom: sc7180: Add qfprom-efuse > > .../devicetree/bindings/nvmem/qfprom-efuse.yaml | 40 ++ > arch/arm64/boot/dts/qcom/sc7180-idp.dts | 4 + > arch/arm64/boot/dts/qcom/sc7180.dtsi | 9 + > drivers/nvmem/Kconfig | 10 + > drivers/nvmem/Makefile | 2 + > drivers/nvmem/qfprom-efuse.c | 476 +++++++++++++++= ++++++ > 6 files changed, 541 insertions(+) > create mode 100644 Documentation/devicetree/bindings/nvmem/qfprom-efuse.= yaml > create mode 100644 drivers/nvmem/qfprom-efuse.c > > -- > Qualcomm INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member= of the Code Aurora Forum, hosted by the Linux Foundation. >