Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp628048ybz; Wed, 15 Apr 2020 15:27:07 -0700 (PDT) X-Google-Smtp-Source: APiQypLYd/GLnEgUlsGAi+YhSZDO6Kyc7Pz/Tk4GxpJ+suuW6hVpG8m2VV+spxSYdRiKQbrRMcOU X-Received: by 2002:aa7:c2d8:: with SMTP id m24mr5212543edp.342.1586989627716; Wed, 15 Apr 2020 15:27:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586989627; cv=none; d=google.com; s=arc-20160816; b=tBJpsdBC2KQb4qWNmWhA5zWssbpDpjMgJqJSotmSw5oXplV4viq+zysWUs571Jn/of 7LAI4TOXyKj/lKr8WUaBR56Tk0omrqCNJgiI8k9nIJ5SANAUNk3o5JQyKSq02z417AdA WVjqDo9Mku/2m8tJ+YLLYlaskjFmZ/WY39C/I30Ak+9z3XG68fmPSAlhNyRic5QReeX2 RIyPCuBksK8hqRouaHL0rEsF6BOwV7kJ/8vjaAIB1hpin8/ogQo5ivn5zliwx4IEVa/Q fEOV7bTSzLGuUTACdXhsv8Xav5Xy8zrqZQC4PEwLPlK9BwAuwDyk9kv9aS9EHQocNhF5 kMOg== 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; bh=ZcBFIfFjj1XchZKqsf6eCam/7/0VatBIW3YnZJQHl9g=; b=eS7SzUHA7ozYQe3dzzZtnMpeSLXGJMxylJJaHI0nSbdLOrKHIEz25pKw3OQfU0ZTSo wlg4flFRTimvXAHEqDOIVVto5jbzLdu8PeIKPl7LuWIVFm6lETkyqRVx8sUILD14wKr5 QJKjBj8MYG0zTSniGn+gt6FXUvOs6T009wz1KUFBZ/q91kkgiqYa2JUo+s5Q8uXZYg6X caxeZwsh/7SOgUDpdND3YDQWr5sRqVYnMMeO8gpUaLV9ceNTi+FSbNEwBCKULrcAMxQ4 X6a6TA1PYa9wsUzQffdaS0lfizgzSJZJVSTk3K4Iy+zXmSzLqdRXExSOqQJsGNhAYkLd Poag== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p10si954956edq.609.2020.04.15.15.26.44; Wed, 15 Apr 2020 15:27:07 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2635604AbgDOIIO (ORCPT + 99 others); Wed, 15 Apr 2020 04:08:14 -0400 Received: from inva020.nxp.com ([92.121.34.13]:39686 "EHLO inva020.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2403805AbgDOID1 (ORCPT ); Wed, 15 Apr 2020 04:03:27 -0400 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 5A0641A079A; Wed, 15 Apr 2020 10:03:05 +0200 (CEST) Received: from inva024.eu-rdc02.nxp.com (inva024.eu-rdc02.nxp.com [134.27.226.22]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 4C4851A078C; Wed, 15 Apr 2020 10:03:05 +0200 (CEST) Received: from fsr-ub1664-175.ea.freescale.net (fsr-ub1664-175.ea.freescale.net [10.171.82.40]) by inva024.eu-rdc02.nxp.com (Postfix) with ESMTP id B19C5202B0; Wed, 15 Apr 2020 10:03:04 +0200 (CEST) From: Abel Vesa To: Lee Jones , Shawn Guo , Peng Fan , Philipp Zabel , Stephen Boyd , Sascha Hauer , Anson Huang , Leonard Crestez , Jacky Bai Cc: NXP Linux Team , Linux Kernel Mailing List , devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Abel Vesa Subject: [PATCH v3 00/13] Add generic MFD i.MX mix and audiomix support Date: Wed, 15 Apr 2020 11:02:40 +0300 Message-Id: <1586937773-5836-1-git-send-email-abel.vesa@nxp.com> X-Mailer: git-send-email 2.7.4 X-Virus-Scanned: ClamAV using ClamSMTP Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The i.MX8MP has some new IPs called mixes. They are formed usually by some GPRs that can be split into different functionalities. The first example here is the audiomix which has dedicated registers that can be registered as a clock controller and some other registers that can be registered as a reset controller, plus some dedicated ones that will be registered as syscon and used by each dedicated audio IP. More mixes to be following the same structure are to come, like hdmimix, dispmix and mediamix. They will all be populated and registered by the MFD imx-mix generic driver. Changes since v2: * removed the runtime PM for now * changed the new SPDX identifiers to GPL-2.0-only * took care of the DT schema comment Abel Vesa (13): mfd: Add i.MX generic mix support Documentation: mfd: Add DT bindings for i.MX Mix arm64: dts: imx8mp: Add AIPS 4 and 5 arm64: dts: imx8mp: Add audiomix node clk: imx: gate2: Allow single bit gating clock clk: imx: pll14xx: Add the device as argument when registering clk: imx: Add helpers for passing the device as argument dt-bindings: clocks: imx8mp: Add ids for audiomix clocks clk: imx: Add audiomix clock controller support arm64: dts: imx8mp: Add audiomix clock controller node dt-bindings: reset: imx8mp: Add ids for audiomix reset reset: imx: Add audiomix reset controller support arm64: dts: imx8mp: Add audiomix reset controller node .../devicetree/bindings/mfd/fsl,imx-mix.yaml | 34 ++++ arch/arm64/boot/dts/freescale/imx8mp.dtsi | 41 ++++- drivers/clk/imx/Makefile | 2 +- drivers/clk/imx/clk-audiomix.c | 175 +++++++++++++++++++++ drivers/clk/imx/clk-gate2.c | 31 +++- drivers/clk/imx/clk-pll14xx.c | 8 +- drivers/clk/imx/clk.h | 55 ++++++- drivers/mfd/Kconfig | 11 ++ drivers/mfd/Makefile | 1 + drivers/mfd/imx-mix.c | 48 ++++++ drivers/reset/Kconfig | 7 + drivers/reset/Makefile | 1 + drivers/reset/reset-imx-audiomix.c | 117 ++++++++++++++ include/dt-bindings/clock/imx8mp-clock.h | 62 ++++++++ include/dt-bindings/reset/imx-audiomix-reset.h | 15 ++ 15 files changed, 590 insertions(+), 18 deletions(-) create mode 100644 Documentation/devicetree/bindings/mfd/fsl,imx-mix.yaml create mode 100644 drivers/clk/imx/clk-audiomix.c create mode 100644 drivers/mfd/imx-mix.c create mode 100644 drivers/reset/reset-imx-audiomix.c create mode 100644 include/dt-bindings/reset/imx-audiomix-reset.h -- 2.7.4