From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934096AbeCBXEC (ORCPT ); Fri, 2 Mar 2018 18:04:02 -0500 Received: from anholt.net ([50.246.234.109]:56174 "EHLO anholt.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933117AbeCBXEA (ORCPT ); Fri, 2 Mar 2018 18:04:00 -0500 From: Eric Anholt To: dri-devel@lists.freedesktop.org Cc: linux-kernel@vger.kernel.org, Eric Anholt , Stefan Schake Subject: [PATCH] drm/vc4: Add some missing HVS register definitions. Date: Fri, 2 Mar 2018 15:03:58 -0800 Message-Id: <20180302230358.25153-1-eric@anholt.net> X-Mailer: git-send-email 2.16.2 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org At least the RGBA expand field we should have been setting, because we aren't expanding correctly for 565 -> 8888. Other registers are ones that may be interesting for various projects that have been discussed. Signed-off-by: Eric Anholt Cc: Stefan Schake --- drivers/gpu/drm/vc4/vc4_regs.h | 96 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/drivers/gpu/drm/vc4/vc4_regs.h b/drivers/gpu/drm/vc4/vc4_regs.h index b9749cb24063..ce8bb7486456 100644 --- a/drivers/gpu/drm/vc4/vc4_regs.h +++ b/drivers/gpu/drm/vc4/vc4_regs.h @@ -330,6 +330,21 @@ #define SCALER_DISPCTRL0 0x00000040 # define SCALER_DISPCTRLX_ENABLE BIT(31) # define SCALER_DISPCTRLX_RESET BIT(30) +/* Generates a single frame when VSTART is seen and stops at the last + * pixel read from the FIFO. + */ +# define SCALER_DISPCTRLX_ONESHOT BIT(29) +/* Processes a single context in the dlist and then task switch, + * instead of an entire line. + */ +# define SCALER_DISPCTRLX_ONECTX BIT(28) +/* Set to have DISPSLAVE return 2 16bpp pixels and no status data. */ +# define SCALER_DISPCTRLX_FIFO32 BIT(27) +/* Turns on output to the DISPSLAVE register instead of the normal + * FIFO. + */ +# define SCALER_DISPCTRLX_FIFOREG BIT(26) + # define SCALER_DISPCTRLX_WIDTH_MASK VC4_MASK(23, 12) # define SCALER_DISPCTRLX_WIDTH_SHIFT 12 # define SCALER_DISPCTRLX_HEIGHT_MASK VC4_MASK(11, 0) @@ -402,6 +417,68 @@ */ # define SCALER_GAMADDR_SRAMENB BIT(30) +#define SCALER_OLEDOFFS 0x00000080 +/* Clamps R to [16,235] and G/B to [16,240]. */ +# define SCALER_OLEDOFFS_YUVCLAMP BIT(31) + +/* Chooses which display FIFO the matrix applies to. */ +# define SCALER_OLEDOFFS_DISPFIFO_MASK VC4_MASK(25, 24) +# define SCALER_OLEDOFFS_DISPFIFO_SHIFT 24 +# define SCALER_OLEDOFFS_DISPFIFO_DISABLED 0 +# define SCALER_OLEDOFFS_DISPFIFO_0 1 +# define SCALER_OLEDOFFS_DISPFIFO_1 2 +# define SCALER_OLEDOFFS_DISPFIFO_2 3 + +/* Offsets are 8-bit 2s-complement. */ +# define SCALER_OLEDOFFS_RED_MASK VC4_MASK(23, 16) +# define SCALER_OLEDOFFS_RED_SHIFT 16 +# define SCALER_OLEDOFFS_GREEN_MASK VC4_MASK(15, 8) +# define SCALER_OLEDOFFS_GREEN_SHIFT 8 +# define SCALER_OLEDOFFS_BLUE_MASK VC4_MASK(7, 0) +# define SCALER_OLEDOFFS_BLUE_SHIFT 0 + +/* The coefficients are S0.9 fractions. */ +#define SCALER_OLEDCOEF0 0x00000084 +# define SCALER_OLEDCOEF0_B_TO_R_MASK VC4_MASK(29, 20) +# define SCALER_OLEDCOEF0_B_TO_R_SHIFT 20 +# define SCALER_OLEDCOEF0_B_TO_G_MASK VC4_MASK(19, 10) +# define SCALER_OLEDCOEF0_B_TO_G_SHIFT 10 +# define SCALER_OLEDCOEF0_B_TO_B_MASK VC4_MASK(9, 0) +# define SCALER_OLEDCOEF0_B_TO_B_SHIFT 0 + +#define SCALER_OLEDCOEF1 0x00000088 +# define SCALER_OLEDCOEF1_G_TO_R_MASK VC4_MASK(29, 20) +# define SCALER_OLEDCOEF1_G_TO_R_SHIFT 20 +# define SCALER_OLEDCOEF1_G_TO_G_MASK VC4_MASK(19, 10) +# define SCALER_OLEDCOEF1_G_TO_G_SHIFT 10 +# define SCALER_OLEDCOEF1_G_TO_B_MASK VC4_MASK(9, 0) +# define SCALER_OLEDCOEF1_G_TO_B_SHIFT 0 + +#define SCALER_OLEDCOEF2 0x0000008c +# define SCALER_OLEDCOEF2_R_TO_R_MASK VC4_MASK(29, 20) +# define SCALER_OLEDCOEF2_R_TO_R_SHIFT 20 +# define SCALER_OLEDCOEF2_R_TO_G_MASK VC4_MASK(19, 10) +# define SCALER_OLEDCOEF2_R_TO_G_SHIFT 10 +# define SCALER_OLEDCOEF2_R_TO_B_MASK VC4_MASK(9, 0) +# define SCALER_OLEDCOEF2_R_TO_B_SHIFT 0 + +/* Slave addresses for DMAing from HVS composition output to other + * devices. The top bits are valid only in !FIFO32 mode. + */ +#define SCALER_DISPSLAVE0 0x000000c0 +#define SCALER_DISPSLAVE1 0x000000c9 +#define SCALER_DISPSLAVE2 0x000000d0 +# define SCALER_DISPSLAVE_ISSUE_VSTART BIT(31) +# define SCALER_DISPSLAVE_ISSUE_HSTART BIT(30) +/* Set when the current line has been read and an HSTART is required. */ +# define SCALER_DISPSLAVE_EOL BIT(26) +/* Set when the display FIFO is empty. */ +# define SCALER_DISPSLAVE_EMPTY BIT(25) +/* Set when there is RGB data ready to read. */ +# define SCALER_DISPSLAVE_VALID BIT(24) +# define SCALER_DISPSLAVE_RGB_MASK VC4_MASK(23, 0) +# define SCALER_DISPSLAVE_RGB_SHIFT 0 + #define SCALER_GAMDATA 0x000000e0 #define SCALER_DLIST_START 0x00002000 #define SCALER_DLIST_SIZE 0x00004000 @@ -767,6 +844,10 @@ enum hvs_pixel_format { HVS_PIXEL_FORMAT_YCBCR_YUV420_2PLANE = 9, HVS_PIXEL_FORMAT_YCBCR_YUV422_3PLANE = 10, HVS_PIXEL_FORMAT_YCBCR_YUV422_2PLANE = 11, + HVS_PIXEL_FORMAT_H264 = 12, + HVS_PIXEL_FORMAT_PALETTE = 13, + HVS_PIXEL_FORMAT_YUV444_RGB = 14, + HVS_PIXEL_FORMAT_AYUV444_RGB = 15, }; /* Note: the LSB is the rightmost character shown. Only valid for @@ -800,12 +881,27 @@ enum hvs_pixel_format { #define SCALER_CTL0_TILING_128B 2 #define SCALER_CTL0_TILING_256B_OR_T 3 +#define SCALER_CTL0_ALPHA_MASK BIT(19) #define SCALER_CTL0_HFLIP BIT(16) #define SCALER_CTL0_VFLIP BIT(15) +#define SCALER_CTL0_KEY_MODE_MASK VC4_MASK(18, 17) +#define SCALER_CTL0_KEY_MODE_SHIFT 17 +#define SCALER_CTL0_KEY_DISABLED 0 +#define SCALER_CTL0_KEY_LUMA_OR_COMMON_RGB 1 +#define SCALER_CTL0_KEY_MATCH 2 /* turn transparent */ +#define SCALER_CTL0_KEY_REPLACE 3 /* replace with value from key mask word 2 */ + #define SCALER_CTL0_ORDER_MASK VC4_MASK(14, 13) #define SCALER_CTL0_ORDER_SHIFT 13 +#define SCALER_CTL0_RGBA_EXPAND_MASK VC4_MASK(12, 11) +#define SCALER_CTL0_RGBA_EXPAND_SHIFT 11 +#define SCALER_CTL0_RGBA_EXPAND_ZERO 0 +#define SCALER_CTL0_RGBA_EXPAND_LSB 1 +#define SCALER_CTL0_RGBA_EXPAND_MSB 2 +#define SCALER_CTL0_RGBA_EXPAND_ROUND 3 + #define SCALER_CTL0_SCL1_MASK VC4_MASK(10, 8) #define SCALER_CTL0_SCL1_SHIFT 8 -- 2.16.2 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Anholt Subject: [PATCH] drm/vc4: Add some missing HVS register definitions. Date: Fri, 2 Mar 2018 15:03:58 -0800 Message-ID: <20180302230358.25153-1-eric@anholt.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from anholt.net (anholt.net [50.246.234.109]) by gabe.freedesktop.org (Postfix) with ESMTP id 90C976E275 for ; Fri, 2 Mar 2018 23:04:00 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: linux-kernel@vger.kernel.org, Stefan Schake List-Id: dri-devel@lists.freedesktop.org QXQgbGVhc3QgdGhlIFJHQkEgZXhwYW5kIGZpZWxkIHdlIHNob3VsZCBoYXZlIGJlZW4gc2V0dGlu ZywgYmVjYXVzZSB3ZQphcmVuJ3QgZXhwYW5kaW5nIGNvcnJlY3RseSBmb3IgNTY1IC0+IDg4ODgu ICBPdGhlciByZWdpc3RlcnMgYXJlIG9uZXMKdGhhdCBtYXkgYmUgaW50ZXJlc3RpbmcgZm9yIHZh cmlvdXMgcHJvamVjdHMgdGhhdCBoYXZlIGJlZW4gZGlzY3Vzc2VkLgoKU2lnbmVkLW9mZi1ieTog RXJpYyBBbmhvbHQgPGVyaWNAYW5ob2x0Lm5ldD4KQ2M6IFN0ZWZhbiBTY2hha2UgPHN0c2NoYWtl QGdtYWlsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9yZWdzLmggfCA5NiArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA5 NiBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfcmVn cy5oIGIvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfcmVncy5oCmluZGV4IGI5NzQ5Y2IyNDA2My4u Y2U4YmI3NDg2NDU2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9yZWdzLmgK KysrIGIvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfcmVncy5oCkBAIC0zMzAsNiArMzMwLDIxIEBA CiAjZGVmaW5lIFNDQUxFUl9ESVNQQ1RSTDAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAw MDQwCiAjIGRlZmluZSBTQ0FMRVJfRElTUENUUkxYX0VOQUJMRQkJQklUKDMxKQogIyBkZWZpbmUg U0NBTEVSX0RJU1BDVFJMWF9SRVNFVAkJCUJJVCgzMCkKKy8qIEdlbmVyYXRlcyBhIHNpbmdsZSBm cmFtZSB3aGVuIFZTVEFSVCBpcyBzZWVuIGFuZCBzdG9wcyBhdCB0aGUgbGFzdAorICogcGl4ZWwg cmVhZCBmcm9tIHRoZSBGSUZPLgorICovCisjIGRlZmluZSBTQ0FMRVJfRElTUENUUkxYX09ORVNI T1QJCUJJVCgyOSkKKy8qIFByb2Nlc3NlcyBhIHNpbmdsZSBjb250ZXh0IGluIHRoZSBkbGlzdCBh bmQgdGhlbiB0YXNrIHN3aXRjaCwKKyAqIGluc3RlYWQgb2YgYW4gZW50aXJlIGxpbmUuCisgKi8K KyMgZGVmaW5lIFNDQUxFUl9ESVNQQ1RSTFhfT05FQ1RYCQlCSVQoMjgpCisvKiBTZXQgdG8gaGF2 ZSBESVNQU0xBVkUgcmV0dXJuIDIgMTZicHAgcGl4ZWxzIGFuZCBubyBzdGF0dXMgZGF0YS4gKi8K KyMgZGVmaW5lIFNDQUxFUl9ESVNQQ1RSTFhfRklGTzMyCQlCSVQoMjcpCisvKiBUdXJucyBvbiBv dXRwdXQgdG8gdGhlIERJU1BTTEFWRSByZWdpc3RlciBpbnN0ZWFkIG9mIHRoZSBub3JtYWwKKyAq IEZJRk8uCisgKi8KKyMgZGVmaW5lIFNDQUxFUl9ESVNQQ1RSTFhfRklGT1JFRwkJQklUKDI2KQor CiAjIGRlZmluZSBTQ0FMRVJfRElTUENUUkxYX1dJRFRIX01BU0sJCVZDNF9NQVNLKDIzLCAxMikK ICMgZGVmaW5lIFNDQUxFUl9ESVNQQ1RSTFhfV0lEVEhfU0hJRlQJCTEyCiAjIGRlZmluZSBTQ0FM RVJfRElTUENUUkxYX0hFSUdIVF9NQVNLCQlWQzRfTUFTSygxMSwgMCkKQEAgLTQwMiw2ICs0MTcs NjggQEAKICAqLwogIyBkZWZpbmUgU0NBTEVSX0dBTUFERFJfU1JBTUVOQgkJCUJJVCgzMCkKIAor I2RlZmluZSBTQ0FMRVJfT0xFRE9GRlMgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDA4 MAorLyogQ2xhbXBzIFIgdG8gWzE2LDIzNV0gYW5kIEcvQiB0byBbMTYsMjQwXS4gKi8KKyMgZGVm aW5lIFNDQUxFUl9PTEVET0ZGU19ZVVZDTEFNUCAgICAgICAgICAgICAgIEJJVCgzMSkKKworLyog Q2hvb3NlcyB3aGljaCBkaXNwbGF5IEZJRk8gdGhlIG1hdHJpeCBhcHBsaWVzIHRvLiAqLworIyBk ZWZpbmUgU0NBTEVSX09MRURPRkZTX0RJU1BGSUZPX01BU0sgICAgICAgICAgVkM0X01BU0soMjUs IDI0KQorIyBkZWZpbmUgU0NBTEVSX09MRURPRkZTX0RJU1BGSUZPX1NISUZUICAgICAgICAgMjQK KyMgZGVmaW5lIFNDQUxFUl9PTEVET0ZGU19ESVNQRklGT19ESVNBQkxFRCAgICAgIDAKKyMgZGVm aW5lIFNDQUxFUl9PTEVET0ZGU19ESVNQRklGT18wICAgICAgICAgICAgIDEKKyMgZGVmaW5lIFND QUxFUl9PTEVET0ZGU19ESVNQRklGT18xICAgICAgICAgICAgIDIKKyMgZGVmaW5lIFNDQUxFUl9P TEVET0ZGU19ESVNQRklGT18yICAgICAgICAgICAgIDMKKworLyogT2Zmc2V0cyBhcmUgOC1iaXQg MnMtY29tcGxlbWVudC4gKi8KKyMgZGVmaW5lIFNDQUxFUl9PTEVET0ZGU19SRURfTUFTSyAgICAg ICAgICAgICAgIFZDNF9NQVNLKDIzLCAxNikKKyMgZGVmaW5lIFNDQUxFUl9PTEVET0ZGU19SRURf U0hJRlQgICAgICAgICAgICAgIDE2CisjIGRlZmluZSBTQ0FMRVJfT0xFRE9GRlNfR1JFRU5fTUFT SyAgICAgICAgICAgICBWQzRfTUFTSygxNSwgOCkKKyMgZGVmaW5lIFNDQUxFUl9PTEVET0ZGU19H UkVFTl9TSElGVCAgICAgICAgICAgIDgKKyMgZGVmaW5lIFNDQUxFUl9PTEVET0ZGU19CTFVFX01B U0sgICAgICAgICAgICAgIFZDNF9NQVNLKDcsIDApCisjIGRlZmluZSBTQ0FMRVJfT0xFRE9GRlNf QkxVRV9TSElGVCAgICAgICAgICAgICAwCisKKy8qIFRoZSBjb2VmZmljaWVudHMgYXJlIFMwLjkg ZnJhY3Rpb25zLiAqLworI2RlZmluZSBTQ0FMRVJfT0xFRENPRUYwICAgICAgICAgICAgICAgICAg ICAgICAgMHgwMDAwMDA4NAorIyBkZWZpbmUgU0NBTEVSX09MRURDT0VGMF9CX1RPX1JfTUFTSyAg ICAgICAgICAgVkM0X01BU0soMjksIDIwKQorIyBkZWZpbmUgU0NBTEVSX09MRURDT0VGMF9CX1RP X1JfU0hJRlQgICAgICAgICAgMjAKKyMgZGVmaW5lIFNDQUxFUl9PTEVEQ09FRjBfQl9UT19HX01B U0sgICAgICAgICAgIFZDNF9NQVNLKDE5LCAxMCkKKyMgZGVmaW5lIFNDQUxFUl9PTEVEQ09FRjBf Ql9UT19HX1NISUZUICAgICAgICAgIDEwCisjIGRlZmluZSBTQ0FMRVJfT0xFRENPRUYwX0JfVE9f Ql9NQVNLICAgICAgICAgICBWQzRfTUFTSyg5LCAwKQorIyBkZWZpbmUgU0NBTEVSX09MRURDT0VG MF9CX1RPX0JfU0hJRlQgICAgICAgICAgMAorCisjZGVmaW5lIFNDQUxFUl9PTEVEQ09FRjEgICAg ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDg4CisjIGRlZmluZSBTQ0FMRVJfT0xFRENPRUYx X0dfVE9fUl9NQVNLICAgICAgICAgICBWQzRfTUFTSygyOSwgMjApCisjIGRlZmluZSBTQ0FMRVJf T0xFRENPRUYxX0dfVE9fUl9TSElGVCAgICAgICAgICAyMAorIyBkZWZpbmUgU0NBTEVSX09MRURD T0VGMV9HX1RPX0dfTUFTSyAgICAgICAgICAgVkM0X01BU0soMTksIDEwKQorIyBkZWZpbmUgU0NB TEVSX09MRURDT0VGMV9HX1RPX0dfU0hJRlQgICAgICAgICAgMTAKKyMgZGVmaW5lIFNDQUxFUl9P TEVEQ09FRjFfR19UT19CX01BU0sgICAgICAgICAgIFZDNF9NQVNLKDksIDApCisjIGRlZmluZSBT Q0FMRVJfT0xFRENPRUYxX0dfVE9fQl9TSElGVCAgICAgICAgICAwCisKKyNkZWZpbmUgU0NBTEVS X09MRURDT0VGMiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwOGMKKyMgZGVmaW5lIFND QUxFUl9PTEVEQ09FRjJfUl9UT19SX01BU0sgICAgICAgICAgIFZDNF9NQVNLKDI5LCAyMCkKKyMg ZGVmaW5lIFNDQUxFUl9PTEVEQ09FRjJfUl9UT19SX1NISUZUICAgICAgICAgIDIwCisjIGRlZmlu ZSBTQ0FMRVJfT0xFRENPRUYyX1JfVE9fR19NQVNLICAgICAgICAgICBWQzRfTUFTSygxOSwgMTAp CisjIGRlZmluZSBTQ0FMRVJfT0xFRENPRUYyX1JfVE9fR19TSElGVCAgICAgICAgICAxMAorIyBk ZWZpbmUgU0NBTEVSX09MRURDT0VGMl9SX1RPX0JfTUFTSyAgICAgICAgICAgVkM0X01BU0soOSwg MCkKKyMgZGVmaW5lIFNDQUxFUl9PTEVEQ09FRjJfUl9UT19CX1NISUZUICAgICAgICAgIDAKKwor LyogU2xhdmUgYWRkcmVzc2VzIGZvciBETUFpbmcgZnJvbSBIVlMgY29tcG9zaXRpb24gb3V0cHV0 IHRvIG90aGVyCisgKiBkZXZpY2VzLiAgVGhlIHRvcCBiaXRzIGFyZSB2YWxpZCBvbmx5IGluICFG SUZPMzIgbW9kZS4KKyAqLworI2RlZmluZSBTQ0FMRVJfRElTUFNMQVZFMCAgICAgICAgICAgICAg ICAgICAgICAgMHgwMDAwMDBjMAorI2RlZmluZSBTQ0FMRVJfRElTUFNMQVZFMSAgICAgICAgICAg ICAgICAgICAgICAgMHgwMDAwMDBjOQorI2RlZmluZSBTQ0FMRVJfRElTUFNMQVZFMiAgICAgICAg ICAgICAgICAgICAgICAgMHgwMDAwMDBkMAorIyBkZWZpbmUgU0NBTEVSX0RJU1BTTEFWRV9JU1NV RV9WU1RBUlQgICAgICAgICAgQklUKDMxKQorIyBkZWZpbmUgU0NBTEVSX0RJU1BTTEFWRV9JU1NV RV9IU1RBUlQgICAgICAgICAgQklUKDMwKQorLyogU2V0IHdoZW4gdGhlIGN1cnJlbnQgbGluZSBo YXMgYmVlbiByZWFkIGFuZCBhbiBIU1RBUlQgaXMgcmVxdWlyZWQuICovCisjIGRlZmluZSBTQ0FM RVJfRElTUFNMQVZFX0VPTCAgICAgICAgICAgICAgICAgICBCSVQoMjYpCisvKiBTZXQgd2hlbiB0 aGUgZGlzcGxheSBGSUZPIGlzIGVtcHR5LiAqLworIyBkZWZpbmUgU0NBTEVSX0RJU1BTTEFWRV9F TVBUWSAgICAgICAgICAgICAgICAgQklUKDI1KQorLyogU2V0IHdoZW4gdGhlcmUgaXMgUkdCIGRh dGEgcmVhZHkgdG8gcmVhZC4gKi8KKyMgZGVmaW5lIFNDQUxFUl9ESVNQU0xBVkVfVkFMSUQgICAg ICAgICAgICAgICAgIEJJVCgyNCkKKyMgZGVmaW5lIFNDQUxFUl9ESVNQU0xBVkVfUkdCX01BU0sg ICAgICAgICAgICAgIFZDNF9NQVNLKDIzLCAwKQorIyBkZWZpbmUgU0NBTEVSX0RJU1BTTEFWRV9S R0JfU0hJRlQgICAgICAgICAgICAgMAorCiAjZGVmaW5lIFNDQUxFUl9HQU1EQVRBICAgICAgICAg ICAgICAgICAgICAgICAgICAweDAwMDAwMGUwCiAjZGVmaW5lIFNDQUxFUl9ETElTVF9TVEFSVCAg ICAgICAgICAgICAgICAgICAgICAweDAwMDAyMDAwCiAjZGVmaW5lIFNDQUxFUl9ETElTVF9TSVpF ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDA0MDAwCkBAIC03NjcsNiArODQ0LDEwIEBAIGVu dW0gaHZzX3BpeGVsX2Zvcm1hdCB7CiAJSFZTX1BJWEVMX0ZPUk1BVF9ZQ0JDUl9ZVVY0MjBfMlBM QU5FID0gOSwKIAlIVlNfUElYRUxfRk9STUFUX1lDQkNSX1lVVjQyMl8zUExBTkUgPSAxMCwKIAlI VlNfUElYRUxfRk9STUFUX1lDQkNSX1lVVjQyMl8yUExBTkUgPSAxMSwKKwlIVlNfUElYRUxfRk9S TUFUX0gyNjQgPSAxMiwKKwlIVlNfUElYRUxfRk9STUFUX1BBTEVUVEUgPSAxMywKKwlIVlNfUElY RUxfRk9STUFUX1lVVjQ0NF9SR0IgPSAxNCwKKwlIVlNfUElYRUxfRk9STUFUX0FZVVY0NDRfUkdC ID0gMTUsCiB9OwogCiAvKiBOb3RlOiB0aGUgTFNCIGlzIHRoZSByaWdodG1vc3QgY2hhcmFjdGVy IHNob3duLiAgT25seSB2YWxpZCBmb3IKQEAgLTgwMCwxMiArODgxLDI3IEBAIGVudW0gaHZzX3Bp eGVsX2Zvcm1hdCB7CiAjZGVmaW5lIFNDQUxFUl9DVEwwX1RJTElOR18xMjhCCQkJMgogI2RlZmlu ZSBTQ0FMRVJfQ1RMMF9USUxJTkdfMjU2Ql9PUl9UCQkzCiAKKyNkZWZpbmUgU0NBTEVSX0NUTDBf QUxQSEFfTUFTSyAgICAgICAgICAgICAgICAgIEJJVCgxOSkKICNkZWZpbmUgU0NBTEVSX0NUTDBf SEZMSVAgICAgICAgICAgICAgICAgICAgICAgIEJJVCgxNikKICNkZWZpbmUgU0NBTEVSX0NUTDBf VkZMSVAgICAgICAgICAgICAgICAgICAgICAgIEJJVCgxNSkKIAorI2RlZmluZSBTQ0FMRVJfQ1RM MF9LRVlfTU9ERV9NQVNLCQlWQzRfTUFTSygxOCwgMTcpCisjZGVmaW5lIFNDQUxFUl9DVEwwX0tF WV9NT0RFX1NISUZUCQkxNworI2RlZmluZSBTQ0FMRVJfQ1RMMF9LRVlfRElTQUJMRUQJCTAKKyNk ZWZpbmUgU0NBTEVSX0NUTDBfS0VZX0xVTUFfT1JfQ09NTU9OX1JHQgkxCisjZGVmaW5lIFNDQUxF Ul9DVEwwX0tFWV9NQVRDSAkJCTIgLyogdHVybiB0cmFuc3BhcmVudCAqLworI2RlZmluZSBTQ0FM RVJfQ1RMMF9LRVlfUkVQTEFDRQkJCTMgLyogcmVwbGFjZSB3aXRoIHZhbHVlIGZyb20ga2V5IG1h c2sgd29yZCAyICovCisKICNkZWZpbmUgU0NBTEVSX0NUTDBfT1JERVJfTUFTSwkJCVZDNF9NQVNL KDE0LCAxMykKICNkZWZpbmUgU0NBTEVSX0NUTDBfT1JERVJfU0hJRlQJCQkxMwogCisjZGVmaW5l IFNDQUxFUl9DVEwwX1JHQkFfRVhQQU5EX01BU0sJCVZDNF9NQVNLKDEyLCAxMSkKKyNkZWZpbmUg U0NBTEVSX0NUTDBfUkdCQV9FWFBBTkRfU0hJRlQJCTExCisjZGVmaW5lIFNDQUxFUl9DVEwwX1JH QkFfRVhQQU5EX1pFUk8JCTAKKyNkZWZpbmUgU0NBTEVSX0NUTDBfUkdCQV9FWFBBTkRfTFNCCQkx CisjZGVmaW5lIFNDQUxFUl9DVEwwX1JHQkFfRVhQQU5EX01TQgkJMgorI2RlZmluZSBTQ0FMRVJf Q1RMMF9SR0JBX0VYUEFORF9ST1VORAkJMworCiAjZGVmaW5lIFNDQUxFUl9DVEwwX1NDTDFfTUFT SwkJCVZDNF9NQVNLKDEwLCA4KQogI2RlZmluZSBTQ0FMRVJfQ1RMMF9TQ0wxX1NISUZUCQkJOAog Ci0tIAoyLjE2LjIKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bAo=