From patchwork Thu May 6 06:10:48 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Billy Tsai X-Patchwork-Id: 12241673 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C4AB2C433B4 for ; Thu, 6 May 2021 06:12:25 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8E0D66112D for ; Thu, 6 May 2021 06:12:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8E0D66112D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=aspeedtech.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:CC: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=Xs7dgatWWLmwmW55rIJRhdDWeNuCbKmc9AC7Y8As9TA=; b=a8Qog4X+cDdeO9tJoil3mBIFB7 5Pd6E/6ytwWbG2Cx6CFU4wkDTUp1dHUr3NGscHNs4Y//V+LxEpWQMXU1AGCL5v2fHwJ7kFHiIjyLH uaeZsYgnfRhujABmHKKtS6ZllHflBf7KGloTi3XY9ij0wqkOb2FabZq2b3PtI1oBRiDxoR7/uKxUn bI4W0oro5o+EYNif85i1vseydjLO/AAHselN+BZ24cHaIGzzhCW1g1udpck+ZzB/CJFcM5BvyVbIn tNxUS6joxWPk13XETSlFw8Ii/Hv9DgQ3epkVBrS4KPtETzr++1opjJcivIIjvyReS9y+0Vbn2wdtU ++83WBlQ==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1leXDb-003Jgi-9v; Thu, 06 May 2021 06:10:39 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1leXDY-003JgQ-Iy for linux-arm-kernel@desiato.infradead.org; Thu, 06 May 2021 06:10:36 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:Content-Type: MIME-Version:Message-ID:Date:Subject:CC:To:From:Sender:Reply-To:Content-ID: Content-Description:In-Reply-To:References; bh=9pzfgsXzRqN5M8u0jiUUh+j9iiAkQbwS1dA8i8gDppw=; b=EQUCxZAnI7VWIrzpIlVNby6SkK woYLXM4lz9LDN/j58abtOeeKRKP3KFh+YAWg6s+p/zxkm9JXlQ4PVEqL3Usp+KNbh1t/xQ3NCQbP/ GMveW8YB1NmQLc+K28dsOhVw3otlYUAj0jsLQ+IHLXul8IYtRdOf8kvI4O/Ur1vypYHL6IxUrBiKF S6HLr6uns9xdZPwmx7ikrj4xTKVF0dp29aRbpVv/d80evxVO+LcbP/+BJoQ9u7z8gmU8XyVfKu+Fb AiTBN6HRF8OdiLEZIZvL9msrPq2YrGq8UVFmhNS6JpiOIvYhXE7N17UgbtnNbpIEC0sdew/JVTh4O /Uy2sSYQ==; Received: from twspam01.aspeedtech.com ([211.20.114.71]) by casper.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1leXDN-001MOl-12 for linux-arm-kernel@lists.infradead.org; Thu, 06 May 2021 06:10:31 +0000 Received: from mail.aspeedtech.com ([192.168.0.24]) by twspam01.aspeedtech.com with ESMTP id 1465vje5003652; Thu, 6 May 2021 13:57:45 +0800 (GMT-8) (envelope-from billy_tsai@aspeedtech.com) Received: from BillyTsai-pc.aspeed.com (192.168.2.149) by TWMBX02.aspeed.com (192.168.0.24) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 6 May 2021 14:09:32 +0800 From: Billy Tsai To: , , , , , , , , , , , , CC: Subject: [v3 0/2] Support pwm driver for aspeed ast26xx Date: Thu, 6 May 2021 14:10:48 +0800 Message-ID: <20210506061050.8001-1-billy_tsai@aspeedtech.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-Originating-IP: [192.168.2.149] X-ClientProxiedBy: TWMBX02.aspeed.com (192.168.0.24) To TWMBX02.aspeed.com (192.168.0.24) X-DNSRBL: X-MAIL: twspam01.aspeedtech.com 1465vje5003652 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210506_071029_178953_78254B1D X-CRM114-Status: GOOD ( 11.66 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The legacy driver of aspeed pwm is binding with tach controller and it doesn't follow the pwm framworks usage. In addition, the pwm register usage of the 6th generation of ast26xx has drastic change. So these patch serials add the new aspeed pwm driver to fix up the problem above. Changes since v2: - Remove the tach node, #address-cells and #size-cells from pwm-tach.yaml - Add clocks and reset properties to pwm-tach.yaml - Kconfig/Makfile sorted alphabetically - pwm-aspeed-g6.c suggested by Uwe Kleine-König - Add more hardware descriptions at top of the driver. - Remove unused api request and free - Move the initialize settings of all pwm channel to probe. - Change the method of getting the approximate period. - Read the hardware register values to fill the state for .get_state() Changes since v1: - Fix the dt_binding_check fail suggested by Rob Herring - Add depends to PWM_ASPEED_G6 configure suggested by Uwe Kleine-Konig - pwm-aspeed-g6.c suggested by Uwe Kleine-König - Fix license header - Use bitfiled.h macro to define register fields - Implement .remove device function - Implement .get_state pwm api Billy Tsai (2): dt-bindings: Add bindings for aspeed pwm-tach and pwm. pwm: Add Aspeed ast2600 PWM support .../bindings/mfd/aspeed,ast2600-pwm-tach.yaml | 55 +++ .../bindings/pwm/aspeed,ast2600-pwm.yaml | 41 ++ drivers/pwm/Kconfig | 8 + drivers/pwm/Makefile | 1 + drivers/pwm/pwm-aspeed-g6.c | 368 ++++++++++++++++++ 5 files changed, 473 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/aspeed,ast2600-pwm-tach.yaml create mode 100644 Documentation/devicetree/bindings/pwm/aspeed,ast2600-pwm.yaml create mode 100644 drivers/pwm/pwm-aspeed-g6.c