Received: by 10.213.65.68 with SMTP id h4csp3516464imn; Tue, 3 Apr 2018 06:24:25 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+Lkv5Pc9hrf7TcDNYUJYhFoEYzxBfLXSE5HzX1I9pZ1dO9dN+cGJ059d1RKYhhJUE/eTJM X-Received: by 2002:a17:902:7445:: with SMTP id e5-v6mr14508816plt.352.1522761865375; Tue, 03 Apr 2018 06:24:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522761865; cv=none; d=google.com; s=arc-20160816; b=VMZUDTbOXmfZRN5nmgRqkXkk+uz2AEuqQQaNtDlczH4vi7PfJc7EkvN9HCkWt8//Q6 7HqCfBgbCtlcgpQB1IJ6Mz11/15oJKuny8N2n8akqXwkAsFw1313Qlanu+yTbaqFHVlC 4dWJhaCHnQoqCg/ulnbjx9aIaBX8FrIVXopkEINzTdOX2JgrF/9p+hrXa6tXx7PsNUpK cdVkDRa/az6ftmHP48h61oFAXRBJ0UZgkCFIswqnPmeHwDSR4+/BD/ARIlhRD09oI8EX Qcdz/Uq9854/w8afyPKHjGpi7sc9QsKOHE5fe5oDYoS732Y1OG4Car1+sIgWh5UnvKXH amUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dmarc-filter:dkim-signature:dkim-signature :arc-authentication-results; bh=tOXoswwQHSdgc5BjSMbP6E33tQ1k3Ud5IPjfiHsH2DU=; b=bg53KRxXdwVWgldd9sgi6wy7Fd2AULVmyNPeJ9nIkpW2suZ36PD0kch+RKvKjFCtYq 1Zcw3Cz6e0oD9smXjz8Eo/HoZ/oNKCRLDhQgyGG5phj6iT2lFfB1VGPxMXrjD2zy9zbM +ZMzJsy8dRVlaan3rMBIR7H5JkvfRHmxMHQ4oT323O5lbq8GOLNU9UIObJEm8bRSkBHk RT8KZ5/GKE6Ny7UtXcKI4YYo2Dycl8WgyNUUpS2yuhw3AkQd74o6wsvsoSxK8RkJG1wz dSOITc8CbXfv6QW2GecQHBHcECMnhKUDjmEqvqieZazBbI4KHIIOyZjbT8RhfikDyAoi /TJw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=TxPkXv0Y; dkim=pass header.i=@codeaurora.org header.s=default header.b=TxPkXv0Y; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c66si1982439pga.494.2018.04.03.06.24.11; Tue, 03 Apr 2018 06:24:25 -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=@codeaurora.org header.s=default header.b=TxPkXv0Y; dkim=pass header.i=@codeaurora.org header.s=default header.b=TxPkXv0Y; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932276AbeDCNXE (ORCPT + 99 others); Tue, 3 Apr 2018 09:23:04 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:53214 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932209AbeDCNXC (ORCPT ); Tue, 3 Apr 2018 09:23:02 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id DF3C16076C; Tue, 3 Apr 2018 13:23:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1522761781; bh=1NLzLHvGXMUvtaP1HRhdmGf5Iups9EBjz39csgSUEJ8=; h=From:To:Cc:Subject:Date:From; b=TxPkXv0YqqsqDc+1GFsQbG2untIVeIHMOa2Cnx3sDPCQLYr84pOiXigMGDNfhbP0T 8cll+lDXPC7OJuDvUgQQOJXF9ISHJF/n7tAt72bGcoCBA0r8yA2bszp1Ae41DYpd7l 4z5j9QHXTtyjOdGRrVxWwB4YcFf70I+eNihcKQpM= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from anischal-linux.qualcomm.com (blr-c-bdr-fw-01_globalnat_allzones-outside.qualcomm.com [103.229.19.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: anischal@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 5C9A56076C; Tue, 3 Apr 2018 13:22:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1522761781; bh=1NLzLHvGXMUvtaP1HRhdmGf5Iups9EBjz39csgSUEJ8=; h=From:To:Cc:Subject:Date:From; b=TxPkXv0YqqsqDc+1GFsQbG2untIVeIHMOa2Cnx3sDPCQLYr84pOiXigMGDNfhbP0T 8cll+lDXPC7OJuDvUgQQOJXF9ISHJF/n7tAt72bGcoCBA0r8yA2bszp1Ae41DYpd7l 4z5j9QHXTtyjOdGRrVxWwB4YcFf70I+eNihcKQpM= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 5C9A56076C Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=anischal@codeaurora.org From: Amit Nischal To: Stephen Boyd , Michael Turquette Cc: Andy Gross , David Brown , Rajendra Nayak , Odelu Kukatla , Taniya Das , linux-arm-msm@vger.kernel.org, linux-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, Amit Nischal Subject: [PATCH v3 0/3] Misc patches to support clocks for SDM845 Date: Tue, 3 Apr 2018 18:52:38 +0530 Message-Id: <1522761761-15262-1-git-send-email-anischal@codeaurora.org> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Changes in v3: 1. Adressed review comments given for v2 series. 2. The GCC clock driver(patch 3) depends upon the below patches related to GDSC operation and are under review. https://lkml.org/lkml/2018/4/2/142 Changes in v2: Fixup for recalc_rate ops for clk_rcg2_shared_ops: There could be few scenarios where shared clocks are configured at rate other than CXO by boot. In those cases there would be a mismatch between the rate calculated by the recalc shared ops and the actual HW register configuration. Fix the same by adding an additional check to read current src from CFG register and make a decision based on that. Changes in v1: https://lkml.org/lkml/2018/1/31/209 This patch series does the miscellaneous changes to support clock nodes for SDM845. Below are the major changes for which the existing code does not have support. 1. Clear hardware clock control bit of RCGs where HW clock control bit is set by default so that software can control those root clocks. 2. Introduces clk_rcg2_shared_ops to support clock controller drivers for SDM845. With new shared ops, RCGs with shared branches will be configured to a safe source in disable path and actual RCG update configuration will be done in enable path instead of doing config update in set_rate. In set_rate(), just cache the rate instead of doing actual configuration update. Also each RCG in clock controller driver will have their own safe configuration frequency table to switch to safe frequency. 3. Add support for controlling Fabia PLL for which the support is not available in existing alpha PLL code. 4. Add Global Clock controller (GCC) driver for SDM845. This should allow most non-multimedia device drivers to probe and control their clocks. [v1] : https://lkml.org/lkml/2018/1/31/209 [v2] : https://lkml.org/lkml/2018/3/8/495 Amit Nischal (2): clk: qcom: Clear hardware clock control bit of RCG clk: qcom: Configure the RCGs to a safe source as needed Taniya Das (1): clk: qcom: Add Global Clock controller (GCC) driver for SDM845 .../devicetree/bindings/clock/qcom,gcc.txt | 1 + drivers/clk/qcom/Kconfig | 9 + drivers/clk/qcom/Makefile | 1 + drivers/clk/qcom/clk-rcg.h | 7 +- drivers/clk/qcom/clk-rcg2.c | 176 +- drivers/clk/qcom/gcc-sdm845.c | 3546 ++++++++++++++++++++ include/dt-bindings/clock/qcom,gcc-sdm845.h | 242 ++ 7 files changed, 3979 insertions(+), 3 deletions(-) create mode 100644 drivers/clk/qcom/gcc-sdm845.c create mode 100644 include/dt-bindings/clock/qcom,gcc-sdm845.h -- QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation