Message ID | 20181117111905.29091-1-abailon@baylibre.com (mailing list archive) |
---|---|
Headers | show
Return-Path: <linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org> 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 CE44514E2 for <patchwork-linux-arm@patchwork.kernel.org>; Sat, 17 Nov 2018 11:18:59 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BC0092BC3C for <patchwork-linux-arm@patchwork.kernel.org>; Sat, 17 Nov 2018 11:18:59 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id AECF82BC42; Sat, 17 Nov 2018 11:18:59 +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=-3.6 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_LOW autolearn=unavailable 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 627A82BC3C for <patchwork-linux-arm@patchwork.kernel.org>; Sat, 17 Nov 2018 11:18:59 +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:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id: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=94adkTIGgkG6CPs61t9hcx18/7kBu7HSD+HVoP/RZ90=; b=ONM F54/bfNau2ec75HiKhOzHtlITZ6yBumCZggm05EgvqJnEPK5K6SNdJ1jfiG2qcy+SoxtFe7n1OqFJ ZCc7xd/FBsiAIS2bSoNkqfOAb9SGVW9Z7oq4a716+I5YqAuuopimbL6aWTyc9GbbLIO/bfhs4Cdc0 uH5qbA4Z+x4Q6jiHkQbckF37qyhLkd3k2JiHGrtLz92aQjU0J/eXLcB47rH68fl+15bQ2BW/zhGrt WoV/7SdtSXgOYWYOC6C2QVAul3fOMo3/17CU2VA1g29hwBFwYNuGJIq6lPyMnIGWAPvmB3PFb02F1 yhtWyZYfJ8MZfIYcNSsiOiumjXEXTMw==; 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 1gNyck-000180-Sb; Sat, 17 Nov 2018 11:18:50 +0000 Received: from mail-wr1-x444.google.com ([2a00:1450:4864:20::444]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gNych-00015Z-C9 for linux-arm-kernel@lists.infradead.org; Sat, 17 Nov 2018 11:18:49 +0000 Received: by mail-wr1-x444.google.com with SMTP id r10so9827767wrs.10 for <linux-arm-kernel@lists.infradead.org>; Sat, 17 Nov 2018 03:18:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=DeOKk2L7bKLXteIWSWMcRk/7avbZnCJV7cFfKOmdHmE=; b=NWSwkeHWqvIRMj7qPqrWicJ2ilNlAekfBTHMvUV4dbVEY1ymvv8kJ+JupJP523LDrP 9TBOoaR/Ko0/DFKTb65EcvbB02EqtQRC9XKkeb4O9z9AKqnP1o75AIVuDbH39w6Tl9fN Vl0+UCfwyUXmVLUkwy/CnkkNaRLx4QE1HYvPsNWL01nC1HbkfP9Ad34C+k8uYCxWRlGV isTG02T6C1HHuzELyZIn2MPd7/phxRRnw2iNa+PmpjQF3kHKHezkvGC1sxvIG3ZT/m/D CSROXxgro8CAEUlno924e1Vfm94hwXyt6Gm4dLLg+1CI9zv8+UFmGd3skBPoycO5730i iQ1w== 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; bh=DeOKk2L7bKLXteIWSWMcRk/7avbZnCJV7cFfKOmdHmE=; b=HANMGwOic71MOg8DhEybHU7WTS1baZ79bo7rJU+mO2mj550ID083jkWziSAS3uga2O sq68N84aA8OOq1JN/zl5OszxJfQCFU2dkvvqLcAZYerUUvg5GVvNfb8IyynVWciMhWeZ nwUR3q3T6hfhUcLgTccwiRJHKAZAjczGYXmgAKsyk7M/OPsaC0bFRbZzJ8oybT3qfn5C BE1Uu2K1ZAWMUXlTqfCnFXzVDj+WVpJbINm1s4LotV/aI4dpLEk4rf9L6mrfakb4xCJX D7vFjVNhmkBjFkbT/WhygqDdQZz+ihHqzFA6MmSHUxJ8xz/L1ArHe7Pi/u0pmIMoPvdX PPXw== X-Gm-Message-State: AGRZ1gJY2XvVIsrrY1NmaQLJ1sM/IA1IM+syjF3ST5gHS1siVYVIzTew q5QeT7GiqsbOAr7SoY59/nlv3A== X-Google-Smtp-Source: AJdET5cjGLEucg/PiUcdvyBM7iIFDWiSxVru2OnanW/6awMLB7lqTp73Z69mNFIbMPeKRpJi0MBKCw== X-Received: by 2002:adf:8b0a:: with SMTP id n10-v6mr11791416wra.282.1542453514380; Sat, 17 Nov 2018 03:18:34 -0800 (PST) Received: from localhost.localdomain (176-137-58-115.abo.bbox.fr. [176.137.58.115]) by smtp.gmail.com with ESMTPSA id k5-v6sm50797646wre.82.2018.11.17.03.18.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 17 Nov 2018 03:18:33 -0800 (PST) From: abailon@baylibre.com To: georgi.djakov@linaro.org Subject: [RFC PATCH 0/2] iMX7ULP interconnect framework Date: Sat, 17 Nov 2018 12:19:03 +0100 Message-Id: <20181117111905.29091-1-abailon@baylibre.com> X-Mailer: git-send-email 2.18.1 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20181117_031847_414354_51EB882E X-CRM114-Status: GOOD ( 15.88 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: <linux-arm-kernel.lists.infradead.org> List-Unsubscribe: <http://lists.infradead.org/mailman/options/linux-arm-kernel>, <mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe> List-Archive: <http://lists.infradead.org/pipermail/linux-arm-kernel/> List-Post: <mailto:linux-arm-kernel@lists.infradead.org> List-Help: <mailto:linux-arm-kernel-request@lists.infradead.org?subject=help> List-Subscribe: <http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>, <mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe> Cc: devicetree@vger.kernel.org, Alexandre Bailon <abailon@abailon.com>, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-pm@vger.kernel.org MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" <linux-arm-kernel-bounces@lists.infradead.org> Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP |
Series |
iMX7ULP interconnect framework
|
expand
|
From: Alexandre Bailon <abailon@abailon.com> The goal of this patchset is to use the interconnect framework for iMX7ULP SoC. This is sent as a RFC because I think the driver could be more generic, and, I had some issues with the clocks and I know the way I dealt with it is probably not the best one. In addition, this patchset has been written and tested on older kernel (4.9), and I don't expect it to applies / works on upstream kernel (the support of SoC itself is still not there). There are two interconnects, NIC0 and NIC1: //==============================\\ || -------------------- || \\=|m0 s0|= || =|m1 s1|===\\ || =|m2 NIC0 s2|= || || =|m3 | || || =|m4 | || || -------------------- || || //=================// || || -------------------- || \\==|m0 s0|=// =|m1 s1|= =|m2 NIC1 s2|= =|m3 s4|= =|m4 s5|= =|m5 | -------------------- ------- ------- NIC0 | DIV | NIC0 DIV | DIV | NIC1 DIV -----| |----------| |--------- ------- ------- Although NIC0 and NIC1 are interconnected, some requests could apply to only one of them. This could cause some issues with clock. Basically, scaling the frequency of NIC0 will also scale the frequency of NIC1, so we have to update both of them. Simillarly, updating the frequency of NIC1 may also require to change NIC0 frequency. In order to easily deal with it, the driver create only one device for the two interconnects, and update clock frequency of both interconnects at same time, when the last node is reached. Ideally, we would have two device, which would make the driver more generic, but currently, I'm not sure how to make sure that the clocks are always at the expected frequency. Doing that would give us the possiblity to use the driver for other iMX SoC (would just require to add the bus topology for that SoC). Alexandre Bailon (2): Add support of imx7ulp to interconnect framework dt-bindings: interconnect: Document imx7ulp interconnect bindings .../bindings/interconnect/imx7ulp.txt | 17 + drivers/interconnect/Kconfig | 1 + drivers/interconnect/Makefile | 1 + drivers/interconnect/imx/Kconfig | 9 + drivers/interconnect/imx/Makefile | 1 + drivers/interconnect/imx/imx7ulp.c | 369 ++++++++++++++++++ 6 files changed, 398 insertions(+) create mode 100644 Documentation/devicetree/bindings/interconnect/imx7ulp.txt create mode 100644 drivers/interconnect/imx/Kconfig create mode 100644 drivers/interconnect/imx/Makefile create mode 100644 drivers/interconnect/imx/imx7ulp.c