From mboxrd@z Thu Jan 1 00:00:00 1970 From: Guru Das Srinagesh Subject: [PATCH v13 00/11] Convert PWM period and duty cycle to u64 Date: Tue, 21 Apr 2020 19:57:12 -0700 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-riscv" Errors-To: linux-riscv-bounces+glpr-linux-riscv=m.gmane-mx.org@lists.infradead.org To: linux-pwm@vger.kernel.org Cc: Kate Stewart , linux-fbdev@vger.kernel.org, David Collins , Liam Girdwood , David Airlie , Michael Turquette , Joonas Lahtinen , Kamil Debski , dri-devel@lists.freedesktop.org, Chris Wilson , Atish Patra , Thierry Reding , linux-riscv@lists.infradead.org, Fabio Estevam , linux-clk@vger.kernel.org, =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Guru Das Srinagesh , Daniel Thompson , Mauro Carvalho Chehab , Alexander Shiyan , Lee Jones , Chen-Yu Tsai NXP Linux Team List-Id: linux-pwm@vger.kernel.org [REQUEST] Would it be possible for the patches that have already received Acked-by's in this series to be accepted and applied to the tree? I lost an Acked-by (in intel-panel.c) because it had a merge conflict with a new change that came in after I rebased to tip. I wasn't sure earlier about accepting single patches as opposed to the entire series en masse, but this event has got me thinking. [COVER LETTER] Because period and duty cycle are defined in the PWM framework structs as ints with units of nanoseconds, the maximum time duration that can be set is limited to ~2.147 seconds. Consequently, applications desiring to set greater time periods via the PWM framework are not be able to do so - like, for instance, causing an LED to blink at an interval of 5 seconds. Redefining the period and duty cycle struct members in the core PWM framework structs as u64 values will enable larger time durations to be set and solve this problem. Such a change to the framework mandates that drivers using these struct members (and corresponding helper functions) also be modified correctly in order to prevent compilation errors. This patch series introduces the changes to all the drivers first, followed by the framework change at the very end so that when the latter is applied, all the drivers are in good shape and there are no compilation errors. Changes from v12: - Rebased to tip of for-next - Collected Acked-by for sun4i - Reworked patch for intel-panel.c due to rebase, dropped Jani's Acked-by as a result Changes from v11: - Rebased to tip of for-next. - Collected "Acked-by:" for v7 (unchanged) of pwm: sifive: [4] - Squished stm32-lp.c change with final patch in series - sun4i: Used nsecs_to_jiffies() - imx27: Added overflow handling logic - clps711x: Corrected the if condition for skipping the division - clk: pwm: Reverted to v8 version, added check to prevent division-by-zero Changes from v10: - Carefully added back all the "Reviewed-by: " and "Acked-by: " tags received so far that had gotten missed in v9. No other changes. Changes from v9: - Gathered the received "Reviewed-by: " tag - Added back the clk-pwm.c patch because kbuild test robot complained [3] and addressed received review comments. - clps711x: Addressed review comments. Changes from v8: - Gathered all received "Acked-by: " and "Reviewed-by: " tags - Dropped patch to clk-pwm.c for reasons mentiond in [2] - Expanded audience of unreviewed patches Changes from v7: - Changed commit messages of all patches to be brief and to the point. - Added explanation of change in cover letter. - Dropped change to pwm-sti.c as upon review it was unnecessary as struct pwm_capture is not being modified in the PWM core. Changes from v6: - Split out the driver changes out into separate patches, one patch per file for ease of reviewing. Changes from v5: - Dropped the conversion of struct pwm_capture to u64 for reasons mentioned in https://www.spinics.net/lists/linux-pwm/msg11541.html Changes from v4: - Split the patch into two: one for changes to the drivers, and the actual switch to u64 for ease of reverting should the need arise. - Re-examined the patch and made the following corrections: * intel_panel.c: DIV64_U64_ROUND_UP -> DIV_ROUND_UP_ULL (as only the numerator would be 64-bit in this case). * pwm-sti.c: do_div -> div_u64 (do_div is optimized only for x86 architectures, and div_u64's comment block suggests to use this as much as possible). Changes from v3: - Rebased to current tip of for-next. Changes from v2: - Fixed %u -> %llu in a dev_dbg in pwm-stm32-lp.c, thanks to kbuild test robot - Added a couple of fixes to pwm-imx-tpm.c and pwm-sifive.c Changes from v1: - Fixed compilation errors seen when compiling for different archs. v1: - Reworked the change pushed upstream earlier [1] so as to not add an extension to an obsolete API. With this change, pwm_ops->apply() can be used to set pwm_state parameters as usual. [1] https://lore.kernel.org/lkml/20190916140048.GB7488@ulmo/ [2] https://lore.kernel.org/lkml/20200312190859.GA19605@codeaurora.org/ [3] https://www.spinics.net/lists/linux-pwm/msg11906.html [4] https://www.spinics.net/lists/linux-pwm/msg11986.html To: Arnd Bergmann To: David Laight To: Jani Nikula Cc: Alexander Shiyan Cc: Alexandre Torgue Cc: Allison Randal Cc: Arnd Bergmann Cc: Atish Patra Cc: Bartlomiej Zolnierkiewicz Cc: Chen-Yu Tsai Cc: Chris Wilson Cc: Dan Carpenter Cc: Daniel Thompson Cc: Daniel Vetter Cc: David Airlie Cc: David Collins Cc: dri-devel@lists.freedesktop.org Cc: Fabio Estevam Cc: Fabrice Gasnier Cc: Guenter Roeck Cc: intel-gfx@lists.freedesktop.org Cc: Jean Delvare Cc: Jingoo Han Cc: Joe Perches Cc: Joonas Lahtinen Cc: Kamil Debski Cc: Kate Stewart Cc: Lee Jones Cc: Liam Girdwood Cc: linux-clk@vger.kernel.org Cc: linux-fbdev@vger.kernel.org Cc: linux-hwmon@vger.kernel.org Cc: linux-media@vger.kernel.org Cc: linux-pwm@vger.kernel.org Cc: linux-riscv@lists.infradead.org Cc: Mark Brown Cc: Mauro Carvalho Chehab Cc: Maxime Coquelin Cc: Maxime Ripard Cc: Michael Turquette Cc: NXP Linux Team Cc: Palmer Dabbelt Cc: Paul Walmsley Cc: Pengutronix Kernel Team Cc: Philipp Zabel Cc: Richard Fontana Cc: Sascha Hauer Cc: Shawn Guo Cc: Stephen Boyd Cc: Thomas Gleixner Cc: "Ville Syrjälä" Cc: Yash Shah Guru Das Srinagesh (11): drm/i915: Use 64-bit division macro hwmon: pwm-fan: Use 64-bit division macro ir-rx51: Use 64-bit division macro pwm: clps711x: Cast period to u32 before use as divisor pwm: pwm-imx-tpm: Use 64-bit division macro pwm: imx27: Use 64-bit division macro and function pwm: sifive: Use 64-bit division macro pwm: sun4i: Use nsecs_to_jiffies to avoid a division backlight: pwm_bl: Use 64-bit division function clk: pwm: Use 64-bit division function pwm: core: Convert period and duty cycle to u64 drivers/clk/clk-pwm.c | 7 +++- drivers/gpu/drm/i915/display/intel_panel.c | 2 +- drivers/hwmon/pwm-fan.c | 2 +- drivers/media/rc/ir-rx51.c | 3 +- drivers/pwm/core.c | 14 ++++---- drivers/pwm/pwm-clps711x.c | 5 ++- drivers/pwm/pwm-imx-tpm.c | 2 +- drivers/pwm/pwm-imx27.c | 53 +++++++++++++++++++++++++----- drivers/pwm/pwm-sifive.c | 2 +- drivers/pwm/pwm-stm32-lp.c | 2 +- drivers/pwm/pwm-sun4i.c | 2 +- drivers/pwm/sysfs.c | 8 ++--- drivers/video/backlight/pwm_bl.c | 3 +- include/linux/pwm.h | 12 +++---- 14 files changed, 82 insertions(+), 35 deletions(-) -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project From mboxrd@z Thu Jan 1 00:00:00 1970 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=-3.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=no 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 09F2DC54FD0 for ; Wed, 22 Apr 2020 02:57:38 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 D043F20722 for ; Wed, 22 Apr 2020 02:57:37 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="IF2GrVmB" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D043F20722 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-riscv-bounces+infradead-linux-riscv=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id: Content-Transfer-Encoding:Content-Type: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=PbxotYZiNCXyAKJzyrNZae2t98+bnH977L1tj/7XKQQ=; b=IF2GrVmBYqSONQ 4Rd1N23kUynATeMWU5WI9l1Kcouuen4BdbKrox7e+jzuZHrs/fXtO3Vepg16kw3kUdExHMHmCuyua 3CFmKCXJAZO80PLMI3YPrJv109+i8NFM157KkeKuEr7iY6HI+38tsJsRcCq01iKru48fAuvx42kJO 7uC78AW9Ur6tJyC5/B9StLAhrJPF5ffzpxBc20zHLEV3lwu+5gwPkS6qf4HrWWRWvjSu+Q7f7ExXB ZmmPJYCHF+QDx7UE59QfYdTyu95yhGD0uK16HeAT3lUES8YfHUtYBFDTdPz6yKM9CRf6tOutFz3ct Jn9WZjSB2F/Pq/JW4aFQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jR5Zt-00084t-WD; Wed, 22 Apr 2020 02:57:34 +0000 Received: from alexa-out-sd-01.qualcomm.com ([199.106.114.38]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jR5Zp-00082R-BE for linux-riscv@lists.infradead.org; Wed, 22 Apr 2020 02:57:31 +0000 Received: from unknown (HELO ironmsg03-sd.qualcomm.com) ([10.53.140.143]) by alexa-out-sd-01.qualcomm.com with ESMTP; 21 Apr 2020 19:57:28 -0700 Received: from gurus-linux.qualcomm.com ([10.46.162.81]) by ironmsg03-sd.qualcomm.com with ESMTP; 21 Apr 2020 19:57:26 -0700 Received: by gurus-linux.qualcomm.com (Postfix, from userid 383780) id 8A1B94CB2; Tue, 21 Apr 2020 19:57:26 -0700 (PDT) From: Guru Das Srinagesh To: linux-pwm@vger.kernel.org Subject: [PATCH v13 00/11] Convert PWM period and duty cycle to u64 Date: Tue, 21 Apr 2020 19:57:12 -0700 Message-Id: X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200421_195729_963146_D874F94C X-CRM114-Status: GOOD ( 20.73 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kate Stewart , linux-fbdev@vger.kernel.org, David Collins , Liam Girdwood , David Airlie , Michael Turquette , Joonas Lahtinen , Kamil Debski , dri-devel@lists.freedesktop.org, Chris Wilson , Atish Patra , Thierry Reding , linux-riscv@lists.infradead.org, Fabio Estevam , linux-clk@vger.kernel.org, =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Guru Das Srinagesh , Daniel Thompson , Mauro Carvalho Chehab , Alexander Shiyan , Lee Jones , Chen-Yu Tsai , NXP Linux Team , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Philipp Zabel , Sascha Hauer , Guenter Roeck , linux-media@vger.kernel.org, Jean Delvare , Alexandre Torgue , Arnd Bergmann , Bartlomiej Zolnierkiewicz , intel-gfx@lists.freedesktop.org, Maxime Ripard , Mark Brown , Paul Walmsley , Subbaraman Narayanamurthy , Thomas Gleixner , Fabrice Gasnier , Pengutronix Kernel Team , Allison Randal , linux-hwmon@vger.kernel.org, Maxime Coquelin , Richard Fontana , Stephen Boyd , Jingoo Han , linux-kernel@vger.kernel.org, Yash Shah , Palmer Dabbelt , Dan Carpenter , Daniel Vetter , Joe Perches , Shawn Guo Sender: "linux-riscv" Errors-To: linux-riscv-bounces+infradead-linux-riscv=archiver.kernel.org@lists.infradead.org [REQUEST] Would it be possible for the patches that have already received Acked-by's in this series to be accepted and applied to the tree? I lost an Acked-by (in intel-panel.c) because it had a merge conflict with a new change that came in after I rebased to tip. I wasn't sure earlier about accepting single patches as opposed to the entire series en masse, but this event has got me thinking. [COVER LETTER] Because period and duty cycle are defined in the PWM framework structs as ints with units of nanoseconds, the maximum time duration that can be set is limited to ~2.147 seconds. Consequently, applications desiring to set greater time periods via the PWM framework are not be able to do so - like, for instance, causing an LED to blink at an interval of 5 seconds. Redefining the period and duty cycle struct members in the core PWM framework structs as u64 values will enable larger time durations to be set and solve this problem. Such a change to the framework mandates that drivers using these struct members (and corresponding helper functions) also be modified correctly in order to prevent compilation errors. This patch series introduces the changes to all the drivers first, followed by the framework change at the very end so that when the latter is applied, all the drivers are in good shape and there are no compilation errors. Changes from v12: - Rebased to tip of for-next - Collected Acked-by for sun4i - Reworked patch for intel-panel.c due to rebase, dropped Jani's Acked-by as a result Changes from v11: - Rebased to tip of for-next. - Collected "Acked-by:" for v7 (unchanged) of pwm: sifive: [4] - Squished stm32-lp.c change with final patch in series - sun4i: Used nsecs_to_jiffies() - imx27: Added overflow handling logic - clps711x: Corrected the if condition for skipping the division - clk: pwm: Reverted to v8 version, added check to prevent division-by-zero Changes from v10: - Carefully added back all the "Reviewed-by: " and "Acked-by: " tags received so far that had gotten missed in v9. No other changes. Changes from v9: - Gathered the received "Reviewed-by: " tag - Added back the clk-pwm.c patch because kbuild test robot complained [3] and addressed received review comments. - clps711x: Addressed review comments. Changes from v8: - Gathered all received "Acked-by: " and "Reviewed-by: " tags - Dropped patch to clk-pwm.c for reasons mentiond in [2] - Expanded audience of unreviewed patches Changes from v7: - Changed commit messages of all patches to be brief and to the point. - Added explanation of change in cover letter. - Dropped change to pwm-sti.c as upon review it was unnecessary as struct pwm_capture is not being modified in the PWM core. Changes from v6: - Split out the driver changes out into separate patches, one patch per file for ease of reviewing. Changes from v5: - Dropped the conversion of struct pwm_capture to u64 for reasons mentioned in https://www.spinics.net/lists/linux-pwm/msg11541.html Changes from v4: - Split the patch into two: one for changes to the drivers, and the actual switch to u64 for ease of reverting should the need arise. - Re-examined the patch and made the following corrections: * intel_panel.c: DIV64_U64_ROUND_UP -> DIV_ROUND_UP_ULL (as only the numerator would be 64-bit in this case). * pwm-sti.c: do_div -> div_u64 (do_div is optimized only for x86 architectures, and div_u64's comment block suggests to use this as much as possible). Changes from v3: - Rebased to current tip of for-next. Changes from v2: - Fixed %u -> %llu in a dev_dbg in pwm-stm32-lp.c, thanks to kbuild test robot - Added a couple of fixes to pwm-imx-tpm.c and pwm-sifive.c Changes from v1: - Fixed compilation errors seen when compiling for different archs. v1: - Reworked the change pushed upstream earlier [1] so as to not add an extension to an obsolete API. With this change, pwm_ops->apply() can be used to set pwm_state parameters as usual. [1] https://lore.kernel.org/lkml/20190916140048.GB7488@ulmo/ [2] https://lore.kernel.org/lkml/20200312190859.GA19605@codeaurora.org/ [3] https://www.spinics.net/lists/linux-pwm/msg11906.html [4] https://www.spinics.net/lists/linux-pwm/msg11986.html To: Arnd Bergmann To: David Laight To: Jani Nikula Cc: Alexander Shiyan Cc: Alexandre Torgue Cc: Allison Randal Cc: Arnd Bergmann Cc: Atish Patra Cc: Bartlomiej Zolnierkiewicz Cc: Chen-Yu Tsai Cc: Chris Wilson Cc: Dan Carpenter Cc: Daniel Thompson Cc: Daniel Vetter Cc: David Airlie Cc: David Collins Cc: dri-devel@lists.freedesktop.org Cc: Fabio Estevam Cc: Fabrice Gasnier Cc: Guenter Roeck Cc: intel-gfx@lists.freedesktop.org Cc: Jean Delvare Cc: Jingoo Han Cc: Joe Perches Cc: Joonas Lahtinen Cc: Kamil Debski Cc: Kate Stewart Cc: Lee Jones Cc: Liam Girdwood Cc: linux-clk@vger.kernel.org Cc: linux-fbdev@vger.kernel.org Cc: linux-hwmon@vger.kernel.org Cc: linux-media@vger.kernel.org Cc: linux-pwm@vger.kernel.org Cc: linux-riscv@lists.infradead.org Cc: Mark Brown Cc: Mauro Carvalho Chehab Cc: Maxime Coquelin Cc: Maxime Ripard Cc: Michael Turquette Cc: NXP Linux Team Cc: Palmer Dabbelt Cc: Paul Walmsley Cc: Pengutronix Kernel Team Cc: Philipp Zabel Cc: Richard Fontana Cc: Sascha Hauer Cc: Shawn Guo Cc: Stephen Boyd Cc: Thomas Gleixner Cc: "Ville Syrjälä" Cc: Yash Shah Guru Das Srinagesh (11): drm/i915: Use 64-bit division macro hwmon: pwm-fan: Use 64-bit division macro ir-rx51: Use 64-bit division macro pwm: clps711x: Cast period to u32 before use as divisor pwm: pwm-imx-tpm: Use 64-bit division macro pwm: imx27: Use 64-bit division macro and function pwm: sifive: Use 64-bit division macro pwm: sun4i: Use nsecs_to_jiffies to avoid a division backlight: pwm_bl: Use 64-bit division function clk: pwm: Use 64-bit division function pwm: core: Convert period and duty cycle to u64 drivers/clk/clk-pwm.c | 7 +++- drivers/gpu/drm/i915/display/intel_panel.c | 2 +- drivers/hwmon/pwm-fan.c | 2 +- drivers/media/rc/ir-rx51.c | 3 +- drivers/pwm/core.c | 14 ++++---- drivers/pwm/pwm-clps711x.c | 5 ++- drivers/pwm/pwm-imx-tpm.c | 2 +- drivers/pwm/pwm-imx27.c | 53 +++++++++++++++++++++++++----- drivers/pwm/pwm-sifive.c | 2 +- drivers/pwm/pwm-stm32-lp.c | 2 +- drivers/pwm/pwm-sun4i.c | 2 +- drivers/pwm/sysfs.c | 8 ++--- drivers/video/backlight/pwm_bl.c | 3 +- include/linux/pwm.h | 12 +++---- 14 files changed, 82 insertions(+), 35 deletions(-) -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project From mboxrd@z Thu Jan 1 00:00:00 1970 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=-3.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=no 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 30765C55189 for ; Wed, 22 Apr 2020 06:55:57 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 11A45206D9 for ; Wed, 22 Apr 2020 06:55:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 11A45206D9 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 529F46E9CB; Wed, 22 Apr 2020 06:55:00 +0000 (UTC) Received: from alexa-out-sd-02.qualcomm.com (alexa-out-sd-02.qualcomm.com [199.106.114.39]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4FC136E4A7; Wed, 22 Apr 2020 02:57:29 +0000 (UTC) Received: from unknown (HELO ironmsg03-sd.qualcomm.com) ([10.53.140.143]) by alexa-out-sd-02.qualcomm.com with ESMTP; 21 Apr 2020 19:57:28 -0700 Received: from gurus-linux.qualcomm.com ([10.46.162.81]) by ironmsg03-sd.qualcomm.com with ESMTP; 21 Apr 2020 19:57:26 -0700 Received: by gurus-linux.qualcomm.com (Postfix, from userid 383780) id 8A1B94CB2; Tue, 21 Apr 2020 19:57:26 -0700 (PDT) From: Guru Das Srinagesh To: linux-pwm@vger.kernel.org Subject: [PATCH v13 00/11] Convert PWM period and duty cycle to u64 Date: Tue, 21 Apr 2020 19:57:12 -0700 Message-Id: X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Mailman-Approved-At: Wed, 22 Apr 2020 06:54:41 +0000 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kate Stewart , linux-fbdev@vger.kernel.org, David Collins , Liam Girdwood , David Airlie , Michael Turquette , Kamil Debski , dri-devel@lists.freedesktop.org, Chris Wilson , Atish Patra , Thierry Reding , linux-riscv@lists.infradead.org, linux-clk@vger.kernel.org, Guru Das Srinagesh , Daniel Thompson , Mauro Carvalho Chehab , Alexander Shiyan , Lee Jones , Chen-Yu Tsai , NXP Linux Team , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Sascha Hauer , Guenter Roeck , linux-media@vger.kernel.org, Jean Delvare , Alexandre Torgue , Arnd Bergmann , Bartlomiej Zolnierkiewicz , intel-gfx@lists.freedesktop.org, Mark Brown , Paul Walmsley , Subbaraman Narayanamurthy , Thomas Gleixner , Fabrice Gasnier , Pengutronix Kernel Team , Allison Randal , linux-hwmon@vger.kernel.org, Maxime Coquelin , Richard Fontana , Stephen Boyd , Jingoo Han , linux-kernel@vger.kernel.org, Yash Shah , Palmer Dabbelt , Dan Carpenter , Joe Perches , Shawn Guo Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" W1JFUVVFU1RdCgpXb3VsZCBpdCBiZSBwb3NzaWJsZSBmb3IgdGhlIHBhdGNoZXMgdGhhdCBoYXZl IGFscmVhZHkgcmVjZWl2ZWQgQWNrZWQtYnkncyBpbgp0aGlzIHNlcmllcyB0byBiZSBhY2NlcHRl ZCBhbmQgYXBwbGllZCB0byB0aGUgdHJlZT8gSSBsb3N0IGFuIEFja2VkLWJ5IChpbgppbnRlbC1w YW5lbC5jKSBiZWNhdXNlIGl0IGhhZCBhIG1lcmdlIGNvbmZsaWN0IHdpdGggYSBuZXcgY2hhbmdl IHRoYXQgY2FtZSBpbgphZnRlciBJIHJlYmFzZWQgdG8gdGlwLiBJIHdhc24ndCBzdXJlIGVhcmxp ZXIgYWJvdXQgYWNjZXB0aW5nIHNpbmdsZSBwYXRjaGVzIGFzCm9wcG9zZWQgdG8gdGhlIGVudGly ZSBzZXJpZXMgZW4gbWFzc2UsIGJ1dCB0aGlzIGV2ZW50IGhhcyBnb3QgbWUgdGhpbmtpbmcuCgpb Q09WRVIgTEVUVEVSXQoKQmVjYXVzZSBwZXJpb2QgYW5kIGR1dHkgY3ljbGUgYXJlIGRlZmluZWQg aW4gdGhlIFBXTSBmcmFtZXdvcmsgc3RydWN0cyBhcyBpbnRzCndpdGggdW5pdHMgb2YgbmFub3Nl Y29uZHMsIHRoZSBtYXhpbXVtIHRpbWUgZHVyYXRpb24gdGhhdCBjYW4gYmUgc2V0IGlzIGxpbWl0 ZWQKdG8gfjIuMTQ3IHNlY29uZHMuIENvbnNlcXVlbnRseSwgYXBwbGljYXRpb25zIGRlc2lyaW5n IHRvIHNldCBncmVhdGVyIHRpbWUKcGVyaW9kcyB2aWEgdGhlIFBXTSBmcmFtZXdvcmsgYXJlIG5v dCBiZSBhYmxlIHRvIGRvIHNvIC0gbGlrZSwgZm9yIGluc3RhbmNlLApjYXVzaW5nIGFuIExFRCB0 byBibGluayBhdCBhbiBpbnRlcnZhbCBvZiA1IHNlY29uZHMuCgpSZWRlZmluaW5nIHRoZSBwZXJp b2QgYW5kIGR1dHkgY3ljbGUgc3RydWN0IG1lbWJlcnMgaW4gdGhlIGNvcmUgUFdNIGZyYW1ld29y awpzdHJ1Y3RzIGFzIHU2NCB2YWx1ZXMgd2lsbCBlbmFibGUgbGFyZ2VyIHRpbWUgZHVyYXRpb25z IHRvIGJlIHNldCBhbmQgc29sdmUKdGhpcyBwcm9ibGVtLiBTdWNoIGEgY2hhbmdlIHRvIHRoZSBm cmFtZXdvcmsgbWFuZGF0ZXMgdGhhdCBkcml2ZXJzIHVzaW5nIHRoZXNlCnN0cnVjdCBtZW1iZXJz IChhbmQgY29ycmVzcG9uZGluZyBoZWxwZXIgZnVuY3Rpb25zKSBhbHNvIGJlIG1vZGlmaWVkIGNv cnJlY3RseQppbiBvcmRlciB0byBwcmV2ZW50IGNvbXBpbGF0aW9uIGVycm9ycy4KClRoaXMgcGF0 Y2ggc2VyaWVzIGludHJvZHVjZXMgdGhlIGNoYW5nZXMgdG8gYWxsIHRoZSBkcml2ZXJzIGZpcnN0 LCBmb2xsb3dlZCBieQp0aGUgZnJhbWV3b3JrIGNoYW5nZSBhdCB0aGUgdmVyeSBlbmQgc28gdGhh dCB3aGVuIHRoZSBsYXR0ZXIgaXMgYXBwbGllZCwgYWxsCnRoZSBkcml2ZXJzIGFyZSBpbiBnb29k IHNoYXBlIGFuZCB0aGVyZSBhcmUgbm8gY29tcGlsYXRpb24gZXJyb3JzLgoKQ2hhbmdlcyBmcm9t IHYxMjoKICAtIFJlYmFzZWQgdG8gdGlwIG9mIGZvci1uZXh0CiAgLSBDb2xsZWN0ZWQgQWNrZWQt YnkgZm9yIHN1bjRpCiAgLSBSZXdvcmtlZCBwYXRjaCBmb3IgaW50ZWwtcGFuZWwuYyBkdWUgdG8g cmViYXNlLCBkcm9wcGVkIEphbmkncyBBY2tlZC1ieSBhcwogICAgYSByZXN1bHQKCkNoYW5nZXMg ZnJvbSB2MTE6CiAgLSBSZWJhc2VkIHRvIHRpcCBvZiBmb3ItbmV4dC4KICAtIENvbGxlY3RlZCAi QWNrZWQtYnk6IiBmb3IgdjcgKHVuY2hhbmdlZCkgb2YgcHdtOiBzaWZpdmU6IFs0XQogIC0gU3F1 aXNoZWQgc3RtMzItbHAuYyBjaGFuZ2Ugd2l0aCBmaW5hbCBwYXRjaCBpbiBzZXJpZXMKICAtIHN1 bjRpOiBVc2VkIG5zZWNzX3RvX2ppZmZpZXMoKQogIC0gaW14Mjc6IEFkZGVkIG92ZXJmbG93IGhh bmRsaW5nIGxvZ2ljCiAgLSBjbHBzNzExeDogQ29ycmVjdGVkIHRoZSBpZiBjb25kaXRpb24gZm9y IHNraXBwaW5nIHRoZSBkaXZpc2lvbgogIC0gY2xrOiBwd206IFJldmVydGVkIHRvIHY4IHZlcnNp b24sIGFkZGVkIGNoZWNrIHRvIHByZXZlbnQgZGl2aXNpb24tYnktemVybwoKQ2hhbmdlcyBmcm9t IHYxMDoKICAtIENhcmVmdWxseSBhZGRlZCBiYWNrIGFsbCB0aGUgIlJldmlld2VkLWJ5OiAiIGFu ZCAiQWNrZWQtYnk6ICIgdGFncyByZWNlaXZlZAogICAgc28gZmFyIHRoYXQgaGFkIGdvdHRlbiBt aXNzZWQgaW4gdjkuIE5vIG90aGVyIGNoYW5nZXMuCgpDaGFuZ2VzIGZyb20gdjk6CiAgLSBHYXRo ZXJlZCB0aGUgcmVjZWl2ZWQgIlJldmlld2VkLWJ5OiAiIHRhZwogIC0gQWRkZWQgYmFjayB0aGUg Y2xrLXB3bS5jIHBhdGNoIGJlY2F1c2Uga2J1aWxkIHRlc3Qgcm9ib3QgY29tcGxhaW5lZCBbM10K ICAgIGFuZCBhZGRyZXNzZWQgcmVjZWl2ZWQgcmV2aWV3IGNvbW1lbnRzLgogIC0gY2xwczcxMXg6 IEFkZHJlc3NlZCByZXZpZXcgY29tbWVudHMuCgpDaGFuZ2VzIGZyb20gdjg6CiAgLSBHYXRoZXJl ZCBhbGwgcmVjZWl2ZWQgIkFja2VkLWJ5OiAiIGFuZCAiUmV2aWV3ZWQtYnk6ICIgdGFncwogIC0g RHJvcHBlZCBwYXRjaCB0byBjbGstcHdtLmMgZm9yIHJlYXNvbnMgbWVudGlvbmQgaW4gWzJdCiAg LSBFeHBhbmRlZCBhdWRpZW5jZSBvZiB1bnJldmlld2VkIHBhdGNoZXMKCkNoYW5nZXMgZnJvbSB2 NzoKICAtIENoYW5nZWQgY29tbWl0IG1lc3NhZ2VzIG9mIGFsbCBwYXRjaGVzIHRvIGJlIGJyaWVm IGFuZCB0byB0aGUgcG9pbnQuCiAgLSBBZGRlZCBleHBsYW5hdGlvbiBvZiBjaGFuZ2UgaW4gY292 ZXIgbGV0dGVyLgogIC0gRHJvcHBlZCBjaGFuZ2UgdG8gcHdtLXN0aS5jIGFzIHVwb24gcmV2aWV3 IGl0IHdhcyB1bm5lY2Vzc2FyeSBhcyBzdHJ1Y3QKICAgIHB3bV9jYXB0dXJlIGlzIG5vdCBiZWlu ZyBtb2RpZmllZCBpbiB0aGUgUFdNIGNvcmUuCgpDaGFuZ2VzIGZyb20gdjY6CiAgLSBTcGxpdCBv dXQgdGhlIGRyaXZlciBjaGFuZ2VzIG91dCBpbnRvIHNlcGFyYXRlIHBhdGNoZXMsIG9uZSBwYXRj aCBwZXIgZmlsZQogICAgZm9yIGVhc2Ugb2YgcmV2aWV3aW5nLgoKQ2hhbmdlcyBmcm9tIHY1Ogog IC0gRHJvcHBlZCB0aGUgY29udmVyc2lvbiBvZiBzdHJ1Y3QgcHdtX2NhcHR1cmUgdG8gdTY0IGZv ciByZWFzb25zIG1lbnRpb25lZAogICAgaW4gaHR0cHM6Ly93d3cuc3Bpbmljcy5uZXQvbGlzdHMv bGludXgtcHdtL21zZzExNTQxLmh0bWwKCkNoYW5nZXMgZnJvbSB2NDoKICAtIFNwbGl0IHRoZSBw YXRjaCBpbnRvIHR3bzogb25lIGZvciBjaGFuZ2VzIHRvIHRoZSBkcml2ZXJzLCBhbmQgdGhlIGFj dHVhbAogICAgc3dpdGNoIHRvIHU2NCBmb3IgZWFzZSBvZiByZXZlcnRpbmcgc2hvdWxkIHRoZSBu ZWVkIGFyaXNlLgogIC0gUmUtZXhhbWluZWQgdGhlIHBhdGNoIGFuZCBtYWRlIHRoZSBmb2xsb3dp bmcgY29ycmVjdGlvbnM6CiAgICAgICogaW50ZWxfcGFuZWwuYzoKCURJVjY0X1U2NF9ST1VORF9V UCAtPiBESVZfUk9VTkRfVVBfVUxMIChhcyBvbmx5IHRoZSBudW1lcmF0b3Igd291bGQgYmUKCTY0 LWJpdCBpbiB0aGlzIGNhc2UpLgogICAgICAqIHB3bS1zdGkuYzoKCWRvX2RpdiAtPiBkaXZfdTY0 IChkb19kaXYgaXMgb3B0aW1pemVkIG9ubHkgZm9yIHg4NiBhcmNoaXRlY3R1cmVzLCBhbmQKCWRp dl91NjQncyBjb21tZW50IGJsb2NrIHN1Z2dlc3RzIHRvIHVzZSB0aGlzIGFzIG11Y2ggYXMgcG9z c2libGUpLgoKQ2hhbmdlcyBmcm9tIHYzOgogIC0gUmViYXNlZCB0byBjdXJyZW50IHRpcCBvZiBm b3ItbmV4dC4KCkNoYW5nZXMgZnJvbSB2MjoKICAtIEZpeGVkICV1IC0+ICVsbHUgaW4gYSBkZXZf ZGJnIGluIHB3bS1zdG0zMi1scC5jLCB0aGFua3MgdG8ga2J1aWxkIHRlc3Qgcm9ib3QKICAtIEFk ZGVkIGEgY291cGxlIG9mIGZpeGVzIHRvIHB3bS1pbXgtdHBtLmMgYW5kIHB3bS1zaWZpdmUuYwoK Q2hhbmdlcyBmcm9tIHYxOgogIC0gRml4ZWQgY29tcGlsYXRpb24gZXJyb3JzIHNlZW4gd2hlbiBj b21waWxpbmcgZm9yIGRpZmZlcmVudCBhcmNocy4KCnYxOgogIC0gUmV3b3JrZWQgdGhlIGNoYW5n ZSBwdXNoZWQgdXBzdHJlYW0gZWFybGllciBbMV0gc28gYXMgdG8gbm90IGFkZCBhbgogICAgZXh0 ZW5zaW9uIHRvIGFuIG9ic29sZXRlIEFQSS4gV2l0aCB0aGlzIGNoYW5nZSwgcHdtX29wcy0+YXBw bHkoKSBjYW4gYmUKICAgIHVzZWQgdG8gc2V0IHB3bV9zdGF0ZSBwYXJhbWV0ZXJzIGFzIHVzdWFs LgoKWzFdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xrbWwvMjAxOTA5MTYxNDAwNDguR0I3NDg4 QHVsbW8vClsyXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9sa21sLzIwMjAwMzEyMTkwODU5LkdB MTk2MDVAY29kZWF1cm9yYS5vcmcvClszXSBodHRwczovL3d3dy5zcGluaWNzLm5ldC9saXN0cy9s aW51eC1wd20vbXNnMTE5MDYuaHRtbApbNF0gaHR0cHM6Ly93d3cuc3Bpbmljcy5uZXQvbGlzdHMv bGludXgtcHdtL21zZzExOTg2Lmh0bWwKClRvOiBBcm5kIEJlcmdtYW5uIDxhcm5kQGFybmRiLmRl PgpUbzogRGF2aWQgTGFpZ2h0IDxEYXZpZC5MYWlnaHRAQUNVTEFCLkNPTT4KVG86IEphbmkgTmlr dWxhIDxqYW5pLm5pa3VsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBBbGV4YW5kZXIgU2hpeWFuIDxz aGNfd29ya0BtYWlsLnJ1PgpDYzogQWxleGFuZHJlIFRvcmd1ZSA8YWxleGFuZHJlLnRvcmd1ZUBz dC5jb20+CkNjOiBBbGxpc29uIFJhbmRhbCA8YWxsaXNvbkBsb2h1dG9rLm5ldD4KQ2M6IEFybmQg QmVyZ21hbm4gPGFybmRAYXJuZGIuZGU+CkNjOiBBdGlzaCBQYXRyYSA8YXRpc2gucGF0cmFAd2Rj LmNvbT4KQ2M6IEJhcnRsb21pZWogWm9sbmllcmtpZXdpY3ogPGIuem9sbmllcmtpZUBzYW1zdW5n LmNvbT4KQ2M6IENoZW4tWXUgVHNhaSA8d2Vuc0Bjc2llLm9yZz4KQ2M6IENocmlzIFdpbHNvbiA8 Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogRGFuIENhcnBlbnRlciA8ZGFuLmNhcnBlbnRl ckBvcmFjbGUuY29tPgpDYzogRGFuaWVsIFRob21wc29uIDxkYW5pZWwudGhvbXBzb25AbGluYXJv Lm9yZz4KQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbEBmZndsbC5jaD4KQ2M6IERhdmlkIEFpcmxp ZSA8YWlybGllZEBsaW51eC5pZT4KQ2M6IERhdmlkIENvbGxpbnMgPGNvbGxpbnNkQGNvZGVhdXJv cmEub3JnPgpDYzogZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogRmFiaW8gRXN0 ZXZhbSA8ZmVzdGV2YW1AZ21haWwuY29tPgpDYzogRmFicmljZSBHYXNuaWVyIDxmYWJyaWNlLmdh c25pZXJAc3QuY29tPgpDYzogR3VlbnRlciBSb2VjayA8bGludXhAcm9lY2stdXMubmV0PgpDYzog aW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogSmVhbiBEZWx2YXJlIDxqZGVsdmFy ZUBzdXNlLmNvbT4KQ2M6IEppbmdvbyBIYW4gPGppbmdvb2hhbjFAZ21haWwuY29tPgpDYzogSm9l IFBlcmNoZXMgPGpvZUBwZXJjaGVzLmNvbT4KQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxh aHRpbmVuQGxpbnV4LmludGVsLmNvbT4KQ2M6IEthbWlsIERlYnNraSA8a2FtaWxAd3lwYXMub3Jn PgpDYzogS2F0ZSBTdGV3YXJ0IDxrc3Rld2FydEBsaW51eGZvdW5kYXRpb24ub3JnPgpDYzogTGVl IEpvbmVzIDxsZWUuam9uZXNAbGluYXJvLm9yZz4KQ2M6IExpYW0gR2lyZHdvb2QgPGxnaXJkd29v ZEBnbWFpbC5jb20+CkNjOiBsaW51eC1jbGtAdmdlci5rZXJuZWwub3JnCkNjOiBsaW51eC1mYmRl dkB2Z2VyLmtlcm5lbC5vcmcKQ2M6IGxpbnV4LWh3bW9uQHZnZXIua2VybmVsLm9yZwpDYzogbGlu dXgtbWVkaWFAdmdlci5rZXJuZWwub3JnCkNjOiBsaW51eC1wd21Admdlci5rZXJuZWwub3JnCkNj OiBsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCkNjOiBNYXJrIEJyb3duIDxicm9vbmll QGtlcm5lbC5vcmc+CkNjOiBNYXVybyBDYXJ2YWxobyBDaGVoYWIgPG1jaGVoYWJAa2VybmVsLm9y Zz4KQ2M6IE1heGltZSBDb3F1ZWxpbiA8bWNvcXVlbGluLnN0bTMyQGdtYWlsLmNvbT4KQ2M6IE1h eGltZSBSaXBhcmQgPG1yaXBhcmRAa2VybmVsLm9yZz4KQ2M6IE1pY2hhZWwgVHVycXVldHRlIDxt dHVycXVldHRlQGJheWxpYnJlLmNvbT4KQ2M6IE5YUCBMaW51eCBUZWFtIDxsaW51eC1pbXhAbnhw LmNvbT4KQ2M6IFBhbG1lciBEYWJiZWx0IDxwYWxtZXJAZGFiYmVsdC5jb20+CkNjOiBQYXVsIFdh bG1zbGV5IDxwYXVsLndhbG1zbGV5QHNpZml2ZS5jb20+CkNjOiBQZW5ndXRyb25peCBLZXJuZWwg VGVhbSA8a2VybmVsQHBlbmd1dHJvbml4LmRlPgpDYzogUGhpbGlwcCBaYWJlbCA8cC56YWJlbEBw ZW5ndXRyb25peC5kZT4KQ2M6IFJpY2hhcmQgRm9udGFuYSA8cmZvbnRhbmFAcmVkaGF0LmNvbT4K Q2M6IFNhc2NoYSBIYXVlciA8cy5oYXVlckBwZW5ndXRyb25peC5kZT4KQ2M6IFNoYXduIEd1byA8 c2hhd25ndW9Aa2VybmVsLm9yZz4KQ2M6IFN0ZXBoZW4gQm95ZCA8c2JveWRAa2VybmVsLm9yZz4K Q2M6IFRob21hcyBHbGVpeG5lciA8dGdseEBsaW51dHJvbml4LmRlPgpDYzogIlZpbGxlIFN5cmrD pGzDpCIgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpDYzogWWFzaCBTaGFoIDx5YXNo LnNoYWhAc2lmaXZlLmNvbT4KCkd1cnUgRGFzIFNyaW5hZ2VzaCAoMTEpOgogIGRybS9pOTE1OiBV c2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvCiAgaHdtb246IHB3bS1mYW46IFVzZSA2NC1iaXQgZGl2 aXNpb24gbWFjcm8KICBpci1yeDUxOiBVc2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvCiAgcHdtOiBj bHBzNzExeDogQ2FzdCBwZXJpb2QgdG8gdTMyIGJlZm9yZSB1c2UgYXMgZGl2aXNvcgogIHB3bTog cHdtLWlteC10cG06IFVzZSA2NC1iaXQgZGl2aXNpb24gbWFjcm8KICBwd206IGlteDI3OiBVc2Ug NjQtYml0IGRpdmlzaW9uIG1hY3JvIGFuZCBmdW5jdGlvbgogIHB3bTogc2lmaXZlOiBVc2UgNjQt Yml0IGRpdmlzaW9uIG1hY3JvCiAgcHdtOiBzdW40aTogVXNlIG5zZWNzX3RvX2ppZmZpZXMgdG8g YXZvaWQgYSBkaXZpc2lvbgogIGJhY2tsaWdodDogcHdtX2JsOiBVc2UgNjQtYml0IGRpdmlzaW9u IGZ1bmN0aW9uCiAgY2xrOiBwd206IFVzZSA2NC1iaXQgZGl2aXNpb24gZnVuY3Rpb24KICBwd206 IGNvcmU6IENvbnZlcnQgcGVyaW9kIGFuZCBkdXR5IGN5Y2xlIHRvIHU2NAoKIGRyaXZlcnMvY2xr L2Nsay1wd20uYyAgICAgICAgICAgICAgICAgICAgICB8ICA3ICsrKy0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfcGFuZWwuYyB8ICAyICstCiBkcml2ZXJzL2h3bW9uL3B3bS1m YW4uYyAgICAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9tZWRpYS9yYy9pci1yeDUx LmMgICAgICAgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvcHdtL2NvcmUuYyAgICAgICAgICAg ICAgICAgICAgICAgICB8IDE0ICsrKystLS0tCiBkcml2ZXJzL3B3bS9wd20tY2xwczcxMXguYyAg ICAgICAgICAgICAgICAgfCAgNSArKy0KIGRyaXZlcnMvcHdtL3B3bS1pbXgtdHBtLmMgICAgICAg ICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3B3bS9wd20taW14MjcuYyAgICAgICAgICAgICAg ICAgICAgfCA1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KIGRyaXZlcnMvcHdtL3B3 bS1zaWZpdmUuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3B3bS9wd20tc3Rt MzItbHAuYyAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9wd20vcHdtLXN1bjRpLmMg ICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvcHdtL3N5c2ZzLmMgICAgICAgICAg ICAgICAgICAgICAgICB8ICA4ICsrLS0tCiBkcml2ZXJzL3ZpZGVvL2JhY2tsaWdodC9wd21fYmwu YyAgICAgICAgICAgfCAgMyArLQogaW5jbHVkZS9saW51eC9wd20uaCAgICAgICAgICAgICAgICAg ICAgICAgIHwgMTIgKysrLS0tLQogMTQgZmlsZXMgY2hhbmdlZCwgODIgaW5zZXJ0aW9ucygrKSwg MzUgZGVsZXRpb25zKC0pCgotLSAKVGhlIFF1YWxjb21tIElubm92YXRpb24gQ2VudGVyLCBJbmMu IGlzIGEgbWVtYmVyIG9mIHRoZSBDb2RlIEF1cm9yYSBGb3J1bSwKYSBMaW51eCBGb3VuZGF0aW9u IENvbGxhYm9yYXRpdmUgUHJvamVjdApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 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=-3.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=no 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 92B26C54FCB for ; Wed, 22 Apr 2020 16:55:00 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 6D04920706 for ; Wed, 22 Apr 2020 16:55:00 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6D04920706 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 14F436E0B9; Wed, 22 Apr 2020 16:55:00 +0000 (UTC) Received: from alexa-out-sd-02.qualcomm.com (alexa-out-sd-02.qualcomm.com [199.106.114.39]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4FC136E4A7; Wed, 22 Apr 2020 02:57:29 +0000 (UTC) Received: from unknown (HELO ironmsg03-sd.qualcomm.com) ([10.53.140.143]) by alexa-out-sd-02.qualcomm.com with ESMTP; 21 Apr 2020 19:57:28 -0700 Received: from gurus-linux.qualcomm.com ([10.46.162.81]) by ironmsg03-sd.qualcomm.com with ESMTP; 21 Apr 2020 19:57:26 -0700 Received: by gurus-linux.qualcomm.com (Postfix, from userid 383780) id 8A1B94CB2; Tue, 21 Apr 2020 19:57:26 -0700 (PDT) From: Guru Das Srinagesh To: linux-pwm@vger.kernel.org Date: Tue, 21 Apr 2020 19:57:12 -0700 Message-Id: X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Mailman-Approved-At: Wed, 22 Apr 2020 16:53:58 +0000 Subject: [Intel-gfx] [PATCH v13 00/11] Convert PWM period and duty cycle to u64 X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kate Stewart , linux-fbdev@vger.kernel.org, David Collins , Liam Girdwood , David Airlie , Michael Turquette , Kamil Debski , dri-devel@lists.freedesktop.org, Chris Wilson , Atish Patra , linux-riscv@lists.infradead.org, Fabio Estevam , linux-clk@vger.kernel.org, Guru Das Srinagesh , Daniel Thompson , Mauro Carvalho Chehab , Alexander Shiyan , Lee Jones , Chen-Yu Tsai , NXP Linux Team , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Philipp Zabel , Sascha Hauer , Guenter Roeck , linux-media@vger.kernel.org, Jean Delvare , Alexandre Torgue , Arnd Bergmann , Bartlomiej Zolnierkiewicz , intel-gfx@lists.freedesktop.org, Maxime Ripard , Mark Brown , Paul Walmsley , Subbaraman Narayanamurthy , Thomas Gleixner , Fabrice Gasnier , Pengutronix Kernel Team , Allison Randal , linux-hwmon@vger.kernel.org, Maxime Coquelin , Richard Fontana , Stephen Boyd , Jingoo Han , linux-kernel@vger.kernel.org, Yash Shah , Palmer Dabbelt , Dan Carpenter , Joe Perches , Shawn Guo Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" W1JFUVVFU1RdCgpXb3VsZCBpdCBiZSBwb3NzaWJsZSBmb3IgdGhlIHBhdGNoZXMgdGhhdCBoYXZl IGFscmVhZHkgcmVjZWl2ZWQgQWNrZWQtYnkncyBpbgp0aGlzIHNlcmllcyB0byBiZSBhY2NlcHRl ZCBhbmQgYXBwbGllZCB0byB0aGUgdHJlZT8gSSBsb3N0IGFuIEFja2VkLWJ5IChpbgppbnRlbC1w YW5lbC5jKSBiZWNhdXNlIGl0IGhhZCBhIG1lcmdlIGNvbmZsaWN0IHdpdGggYSBuZXcgY2hhbmdl IHRoYXQgY2FtZSBpbgphZnRlciBJIHJlYmFzZWQgdG8gdGlwLiBJIHdhc24ndCBzdXJlIGVhcmxp ZXIgYWJvdXQgYWNjZXB0aW5nIHNpbmdsZSBwYXRjaGVzIGFzCm9wcG9zZWQgdG8gdGhlIGVudGly ZSBzZXJpZXMgZW4gbWFzc2UsIGJ1dCB0aGlzIGV2ZW50IGhhcyBnb3QgbWUgdGhpbmtpbmcuCgpb Q09WRVIgTEVUVEVSXQoKQmVjYXVzZSBwZXJpb2QgYW5kIGR1dHkgY3ljbGUgYXJlIGRlZmluZWQg aW4gdGhlIFBXTSBmcmFtZXdvcmsgc3RydWN0cyBhcyBpbnRzCndpdGggdW5pdHMgb2YgbmFub3Nl Y29uZHMsIHRoZSBtYXhpbXVtIHRpbWUgZHVyYXRpb24gdGhhdCBjYW4gYmUgc2V0IGlzIGxpbWl0 ZWQKdG8gfjIuMTQ3IHNlY29uZHMuIENvbnNlcXVlbnRseSwgYXBwbGljYXRpb25zIGRlc2lyaW5n IHRvIHNldCBncmVhdGVyIHRpbWUKcGVyaW9kcyB2aWEgdGhlIFBXTSBmcmFtZXdvcmsgYXJlIG5v dCBiZSBhYmxlIHRvIGRvIHNvIC0gbGlrZSwgZm9yIGluc3RhbmNlLApjYXVzaW5nIGFuIExFRCB0 byBibGluayBhdCBhbiBpbnRlcnZhbCBvZiA1IHNlY29uZHMuCgpSZWRlZmluaW5nIHRoZSBwZXJp b2QgYW5kIGR1dHkgY3ljbGUgc3RydWN0IG1lbWJlcnMgaW4gdGhlIGNvcmUgUFdNIGZyYW1ld29y awpzdHJ1Y3RzIGFzIHU2NCB2YWx1ZXMgd2lsbCBlbmFibGUgbGFyZ2VyIHRpbWUgZHVyYXRpb25z IHRvIGJlIHNldCBhbmQgc29sdmUKdGhpcyBwcm9ibGVtLiBTdWNoIGEgY2hhbmdlIHRvIHRoZSBm cmFtZXdvcmsgbWFuZGF0ZXMgdGhhdCBkcml2ZXJzIHVzaW5nIHRoZXNlCnN0cnVjdCBtZW1iZXJz IChhbmQgY29ycmVzcG9uZGluZyBoZWxwZXIgZnVuY3Rpb25zKSBhbHNvIGJlIG1vZGlmaWVkIGNv cnJlY3RseQppbiBvcmRlciB0byBwcmV2ZW50IGNvbXBpbGF0aW9uIGVycm9ycy4KClRoaXMgcGF0 Y2ggc2VyaWVzIGludHJvZHVjZXMgdGhlIGNoYW5nZXMgdG8gYWxsIHRoZSBkcml2ZXJzIGZpcnN0 LCBmb2xsb3dlZCBieQp0aGUgZnJhbWV3b3JrIGNoYW5nZSBhdCB0aGUgdmVyeSBlbmQgc28gdGhh dCB3aGVuIHRoZSBsYXR0ZXIgaXMgYXBwbGllZCwgYWxsCnRoZSBkcml2ZXJzIGFyZSBpbiBnb29k IHNoYXBlIGFuZCB0aGVyZSBhcmUgbm8gY29tcGlsYXRpb24gZXJyb3JzLgoKQ2hhbmdlcyBmcm9t IHYxMjoKICAtIFJlYmFzZWQgdG8gdGlwIG9mIGZvci1uZXh0CiAgLSBDb2xsZWN0ZWQgQWNrZWQt YnkgZm9yIHN1bjRpCiAgLSBSZXdvcmtlZCBwYXRjaCBmb3IgaW50ZWwtcGFuZWwuYyBkdWUgdG8g cmViYXNlLCBkcm9wcGVkIEphbmkncyBBY2tlZC1ieSBhcwogICAgYSByZXN1bHQKCkNoYW5nZXMg ZnJvbSB2MTE6CiAgLSBSZWJhc2VkIHRvIHRpcCBvZiBmb3ItbmV4dC4KICAtIENvbGxlY3RlZCAi QWNrZWQtYnk6IiBmb3IgdjcgKHVuY2hhbmdlZCkgb2YgcHdtOiBzaWZpdmU6IFs0XQogIC0gU3F1 aXNoZWQgc3RtMzItbHAuYyBjaGFuZ2Ugd2l0aCBmaW5hbCBwYXRjaCBpbiBzZXJpZXMKICAtIHN1 bjRpOiBVc2VkIG5zZWNzX3RvX2ppZmZpZXMoKQogIC0gaW14Mjc6IEFkZGVkIG92ZXJmbG93IGhh bmRsaW5nIGxvZ2ljCiAgLSBjbHBzNzExeDogQ29ycmVjdGVkIHRoZSBpZiBjb25kaXRpb24gZm9y IHNraXBwaW5nIHRoZSBkaXZpc2lvbgogIC0gY2xrOiBwd206IFJldmVydGVkIHRvIHY4IHZlcnNp b24sIGFkZGVkIGNoZWNrIHRvIHByZXZlbnQgZGl2aXNpb24tYnktemVybwoKQ2hhbmdlcyBmcm9t IHYxMDoKICAtIENhcmVmdWxseSBhZGRlZCBiYWNrIGFsbCB0aGUgIlJldmlld2VkLWJ5OiAiIGFu ZCAiQWNrZWQtYnk6ICIgdGFncyByZWNlaXZlZAogICAgc28gZmFyIHRoYXQgaGFkIGdvdHRlbiBt aXNzZWQgaW4gdjkuIE5vIG90aGVyIGNoYW5nZXMuCgpDaGFuZ2VzIGZyb20gdjk6CiAgLSBHYXRo ZXJlZCB0aGUgcmVjZWl2ZWQgIlJldmlld2VkLWJ5OiAiIHRhZwogIC0gQWRkZWQgYmFjayB0aGUg Y2xrLXB3bS5jIHBhdGNoIGJlY2F1c2Uga2J1aWxkIHRlc3Qgcm9ib3QgY29tcGxhaW5lZCBbM10K ICAgIGFuZCBhZGRyZXNzZWQgcmVjZWl2ZWQgcmV2aWV3IGNvbW1lbnRzLgogIC0gY2xwczcxMXg6 IEFkZHJlc3NlZCByZXZpZXcgY29tbWVudHMuCgpDaGFuZ2VzIGZyb20gdjg6CiAgLSBHYXRoZXJl ZCBhbGwgcmVjZWl2ZWQgIkFja2VkLWJ5OiAiIGFuZCAiUmV2aWV3ZWQtYnk6ICIgdGFncwogIC0g RHJvcHBlZCBwYXRjaCB0byBjbGstcHdtLmMgZm9yIHJlYXNvbnMgbWVudGlvbmQgaW4gWzJdCiAg LSBFeHBhbmRlZCBhdWRpZW5jZSBvZiB1bnJldmlld2VkIHBhdGNoZXMKCkNoYW5nZXMgZnJvbSB2 NzoKICAtIENoYW5nZWQgY29tbWl0IG1lc3NhZ2VzIG9mIGFsbCBwYXRjaGVzIHRvIGJlIGJyaWVm IGFuZCB0byB0aGUgcG9pbnQuCiAgLSBBZGRlZCBleHBsYW5hdGlvbiBvZiBjaGFuZ2UgaW4gY292 ZXIgbGV0dGVyLgogIC0gRHJvcHBlZCBjaGFuZ2UgdG8gcHdtLXN0aS5jIGFzIHVwb24gcmV2aWV3 IGl0IHdhcyB1bm5lY2Vzc2FyeSBhcyBzdHJ1Y3QKICAgIHB3bV9jYXB0dXJlIGlzIG5vdCBiZWlu ZyBtb2RpZmllZCBpbiB0aGUgUFdNIGNvcmUuCgpDaGFuZ2VzIGZyb20gdjY6CiAgLSBTcGxpdCBv dXQgdGhlIGRyaXZlciBjaGFuZ2VzIG91dCBpbnRvIHNlcGFyYXRlIHBhdGNoZXMsIG9uZSBwYXRj aCBwZXIgZmlsZQogICAgZm9yIGVhc2Ugb2YgcmV2aWV3aW5nLgoKQ2hhbmdlcyBmcm9tIHY1Ogog IC0gRHJvcHBlZCB0aGUgY29udmVyc2lvbiBvZiBzdHJ1Y3QgcHdtX2NhcHR1cmUgdG8gdTY0IGZv ciByZWFzb25zIG1lbnRpb25lZAogICAgaW4gaHR0cHM6Ly93d3cuc3Bpbmljcy5uZXQvbGlzdHMv bGludXgtcHdtL21zZzExNTQxLmh0bWwKCkNoYW5nZXMgZnJvbSB2NDoKICAtIFNwbGl0IHRoZSBw YXRjaCBpbnRvIHR3bzogb25lIGZvciBjaGFuZ2VzIHRvIHRoZSBkcml2ZXJzLCBhbmQgdGhlIGFj dHVhbAogICAgc3dpdGNoIHRvIHU2NCBmb3IgZWFzZSBvZiByZXZlcnRpbmcgc2hvdWxkIHRoZSBu ZWVkIGFyaXNlLgogIC0gUmUtZXhhbWluZWQgdGhlIHBhdGNoIGFuZCBtYWRlIHRoZSBmb2xsb3dp bmcgY29ycmVjdGlvbnM6CiAgICAgICogaW50ZWxfcGFuZWwuYzoKCURJVjY0X1U2NF9ST1VORF9V UCAtPiBESVZfUk9VTkRfVVBfVUxMIChhcyBvbmx5IHRoZSBudW1lcmF0b3Igd291bGQgYmUKCTY0 LWJpdCBpbiB0aGlzIGNhc2UpLgogICAgICAqIHB3bS1zdGkuYzoKCWRvX2RpdiAtPiBkaXZfdTY0 IChkb19kaXYgaXMgb3B0aW1pemVkIG9ubHkgZm9yIHg4NiBhcmNoaXRlY3R1cmVzLCBhbmQKCWRp dl91NjQncyBjb21tZW50IGJsb2NrIHN1Z2dlc3RzIHRvIHVzZSB0aGlzIGFzIG11Y2ggYXMgcG9z c2libGUpLgoKQ2hhbmdlcyBmcm9tIHYzOgogIC0gUmViYXNlZCB0byBjdXJyZW50IHRpcCBvZiBm b3ItbmV4dC4KCkNoYW5nZXMgZnJvbSB2MjoKICAtIEZpeGVkICV1IC0+ICVsbHUgaW4gYSBkZXZf ZGJnIGluIHB3bS1zdG0zMi1scC5jLCB0aGFua3MgdG8ga2J1aWxkIHRlc3Qgcm9ib3QKICAtIEFk ZGVkIGEgY291cGxlIG9mIGZpeGVzIHRvIHB3bS1pbXgtdHBtLmMgYW5kIHB3bS1zaWZpdmUuYwoK Q2hhbmdlcyBmcm9tIHYxOgogIC0gRml4ZWQgY29tcGlsYXRpb24gZXJyb3JzIHNlZW4gd2hlbiBj b21waWxpbmcgZm9yIGRpZmZlcmVudCBhcmNocy4KCnYxOgogIC0gUmV3b3JrZWQgdGhlIGNoYW5n ZSBwdXNoZWQgdXBzdHJlYW0gZWFybGllciBbMV0gc28gYXMgdG8gbm90IGFkZCBhbgogICAgZXh0 ZW5zaW9uIHRvIGFuIG9ic29sZXRlIEFQSS4gV2l0aCB0aGlzIGNoYW5nZSwgcHdtX29wcy0+YXBw bHkoKSBjYW4gYmUKICAgIHVzZWQgdG8gc2V0IHB3bV9zdGF0ZSBwYXJhbWV0ZXJzIGFzIHVzdWFs LgoKWzFdIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xrbWwvMjAxOTA5MTYxNDAwNDguR0I3NDg4 QHVsbW8vClsyXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9sa21sLzIwMjAwMzEyMTkwODU5LkdB MTk2MDVAY29kZWF1cm9yYS5vcmcvClszXSBodHRwczovL3d3dy5zcGluaWNzLm5ldC9saXN0cy9s aW51eC1wd20vbXNnMTE5MDYuaHRtbApbNF0gaHR0cHM6Ly93d3cuc3Bpbmljcy5uZXQvbGlzdHMv bGludXgtcHdtL21zZzExOTg2Lmh0bWwKClRvOiBBcm5kIEJlcmdtYW5uIDxhcm5kQGFybmRiLmRl PgpUbzogRGF2aWQgTGFpZ2h0IDxEYXZpZC5MYWlnaHRAQUNVTEFCLkNPTT4KVG86IEphbmkgTmlr dWxhIDxqYW5pLm5pa3VsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBBbGV4YW5kZXIgU2hpeWFuIDxz aGNfd29ya0BtYWlsLnJ1PgpDYzogQWxleGFuZHJlIFRvcmd1ZSA8YWxleGFuZHJlLnRvcmd1ZUBz dC5jb20+CkNjOiBBbGxpc29uIFJhbmRhbCA8YWxsaXNvbkBsb2h1dG9rLm5ldD4KQ2M6IEFybmQg QmVyZ21hbm4gPGFybmRAYXJuZGIuZGU+CkNjOiBBdGlzaCBQYXRyYSA8YXRpc2gucGF0cmFAd2Rj LmNvbT4KQ2M6IEJhcnRsb21pZWogWm9sbmllcmtpZXdpY3ogPGIuem9sbmllcmtpZUBzYW1zdW5n LmNvbT4KQ2M6IENoZW4tWXUgVHNhaSA8d2Vuc0Bjc2llLm9yZz4KQ2M6IENocmlzIFdpbHNvbiA8 Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogRGFuIENhcnBlbnRlciA8ZGFuLmNhcnBlbnRl ckBvcmFjbGUuY29tPgpDYzogRGFuaWVsIFRob21wc29uIDxkYW5pZWwudGhvbXBzb25AbGluYXJv Lm9yZz4KQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbEBmZndsbC5jaD4KQ2M6IERhdmlkIEFpcmxp ZSA8YWlybGllZEBsaW51eC5pZT4KQ2M6IERhdmlkIENvbGxpbnMgPGNvbGxpbnNkQGNvZGVhdXJv cmEub3JnPgpDYzogZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogRmFiaW8gRXN0 ZXZhbSA8ZmVzdGV2YW1AZ21haWwuY29tPgpDYzogRmFicmljZSBHYXNuaWVyIDxmYWJyaWNlLmdh c25pZXJAc3QuY29tPgpDYzogR3VlbnRlciBSb2VjayA8bGludXhAcm9lY2stdXMubmV0PgpDYzog aW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogSmVhbiBEZWx2YXJlIDxqZGVsdmFy ZUBzdXNlLmNvbT4KQ2M6IEppbmdvbyBIYW4gPGppbmdvb2hhbjFAZ21haWwuY29tPgpDYzogSm9l IFBlcmNoZXMgPGpvZUBwZXJjaGVzLmNvbT4KQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxh aHRpbmVuQGxpbnV4LmludGVsLmNvbT4KQ2M6IEthbWlsIERlYnNraSA8a2FtaWxAd3lwYXMub3Jn PgpDYzogS2F0ZSBTdGV3YXJ0IDxrc3Rld2FydEBsaW51eGZvdW5kYXRpb24ub3JnPgpDYzogTGVl IEpvbmVzIDxsZWUuam9uZXNAbGluYXJvLm9yZz4KQ2M6IExpYW0gR2lyZHdvb2QgPGxnaXJkd29v ZEBnbWFpbC5jb20+CkNjOiBsaW51eC1jbGtAdmdlci5rZXJuZWwub3JnCkNjOiBsaW51eC1mYmRl dkB2Z2VyLmtlcm5lbC5vcmcKQ2M6IGxpbnV4LWh3bW9uQHZnZXIua2VybmVsLm9yZwpDYzogbGlu dXgtbWVkaWFAdmdlci5rZXJuZWwub3JnCkNjOiBsaW51eC1wd21Admdlci5rZXJuZWwub3JnCkNj OiBsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCkNjOiBNYXJrIEJyb3duIDxicm9vbmll QGtlcm5lbC5vcmc+CkNjOiBNYXVybyBDYXJ2YWxobyBDaGVoYWIgPG1jaGVoYWJAa2VybmVsLm9y Zz4KQ2M6IE1heGltZSBDb3F1ZWxpbiA8bWNvcXVlbGluLnN0bTMyQGdtYWlsLmNvbT4KQ2M6IE1h eGltZSBSaXBhcmQgPG1yaXBhcmRAa2VybmVsLm9yZz4KQ2M6IE1pY2hhZWwgVHVycXVldHRlIDxt dHVycXVldHRlQGJheWxpYnJlLmNvbT4KQ2M6IE5YUCBMaW51eCBUZWFtIDxsaW51eC1pbXhAbnhw LmNvbT4KQ2M6IFBhbG1lciBEYWJiZWx0IDxwYWxtZXJAZGFiYmVsdC5jb20+CkNjOiBQYXVsIFdh bG1zbGV5IDxwYXVsLndhbG1zbGV5QHNpZml2ZS5jb20+CkNjOiBQZW5ndXRyb25peCBLZXJuZWwg VGVhbSA8a2VybmVsQHBlbmd1dHJvbml4LmRlPgpDYzogUGhpbGlwcCBaYWJlbCA8cC56YWJlbEBw ZW5ndXRyb25peC5kZT4KQ2M6IFJpY2hhcmQgRm9udGFuYSA8cmZvbnRhbmFAcmVkaGF0LmNvbT4K Q2M6IFNhc2NoYSBIYXVlciA8cy5oYXVlckBwZW5ndXRyb25peC5kZT4KQ2M6IFNoYXduIEd1byA8 c2hhd25ndW9Aa2VybmVsLm9yZz4KQ2M6IFN0ZXBoZW4gQm95ZCA8c2JveWRAa2VybmVsLm9yZz4K Q2M6IFRob21hcyBHbGVpeG5lciA8dGdseEBsaW51dHJvbml4LmRlPgpDYzogIlZpbGxlIFN5cmrD pGzDpCIgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpDYzogWWFzaCBTaGFoIDx5YXNo LnNoYWhAc2lmaXZlLmNvbT4KCkd1cnUgRGFzIFNyaW5hZ2VzaCAoMTEpOgogIGRybS9pOTE1OiBV c2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvCiAgaHdtb246IHB3bS1mYW46IFVzZSA2NC1iaXQgZGl2 aXNpb24gbWFjcm8KICBpci1yeDUxOiBVc2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvCiAgcHdtOiBj bHBzNzExeDogQ2FzdCBwZXJpb2QgdG8gdTMyIGJlZm9yZSB1c2UgYXMgZGl2aXNvcgogIHB3bTog cHdtLWlteC10cG06IFVzZSA2NC1iaXQgZGl2aXNpb24gbWFjcm8KICBwd206IGlteDI3OiBVc2Ug NjQtYml0IGRpdmlzaW9uIG1hY3JvIGFuZCBmdW5jdGlvbgogIHB3bTogc2lmaXZlOiBVc2UgNjQt Yml0IGRpdmlzaW9uIG1hY3JvCiAgcHdtOiBzdW40aTogVXNlIG5zZWNzX3RvX2ppZmZpZXMgdG8g YXZvaWQgYSBkaXZpc2lvbgogIGJhY2tsaWdodDogcHdtX2JsOiBVc2UgNjQtYml0IGRpdmlzaW9u IGZ1bmN0aW9uCiAgY2xrOiBwd206IFVzZSA2NC1iaXQgZGl2aXNpb24gZnVuY3Rpb24KICBwd206 IGNvcmU6IENvbnZlcnQgcGVyaW9kIGFuZCBkdXR5IGN5Y2xlIHRvIHU2NAoKIGRyaXZlcnMvY2xr L2Nsay1wd20uYyAgICAgICAgICAgICAgICAgICAgICB8ICA3ICsrKy0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfcGFuZWwuYyB8ICAyICstCiBkcml2ZXJzL2h3bW9uL3B3bS1m YW4uYyAgICAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9tZWRpYS9yYy9pci1yeDUx LmMgICAgICAgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvcHdtL2NvcmUuYyAgICAgICAgICAg ICAgICAgICAgICAgICB8IDE0ICsrKystLS0tCiBkcml2ZXJzL3B3bS9wd20tY2xwczcxMXguYyAg ICAgICAgICAgICAgICAgfCAgNSArKy0KIGRyaXZlcnMvcHdtL3B3bS1pbXgtdHBtLmMgICAgICAg ICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3B3bS9wd20taW14MjcuYyAgICAgICAgICAgICAg ICAgICAgfCA1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KIGRyaXZlcnMvcHdtL3B3 bS1zaWZpdmUuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3B3bS9wd20tc3Rt MzItbHAuYyAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9wd20vcHdtLXN1bjRpLmMg ICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvcHdtL3N5c2ZzLmMgICAgICAgICAg ICAgICAgICAgICAgICB8ICA4ICsrLS0tCiBkcml2ZXJzL3ZpZGVvL2JhY2tsaWdodC9wd21fYmwu YyAgICAgICAgICAgfCAgMyArLQogaW5jbHVkZS9saW51eC9wd20uaCAgICAgICAgICAgICAgICAg ICAgICAgIHwgMTIgKysrLS0tLQogMTQgZmlsZXMgY2hhbmdlZCwgODIgaW5zZXJ0aW9ucygrKSwg MzUgZGVsZXRpb25zKC0pCgotLSAKVGhlIFF1YWxjb21tIElubm92YXRpb24gQ2VudGVyLCBJbmMu IGlzIGEgbWVtYmVyIG9mIHRoZSBDb2RlIEF1cm9yYSBGb3J1bSwKYSBMaW51eCBGb3VuZGF0aW9u IENvbGxhYm9yYXRpdmUgUHJvamVjdApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK