From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jared Finder via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#68050: 29.1; Pixel scroll doesn't work on platforms that do not expose device-class. Date: Tue, 26 Dec 2023 13:01:30 -0800 Message-ID: Reply-To: Jared Finder Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=_ca239be5070454fa9bd68b72c48c45f4" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21585"; mail-complaints-to="usenet@ciao.gmane.io" To: 68050@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Dec 26 22:02:28 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rIEZG-0005Oc-Do for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 26 Dec 2023 22:02:26 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rIEYy-0005Ov-EF; Tue, 26 Dec 2023 16:02:08 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rIEYu-0005O8-A5 for bug-gnu-emacs@gnu.org; Tue, 26 Dec 2023 16:02:04 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rIEYu-0000Cp-1W for bug-gnu-emacs@gnu.org; Tue, 26 Dec 2023 16:02:04 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rIEYr-0003ny-T2 for bug-gnu-emacs@gnu.org; Tue, 26 Dec 2023 16:02:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Jared Finder Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 26 Dec 2023 21:02:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 68050 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.170362450614598 (code B ref -1); Tue, 26 Dec 2023 21:02:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 26 Dec 2023 21:01:46 +0000 Original-Received: from localhost ([127.0.0.1]:35072 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rIEYc-0003nO-08 for submit@debbugs.gnu.org; Tue, 26 Dec 2023 16:01:46 -0500 Original-Received: from lists.gnu.org ([2001:470:142::17]:38732) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rIEYa-0003n7-78 for submit@debbugs.gnu.org; Tue, 26 Dec 2023 16:01:45 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rIEYS-0005Hn-VI for bug-gnu-emacs@gnu.org; Tue, 26 Dec 2023 16:01:36 -0500 Original-Received: from greenhill.hpalace.com ([192.155.80.58]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rIEYQ-0008Vc-Ce for bug-gnu-emacs@gnu.org; Tue, 26 Dec 2023 16:01:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=finder.org; s=2018; t=1703624491; bh=8QK8mVHa3AKL4ieIJMEdyIPm9l7yUuphMZGYpcUjkOw=; h=Date:From:To:Subject:From; b=MlGz1sx/vEOc0/HkGMhF2bNSEL3+GOCqA4Hd6IkY0qOSKzv6MSBudPahRZgEMnm/G qOj3w0lN9OmCtlOA3P6phmM7oXNmfJISYoQ0W4rFKaeFP9d54pcweyFCgHp80P6RCt P3/qt16860xo2Dhl4kxDWxYu21AUlAtHQXHea3w+oPx55n/s/c+GZBSCAZlBA3a/rT /16XC6Anmt9usbLTFJ+AIL2BrXvmVLzZJWOn80tZogbp/Arz3167GAE31VDtwuIOR/ oezTY1i01o9FpHwWHrTYD6gl/LUVfxQhFHVr4as4Rdb8xYmHNgePsv5hetmRHzol1J tsKhjPAmYj8/Q== Original-Received: from mail.finder.org (unknown [192.155.80.58]) by greenhill.hpalace.com (Postfix) with ESMTPSA id 47B5F219D for ; Tue, 26 Dec 2023 21:01:31 +0000 (UTC) X-Sender: jared@finder.org Received-SPF: pass client-ip=192.155.80.58; envelope-from=jared@finder.org; helo=greenhill.hpalace.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:276923 Archived-At: --=_ca239be5070454fa9bd68b72c48c45f4 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed Pixel scroll does not work on many platforms, such as Windows and Mac as they only expose device classes core-keyboard and core-pointer. Additionally, I have found that for Wayland under WSL on the emacs-29 branch, both the touchpad and the mouse are reported with device-class 'mouse on my Thinkpad laptop. The attached patch enables a user to specify arbitrary device classes that should cause interpolated scrolling so they can fix any issues. This enables a user to customize this to the behavior of their local machine. I am undecided if this should involve renaming the existing pixel-scroll-precision-interpolate-mice option or if it is important to stay backward compatible with customizations that changed that option from its default, t, to some other non-nil value. Please give feedback here. Otherwise, this is a straightforward change that I think would be good for the Emacs 29 branch so all platforms can get the smoothness of interpolated pixel scrolling. In GNU Emacs 29.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.37, cairo version 1.16.0) of 2023-09-11, modified by Debian built on melete System Description: Debian GNU/Linux 12 (bookworm) Configured using: 'configure --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/libexec --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --with-libsystemd --with-pop=yes --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/29.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/29.1/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --without-gconf --with-mailutils --with-native-compilation --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/libexec --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --with-libsystemd --with-pop=yes --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/29.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/29.1/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --without-gconf --with-mailutils --with-native-compilation --with-pgtk 'CFLAGS=-g -O2 -ffile-prefix-map=/build/emacs-N816CI/emacs-29.1+1=. -fstack-protector-strong -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Fundamental Minor modes in effect: global-window-tool-bar-mode: t pixel-scroll-precision-mode: t recentf-mode: t global-subword-mode: t global-form-feed-st-mode: t icomplete-mode: t fido-mode: t electric-pair-mode: t delete-selection-mode: t cua-mode: t bar-cursor-mode: t url-handler-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t context-menu-mode: t global-font-lock-mode: t blink-cursor-mode: t window-divider-mode: t buffer-read-only: t column-number-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr cursor-sensor emacsbug finder-inf comp comp-cstr cl-extra help-mode markdown-mode rx color thingatpt noutline outline cus-edit pp cus-start cus-load window-tool-bar easy-mmode time-stamp tab-line pixel-scroll recentf tree-widget wid-edit cap-words superword subword form-feed-st icomplete elec-pair delsel cua-base bar-cursor ls-lisp advice log-edit message sendmail yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log warnings icons compile text-property-search comint ansi-osc ansi-color ring init-dir bar-cursor-autoloads dired-icon-autoloads form-feed-st-autoloads init-dir-autoloads markdown-mode-autoloads modus-themes-autoloads package-lint-autoloads compat-autoloads info slime-autoloads window-tool-bar-autoloads package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core password-cache json map byte-opt bytecomp byte-compile url-vars modus-vivendi-theme modus-themes cl-macs pcase subr-x cl-loaddefs cl-lib gv rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win pgtk-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo gtk pgtk lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 539696 29472) (symbols 48 22620 0) (strings 32 141326 2762) (string-bytes 1 3451370) (vectors 16 35478) (vector-slots 8 662830 21925) (floats 8 236 225) (intervals 56 505 10) (buffers 984 14)) --=_ca239be5070454fa9bd68b72c48c45f4 Content-Transfer-Encoding: base64 Content-Type: text/x-diff; name=0001-Allow-interpolation-with-arbitrary-device-classes.patch Content-Disposition: attachment; filename=0001-Allow-interpolation-with-arbitrary-device-classes.patch; size=3818 RnJvbSBkZmI0ZTMzZTllZDQwYzM2NGExMWY1ZmFmMjNmM2U3Yjg3Yjg4ZDU0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKYXJlZCBGaW5kZXIgPGphcmVkQGZpbmRlci5vcmc+CkRhdGU6 IFR1ZSwgMjYgRGVjIDIwMjMgMTI6NDQ6NDAgLTA4MDAKU3ViamVjdDogW1BBVENIXSBBbGxvdyBp bnRlcnBvbGF0aW9uIHdpdGggYXJiaXRyYXJ5IGRldmljZSBjbGFzc2VzCgoqIGxpc3AvcGl4ZWwt c2Nyb2xsLmVsIChwaXhlbC1zY3JvbGwtcHJlY2lzaW9uLWludGVycG9sYXRlLW1pY2UpCihwaXhl bC1zY3JvbGwtcHJlY2lzaW9uLWludGVycG9sYXRlLWRldmljZXMpOiBDaGFuZ2UgYm9vbGVhbiBv cHRpb24gdG8KbGlzdCBzbyBpdCBjYW4gc3VwcG9ydCBtdWxpdHBsZSBkZXZpY2UgY2xhc3Mgc3lt Ym9scyBhbmQgcmVuYW1lIGl0IGZvcgpjbGFyaXR5LgoqIChwaXhlbC1zY3JvbGwtLWludGVycG9s YXRlLWJhc2VkLW9uLWRldmljZS1jbGFzcy1wKTogTmV3IGZ1bmN0aW9uIGZvcgpiYWNrd2FyZCBj b21wYXRpYmlsZSBjaGVjayBhZ2FpbnN0IGFib3ZlIG9wdGlvbi4KKiAocGl4ZWwtc2Nyb2xsLXBy ZWNpc2lvbik6IENhbGwgaXQuCi0tLQogbGlzcC9waXhlbC1zY3JvbGwuZWwgfCA0NiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDM2 IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3AvcGl4ZWwt c2Nyb2xsLmVsIGIvbGlzcC9waXhlbC1zY3JvbGwuZWwKaW5kZXggNWY0MTJiZjQxOGEuLmY4MmY5 NTE1M2I1IDEwMDY0NAotLS0gYS9saXNwL3BpeGVsLXNjcm9sbC5lbAorKysgYi9saXNwL3BpeGVs LXNjcm9sbC5lbApAQCAtMjEyLDEzICsyMTIsMzEgQEAgcGl4ZWwtc2Nyb2xsLXByZWNpc2lvbi1p bnRlcnBvbGF0ZS1wYWdlCiAgIDp0eXBlICdib29sZWFuCiAgIDp2ZXJzaW9uICIyOS4xIikKIAot KGRlZmN1c3RvbSBwaXhlbC1zY3JvbGwtcHJlY2lzaW9uLWludGVycG9sYXRlLW1pY2UgdAotICAi V2hldGhlciBvciBub3QgdG8gaW50ZXJwb2xhdGUgc2Nyb2xsaW5nIGZyb20gYSBtb3VzZS4KLUlm IG5vbi1uaWwsIHNjcm9sbGluZyBmcm9tIHRoZSBtb3VzZSB3aGVlbCBvZiBhbiBhY3R1YWwgbW91 c2UgKGFzCi1vcHBvc2VkIHRvIGEgdG91Y2hwYWQpIHdpbGwgY2F1c2UgRW1hY3MgdG8gaW50ZXJw b2xhdGUgdGhlIHNjcm9sbC4iCisoZGVmaW5lLW9ic29sZXRlLXZhcmlhYmxlLWFsaWFzCisgICdw aXhlbC1zY3JvbGwtcHJlY2lzaW9uLWludGVycG9sYXRlLW1pY2UKKyAgJ3BpeGVsLXNjcm9sbC1w cmVjaXNpb24taW50ZXJwb2xhdGUtZGV2aWNlcworICAiMjkuMiIpCisKKyhkZWZjdXN0b20gcGl4 ZWwtc2Nyb2xsLXByZWNpc2lvbi1pbnRlcnBvbGF0ZS1kZXZpY2VzIChsaXN0ICdtb3VzZSkKKyAg Ikxpc3Qgb2YgZGV2aWNlIGNsYXNzZXMgdGhhdCB3aWxsIGNhdXNlIGludGVycG9sYXRlZCBzY3Jv bGxpbmcuCitJbnRlcnBvbGF0ZWQgc2Nyb2xsaW5nIGxvb2tzIGdvb2QgZm9yIGRldmljZXMgdGhh dCBnZW5lcmF0ZQorc2lnbmlmaWNhbnQgc2Nyb2xsIGRpc3RhbmNlIHBlciBldmVudCwgc3VjaCBh cyBtaWNlLCBhbmQgbG9va3MKK3Bvb3IgZm9yIGRldmljZXMgdGhhdCBoYXZlIGVyeSBzbWFsbCBk aXN0YW5jZSBldmVudHMsIHN1Y2ggYXMKK2hpZ2ggcHJlY2lzaW9uIHRvdWNocGFkcy4KKworU2Vl IGBkZXZpY2UtY2xhc3MnIGZvciBwb3NzaWJsZSBkZXZpY2UgY2xhc3Nlcy4KKworRm9yIGJhY2t3 YXJkIGNvbXBhdGliaWxpdHksIHRoaXMgYWxzbyBjYW4gYmUgc2V0IHRvIHQsIHdoaWNoIGlzCitl cXVpdmFsZW50IHRvICcobW91c2UpLiIKICAgOmdyb3VwICdzY3JvbGxpbmcKLSAgOnR5cGUgJ2Jv b2xlYW4KLSAgOnZlcnNpb24gIjI5LjEiKQorICA6dHlwZSAnKGxpc3QKKyAgICAgICAgICAoY2hl Y2tsaXN0IDppbmxpbmUgdAorICAgICAgICAgICAgICAgICAgICAgKGNvbnN0IDp0YWcgIk1vdXNl IiBtb3VzZSkKKyAgICAgICAgICAgICAgICAgICAgIChjb25zdCA6dGFnICJHZW5lcmljIHBvaW50 aW5nIGRldmljZSIgY29yZS1wb2ludGVyKSkKKyAgICAgICAgICAocmVwZWF0IDppbmxpbmUgdAor ICAgICAgICAgICAgICAgICAgOnRhZyAiT3RoZXIgZGV2aWNlcyIKKyAgICAgICAgICAgICAgICAg IHN5bWJvbCkpCisgIDp2ZXJzaW9uICIyOS4yIikKIAogKGRlZnVuIHBpeGVsLXNjcm9sbC1pbi1y dXNoLXAgKCkKICAgIlJldHVybiBub24tbmlsIGlmIG5leHQgc2Nyb2xsIHNob3VsZCBiZSBub24t c21vb3RoLgpAQCAtNzAwLDEwICs3MTgsOCBAQCBwaXhlbC1zY3JvbGwtcHJlY2lzaW9uCiAgICAg ICAgICAgICAoaWYgKD4gKGFicyBkZWx0YSkgKHdpbmRvdy10ZXh0LWhlaWdodCB3aW5kb3cgdCkp CiAgICAgICAgICAgICAgICAgKG13aGVlbC1zY3JvbGwgZXZlbnQgbmlsKQogICAgICAgICAgICAg ICAod2l0aC1zZWxlY3RlZC13aW5kb3cgd2luZG93Ci0gICAgICAgICAgICAgICAgKGlmIChvciAo YW5kIHBpeGVsLXNjcm9sbC1wcmVjaXNpb24taW50ZXJwb2xhdGUtbWljZQotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAoZXEgKGRldmljZS1jbGFzcyBsYXN0LWV2ZW50LWZyYW1lCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3QtZXZlbnQtZGV2 aWNlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21vdXNlKSkKKyAgICAgICAg ICAgICAgICAoaWYgKG9yIChwaXhlbC1zY3JvbGwtLWludGVycG9sYXRlLWJhc2VkLW9uLWRldmlj ZS1jbGFzcy1wCisgICAgICAgICAgICAgICAgICAgICAgICAgKGRldmljZS1jbGFzcyBsYXN0LWV2 ZW50LWZyYW1lIGxhc3QtZXZlbnQtZGV2aWNlKSkKICAgICAgICAgICAgICAgICAgICAgICAgIChh bmQgcGl4ZWwtc2Nyb2xsLXByZWNpc2lvbi1sYXJnZS1zY3JvbGwtaGVpZ2h0CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICg+IChhYnMgZGVsdGEpCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHBpeGVsLXNjcm9sbC1wcmVjaXNpb24tbGFyZ2Utc2Nyb2xsLWhlaWdodCkKQEAg LTczMiw2ICs3NDgsMTYgQEAgcGl4ZWwtc2Nyb2xsLXByZWNpc2lvbgogICAgICAgICAgICAgICAg ICAgICAgKG1lc3NhZ2UgKGVycm9yLW1lc3NhZ2Utc3RyaW5nICcoZW5kLW9mLWJ1ZmZlcikpKSkp KSkpKSkKICAgICAgIChtd2hlZWwtc2Nyb2xsIGV2ZW50IG5pbCkpKSkKIAorKGRlZnVuIHBpeGVs LXNjcm9sbC0taW50ZXJwb2xhdGUtYmFzZWQtb24tZGV2aWNlLWNsYXNzLXAgKGNsYXNzKQorICAi UmV0dXJuIHdoZXRoZXIgdGhpcyBkZXZpY2UgY2xhc3Mgc2hvdWxkIGFsd2F5cyBpbnRlcnBvbGF0 ZSBzY3JvbGxpbmcuCitDTEFTUyBpcyBhIHZhbHVlIHJldHVybmVkIGZyb20gYGRldmljZS1jbGFz cycuIgorICAoYW5kIHBpeGVsLXNjcm9sbC1wcmVjaXNpb24taW50ZXJwb2xhdGUtZGV2aWNlcwor ICAgICAgIChtZW1xIGNsYXNzCisgICAgICAgICAgICAgKGlmIChlcSBwaXhlbC1zY3JvbGwtcHJl Y2lzaW9uLWludGVycG9sYXRlLWRldmljZXMgdCkKKyAgICAgICAgICAgICAgICAgOzsgRW1hY3Mg MjkuMSBoYWQgdGhpcyBhcyBhIGJvb2xlYW4sIGRlZmF1bHRpbmcgdG8gdC4KKyAgICAgICAgICAg ICAgICAgJyhtb3VzZSkKKyAgICAgICAgICAgICAgIHBpeGVsLXNjcm9sbC1wcmVjaXNpb24taW50 ZXJwb2xhdGUtZGV2aWNlcykpKSkKKwogOzsgaXNlYXJjaC1zY3JvbGwgc3VwcG9ydAogKHB1dCAn cGl4ZWwtc2Nyb2xsLXByZWNpc2lvbiAnc2Nyb2xsLWNvbW1hbmQgdCkKIAotLSAKMi4zOS4yCgo= --=_ca239be5070454fa9bd68b72c48c45f4--