From patchwork Tue Mar 5 04:49:30 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Derek Basehore X-Patchwork-Id: 10838933 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 6550B1869 for ; Tue, 5 Mar 2019 04:49:54 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5006C2B743 for ; Tue, 5 Mar 2019 04:49:54 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 410EC2B75E; Tue, 5 Mar 2019 04:49:54 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id E342F2B743 for ; Tue, 5 Mar 2019 04:49:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=3HjuX4x233kRTtioRUexbIZZUged6JcGksOCSla56/4=; b=fu6Zms/DZfkcsH HHpJKQyaIJMDV7rYVJsc+LTAYohLFhvmGcIvJJhdr8fFi3ODILdSVLH5x2qGOy7EPqrzLhP7PgKNl 0meWfs6Nh7zLKEt7PWImz4Y1PGpRiO4Pw2CiGI+pkg9rkD3TdyN9DIlqTUUDzFJT7KYFGMncf9aVD chgj/MYgXoMpQrKM7KWeLKh5Ma90VwRdC4RlOBfJq0U4KvXA4SBkPTm/K6Fbp95QjFX3vYSrHjKXA nvSc/3bFiYQB7BZVnPhK+LgbBfpWr84AwC4PXrW7ZQfvvwPZdpWnn0cxBHPoU5HPFwQkv9H+vCMzS IQiYZPG3UAohBKEIlmxQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1h121V-0008RZ-By; Tue, 05 Mar 2019 04:49:49 +0000 Received: from mail-pg1-x542.google.com ([2607:f8b0:4864:20::542]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1h121R-0008PI-0I for linux-arm-kernel@lists.infradead.org; Tue, 05 Mar 2019 04:49:46 +0000 Received: by mail-pg1-x542.google.com with SMTP id r124so4731740pgr.3 for ; Mon, 04 Mar 2019 20:49:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=k7wULXXbasfiJzjma87EPvIMtuy4uP4l7hd9LnQo2Ms=; b=gpYMhnbKloRJllZAIQBHZnN6i9bi2oW1nE6dif/rEpAZgs+d/Lv/sDiIRV7P3NgZbl z8UpIfBYynxakaFKKJOmy7kSG/1lQHNalLyzz+opU/2/gf7hy68X1KNS5YYq2Ol8GaUU mKV9E5e1rk4CAuliDncKlP26YiT8FF0CbWMtc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=k7wULXXbasfiJzjma87EPvIMtuy4uP4l7hd9LnQo2Ms=; b=c0fko6uHvdNHThqBb/7TaGRHE/3ZQeL6IiZ/O9kh8LXhvWR9poy7extuNEJnxA+0pr 6VopmRPrZ/kNsWp5RYA1XZFHPeKu+Ea/WfARnyazAfQZ2BxiGrQAaPlJ8jMYUlhmYSrZ vjfSwUoBUI2UwKXquJecs4B8YLKTDySKiXJbRn78Q9i4G/qZ4bUWknyYJ02nlFLyuGsb f4TAkRtTSPUCpbA7x52TBemONLOl5ez5HXZn3MPlvV9OW7odaYtTb0ToxB20qel6iuNu HfMS/6/pMK9P0WlXJLZHnciEjRHNy4pJJJq8l4C3cpvlzdrHfidYxlESAxFCUyDNA1kq 0SFw== X-Gm-Message-State: APjAAAXCUZx2BAA94Em3roTYQVco4n5ZI8YA06km0y1WrxpUS/bowE2i F/5l3ZAn0Lz8v2hOjXQzM8pOrQ== X-Google-Smtp-Source: APXvYqxagnb2X0j1Cs0vJg2qbYSrSE8QmUo3yMrLrSnBV7OTdM7NjrAI6FU/U6zf7NNZAy0A50Vn+Q== X-Received: by 2002:a17:902:6f08:: with SMTP id w8mr24407125plk.5.1551761382586; Mon, 04 Mar 2019 20:49:42 -0800 (PST) Received: from exogeni.mtv.corp.google.com ([2620:15c:202:1:db8d:8e3f:2514:5db8]) by smtp.gmail.com with ESMTPSA id z15sm15893883pgc.25.2019.03.04.20.49.41 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Mar 2019 20:49:41 -0800 (PST) From: Derek Basehore To: linux-kernel@vger.kernel.org Subject: [PATCH v2 0/6] Coordinated Clks Date: Mon, 4 Mar 2019 20:49:30 -0800 Message-Id: <20190305044936.22267-1-dbasehore@chromium.org> X-Mailer: git-send-email 2.21.0.352.gf09ad66450-goog MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190304_204945_063308_AAAA15DD X-CRM114-Status: GOOD ( 10.02 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: aisheng.dong@nxp.com, Derek Basehore , heiko@sntech.de, linux-doc@vger.kernel.org, sboyd@kernel.org, mturquette@baylibre.com, corbet@lwn.net, linux-rockchip@lists.infradead.org, mchehab+samsung@kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, jbrunet@baylibre.com Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP v2 changes: -Unrolled recursion in unprepare/disable for "clk: Remove recursion in clk_core_{prepare,enable}()" -Fixed issue with "clk: fix clk_calc_subtree compute duplications" -Fixed bug with too few allocated clk_change structs in "clk: add coordinated clk changes support" -Further cleaned up patches Here's the first set of patches that I'm working on for the Common Clk Framework. Part of this patch series adds a new clk op, pre_rate_req. This is designed to replace the clk notifier approach that many clk drivers use right now to setup alt parents or temporary dividers. This should allow for the removal of the CLK_RECALC_NEW_RATES flag and the implementation of a better locking scheme for the prepare lock. Derek Basehore (5): clk: fix clk_calc_subtree compute duplications clk: change rates via list iteration clk: add coordinated clk changes support docs: driver-api: add pre_rate_req to clk documentation clk: rockchip: use pre_rate_req for cpuclk Stephen Boyd (1): clk: Remove recursion in clk_core_{prepare,enable}() Documentation/driver-api/clk.rst | 7 +- drivers/clk/clk.c | 659 +++++++++++++++++++++++-------- drivers/clk/rockchip/clk-cpu.c | 256 ++++++------ include/linux/clk-provider.h | 10 + 4 files changed, 642 insertions(+), 290 deletions(-)