From mboxrd@z Thu Jan 1 00:00:00 1970 From: Guru Das Srinagesh Subject: [PATCH v8 00/12] Convert PWM period and duty cycle to u64 Date: Tue, 10 Mar 2020 18:41:09 -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 , Daniel Vetter , linux-fbdev@vger.kernel.org, David Airlie , Michael Turquette , Joonas Lahtinen , Kamil Debski , dri-devel@lists.freedesktop.org, Liam Girdwood , Atish Patra , Thierry Reding , linux-riscv@lists.infradead.org, Lee Jones , linux-clk@vger.kernel.org, =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Alexandre Torgue , Guru Das Srinagesh , Daniel Thompson , Mauro Carvalho Chehab , Alexander Shiyan , Fabio Estevam , Chen-Yu Tsai NXP Linux Team List-Id: linux-pwm@vger.kernel.org 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 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/ Cc: Lee Jones Cc: Daniel Thompson Cc: Jingoo Han Cc: Bartlomiej Zolnierkiewicz Cc: linux-fbdev@vger.kernel.org Cc: Maxime Ripard Cc: Chen-Yu Tsai Cc: Philipp Zabel Cc: Fabrice Gasnier Cc: Maxime Coquelin Cc: Alexandre Torgue Cc: Palmer Dabbelt Cc: Paul Walmsley Cc: linux-riscv@lists.infradead.org Cc: Yash Shah Cc: Atish Patra Cc: Shawn Guo Cc: Sascha Hauer Cc: Pengutronix Kernel Team Cc: Fabio Estevam Cc: NXP Linux Team Cc: Sascha Hauer Cc: Pengutronix Kernel Team Cc: Fabio Estevam Cc: NXP Linux Team Cc: Alexander Shiyan Cc: Mauro Carvalho Chehab Cc: Richard Fontana Cc: Thomas Gleixner Cc: Kate Stewart Cc: Allison Randal Cc: linux-media@vger.kernel.org Cc: Kamil Debski Cc: Bartlomiej Zolnierkiewicz Cc: Jean Delvare Cc: Guenter Roeck Cc: Liam Girdwood Cc: Mark Brown Cc: linux-hwmon@vger.kernel.org Cc: Jani Nikula Cc: Joonas Lahtinen Cc: David Airlie Cc: Daniel Vetter Cc: Chris Wilson Cc: "Ville Syrjälä" Cc: intel-gfx@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org Cc: Michael Turquette Cc: Stephen Boyd Cc: linux-clk@vger.kernel.org Guru Das Srinagesh (12): clk: pwm: Use 64-bit division function drm/i915: Use 64-bit division macro hwmon: pwm-fan: Use 64-bit division macro ir-rx51: Use 64-bit division macro pwm: clps711x: Use 64-bit division macro 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: stm32-lp: Use %llu format specifier for period pwm: sun4i: Use 64-bit division function backlight: pwm_bl: Use 64-bit division function pwm: core: Convert period and duty cycle to u64 drivers/clk/clk-pwm.c | 2 +- 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 | 4 ++-- drivers/pwm/pwm-clps711x.c | 2 +- drivers/pwm/pwm-imx-tpm.c | 2 +- drivers/pwm/pwm-imx27.c | 5 ++--- 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, 26 insertions(+), 25 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,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 CE79FC18E5B for ; Wed, 11 Mar 2020 01:41:34 +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 9B21E208C3 for ; Wed, 11 Mar 2020 01:41:34 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="eZ0gewG6" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9B21E208C3 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=jD7Lo4Eh7t5upJLyapxu9l15pFMeRjK9Qs/t3dP1pDo=; b=eZ0gewG6Hhvm0H Anien+CrY5Z8UfgVLDR9YPiWAaqyTjNXi/u8+okZdK+v8iF5B8n4YBJ3hZftA6CJPjoSUImsbKW8a tuSYXEIVE21g+c1J4pMPdHiWLBEqRPQNRm27YWoEaV21jZEab4+NvckVuEgyktOtLN/9gOt54wKyQ qTY5mEfuazxNRMrZLP9bRy7PFsH/mqMH2a2iyB3N0IN4FMkDYwenEuSU9+yRS5pF4Ax1IRY45x8Cd PftoawIrC1MoozIaynRMyrsbZSoDih+/OZyN88i/V3xItEU0elTvX8gUYvcHtv3vwfaVjFgyXLe22 W4LJUu/0U15I6k4Bc13Q==; 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 1jBqNG-0004md-Mb; Wed, 11 Mar 2020 01:41:30 +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 1jBqND-0004lF-O1 for linux-riscv@lists.infradead.org; Wed, 11 Mar 2020 01:41:29 +0000 Received: from unknown (HELO ironmsg03-sd.qualcomm.com) ([10.53.140.143]) by alexa-out-sd-01.qualcomm.com with ESMTP; 10 Mar 2020 18:41:24 -0700 Received: from gurus-linux.qualcomm.com ([10.46.162.81]) by ironmsg03-sd.qualcomm.com with ESMTP; 10 Mar 2020 18:41:23 -0700 Received: by gurus-linux.qualcomm.com (Postfix, from userid 383780) id B8A844AEB; Tue, 10 Mar 2020 18:41:23 -0700 (PDT) From: Guru Das Srinagesh To: linux-pwm@vger.kernel.org Subject: [PATCH v8 00/12] Convert PWM period and duty cycle to u64 Date: Tue, 10 Mar 2020 18:41:09 -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-20200310_184127_804017_9C4C62B4 X-CRM114-Status: GOOD ( 18.85 ) 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 , Daniel Vetter , linux-fbdev@vger.kernel.org, David Airlie , Michael Turquette , Joonas Lahtinen , Kamil Debski , dri-devel@lists.freedesktop.org, Liam Girdwood , Atish Patra , Thierry Reding , linux-riscv@lists.infradead.org, Lee Jones , linux-clk@vger.kernel.org, =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Alexandre Torgue , Guru Das Srinagesh , Daniel Thompson , Mauro Carvalho Chehab , Alexander Shiyan , Fabio Estevam , Chen-Yu Tsai , NXP Linux Team , intel-gfx@lists.freedesktop.org, Guenter Roeck , linux-media@vger.kernel.org, Jean Delvare , Maxime Coquelin , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Bartlomiej Zolnierkiewicz , Sascha Hauer , Maxime Ripard , Mark Brown , Jani Nikula , Paul Walmsley , Subbaraman Narayanamurthy , Thomas Gleixner , Fabrice Gasnier , Pengutronix Kernel Team , Allison Randal , linux-hwmon@vger.kernel.org, Chris Wilson , Richard Fontana , Stephen Boyd , Jingoo Han , linux-kernel@vger.kernel.org, Yash Shah , Palmer Dabbelt , Philipp Zabel , Shawn Guo Sender: "linux-riscv" Errors-To: linux-riscv-bounces+infradead-linux-riscv=archiver.kernel.org@lists.infradead.org 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 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/ Cc: Lee Jones Cc: Daniel Thompson Cc: Jingoo Han Cc: Bartlomiej Zolnierkiewicz Cc: linux-fbdev@vger.kernel.org Cc: Maxime Ripard Cc: Chen-Yu Tsai Cc: Philipp Zabel Cc: Fabrice Gasnier Cc: Maxime Coquelin Cc: Alexandre Torgue Cc: Palmer Dabbelt Cc: Paul Walmsley Cc: linux-riscv@lists.infradead.org Cc: Yash Shah Cc: Atish Patra Cc: Shawn Guo Cc: Sascha Hauer Cc: Pengutronix Kernel Team Cc: Fabio Estevam Cc: NXP Linux Team Cc: Sascha Hauer Cc: Pengutronix Kernel Team Cc: Fabio Estevam Cc: NXP Linux Team Cc: Alexander Shiyan Cc: Mauro Carvalho Chehab Cc: Richard Fontana Cc: Thomas Gleixner Cc: Kate Stewart Cc: Allison Randal Cc: linux-media@vger.kernel.org Cc: Kamil Debski Cc: Bartlomiej Zolnierkiewicz Cc: Jean Delvare Cc: Guenter Roeck Cc: Liam Girdwood Cc: Mark Brown Cc: linux-hwmon@vger.kernel.org Cc: Jani Nikula Cc: Joonas Lahtinen Cc: David Airlie Cc: Daniel Vetter Cc: Chris Wilson Cc: "Ville Syrjälä" Cc: intel-gfx@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org Cc: Michael Turquette Cc: Stephen Boyd Cc: linux-clk@vger.kernel.org Guru Das Srinagesh (12): clk: pwm: Use 64-bit division function drm/i915: Use 64-bit division macro hwmon: pwm-fan: Use 64-bit division macro ir-rx51: Use 64-bit division macro pwm: clps711x: Use 64-bit division macro 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: stm32-lp: Use %llu format specifier for period pwm: sun4i: Use 64-bit division function backlight: pwm_bl: Use 64-bit division function pwm: core: Convert period and duty cycle to u64 drivers/clk/clk-pwm.c | 2 +- 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 | 4 ++-- drivers/pwm/pwm-clps711x.c | 2 +- drivers/pwm/pwm-imx-tpm.c | 2 +- drivers/pwm/pwm-imx27.c | 5 ++--- 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, 26 insertions(+), 25 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=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,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 E7F59C10F29 for ; Wed, 11 Mar 2020 08:32:55 +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 C9FAB20848 for ; Wed, 11 Mar 2020 08:32:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C9FAB20848 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 254096E929; Wed, 11 Mar 2020 08:32:42 +0000 (UTC) Received: from alexa-out-sd-01.qualcomm.com (alexa-out-sd-01.qualcomm.com [199.106.114.38]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1D50B6E3F3; Wed, 11 Mar 2020 01:41:26 +0000 (UTC) Received: from unknown (HELO ironmsg03-sd.qualcomm.com) ([10.53.140.143]) by alexa-out-sd-01.qualcomm.com with ESMTP; 10 Mar 2020 18:41:24 -0700 Received: from gurus-linux.qualcomm.com ([10.46.162.81]) by ironmsg03-sd.qualcomm.com with ESMTP; 10 Mar 2020 18:41:23 -0700 Received: by gurus-linux.qualcomm.com (Postfix, from userid 383780) id B8A844AEB; Tue, 10 Mar 2020 18:41:23 -0700 (PDT) From: Guru Das Srinagesh To: linux-pwm@vger.kernel.org Subject: [PATCH v8 00/12] Convert PWM period and duty cycle to u64 Date: Tue, 10 Mar 2020 18:41:09 -0700 Message-Id: X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Mailman-Approved-At: Wed, 11 Mar 2020 08:32: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 Airlie , Michael Turquette , Kamil Debski , dri-devel@lists.freedesktop.org, Liam Girdwood , Atish Patra , Thierry Reding , linux-riscv@lists.infradead.org, Lee Jones , linux-clk@vger.kernel.org, Alexandre Torgue , Guru Das Srinagesh , Daniel Thompson , Mauro Carvalho Chehab , Alexander Shiyan , Chen-Yu Tsai , NXP Linux Team , intel-gfx@lists.freedesktop.org, Guenter Roeck , linux-media@vger.kernel.org, Jean Delvare , Maxime Coquelin , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Bartlomiej Zolnierkiewicz , Sascha Hauer , Mark Brown , Paul Walmsley , Subbaraman Narayanamurthy , Thomas Gleixner , Fabrice Gasnier , Pengutronix Kernel Team , Allison Randal , linux-hwmon@vger.kernel.org, Richard Fontana , Stephen Boyd , Jingoo Han , linux-kernel@vger.kernel.org, Yash Shah , Palmer Dabbelt , Shawn Guo Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" QmVjYXVzZSBwZXJpb2QgYW5kIGR1dHkgY3ljbGUgYXJlIGRlZmluZWQgaW4gdGhlIFBXTSBmcmFt ZXdvcmsgc3RydWN0cyBhcyBpbnRzCndpdGggdW5pdHMgb2YgbmFub3NlY29uZHMsIHRoZSBtYXhp bXVtIHRpbWUgZHVyYXRpb24gdGhhdCBjYW4gYmUgc2V0IGlzIGxpbWl0ZWQKdG8gfjIuMTQ3IHNl Y29uZHMuIENvbnNlcXVlbnRseSwgYXBwbGljYXRpb25zIGRlc2lyaW5nIHRvIHNldCBncmVhdGVy IHRpbWUKcGVyaW9kcyB2aWEgdGhlIFBXTSBmcmFtZXdvcmsgYXJlIG5vdCBiZSBhYmxlIHRvIGRv IHNvIC0gbGlrZSwgZm9yIGluc3RhbmNlLApjYXVzaW5nIGFuIExFRCB0byBibGluayBhdCBhbiBp bnRlcnZhbCBvZiA1IHNlY29uZHMuCgpSZWRlZmluaW5nIHRoZSBwZXJpb2QgYW5kIGR1dHkgY3lj bGUgc3RydWN0IG1lbWJlcnMgaW4gdGhlIGNvcmUgUFdNIGZyYW1ld29yawpzdHJ1Y3RzIGFzIHU2 NCB2YWx1ZXMgd2lsbCBlbmFibGUgbGFyZ2VyIHRpbWUgZHVyYXRpb25zIHRvIGJlIHNldCBhbmQg c29sdmUKdGhpcyBwcm9ibGVtLiBTdWNoIGEgY2hhbmdlIHRvIHRoZSBmcmFtZXdvcmsgbWFuZGF0 ZXMgdGhhdCBkcml2ZXJzIHVzaW5nIHRoZXNlCnN0cnVjdCBtZW1iZXJzIChhbmQgY29ycmVzcG9u ZGluZyBoZWxwZXIgZnVuY3Rpb25zKSBhbHNvIGJlIG1vZGlmaWVkIGNvcnJlY3RseQppbiBvcmRl ciB0byBwcmV2ZW50IGNvbXBpbGF0aW9uIGVycm9ycy4KClRoaXMgcGF0Y2ggc2VyaWVzIGludHJv ZHVjZXMgdGhlIGNoYW5nZXMgdG8gYWxsIHRoZSBkcml2ZXJzIGZpcnN0LCBmb2xsb3dlZCBieQp0 aGUgZnJhbWV3b3JrIGNoYW5nZSBhdCB0aGUgdmVyeSBlbmQgc28gdGhhdCB3aGVuIHRoZSBsYXR0 ZXIgaXMgYXBwbGllZCwgYWxsCnRoZSBkcml2ZXJzIGFyZSBpbiBnb29kIHNoYXBlIGFuZCB0aGVy ZSBhcmUgbm8gY29tcGlsYXRpb24gZXJyb3JzLgoKCgpDaGFuZ2VzIGZyb20gdjc6CiAgLSBDaGFu Z2VkIGNvbW1pdCBtZXNzYWdlcyBvZiBhbGwgcGF0Y2hlcyB0byBiZSBicmllZiBhbmQgdG8gdGhl IHBvaW50LgogIC0gQWRkZWQgZXhwbGFuYXRpb24gb2YgY2hhbmdlIGluIGNvdmVyIGxldHRlci4K ICAtIERyb3BwZWQgY2hhbmdlIHRvIHB3bS1zdGkuYyBhcyB1cG9uIHJldmlldyBpdCB3YXMgdW5u ZWNlc3NhcnkgYXMgc3RydWN0CiAgICBwd21fY2FwdHVyZSBpcyBub3QgYmVpbmcgbW9kaWZpZWQg aW4gdGhlIFBXTSBjb3JlLgoKQ2hhbmdlcyBmcm9tIHY2OgogIC0gU3BsaXQgb3V0IHRoZSBkcml2 ZXIgY2hhbmdlcyBvdXQgaW50byBzZXBhcmF0ZSBwYXRjaGVzLCBvbmUgcGF0Y2ggcGVyIGZpbGUK ICAgIGZvciBlYXNlIG9mIHJldmlld2luZy4KCkNoYW5nZXMgZnJvbSB2NToKICAtIERyb3BwZWQg dGhlIGNvbnZlcnNpb24gb2Ygc3RydWN0IHB3bV9jYXB0dXJlIHRvIHU2NCBmb3IgcmVhc29ucyBt ZW50aW9uZWQKICAgIGluIGh0dHBzOi8vd3d3LnNwaW5pY3MubmV0L2xpc3RzL2xpbnV4LXB3bS9t c2cxMTU0MS5odG1sCgpDaGFuZ2VzIGZyb20gdjQ6CiAgLSBTcGxpdCB0aGUgcGF0Y2ggaW50byB0 d286IG9uZSBmb3IgY2hhbmdlcyB0byB0aGUgZHJpdmVycywgYW5kIHRoZSBhY3R1YWwKICAgIHN3 aXRjaCB0byB1NjQgZm9yIGVhc2Ugb2YgcmV2ZXJ0aW5nIHNob3VsZCB0aGUgbmVlZCBhcmlzZS4K ICAtIFJlLWV4YW1pbmVkIHRoZSBwYXRjaCBhbmQgbWFkZSB0aGUgZm9sbG93aW5nIGNvcnJlY3Rp b25zOgogICAgICAqIGludGVsX3BhbmVsLmM6CglESVY2NF9VNjRfUk9VTkRfVVAgLT4gRElWX1JP VU5EX1VQX1VMTCAoYXMgb25seSB0aGUgbnVtZXJhdG9yIHdvdWxkIGJlCgk2NC1iaXQgaW4gdGhp cyBjYXNlKS4KICAgICAgKiBwd20tc3RpLmM6Cglkb19kaXYgLT4gZGl2X3U2NCAoZG9fZGl2IGlz IG9wdGltaXplZCBvbmx5IGZvciB4ODYgYXJjaGl0ZWN0dXJlcywgYW5kCglkaXZfdTY0J3MgY29t bWVudCBibG9jayBzdWdnZXN0cyB0byB1c2UgdGhpcyBhcyBtdWNoIGFzIHBvc3NpYmxlKS4KCkNo YW5nZXMgZnJvbSB2MzoKICAtIFJlYmFzZWQgdG8gY3VycmVudCB0aXAgb2YgZm9yLW5leHQuCgpD aGFuZ2VzIGZyb20gdjI6CiAgLSBGaXhlZCAldSAtPiAlbGx1IGluIGEgZGV2X2RiZyBpbiBwd20t c3RtMzItbHAuYywgdGhhbmtzIHRvIGtidWlsZCB0ZXN0IHJvYm90CiAgLSBBZGRlZCBhIGNvdXBs ZSBvZiBmaXhlcyB0byBwd20taW14LXRwbS5jIGFuZCBwd20tc2lmaXZlLmMKCkNoYW5nZXMgZnJv bSB2MToKICAtIEZpeGVkIGNvbXBpbGF0aW9uIGVycm9ycyBzZWVuIHdoZW4gY29tcGlsaW5nIGZv ciBkaWZmZXJlbnQgYXJjaHMuCgp2MToKICAtIFJld29ya2VkIHRoZSBjaGFuZ2UgcHVzaGVkIHVw c3RyZWFtIGVhcmxpZXIgWzFdIHNvIGFzIHRvIG5vdCBhZGQgYW4KICAgIGV4dGVuc2lvbiB0byBh biBvYnNvbGV0ZSBBUEkuIFdpdGggdGhpcyBjaGFuZ2UsIHB3bV9vcHMtPmFwcGx5KCkgY2FuIGJl CiAgICB1c2VkIHRvIHNldCBwd21fc3RhdGUgcGFyYW1ldGVycyBhcyB1c3VhbC4KICAgIFsxXSBo dHRwczovL2xvcmUua2VybmVsLm9yZy9sa21sLzIwMTkwOTE2MTQwMDQ4LkdCNzQ4OEB1bG1vLwoK CgpDYzogTGVlIEpvbmVzIDxsZWUuam9uZXNAbGluYXJvLm9yZz4KQ2M6IERhbmllbCBUaG9tcHNv biA8ZGFuaWVsLnRob21wc29uQGxpbmFyby5vcmc+CkNjOiBKaW5nb28gSGFuIDxqaW5nb29oYW4x QGdtYWlsLmNvbT4KQ2M6IEJhcnRsb21pZWogWm9sbmllcmtpZXdpY3ogPGIuem9sbmllcmtpZUBz YW1zdW5nLmNvbT4KQ2M6IGxpbnV4LWZiZGV2QHZnZXIua2VybmVsLm9yZwpDYzogTWF4aW1lIFJp cGFyZCA8bXJpcGFyZEBrZXJuZWwub3JnPgpDYzogQ2hlbi1ZdSBUc2FpIDx3ZW5zQGNzaWUub3Jn PgpDYzogUGhpbGlwcCBaYWJlbCA8cC56YWJlbEBwZW5ndXRyb25peC5kZT4KQ2M6IEZhYnJpY2Ug R2FzbmllciA8ZmFicmljZS5nYXNuaWVyQHN0LmNvbT4KQ2M6IE1heGltZSBDb3F1ZWxpbiA8bWNv cXVlbGluLnN0bTMyQGdtYWlsLmNvbT4KQ2M6IEFsZXhhbmRyZSBUb3JndWUgPGFsZXhhbmRyZS50 b3JndWVAc3QuY29tPgpDYzogUGFsbWVyIERhYmJlbHQgPHBhbG1lckBkYWJiZWx0LmNvbT4KQ2M6 IFBhdWwgV2FsbXNsZXkgPHBhdWwud2FsbXNsZXlAc2lmaXZlLmNvbT4KQ2M6IGxpbnV4LXJpc2N2 QGxpc3RzLmluZnJhZGVhZC5vcmcKQ2M6IFlhc2ggU2hhaCA8eWFzaC5zaGFoQHNpZml2ZS5jb20+ CkNjOiBBdGlzaCBQYXRyYSA8YXRpc2gucGF0cmFAd2RjLmNvbT4KQ2M6IFNoYXduIEd1byA8c2hh d25ndW9Aa2VybmVsLm9yZz4KQ2M6IFNhc2NoYSBIYXVlciA8cy5oYXVlckBwZW5ndXRyb25peC5k ZT4KQ2M6IFBlbmd1dHJvbml4IEtlcm5lbCBUZWFtIDxrZXJuZWxAcGVuZ3V0cm9uaXguZGU+CkNj OiBGYWJpbyBFc3RldmFtIDxmZXN0ZXZhbUBnbWFpbC5jb20+CkNjOiBOWFAgTGludXggVGVhbSA8 bGludXgtaW14QG54cC5jb20+CkNjOiBTYXNjaGEgSGF1ZXIgPHMuaGF1ZXJAcGVuZ3V0cm9uaXgu ZGU+CkNjOiBQZW5ndXRyb25peCBLZXJuZWwgVGVhbSA8a2VybmVsQHBlbmd1dHJvbml4LmRlPgpD YzogRmFiaW8gRXN0ZXZhbSA8ZmVzdGV2YW1AZ21haWwuY29tPgpDYzogTlhQIExpbnV4IFRlYW0g PGxpbnV4LWlteEBueHAuY29tPgpDYzogQWxleGFuZGVyIFNoaXlhbiA8c2hjX3dvcmtAbWFpbC5y dT4KQ2M6IE1hdXJvIENhcnZhbGhvIENoZWhhYiA8bWNoZWhhYkBrZXJuZWwub3JnPgpDYzogUmlj aGFyZCBGb250YW5hIDxyZm9udGFuYUByZWRoYXQuY29tPgpDYzogVGhvbWFzIEdsZWl4bmVyIDx0 Z2x4QGxpbnV0cm9uaXguZGU+CkNjOiBLYXRlIFN0ZXdhcnQgPGtzdGV3YXJ0QGxpbnV4Zm91bmRh dGlvbi5vcmc+CkNjOiBBbGxpc29uIFJhbmRhbCA8YWxsaXNvbkBsb2h1dG9rLm5ldD4KQ2M6IGxp bnV4LW1lZGlhQHZnZXIua2VybmVsLm9yZwpDYzogS2FtaWwgRGVic2tpIDxrYW1pbEB3eXBhcy5v cmc+CkNjOiBCYXJ0bG9taWVqIFpvbG5pZXJraWV3aWN6IDxiLnpvbG5pZXJraWVAc2Ftc3VuZy5j b20+CkNjOiBKZWFuIERlbHZhcmUgPGpkZWx2YXJlQHN1c2UuY29tPgpDYzogR3VlbnRlciBSb2Vj ayA8bGludXhAcm9lY2stdXMubmV0PgpDYzogTGlhbSBHaXJkd29vZCA8bGdpcmR3b29kQGdtYWls LmNvbT4KQ2M6IE1hcmsgQnJvd24gPGJyb29uaWVAa2VybmVsLm9yZz4KQ2M6IGxpbnV4LWh3bW9u QHZnZXIua2VybmVsLm9yZwpDYzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGxpbnV4LmludGVs LmNvbT4KQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNv bT4KQ2M6IERhdmlkIEFpcmxpZSA8YWlybGllZEBsaW51eC5pZT4KQ2M6IERhbmllbCBWZXR0ZXIg PGRhbmllbEBmZndsbC5jaD4KQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNv LnVrPgpDYzogIlZpbGxlIFN5cmrDpGzDpCIgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29t PgpDYzogaW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpDYzogTWljaGFlbCBUdXJxdWV0dGUgPG10dXJxdWV0dGVAYmF5bGli cmUuY29tPgpDYzogU3RlcGhlbiBCb3lkIDxzYm95ZEBrZXJuZWwub3JnPgpDYzogbGludXgtY2xr QHZnZXIua2VybmVsLm9yZwoKCgpHdXJ1IERhcyBTcmluYWdlc2ggKDEyKToKICBjbGs6IHB3bTog VXNlIDY0LWJpdCBkaXZpc2lvbiBmdW5jdGlvbgogIGRybS9pOTE1OiBVc2UgNjQtYml0IGRpdmlz aW9uIG1hY3JvCiAgaHdtb246IHB3bS1mYW46IFVzZSA2NC1iaXQgZGl2aXNpb24gbWFjcm8KICBp ci1yeDUxOiBVc2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvCiAgcHdtOiBjbHBzNzExeDogVXNlIDY0 LWJpdCBkaXZpc2lvbiBtYWNybwogIHB3bTogcHdtLWlteC10cG06IFVzZSA2NC1iaXQgZGl2aXNp b24gbWFjcm8KICBwd206IGlteDI3OiBVc2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvIGFuZCBmdW5j dGlvbgogIHB3bTogc2lmaXZlOiBVc2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvCiAgcHdtOiBzdG0z Mi1scDogVXNlICVsbHUgZm9ybWF0IHNwZWNpZmllciBmb3IgcGVyaW9kCiAgcHdtOiBzdW40aTog VXNlIDY0LWJpdCBkaXZpc2lvbiBmdW5jdGlvbgogIGJhY2tsaWdodDogcHdtX2JsOiBVc2UgNjQt Yml0IGRpdmlzaW9uIGZ1bmN0aW9uCiAgcHdtOiBjb3JlOiBDb252ZXJ0IHBlcmlvZCBhbmQgZHV0 eSBjeWNsZSB0byB1NjQKCiBkcml2ZXJzL2Nsay9jbGstcHdtLmMgICAgICAgICAgICAgICAgICAg ICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wYW5lbC5jIHwg IDIgKy0KIGRyaXZlcnMvaHdtb24vcHdtLWZhbi5jICAgICAgICAgICAgICAgICAgICB8ICAyICst CiBkcml2ZXJzL21lZGlhL3JjL2lyLXJ4NTEuYyAgICAgICAgICAgICAgICAgfCAgMyArKy0KIGRy aXZlcnMvcHdtL2NvcmUuYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIGRyaXZl cnMvcHdtL3B3bS1jbHBzNzExeC5jICAgICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3B3 bS9wd20taW14LXRwbS5jICAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9wd20vcHdt LWlteDI3LmMgICAgICAgICAgICAgICAgICAgIHwgIDUgKystLS0KIGRyaXZlcnMvcHdtL3B3bS1z aWZpdmUuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3B3bS9wd20tc3RtMzIt bHAuYyAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9wd20vcHdtLXN1bjRpLmMgICAg ICAgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvcHdtL3N5c2ZzLmMgICAgICAgICAgICAg ICAgICAgICAgICB8ICA4ICsrKystLS0tCiBkcml2ZXJzL3ZpZGVvL2JhY2tsaWdodC9wd21fYmwu YyAgICAgICAgICAgfCAgMyArKy0KIGluY2x1ZGUvbGludXgvcHdtLmggICAgICAgICAgICAgICAg ICAgICAgICB8IDEyICsrKysrKy0tLS0tLQogMTQgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9u cygrKSwgMjUgZGVsZXRpb25zKC0pCgotLSAKVGhlIFF1YWxjb21tIElubm92YXRpb24gQ2VudGVy LCBJbmMuIGlzIGEgbWVtYmVyIG9mIHRoZSBDb2RlIEF1cm9yYSBGb3J1bSwKYSBMaW51eCBGb3Vu ZGF0aW9uIENvbGxhYm9yYXRpdmUgUHJvamVjdAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVsCg== 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=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,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 1CF86C10F27 for ; Wed, 11 Mar 2020 05:15:10 +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 0090E208C4 for ; Wed, 11 Mar 2020 05:15:09 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0090E208C4 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 04E276E378; Wed, 11 Mar 2020 05:15:09 +0000 (UTC) Received: from alexa-out-sd-01.qualcomm.com (alexa-out-sd-01.qualcomm.com [199.106.114.38]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1D50B6E3F3; Wed, 11 Mar 2020 01:41:26 +0000 (UTC) Received: from unknown (HELO ironmsg03-sd.qualcomm.com) ([10.53.140.143]) by alexa-out-sd-01.qualcomm.com with ESMTP; 10 Mar 2020 18:41:24 -0700 Received: from gurus-linux.qualcomm.com ([10.46.162.81]) by ironmsg03-sd.qualcomm.com with ESMTP; 10 Mar 2020 18:41:23 -0700 Received: by gurus-linux.qualcomm.com (Postfix, from userid 383780) id B8A844AEB; Tue, 10 Mar 2020 18:41:23 -0700 (PDT) From: Guru Das Srinagesh To: linux-pwm@vger.kernel.org Date: Tue, 10 Mar 2020 18:41:09 -0700 Message-Id: X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Mailman-Approved-At: Wed, 11 Mar 2020 05:15:04 +0000 Subject: [Intel-gfx] [PATCH v8 00/12] 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 Airlie , Michael Turquette , Kamil Debski , dri-devel@lists.freedesktop.org, Liam Girdwood , Atish Patra , linux-riscv@lists.infradead.org, Lee Jones , linux-clk@vger.kernel.org, Alexandre Torgue , Guru Das Srinagesh , Daniel Thompson , Mauro Carvalho Chehab , Alexander Shiyan , Fabio Estevam , Chen-Yu Tsai , NXP Linux Team , intel-gfx@lists.freedesktop.org, Guenter Roeck , linux-media@vger.kernel.org, Jean Delvare , Maxime Coquelin , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Bartlomiej Zolnierkiewicz , Sascha Hauer , Maxime Ripard , Mark Brown , Paul Walmsley , Subbaraman Narayanamurthy , Thomas Gleixner , Fabrice Gasnier , Pengutronix Kernel Team , Allison Randal , linux-hwmon@vger.kernel.org, Richard Fontana , Stephen Boyd , Jingoo Han , linux-kernel@vger.kernel.org, Yash Shah , Palmer Dabbelt , Philipp Zabel , Shawn Guo Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" QmVjYXVzZSBwZXJpb2QgYW5kIGR1dHkgY3ljbGUgYXJlIGRlZmluZWQgaW4gdGhlIFBXTSBmcmFt ZXdvcmsgc3RydWN0cyBhcyBpbnRzCndpdGggdW5pdHMgb2YgbmFub3NlY29uZHMsIHRoZSBtYXhp bXVtIHRpbWUgZHVyYXRpb24gdGhhdCBjYW4gYmUgc2V0IGlzIGxpbWl0ZWQKdG8gfjIuMTQ3IHNl Y29uZHMuIENvbnNlcXVlbnRseSwgYXBwbGljYXRpb25zIGRlc2lyaW5nIHRvIHNldCBncmVhdGVy IHRpbWUKcGVyaW9kcyB2aWEgdGhlIFBXTSBmcmFtZXdvcmsgYXJlIG5vdCBiZSBhYmxlIHRvIGRv IHNvIC0gbGlrZSwgZm9yIGluc3RhbmNlLApjYXVzaW5nIGFuIExFRCB0byBibGluayBhdCBhbiBp bnRlcnZhbCBvZiA1IHNlY29uZHMuCgpSZWRlZmluaW5nIHRoZSBwZXJpb2QgYW5kIGR1dHkgY3lj bGUgc3RydWN0IG1lbWJlcnMgaW4gdGhlIGNvcmUgUFdNIGZyYW1ld29yawpzdHJ1Y3RzIGFzIHU2 NCB2YWx1ZXMgd2lsbCBlbmFibGUgbGFyZ2VyIHRpbWUgZHVyYXRpb25zIHRvIGJlIHNldCBhbmQg c29sdmUKdGhpcyBwcm9ibGVtLiBTdWNoIGEgY2hhbmdlIHRvIHRoZSBmcmFtZXdvcmsgbWFuZGF0 ZXMgdGhhdCBkcml2ZXJzIHVzaW5nIHRoZXNlCnN0cnVjdCBtZW1iZXJzIChhbmQgY29ycmVzcG9u ZGluZyBoZWxwZXIgZnVuY3Rpb25zKSBhbHNvIGJlIG1vZGlmaWVkIGNvcnJlY3RseQppbiBvcmRl ciB0byBwcmV2ZW50IGNvbXBpbGF0aW9uIGVycm9ycy4KClRoaXMgcGF0Y2ggc2VyaWVzIGludHJv ZHVjZXMgdGhlIGNoYW5nZXMgdG8gYWxsIHRoZSBkcml2ZXJzIGZpcnN0LCBmb2xsb3dlZCBieQp0 aGUgZnJhbWV3b3JrIGNoYW5nZSBhdCB0aGUgdmVyeSBlbmQgc28gdGhhdCB3aGVuIHRoZSBsYXR0 ZXIgaXMgYXBwbGllZCwgYWxsCnRoZSBkcml2ZXJzIGFyZSBpbiBnb29kIHNoYXBlIGFuZCB0aGVy ZSBhcmUgbm8gY29tcGlsYXRpb24gZXJyb3JzLgoKCgpDaGFuZ2VzIGZyb20gdjc6CiAgLSBDaGFu Z2VkIGNvbW1pdCBtZXNzYWdlcyBvZiBhbGwgcGF0Y2hlcyB0byBiZSBicmllZiBhbmQgdG8gdGhl IHBvaW50LgogIC0gQWRkZWQgZXhwbGFuYXRpb24gb2YgY2hhbmdlIGluIGNvdmVyIGxldHRlci4K ICAtIERyb3BwZWQgY2hhbmdlIHRvIHB3bS1zdGkuYyBhcyB1cG9uIHJldmlldyBpdCB3YXMgdW5u ZWNlc3NhcnkgYXMgc3RydWN0CiAgICBwd21fY2FwdHVyZSBpcyBub3QgYmVpbmcgbW9kaWZpZWQg aW4gdGhlIFBXTSBjb3JlLgoKQ2hhbmdlcyBmcm9tIHY2OgogIC0gU3BsaXQgb3V0IHRoZSBkcml2 ZXIgY2hhbmdlcyBvdXQgaW50byBzZXBhcmF0ZSBwYXRjaGVzLCBvbmUgcGF0Y2ggcGVyIGZpbGUK ICAgIGZvciBlYXNlIG9mIHJldmlld2luZy4KCkNoYW5nZXMgZnJvbSB2NToKICAtIERyb3BwZWQg dGhlIGNvbnZlcnNpb24gb2Ygc3RydWN0IHB3bV9jYXB0dXJlIHRvIHU2NCBmb3IgcmVhc29ucyBt ZW50aW9uZWQKICAgIGluIGh0dHBzOi8vd3d3LnNwaW5pY3MubmV0L2xpc3RzL2xpbnV4LXB3bS9t c2cxMTU0MS5odG1sCgpDaGFuZ2VzIGZyb20gdjQ6CiAgLSBTcGxpdCB0aGUgcGF0Y2ggaW50byB0 d286IG9uZSBmb3IgY2hhbmdlcyB0byB0aGUgZHJpdmVycywgYW5kIHRoZSBhY3R1YWwKICAgIHN3 aXRjaCB0byB1NjQgZm9yIGVhc2Ugb2YgcmV2ZXJ0aW5nIHNob3VsZCB0aGUgbmVlZCBhcmlzZS4K ICAtIFJlLWV4YW1pbmVkIHRoZSBwYXRjaCBhbmQgbWFkZSB0aGUgZm9sbG93aW5nIGNvcnJlY3Rp b25zOgogICAgICAqIGludGVsX3BhbmVsLmM6CglESVY2NF9VNjRfUk9VTkRfVVAgLT4gRElWX1JP VU5EX1VQX1VMTCAoYXMgb25seSB0aGUgbnVtZXJhdG9yIHdvdWxkIGJlCgk2NC1iaXQgaW4gdGhp cyBjYXNlKS4KICAgICAgKiBwd20tc3RpLmM6Cglkb19kaXYgLT4gZGl2X3U2NCAoZG9fZGl2IGlz IG9wdGltaXplZCBvbmx5IGZvciB4ODYgYXJjaGl0ZWN0dXJlcywgYW5kCglkaXZfdTY0J3MgY29t bWVudCBibG9jayBzdWdnZXN0cyB0byB1c2UgdGhpcyBhcyBtdWNoIGFzIHBvc3NpYmxlKS4KCkNo YW5nZXMgZnJvbSB2MzoKICAtIFJlYmFzZWQgdG8gY3VycmVudCB0aXAgb2YgZm9yLW5leHQuCgpD aGFuZ2VzIGZyb20gdjI6CiAgLSBGaXhlZCAldSAtPiAlbGx1IGluIGEgZGV2X2RiZyBpbiBwd20t c3RtMzItbHAuYywgdGhhbmtzIHRvIGtidWlsZCB0ZXN0IHJvYm90CiAgLSBBZGRlZCBhIGNvdXBs ZSBvZiBmaXhlcyB0byBwd20taW14LXRwbS5jIGFuZCBwd20tc2lmaXZlLmMKCkNoYW5nZXMgZnJv bSB2MToKICAtIEZpeGVkIGNvbXBpbGF0aW9uIGVycm9ycyBzZWVuIHdoZW4gY29tcGlsaW5nIGZv ciBkaWZmZXJlbnQgYXJjaHMuCgp2MToKICAtIFJld29ya2VkIHRoZSBjaGFuZ2UgcHVzaGVkIHVw c3RyZWFtIGVhcmxpZXIgWzFdIHNvIGFzIHRvIG5vdCBhZGQgYW4KICAgIGV4dGVuc2lvbiB0byBh biBvYnNvbGV0ZSBBUEkuIFdpdGggdGhpcyBjaGFuZ2UsIHB3bV9vcHMtPmFwcGx5KCkgY2FuIGJl CiAgICB1c2VkIHRvIHNldCBwd21fc3RhdGUgcGFyYW1ldGVycyBhcyB1c3VhbC4KICAgIFsxXSBo dHRwczovL2xvcmUua2VybmVsLm9yZy9sa21sLzIwMTkwOTE2MTQwMDQ4LkdCNzQ4OEB1bG1vLwoK CgpDYzogTGVlIEpvbmVzIDxsZWUuam9uZXNAbGluYXJvLm9yZz4KQ2M6IERhbmllbCBUaG9tcHNv biA8ZGFuaWVsLnRob21wc29uQGxpbmFyby5vcmc+CkNjOiBKaW5nb28gSGFuIDxqaW5nb29oYW4x QGdtYWlsLmNvbT4KQ2M6IEJhcnRsb21pZWogWm9sbmllcmtpZXdpY3ogPGIuem9sbmllcmtpZUBz YW1zdW5nLmNvbT4KQ2M6IGxpbnV4LWZiZGV2QHZnZXIua2VybmVsLm9yZwpDYzogTWF4aW1lIFJp cGFyZCA8bXJpcGFyZEBrZXJuZWwub3JnPgpDYzogQ2hlbi1ZdSBUc2FpIDx3ZW5zQGNzaWUub3Jn PgpDYzogUGhpbGlwcCBaYWJlbCA8cC56YWJlbEBwZW5ndXRyb25peC5kZT4KQ2M6IEZhYnJpY2Ug R2FzbmllciA8ZmFicmljZS5nYXNuaWVyQHN0LmNvbT4KQ2M6IE1heGltZSBDb3F1ZWxpbiA8bWNv cXVlbGluLnN0bTMyQGdtYWlsLmNvbT4KQ2M6IEFsZXhhbmRyZSBUb3JndWUgPGFsZXhhbmRyZS50 b3JndWVAc3QuY29tPgpDYzogUGFsbWVyIERhYmJlbHQgPHBhbG1lckBkYWJiZWx0LmNvbT4KQ2M6 IFBhdWwgV2FsbXNsZXkgPHBhdWwud2FsbXNsZXlAc2lmaXZlLmNvbT4KQ2M6IGxpbnV4LXJpc2N2 QGxpc3RzLmluZnJhZGVhZC5vcmcKQ2M6IFlhc2ggU2hhaCA8eWFzaC5zaGFoQHNpZml2ZS5jb20+ CkNjOiBBdGlzaCBQYXRyYSA8YXRpc2gucGF0cmFAd2RjLmNvbT4KQ2M6IFNoYXduIEd1byA8c2hh d25ndW9Aa2VybmVsLm9yZz4KQ2M6IFNhc2NoYSBIYXVlciA8cy5oYXVlckBwZW5ndXRyb25peC5k ZT4KQ2M6IFBlbmd1dHJvbml4IEtlcm5lbCBUZWFtIDxrZXJuZWxAcGVuZ3V0cm9uaXguZGU+CkNj OiBGYWJpbyBFc3RldmFtIDxmZXN0ZXZhbUBnbWFpbC5jb20+CkNjOiBOWFAgTGludXggVGVhbSA8 bGludXgtaW14QG54cC5jb20+CkNjOiBTYXNjaGEgSGF1ZXIgPHMuaGF1ZXJAcGVuZ3V0cm9uaXgu ZGU+CkNjOiBQZW5ndXRyb25peCBLZXJuZWwgVGVhbSA8a2VybmVsQHBlbmd1dHJvbml4LmRlPgpD YzogRmFiaW8gRXN0ZXZhbSA8ZmVzdGV2YW1AZ21haWwuY29tPgpDYzogTlhQIExpbnV4IFRlYW0g PGxpbnV4LWlteEBueHAuY29tPgpDYzogQWxleGFuZGVyIFNoaXlhbiA8c2hjX3dvcmtAbWFpbC5y dT4KQ2M6IE1hdXJvIENhcnZhbGhvIENoZWhhYiA8bWNoZWhhYkBrZXJuZWwub3JnPgpDYzogUmlj aGFyZCBGb250YW5hIDxyZm9udGFuYUByZWRoYXQuY29tPgpDYzogVGhvbWFzIEdsZWl4bmVyIDx0 Z2x4QGxpbnV0cm9uaXguZGU+CkNjOiBLYXRlIFN0ZXdhcnQgPGtzdGV3YXJ0QGxpbnV4Zm91bmRh dGlvbi5vcmc+CkNjOiBBbGxpc29uIFJhbmRhbCA8YWxsaXNvbkBsb2h1dG9rLm5ldD4KQ2M6IGxp bnV4LW1lZGlhQHZnZXIua2VybmVsLm9yZwpDYzogS2FtaWwgRGVic2tpIDxrYW1pbEB3eXBhcy5v cmc+CkNjOiBCYXJ0bG9taWVqIFpvbG5pZXJraWV3aWN6IDxiLnpvbG5pZXJraWVAc2Ftc3VuZy5j b20+CkNjOiBKZWFuIERlbHZhcmUgPGpkZWx2YXJlQHN1c2UuY29tPgpDYzogR3VlbnRlciBSb2Vj ayA8bGludXhAcm9lY2stdXMubmV0PgpDYzogTGlhbSBHaXJkd29vZCA8bGdpcmR3b29kQGdtYWls LmNvbT4KQ2M6IE1hcmsgQnJvd24gPGJyb29uaWVAa2VybmVsLm9yZz4KQ2M6IGxpbnV4LWh3bW9u QHZnZXIua2VybmVsLm9yZwpDYzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGxpbnV4LmludGVs LmNvbT4KQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNv bT4KQ2M6IERhdmlkIEFpcmxpZSA8YWlybGllZEBsaW51eC5pZT4KQ2M6IERhbmllbCBWZXR0ZXIg PGRhbmllbEBmZndsbC5jaD4KQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNv LnVrPgpDYzogIlZpbGxlIFN5cmrDpGzDpCIgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29t PgpDYzogaW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpDYzogTWljaGFlbCBUdXJxdWV0dGUgPG10dXJxdWV0dGVAYmF5bGli cmUuY29tPgpDYzogU3RlcGhlbiBCb3lkIDxzYm95ZEBrZXJuZWwub3JnPgpDYzogbGludXgtY2xr QHZnZXIua2VybmVsLm9yZwoKCgpHdXJ1IERhcyBTcmluYWdlc2ggKDEyKToKICBjbGs6IHB3bTog VXNlIDY0LWJpdCBkaXZpc2lvbiBmdW5jdGlvbgogIGRybS9pOTE1OiBVc2UgNjQtYml0IGRpdmlz aW9uIG1hY3JvCiAgaHdtb246IHB3bS1mYW46IFVzZSA2NC1iaXQgZGl2aXNpb24gbWFjcm8KICBp ci1yeDUxOiBVc2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvCiAgcHdtOiBjbHBzNzExeDogVXNlIDY0 LWJpdCBkaXZpc2lvbiBtYWNybwogIHB3bTogcHdtLWlteC10cG06IFVzZSA2NC1iaXQgZGl2aXNp b24gbWFjcm8KICBwd206IGlteDI3OiBVc2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvIGFuZCBmdW5j dGlvbgogIHB3bTogc2lmaXZlOiBVc2UgNjQtYml0IGRpdmlzaW9uIG1hY3JvCiAgcHdtOiBzdG0z Mi1scDogVXNlICVsbHUgZm9ybWF0IHNwZWNpZmllciBmb3IgcGVyaW9kCiAgcHdtOiBzdW40aTog VXNlIDY0LWJpdCBkaXZpc2lvbiBmdW5jdGlvbgogIGJhY2tsaWdodDogcHdtX2JsOiBVc2UgNjQt Yml0IGRpdmlzaW9uIGZ1bmN0aW9uCiAgcHdtOiBjb3JlOiBDb252ZXJ0IHBlcmlvZCBhbmQgZHV0 eSBjeWNsZSB0byB1NjQKCiBkcml2ZXJzL2Nsay9jbGstcHdtLmMgICAgICAgICAgICAgICAgICAg ICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wYW5lbC5jIHwg IDIgKy0KIGRyaXZlcnMvaHdtb24vcHdtLWZhbi5jICAgICAgICAgICAgICAgICAgICB8ICAyICst CiBkcml2ZXJzL21lZGlhL3JjL2lyLXJ4NTEuYyAgICAgICAgICAgICAgICAgfCAgMyArKy0KIGRy aXZlcnMvcHdtL2NvcmUuYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIGRyaXZl cnMvcHdtL3B3bS1jbHBzNzExeC5jICAgICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3B3 bS9wd20taW14LXRwbS5jICAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9wd20vcHdt LWlteDI3LmMgICAgICAgICAgICAgICAgICAgIHwgIDUgKystLS0KIGRyaXZlcnMvcHdtL3B3bS1z aWZpdmUuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3B3bS9wd20tc3RtMzIt bHAuYyAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9wd20vcHdtLXN1bjRpLmMgICAg ICAgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvcHdtL3N5c2ZzLmMgICAgICAgICAgICAg ICAgICAgICAgICB8ICA4ICsrKystLS0tCiBkcml2ZXJzL3ZpZGVvL2JhY2tsaWdodC9wd21fYmwu YyAgICAgICAgICAgfCAgMyArKy0KIGluY2x1ZGUvbGludXgvcHdtLmggICAgICAgICAgICAgICAg ICAgICAgICB8IDEyICsrKysrKy0tLS0tLQogMTQgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9u cygrKSwgMjUgZGVsZXRpb25zKC0pCgotLSAKVGhlIFF1YWxjb21tIElubm92YXRpb24gQ2VudGVy LCBJbmMuIGlzIGEgbWVtYmVyIG9mIHRoZSBDb2RlIEF1cm9yYSBGb3J1bSwKYSBMaW51eCBGb3Vu ZGF0aW9uIENvbGxhYm9yYXRpdmUgUHJvamVjdAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==