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=-12.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4FF0BC433DB for ; Fri, 8 Jan 2021 20:42:45 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 1591323A9C for ; Fri, 8 Jan 2021 20:42:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729694AbhAHUmo (ORCPT ); Fri, 8 Jan 2021 15:42:44 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56614 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729084AbhAHUmm (ORCPT ); Fri, 8 Jan 2021 15:42:42 -0500 Received: from mail-ot1-x329.google.com (mail-ot1-x329.google.com [IPv6:2607:f8b0:4864:20::329]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8A0B5C061380 for ; Fri, 8 Jan 2021 12:42:01 -0800 (PST) Received: by mail-ot1-x329.google.com with SMTP id 11so10928634oty.9 for ; Fri, 08 Jan 2021 12:42:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=4Y4X+Mb/A+zp2kjLTrCh286RdSf9uxhVlmUD1nGxQxQ=; b=cBluTZw/Bpzu/e/8hq+wcL5hP+tnaQyKhptLN89M8vAqH6G0n3Jlz0Z5lzIi13ooUF A82XdXMviUPcqllyAAKbY8uaoyUNv0r5MQNbjMdnmyFRd4v/2PeOn9TQPZJdgVQYlP6+ wgiVHbskEdHZkYkeJJW/cycv/nZp0z3U5mqEpwIf1rCBIXuZgUdzSj05I2FFbxrxHd0P 2q1EsFq4JSuhHtRw9HcEjqtVLQhTu9Pugy545ueYGWkRmPhOBmh0hnRsD+YH/bre2Tqd kp3XC0abOo+t58sJO+Bw9c1FWf47qqRm1eBtTERorD2v9MnxfN2+sO5bMvRXf+uiQ94X UANw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=4Y4X+Mb/A+zp2kjLTrCh286RdSf9uxhVlmUD1nGxQxQ=; b=FZaoSgFQ5Y3N+vjAmEfS8n6e7KZYv7kyh63vg/F6wY1RODoxDcfGM/tfWBH7WWiiLh V9JopWtN6FEJLJBGfhrupIELJzRykIdyUnBWLDRIB78iG1D6BbmDoRlmhdSAYdY8otaq OYrzPAaMWixmqgKIDaNSCRU5QRrDa0uRvGDfirf3/AlHOE9hjWCr4kTWEJCfVYsY/ShO GbalqASWu2yxVHyglpBBMOO4JbXzdHEHh4rqQWBdxrnrYvR7/BjndR/pjeTqZv//3/dE mKi+9GrMhC1AVgfEtVTtHzlwHnRXSR0317M7/zHEumteES6ooAo3rzU82Xc95wyZ4aQQ dXnw== X-Gm-Message-State: AOAM530I/5C5CKkmYkH7SfJuSfBed57q31z2aOYiUYdN6g8cFDJdQ34i xb9KeXCuY2qD6PMW0aMY7i60eO6+GfbqQJ3RGpTjT9Gf X-Google-Smtp-Source: ABdhPJyyURcwWbsGz6v4kikax/QZCdPMNW86PTtSeH3DM23kqcOhXdnY1RC04LQcdlcMtSa3mwua7YoxMtjuzTRUOhg= X-Received: by 2002:a05:6830:1d66:: with SMTP id l6mr3806493oti.23.1610138520972; Fri, 08 Jan 2021 12:42:00 -0800 (PST) MIME-Version: 1.0 References: <20210108201457.3078600-1-lee.jones@linaro.org> <20210108201457.3078600-19-lee.jones@linaro.org> In-Reply-To: <20210108201457.3078600-19-lee.jones@linaro.org> From: Alex Deucher Date: Fri, 8 Jan 2021 15:41:49 -0500 Message-ID: Subject: Re: [PATCH 18/40] drm/amd/display/dc/bios/bios_parser: Fix a whole bunch of legacy doc formatting To: Lee Jones Cc: Leo Li , LKML , amd-gfx list , David Airlie , Maling list - DRI developers , Alex Deucher , =?UTF-8?Q?Christian_K=C3=B6nig?= Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Applied. Thanks! Alex On Fri, Jan 8, 2021 at 3:15 PM Lee Jones wrote: > > Fixes the following W=3D1 kernel build warning(s): > > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:2588:16: war= ning: no previous prototype for =E2=80=98update_slot_layout_info=E2=80=99 [= -Wmissing-prototypes] > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:2692:16: war= ning: no previous prototype for =E2=80=98get_bracket_layout_record=E2=80=99= [-Wmissing-prototypes] > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:925: warning= : Function parameter or member 'dcb' not described in 'bios_parser_get_spre= ad_spectrum_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:925: warning= : Function parameter or member 'signal' not described in 'bios_parser_get_s= pread_spectrum_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:925: warning= : Function parameter or member 'index' not described in 'bios_parser_get_sp= read_spectrum_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:925: warning= : Function parameter or member 'ss_info' not described in 'bios_parser_get_= spread_spectrum_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:997: warning= : Function parameter or member 'bp' not described in 'get_ss_info_from_tbl' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:997: warning= : Function parameter or member 'id' not described in 'get_ss_info_from_tbl' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:997: warning= : Function parameter or member 'ss_info' not described in 'get_ss_info_from= _tbl' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1022: warnin= g: Function parameter or member 'bp' not described in 'get_ss_info_from_int= ernal_ss_info_tbl_V2_1' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1022: warnin= g: Function parameter or member 'id' not described in 'get_ss_info_from_int= ernal_ss_info_tbl_V2_1' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1022: warnin= g: Function parameter or member 'info' not described in 'get_ss_info_from_i= nternal_ss_info_tbl_V2_1' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1087: warnin= g: Function parameter or member 'bp' not described in 'get_ss_info_from_ss_= info_table' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1087: warnin= g: Function parameter or member 'id' not described in 'get_ss_info_from_ss_= info_table' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1087: warnin= g: Function parameter or member 'ss_info' not described in 'get_ss_info_fro= m_ss_info_table' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1469: warnin= g: Function parameter or member 'dcb' not described in 'bios_parser_get_enc= oder_cap_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1469: warnin= g: Function parameter or member 'object_id' not described in 'bios_parser_g= et_encoder_cap_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1469: warnin= g: Function parameter or member 'info' not described in 'bios_parser_get_en= coder_cap_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1508: warnin= g: Function parameter or member 'bp' not described in 'get_encoder_cap_reco= rd' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1508: warnin= g: Function parameter or member 'object' not described in 'get_encoder_cap_= record' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1566: warnin= g: Function parameter or member 'dcb' not described in 'bios_parser_get_ss_= entry_number' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1566: warnin= g: Function parameter or member 'signal' not described in 'bios_parser_get_= ss_entry_number' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1619: warnin= g: Function parameter or member 'bp' not described in 'get_ss_entry_number_= from_ss_info_tbl' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1619: warnin= g: Function parameter or member 'id' not described in 'get_ss_entry_number_= from_ss_info_tbl' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1686: warnin= g: Function parameter or member 'bp' not described in 'get_ss_entry_number' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1686: warnin= g: Function parameter or member 'id' not described in 'get_ss_entry_number' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1705: warnin= g: Function parameter or member 'bp' not described in 'get_ss_entry_number_= from_internal_ss_info_tbl_v2_1' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1705: warnin= g: Function parameter or member 'id' not described in 'get_ss_entry_number_= from_internal_ss_info_tbl_v2_1' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1740: warnin= g: Function parameter or member 'bp' not described in 'get_ss_entry_number_= from_internal_ss_info_tbl_V3_1' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1740: warnin= g: Function parameter or member 'id' not described in 'get_ss_entry_number_= from_internal_ss_info_tbl_V3_1' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1783: warnin= g: Function parameter or member 'dcb' not described in 'bios_parser_get_gpi= o_pin_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1783: warnin= g: Function parameter or member 'gpio_id' not described in 'bios_parser_get= _gpio_pin_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:1783: warnin= g: Function parameter or member 'info' not described in 'bios_parser_get_gp= io_pin_info' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:2211: warnin= g: Function parameter or member 'dcb' not described in 'bios_parser_set_scr= atch_critical_state' > drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.c:2211: warnin= g: Function parameter or member 'state' not described in 'bios_parser_set_s= cratch_critical_state' > > Cc: Harry Wentland > Cc: Leo Li > Cc: Alex Deucher > Cc: "Christian K=C3=B6nig" > Cc: David Airlie > Cc: Daniel Vetter > Cc: Lee Jones > Cc: amd-gfx@lists.freedesktop.org > Cc: dri-devel@lists.freedesktop.org > Signed-off-by: Lee Jones > --- > .../gpu/drm/amd/display/dc/bios/bios_parser.c | 115 +++++++++--------- > 1 file changed, 56 insertions(+), 59 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/dc/bios/bios_parser.c b/drivers/= gpu/drm/amd/display/dc/bios/bios_parser.c > index f054c5872c619..d2654c50b0b20 100644 > --- a/drivers/gpu/drm/amd/display/dc/bios/bios_parser.c > +++ b/drivers/gpu/drm/amd/display/dc/bios/bios_parser.c > @@ -911,11 +911,11 @@ static enum bp_result get_ss_info_from_tbl( > * ver 2.1 can co-exist with SS_Info table. Expect ASIC_InternalSS_Info = ver 3.1, > * there is only one entry for each signal /ss id. However, there is > * no planning of supporting multiple spread Sprectum entry for EverGree= n > - * @param [in] this > - * @param [in] signal, ASSignalType to be converted to info index > - * @param [in] index, number of entries that match the converted info in= dex > - * @param [out] ss_info, sprectrum information structure, > - * @return Bios parser result code > + * @dcb: pointer to the DC BIOS > + * @signal: ASSignalType to be converted to info index > + * @index: number of entries that match the converted info index > + * @ss_info: sprectrum information structure, > + * return: Bios parser result code > */ > static enum bp_result bios_parser_get_spread_spectrum_info( > struct dc_bios *dcb, > @@ -985,10 +985,10 @@ static enum bp_result get_ss_info_from_internal_ss_= info_tbl_V2_1( > * There can not be more than 1 entry for ASIC_InternalSS_Info Ver 2.1 = or > * SS_Info. > * > - * @param this > - * @param id, spread sprectrum info index > - * @param pSSinfo, sprectrum information structure, > - * @return Bios parser result code > + * @bp: pointer to the BIOS parser > + * @id: spread sprectrum info index > + * @ssinfo: sprectrum information structure, > + * return:: BIOS parser result code > */ > static enum bp_result get_ss_info_from_tbl( > struct bios_parser *bp, > @@ -1011,9 +1011,10 @@ static enum bp_result get_ss_info_from_tbl( > * from the VBIOS > * There will not be multiple entry for Ver 2.1 > * > - * @param id, spread sprectrum info index > - * @param pSSinfo, sprectrum information structure, > - * @return Bios parser result code > + * @bp: pointer to the Bios parser > + * @id: spread sprectrum info index > + * @info: sprectrum information structure, > + * return: Bios parser result code > */ > static enum bp_result get_ss_info_from_internal_ss_info_tbl_V2_1( > struct bios_parser *bp, > @@ -1076,9 +1077,10 @@ static enum bp_result get_ss_info_from_internal_ss= _info_tbl_V2_1( > * of entries that matches the id > * for, the SS_Info table, there should not be more than 1 entry match. > * > - * @param [in] id, spread sprectrum id > - * @param [out] pSSinfo, sprectrum information structure, > - * @return Bios parser result code > + * @bp: pointer to the Bios parser > + * @id: spread sprectrum id > + * @ss_info: sprectrum information structure, > + * return: Bios parser result code > */ > static enum bp_result get_ss_info_from_ss_info_table( > struct bios_parser *bp, > @@ -1451,16 +1453,14 @@ static enum bp_result get_embedded_panel_info_v1_= 3( > } > > /** > - * bios_parser_get_encoder_cap_info > + * bios_parser_get_encoder_cap_info - get encoder capability > + * information of input object id > * > - * @brief > - * Get encoder capability information of input object id > - * > - * @param object_id, Object id > - * @param object_id, encoder cap information structure > - * > - * @return Bios parser result code > + * @dcb: pointer to the DC BIOS > + * @object_id: object id > + * @info: encoder cap information structure > * > + * return: Bios parser result code > */ > static enum bp_result bios_parser_get_encoder_cap_info( > struct dc_bios *dcb, > @@ -1490,17 +1490,12 @@ static enum bp_result bios_parser_get_encoder_cap= _info( > } > > /** > - * get_encoder_cap_record > - * > - * @brief > - * Get encoder cap record for the object > - * > - * @param object, ATOM object > + * get_encoder_cap_record - Get encoder cap record for the object > * > - * @return atom encoder cap record > - * > - * @note > - * search all records to find the ATOM_ENCODER_CAP_RECORD_V2 record > + * @bp: pointer to the BIOS parser > + * @object: ATOM object > + * return: atom encoder cap record > + * note: search all records to find the ATOM_ENCODER_CAP_RECORD_V2 r= ecord > */ > static ATOM_ENCODER_CAP_RECORD_V2 *get_encoder_cap_record( > struct bios_parser *bp, > @@ -1557,8 +1552,9 @@ static uint32_t get_ss_entry_number_from_ss_info_tb= l( > * Get Number of SpreadSpectrum Entry from the ASIC_InternalSS_Info tabl= e from > * the VBIOS that match the SSid (to be converted from signal) > * > - * @param[in] signal, ASSignalType to be converted to SSid > - * @return number of SS Entry that match the signal > + * @dcb: pointer to the DC BIOS > + * @signal: ASSignalType to be converted to SSid > + * return: number of SS Entry that match the signal > */ > static uint32_t bios_parser_get_ss_entry_number( > struct dc_bios *dcb, > @@ -1608,10 +1604,10 @@ static uint32_t bios_parser_get_ss_entry_number( > * get_ss_entry_number_from_ss_info_tbl > * Get Number of spread spectrum entry from the SS_Info table from the V= BIOS. > * > - * @note There can only be one entry for each id for SS_Info Table > - * > - * @param [in] id, spread spectrum id > - * @return number of SS Entry that match the id > + * @bp: pointer to the BIOS parser > + * @id: spread spectrum id > + * return: number of SS Entry that match the id > + * note: There can only be one entry for each id for SS_Info Table > */ > static uint32_t get_ss_entry_number_from_ss_info_tbl( > struct bios_parser *bp, > @@ -1679,8 +1675,9 @@ static uint32_t get_ss_entry_number_from_ss_info_tb= l( > * There can not be more than 1 entry for ASIC_InternalSS_Info Ver 2.1 = or > * SS_Info. > * > - * @param id, spread sprectrum info index > - * @return Bios parser result code > + * @bp: pointer to the BIOS parser > + * @id: spread sprectrum info index > + * return: Bios parser result code > */ > static uint32_t get_ss_entry_number(struct bios_parser *bp, uint32_t id) > { > @@ -1696,8 +1693,9 @@ static uint32_t get_ss_entry_number(struct bios_par= ser *bp, uint32_t id) > * Ver 2.1 from the VBIOS > * There will not be multiple entry for Ver 2.1 > * > - * @param id, spread sprectrum info index > - * @return number of SS Entry that match the id > + * @bp: pointer to the BIOS parser > + * @id: spread sprectrum info index > + * return: number of SS Entry that match the id > */ > static uint32_t get_ss_entry_number_from_internal_ss_info_tbl_v2_1( > struct bios_parser *bp, > @@ -1731,8 +1729,9 @@ static uint32_t get_ss_entry_number_from_internal_s= s_info_tbl_v2_1( > * Get Number of SpreadSpectrum Entry from the ASIC_InternalSS_Info tabl= e of > * the VBIOS that matches id > * > - * @param[in] id, spread sprectrum id > - * @return number of SS Entry that match the id > + * @bp: pointer to the BIOS parser > + * @id: spread sprectrum id > + * return: number of SS Entry that match the id > */ > static uint32_t get_ss_entry_number_from_internal_ss_info_tbl_V3_1( > struct bios_parser *bp, > @@ -1767,10 +1766,11 @@ static uint32_t get_ss_entry_number_from_internal= _ss_info_tbl_V3_1( > * bios_parser_get_gpio_pin_info > * Get GpioPin information of input gpio id > * > - * @param gpio_id, GPIO ID > - * @param info, GpioPin information structure > - * @return Bios parser result code > - * @note > + * @dcb: pointer to the DC BIOS > + * @gpio_id: GPIO ID > + * @info: GpioPin information structure > + * return: Bios parser result code > + * note: > * to get the GPIO PIN INFO, we need: > * 1. get the GPIO_ID from other object table, see GetHPDInfo() > * 2. in DATA_TABLE.GPIO_Pin_LUT, search all records, to get the regist= erA > @@ -2197,13 +2197,10 @@ static uint32_t get_support_mask_for_device_id(st= ruct device_id device_id) > } > > /** > - * bios_parser_set_scratch_critical_state > - * > - * @brief > - * update critical state bit in VBIOS scratch register > - * > - * @param > - * bool - to set or reset state > + * bios_parser_set_scratch_critical_state - update critical state > + * bit in VBIOS scratch registe= r > + * @dcb: pointer to the DC BIOS > + * @state: set or reset state > */ > static void bios_parser_set_scratch_critical_state( > struct dc_bios *dcb, > @@ -2222,7 +2219,7 @@ static void bios_parser_set_scratch_critical_state( > * bios_parser *bp - [in]BIOS parser handler to get master data table > * integrated_info *info - [out] store and output integrated info > * > - * @return > + * return: > * enum bp_result - BP_RESULT_OK if information is available, > * BP_RESULT_BADBIOSTABLE otherwise. > */ > @@ -2372,7 +2369,7 @@ static enum bp_result get_integrated_info_v8( > * bios_parser *bp - [in]BIOS parser handler to get master data table > * integrated_info *info - [out] store and output integrated info > * > - * @return > + * return: > * enum bp_result - BP_RESULT_OK if information is available, > * BP_RESULT_BADBIOSTABLE otherwise. > */ > @@ -2509,7 +2506,7 @@ static enum bp_result get_integrated_info_v9( > * bios_parser *bp - [in]BIOS parser handler to get master data table > * integrated_info *info - [out] store and output integrated info > * > - * @return > + * return: > * enum bp_result - BP_RESULT_OK if information is available, > * BP_RESULT_BADBIOSTABLE otherwise. > */ > -- > 2.25.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel 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=-10.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8E8D9C4332D for ; Fri, 8 Jan 2021 20:42:03 +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 3208D23A68 for ; Fri, 8 Jan 2021 20:42:03 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3208D23A68 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com 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 7F0826E8D8; Fri, 8 Jan 2021 20:42:02 +0000 (UTC) Received: from mail-ot1-x333.google.com (mail-ot1-x333.google.com [IPv6:2607:f8b0:4864:20::333]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9DC456E8D8; Fri, 8 Jan 2021 20:42:01 +0000 (UTC) Received: by mail-ot1-x333.google.com with SMTP id n42so10920576ota.12; Fri, 08 Jan 2021 12:42:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=4Y4X+Mb/A+zp2kjLTrCh286RdSf9uxhVlmUD1nGxQxQ=; b=cBluTZw/Bpzu/e/8hq+wcL5hP+tnaQyKhptLN89M8vAqH6G0n3Jlz0Z5lzIi13ooUF A82XdXMviUPcqllyAAKbY8uaoyUNv0r5MQNbjMdnmyFRd4v/2PeOn9TQPZJdgVQYlP6+ wgiVHbskEdHZkYkeJJW/cycv/nZp0z3U5mqEpwIf1rCBIXuZgUdzSj05I2FFbxrxHd0P 2q1EsFq4JSuhHtRw9HcEjqtVLQhTu9Pugy545ueYGWkRmPhOBmh0hnRsD+YH/bre2Tqd kp3XC0abOo+t58sJO+Bw9c1FWf47qqRm1eBtTERorD2v9MnxfN2+sO5bMvRXf+uiQ94X UANw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=4Y4X+Mb/A+zp2kjLTrCh286RdSf9uxhVlmUD1nGxQxQ=; b=kTlfOf5fgs0Iwi9P5OXDjZGknhvyVDNMg1ffaPKpJ6sKybw32jGATA3SgzbGs18NNA DTruLmHOhyr5YOFHuBb8nMeQy14SBzumN8yK3fnombzrXpVWGs8EZ2VqgCwoYVMf5UWB r9yai/mNIBhguOedfaLPRgRvJxLC3d7xxHOxz4GDlwMnhenaloLz9/C9DN/nRp/SXTOZ kRK3NX2AaAii4xR3tR63XtyLKgt+Rl82avF9UXux6tt//pJz638xytA/9prLQ4WMwcpv HDAgnzEcAYkmnS7B7vAFDqMU9cipq+YH0RLjqyq5T9UAOo9Ypw5LmL5/7rXwdiCL9MUU 97Ug== X-Gm-Message-State: AOAM533Qnfmn9arUCHyrjr9eOmXGhEVMvJr1SP9Ji+xKAYQvqxLEiXsU XOUaWz9PxfheX+6u7w1hYqN26QYbOeG4ENcaYMg= X-Google-Smtp-Source: ABdhPJyyURcwWbsGz6v4kikax/QZCdPMNW86PTtSeH3DM23kqcOhXdnY1RC04LQcdlcMtSa3mwua7YoxMtjuzTRUOhg= X-Received: by 2002:a05:6830:1d66:: with SMTP id l6mr3806493oti.23.1610138520972; Fri, 08 Jan 2021 12:42:00 -0800 (PST) MIME-Version: 1.0 References: <20210108201457.3078600-1-lee.jones@linaro.org> <20210108201457.3078600-19-lee.jones@linaro.org> In-Reply-To: <20210108201457.3078600-19-lee.jones@linaro.org> From: Alex Deucher Date: Fri, 8 Jan 2021 15:41:49 -0500 Message-ID: Subject: Re: [PATCH 18/40] drm/amd/display/dc/bios/bios_parser: Fix a whole bunch of legacy doc formatting To: Lee Jones 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: Leo Li , LKML , Maling list - DRI developers , David Airlie , amd-gfx list , Alex Deucher , =?UTF-8?Q?Christian_K=C3=B6nig?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" QXBwbGllZC4gIFRoYW5rcyEKCkFsZXgKCk9uIEZyaSwgSmFuIDgsIDIwMjEgYXQgMzoxNSBQTSBM ZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8ub3JnPiB3cm90ZToKPgo+IEZpeGVzIHRoZSBmb2xs b3dpbmcgVz0xIGtlcm5lbCBidWlsZCB3YXJuaW5nKHMpOgo+Cj4gIGRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjI1ODg6MTY6IHdhcm5p bmc6IG5vIHByZXZpb3VzIHByb3RvdHlwZSBmb3Ig4oCYdXBkYXRlX3Nsb3RfbGF5b3V0X2luZm/i gJkgWy1XbWlzc2luZy1wcm90b3R5cGVzXQo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8u Li9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJzZXIuYzoyNjkyOjE2OiB3YXJuaW5nOiBubyBwcmV2 aW91cyBwcm90b3R5cGUgZm9yIOKAmGdldF9icmFja2V0X2xheW91dF9yZWNvcmTigJkgWy1XbWlz c2luZy1wcm90b3R5cGVzXQo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5 L2RjL2Jpb3MvYmlvc19wYXJzZXIuYzo5MjU6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBv ciBtZW1iZXIgJ2RjYicgbm90IGRlc2NyaWJlZCBpbiAnYmlvc19wYXJzZXJfZ2V0X3NwcmVhZF9z cGVjdHJ1bV9pbmZvJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2Rj L2Jpb3MvYmlvc19wYXJzZXIuYzo5MjU6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBt ZW1iZXIgJ3NpZ25hbCcgbm90IGRlc2NyaWJlZCBpbiAnYmlvc19wYXJzZXJfZ2V0X3NwcmVhZF9z cGVjdHJ1bV9pbmZvJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2Rj L2Jpb3MvYmlvc19wYXJzZXIuYzo5MjU6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBt ZW1iZXIgJ2luZGV4JyBub3QgZGVzY3JpYmVkIGluICdiaW9zX3BhcnNlcl9nZXRfc3ByZWFkX3Nw ZWN0cnVtX2luZm8nCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMv Ymlvcy9iaW9zX3BhcnNlci5jOjkyNTogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1l bWJlciAnc3NfaW5mbycgbm90IGRlc2NyaWJlZCBpbiAnYmlvc19wYXJzZXJfZ2V0X3NwcmVhZF9z cGVjdHJ1bV9pbmZvJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2Rj L2Jpb3MvYmlvc19wYXJzZXIuYzo5OTc6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBt ZW1iZXIgJ2JwJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfaW5mb19mcm9tX3RibCcKPiAgZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6 OTk3OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdpZCcgbm90IGRlc2Ny aWJlZCBpbiAnZ2V0X3NzX2luZm9fZnJvbV90YmwnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjk5Nzogd2FybmluZzogRnVuY3Rp b24gcGFyYW1ldGVyIG9yIG1lbWJlciAnc3NfaW5mbycgbm90IGRlc2NyaWJlZCBpbiAnZ2V0X3Nz X2luZm9fZnJvbV90YmwnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkv ZGMvYmlvcy9iaW9zX3BhcnNlci5jOjEwMjI6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBv ciBtZW1iZXIgJ2JwJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfaW5mb19mcm9tX2ludGVybmFs X3NzX2luZm9fdGJsX1YyXzEnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3Bs YXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjEwMjI6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRl ciBvciBtZW1iZXIgJ2lkJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfaW5mb19mcm9tX2ludGVy bmFsX3NzX2luZm9fdGJsX1YyXzEnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rp c3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjEwMjI6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFt ZXRlciBvciBtZW1iZXIgJ2luZm8nIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9zc19pbmZvX2Zyb21f aW50ZXJuYWxfc3NfaW5mb190YmxfVjJfMScKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv Li4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6MTA4Nzogd2FybmluZzogRnVuY3Rpb24g cGFyYW1ldGVyIG9yIG1lbWJlciAnYnAnIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9zc19pbmZvX2Zy b21fc3NfaW5mb190YWJsZScKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxh eS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6MTA4Nzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVy IG9yIG1lbWJlciAnaWQnIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9zc19pbmZvX2Zyb21fc3NfaW5m b190YWJsZScKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9z L2Jpb3NfcGFyc2VyLmM6MTA4Nzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJl ciAnc3NfaW5mbycgbm90IGRlc2NyaWJlZCBpbiAnZ2V0X3NzX2luZm9fZnJvbV9zc19pbmZvX3Rh YmxlJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlv c19wYXJzZXIuYzoxNDY5OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdk Y2InIG5vdCBkZXNjcmliZWQgaW4gJ2Jpb3NfcGFyc2VyX2dldF9lbmNvZGVyX2NhcF9pbmZvJwo+ ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJz ZXIuYzoxNDY5OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdvYmplY3Rf aWQnIG5vdCBkZXNjcmliZWQgaW4gJ2Jpb3NfcGFyc2VyX2dldF9lbmNvZGVyX2NhcF9pbmZvJwo+ ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJz ZXIuYzoxNDY5OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdpbmZvJyBu b3QgZGVzY3JpYmVkIGluICdiaW9zX3BhcnNlcl9nZXRfZW5jb2Rlcl9jYXBfaW5mbycKPiAgZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6 MTUwODogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnYnAnIG5vdCBkZXNj cmliZWQgaW4gJ2dldF9lbmNvZGVyX2NhcF9yZWNvcmQnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjE1MDg6IHdhcm5pbmc6IEZ1 bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ29iamVjdCcgbm90IGRlc2NyaWJlZCBpbiAnZ2V0 X2VuY29kZXJfY2FwX3JlY29yZCcKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlz cGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6MTU2Njogd2FybmluZzogRnVuY3Rpb24gcGFyYW1l dGVyIG9yIG1lbWJlciAnZGNiJyBub3QgZGVzY3JpYmVkIGluICdiaW9zX3BhcnNlcl9nZXRfc3Nf ZW50cnlfbnVtYmVyJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2Rj L2Jpb3MvYmlvc19wYXJzZXIuYzoxNTY2OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3Ig bWVtYmVyICdzaWduYWwnIG5vdCBkZXNjcmliZWQgaW4gJ2Jpb3NfcGFyc2VyX2dldF9zc19lbnRy eV9udW1iZXInCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlv cy9iaW9zX3BhcnNlci5jOjE2MTk6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1i ZXIgJ2JwJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21fc3NfaW5m b190YmwnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9i aW9zX3BhcnNlci5jOjE2MTk6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIg J2lkJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21fc3NfaW5mb190 YmwnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9z X3BhcnNlci5jOjE2ODY6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2Jw JyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfZW50cnlfbnVtYmVyJwo+ICBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJzZXIuYzoxNjg2OiB3YXJu aW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdpZCcgbm90IGRlc2NyaWJlZCBpbiAn Z2V0X3NzX2VudHJ5X251bWJlcicKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlz cGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6MTcwNTogd2FybmluZzogRnVuY3Rpb24gcGFyYW1l dGVyIG9yIG1lbWJlciAnYnAnIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9zc19lbnRyeV9udW1iZXJf ZnJvbV9pbnRlcm5hbF9zc19pbmZvX3RibF92Ml8xJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJzZXIuYzoxNzA1OiB3YXJuaW5nOiBGdW5j dGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdpZCcgbm90IGRlc2NyaWJlZCBpbiAnZ2V0X3NzX2Vu dHJ5X251bWJlcl9mcm9tX2ludGVybmFsX3NzX2luZm9fdGJsX3YyXzEnCj4gIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjE3NDA6IHdh cm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2JwJyBub3QgZGVzY3JpYmVkIGlu ICdnZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21faW50ZXJuYWxfc3NfaW5mb190YmxfVjNfMScKPiAg ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2Vy LmM6MTc0MDogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnaWQnIG5vdCBk ZXNjcmliZWQgaW4gJ2dldF9zc19lbnRyeV9udW1iZXJfZnJvbV9pbnRlcm5hbF9zc19pbmZvX3Ri bF9WM18xJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3Mv Ymlvc19wYXJzZXIuYzoxNzgzOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVy ICdkY2InIG5vdCBkZXNjcmliZWQgaW4gJ2Jpb3NfcGFyc2VyX2dldF9ncGlvX3Bpbl9pbmZvJwo+ ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJz ZXIuYzoxNzgzOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdncGlvX2lk JyBub3QgZGVzY3JpYmVkIGluICdiaW9zX3BhcnNlcl9nZXRfZ3Bpb19waW5faW5mbycKPiAgZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6 MTc4Mzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnaW5mbycgbm90IGRl c2NyaWJlZCBpbiAnYmlvc19wYXJzZXJfZ2V0X2dwaW9fcGluX2luZm8nCj4gIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjIyMTE6IHdh cm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2RjYicgbm90IGRlc2NyaWJlZCBp biAnYmlvc19wYXJzZXJfc2V0X3NjcmF0Y2hfY3JpdGljYWxfc3RhdGUnCj4gIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjIyMTE6IHdh cm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ3N0YXRlJyBub3QgZGVzY3JpYmVk IGluICdiaW9zX3BhcnNlcl9zZXRfc2NyYXRjaF9jcml0aWNhbF9zdGF0ZScKPgo+IENjOiBIYXJy eSBXZW50bGFuZCA8aGFycnkud2VudGxhbmRAYW1kLmNvbT4KPiBDYzogTGVvIExpIDxzdW5wZW5n LmxpQGFtZC5jb20+Cj4gQ2M6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1kLmNv bT4KPiBDYzogIkNocmlzdGlhbiBLw7ZuaWciIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+Cj4g Q2M6IERhdmlkIEFpcmxpZSA8YWlybGllZEBsaW51eC5pZT4KPiBDYzogRGFuaWVsIFZldHRlciA8 ZGFuaWVsQGZmd2xsLmNoPgo+IENjOiBMZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8ub3JnPgo+ IENjOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IENjOiBkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCj4gU2lnbmVkLW9mZi1ieTogTGVlIEpvbmVzIDxsZWUuam9uZXNAbGlu YXJvLm9yZz4KPiAtLS0KPiAgLi4uL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3Bh cnNlci5jIHwgMTE1ICsrKysrKysrKy0tLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgNTYgaW5z ZXJ0aW9ucygrKSwgNTkgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJzZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmMKPiBpbmRleCBmMDU0YzU4NzJjNjE5Li5k MjY1NGM1MGIwYjIwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9k Yy9iaW9zL2Jpb3NfcGFyc2VyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkv ZGMvYmlvcy9iaW9zX3BhcnNlci5jCj4gQEAgLTkxMSwxMSArOTExLDExIEBAIHN0YXRpYyBlbnVt IGJwX3Jlc3VsdCBnZXRfc3NfaW5mb19mcm9tX3RibCgKPiAgICogdmVyIDIuMSBjYW4gY28tZXhp c3Qgd2l0aCBTU19JbmZvIHRhYmxlLiBFeHBlY3QgQVNJQ19JbnRlcm5hbFNTX0luZm8gdmVyIDMu MSwKPiAgICogdGhlcmUgaXMgb25seSBvbmUgZW50cnkgZm9yIGVhY2ggc2lnbmFsIC9zcyBpZC4g IEhvd2V2ZXIsIHRoZXJlIGlzCj4gICAqIG5vIHBsYW5uaW5nIG9mIHN1cHBvcnRpbmcgbXVsdGlw bGUgc3ByZWFkIFNwcmVjdHVtIGVudHJ5IGZvciBFdmVyR3JlZW4KPiAtICogQHBhcmFtIFtpbl0g dGhpcwo+IC0gKiBAcGFyYW0gW2luXSBzaWduYWwsIEFTU2lnbmFsVHlwZSB0byBiZSBjb252ZXJ0 ZWQgdG8gaW5mbyBpbmRleAo+IC0gKiBAcGFyYW0gW2luXSBpbmRleCwgbnVtYmVyIG9mIGVudHJp ZXMgdGhhdCBtYXRjaCB0aGUgY29udmVydGVkIGluZm8gaW5kZXgKPiAtICogQHBhcmFtIFtvdXRd IHNzX2luZm8sIHNwcmVjdHJ1bSBpbmZvcm1hdGlvbiBzdHJ1Y3R1cmUsCj4gLSAqIEByZXR1cm4g QmlvcyBwYXJzZXIgcmVzdWx0IGNvZGUKPiArICogQGRjYjogICAgIHBvaW50ZXIgdG8gdGhlIERD IEJJT1MKPiArICogQHNpZ25hbDogIEFTU2lnbmFsVHlwZSB0byBiZSBjb252ZXJ0ZWQgdG8gaW5m byBpbmRleAo+ICsgKiBAaW5kZXg6ICAgbnVtYmVyIG9mIGVudHJpZXMgdGhhdCBtYXRjaCB0aGUg Y29udmVydGVkIGluZm8gaW5kZXgKPiArICogQHNzX2luZm86IHNwcmVjdHJ1bSBpbmZvcm1hdGlv biBzdHJ1Y3R1cmUsCj4gKyAqIHJldHVybjogICBCaW9zIHBhcnNlciByZXN1bHQgY29kZQo+ICAg Ki8KPiAgc3RhdGljIGVudW0gYnBfcmVzdWx0IGJpb3NfcGFyc2VyX2dldF9zcHJlYWRfc3BlY3Ry dW1faW5mbygKPiAgICAgICAgIHN0cnVjdCBkY19iaW9zICpkY2IsCj4gQEAgLTk4NSwxMCArOTg1 LDEwIEBAIHN0YXRpYyBlbnVtIGJwX3Jlc3VsdCBnZXRfc3NfaW5mb19mcm9tX2ludGVybmFsX3Nz X2luZm9fdGJsX1YyXzEoCj4gICAqIFRoZXJlIGNhbiBub3QgYmUgbW9yZSB0aGFuIDEgZW50cnkg Zm9yICBBU0lDX0ludGVybmFsU1NfSW5mbyBWZXIgMi4xIG9yCj4gICAqIFNTX0luZm8uCj4gICAq Cj4gLSAqIEBwYXJhbSB0aGlzCj4gLSAqIEBwYXJhbSBpZCwgc3ByZWFkIHNwcmVjdHJ1bSBpbmZv IGluZGV4Cj4gLSAqIEBwYXJhbSBwU1NpbmZvLCBzcHJlY3RydW0gaW5mb3JtYXRpb24gc3RydWN0 dXJlLAo+IC0gKiBAcmV0dXJuIEJpb3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gKyAqIEBicDogICAg ICBwb2ludGVyIHRvIHRoZSBCSU9TIHBhcnNlcgo+ICsgKiBAaWQ6ICAgICAgc3ByZWFkIHNwcmVj dHJ1bSBpbmZvIGluZGV4Cj4gKyAqIEBzc2luZm86ICBzcHJlY3RydW0gaW5mb3JtYXRpb24gc3Ry dWN0dXJlLAo+ICsgKiByZXR1cm46OiAgQklPUyBwYXJzZXIgcmVzdWx0IGNvZGUKPiAgICovCj4g IHN0YXRpYyBlbnVtIGJwX3Jlc3VsdCBnZXRfc3NfaW5mb19mcm9tX3RibCgKPiAgICAgICAgIHN0 cnVjdCBiaW9zX3BhcnNlciAqYnAsCj4gQEAgLTEwMTEsOSArMTAxMSwxMCBAQCBzdGF0aWMgZW51 bSBicF9yZXN1bHQgZ2V0X3NzX2luZm9fZnJvbV90YmwoCj4gICAqIGZyb20gdGhlIFZCSU9TCj4g ICAqIFRoZXJlIHdpbGwgbm90IGJlIG11bHRpcGxlIGVudHJ5IGZvciBWZXIgMi4xCj4gICAqCj4g LSAqIEBwYXJhbSBpZCwgc3ByZWFkIHNwcmVjdHJ1bSBpbmZvIGluZGV4Cj4gLSAqIEBwYXJhbSBw U1NpbmZvLCBzcHJlY3RydW0gaW5mb3JtYXRpb24gc3RydWN0dXJlLAo+IC0gKiBAcmV0dXJuIEJp b3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gKyAqIEBicDogICAgcG9pbnRlciB0byB0aGUgQmlvcyBw YXJzZXIKPiArICogQGlkOiAgICBzcHJlYWQgc3ByZWN0cnVtIGluZm8gaW5kZXgKPiArICogQGlu Zm86ICBzcHJlY3RydW0gaW5mb3JtYXRpb24gc3RydWN0dXJlLAo+ICsgKiByZXR1cm46IEJpb3Mg cGFyc2VyIHJlc3VsdCBjb2RlCj4gICAqLwo+ICBzdGF0aWMgZW51bSBicF9yZXN1bHQgZ2V0X3Nz X2luZm9fZnJvbV9pbnRlcm5hbF9zc19pbmZvX3RibF9WMl8xKAo+ICAgICAgICAgc3RydWN0IGJp b3NfcGFyc2VyICpicCwKPiBAQCAtMTA3Niw5ICsxMDc3LDEwIEBAIHN0YXRpYyBlbnVtIGJwX3Jl c3VsdCBnZXRfc3NfaW5mb19mcm9tX2ludGVybmFsX3NzX2luZm9fdGJsX1YyXzEoCj4gICAqIG9m IGVudHJpZXMgdGhhdCBtYXRjaGVzIHRoZSBpZAo+ICAgKiBmb3IsIHRoZSBTU19JbmZvIHRhYmxl LCB0aGVyZSBzaG91bGQgbm90IGJlIG1vcmUgdGhhbiAxIGVudHJ5IG1hdGNoLgo+ICAgKgo+IC0g KiBAcGFyYW0gW2luXSBpZCwgc3ByZWFkIHNwcmVjdHJ1bSBpZAo+IC0gKiBAcGFyYW0gW291dF0g cFNTaW5mbywgc3ByZWN0cnVtIGluZm9ybWF0aW9uIHN0cnVjdHVyZSwKPiAtICogQHJldHVybiBC aW9zIHBhcnNlciByZXN1bHQgY29kZQo+ICsgKiBAYnA6ICAgICAgcG9pbnRlciB0byB0aGUgQmlv cyBwYXJzZXIKPiArICogQGlkOiAgICAgIHNwcmVhZCBzcHJlY3RydW0gaWQKPiArICogQHNzX2lu Zm86IHNwcmVjdHJ1bSBpbmZvcm1hdGlvbiBzdHJ1Y3R1cmUsCj4gKyAqIHJldHVybjogICBCaW9z IHBhcnNlciByZXN1bHQgY29kZQo+ICAgKi8KPiAgc3RhdGljIGVudW0gYnBfcmVzdWx0IGdldF9z c19pbmZvX2Zyb21fc3NfaW5mb190YWJsZSgKPiAgICAgICAgIHN0cnVjdCBiaW9zX3BhcnNlciAq YnAsCj4gQEAgLTE0NTEsMTYgKzE0NTMsMTQgQEAgc3RhdGljIGVudW0gYnBfcmVzdWx0IGdldF9l bWJlZGRlZF9wYW5lbF9pbmZvX3YxXzMoCj4gIH0KPgo+ICAvKioKPiAtICogYmlvc19wYXJzZXJf Z2V0X2VuY29kZXJfY2FwX2luZm8KPiArICogYmlvc19wYXJzZXJfZ2V0X2VuY29kZXJfY2FwX2lu Zm8gLSBnZXQgZW5jb2RlciBjYXBhYmlsaXR5Cj4gKyAqICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaW5mb3JtYXRpb24gb2YgaW5wdXQgb2JqZWN0IGlkCj4gICAqCj4gLSAqIEBi cmllZgo+IC0gKiAgR2V0IGVuY29kZXIgY2FwYWJpbGl0eSBpbmZvcm1hdGlvbiBvZiBpbnB1dCBv YmplY3QgaWQKPiAtICoKPiAtICogQHBhcmFtIG9iamVjdF9pZCwgT2JqZWN0IGlkCj4gLSAqIEBw YXJhbSBvYmplY3RfaWQsIGVuY29kZXIgY2FwIGluZm9ybWF0aW9uIHN0cnVjdHVyZQo+IC0gKgo+ IC0gKiBAcmV0dXJuIEJpb3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gKyAqIEBkY2I6ICAgICAgIHBv aW50ZXIgdG8gdGhlIERDIEJJT1MKPiArICogQG9iamVjdF9pZDogb2JqZWN0IGlkCj4gKyAqIEBp bmZvOiAgICAgIGVuY29kZXIgY2FwIGluZm9ybWF0aW9uIHN0cnVjdHVyZQo+ICAgKgo+ICsgKiBy ZXR1cm46IEJpb3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gICAqLwo+ICBzdGF0aWMgZW51bSBicF9y ZXN1bHQgYmlvc19wYXJzZXJfZ2V0X2VuY29kZXJfY2FwX2luZm8oCj4gICAgICAgICBzdHJ1Y3Qg ZGNfYmlvcyAqZGNiLAo+IEBAIC0xNDkwLDE3ICsxNDkwLDEyIEBAIHN0YXRpYyBlbnVtIGJwX3Jl c3VsdCBiaW9zX3BhcnNlcl9nZXRfZW5jb2Rlcl9jYXBfaW5mbygKPiAgfQo+Cj4gIC8qKgo+IC0g KiBnZXRfZW5jb2Rlcl9jYXBfcmVjb3JkCj4gLSAqCj4gLSAqIEBicmllZgo+IC0gKiAgR2V0IGVu Y29kZXIgY2FwIHJlY29yZCBmb3IgdGhlIG9iamVjdAo+IC0gKgo+IC0gKiBAcGFyYW0gb2JqZWN0 LCBBVE9NIG9iamVjdAo+ICsgKiBnZXRfZW5jb2Rlcl9jYXBfcmVjb3JkIC0gR2V0IGVuY29kZXIg Y2FwIHJlY29yZCBmb3IgdGhlIG9iamVjdAo+ICAgKgo+IC0gKiBAcmV0dXJuIGF0b20gZW5jb2Rl ciBjYXAgcmVjb3JkCj4gLSAqCj4gLSAqIEBub3RlCj4gLSAqICBzZWFyY2ggYWxsIHJlY29yZHMg dG8gZmluZCB0aGUgQVRPTV9FTkNPREVSX0NBUF9SRUNPUkRfVjIgcmVjb3JkCj4gKyAqIEBicDog ICAgICBwb2ludGVyIHRvIHRoZSBCSU9TIHBhcnNlcgo+ICsgKiBAb2JqZWN0OiAgQVRPTSBvYmpl Y3QKPiArICogcmV0dXJuOiAgIGF0b20gZW5jb2RlciBjYXAgcmVjb3JkCj4gKyAqIG5vdGU6ICAg ICBzZWFyY2ggYWxsIHJlY29yZHMgdG8gZmluZCB0aGUgQVRPTV9FTkNPREVSX0NBUF9SRUNPUkRf VjIgcmVjb3JkCj4gICAqLwo+ICBzdGF0aWMgQVRPTV9FTkNPREVSX0NBUF9SRUNPUkRfVjIgKmdl dF9lbmNvZGVyX2NhcF9yZWNvcmQoCj4gICAgICAgICBzdHJ1Y3QgYmlvc19wYXJzZXIgKmJwLAo+ IEBAIC0xNTU3LDggKzE1NTIsOSBAQCBzdGF0aWMgdWludDMyX3QgZ2V0X3NzX2VudHJ5X251bWJl cl9mcm9tX3NzX2luZm9fdGJsKAo+ICAgKiBHZXQgTnVtYmVyIG9mIFNwcmVhZFNwZWN0cnVtIEVu dHJ5IGZyb20gdGhlIEFTSUNfSW50ZXJuYWxTU19JbmZvIHRhYmxlIGZyb20KPiAgICogdGhlIFZC SU9TIHRoYXQgbWF0Y2ggdGhlIFNTaWQgKHRvIGJlIGNvbnZlcnRlZCBmcm9tIHNpZ25hbCkKPiAg ICoKPiAtICogQHBhcmFtW2luXSBzaWduYWwsIEFTU2lnbmFsVHlwZSB0byBiZSBjb252ZXJ0ZWQg dG8gU1NpZAo+IC0gKiBAcmV0dXJuIG51bWJlciBvZiBTUyBFbnRyeSB0aGF0IG1hdGNoIHRoZSBz aWduYWwKPiArICogQGRjYjogICAgcG9pbnRlciB0byB0aGUgREMgQklPUwo+ICsgKiBAc2lnbmFs OiBBU1NpZ25hbFR5cGUgdG8gYmUgY29udmVydGVkIHRvIFNTaWQKPiArICogcmV0dXJuOiBudW1i ZXIgb2YgU1MgRW50cnkgdGhhdCBtYXRjaCB0aGUgc2lnbmFsCj4gICAqLwo+ICBzdGF0aWMgdWlu dDMyX3QgYmlvc19wYXJzZXJfZ2V0X3NzX2VudHJ5X251bWJlcigKPiAgICAgICAgIHN0cnVjdCBk Y19iaW9zICpkY2IsCj4gQEAgLTE2MDgsMTAgKzE2MDQsMTAgQEAgc3RhdGljIHVpbnQzMl90IGJp b3NfcGFyc2VyX2dldF9zc19lbnRyeV9udW1iZXIoCj4gICAqIGdldF9zc19lbnRyeV9udW1iZXJf ZnJvbV9zc19pbmZvX3RibAo+ICAgKiBHZXQgTnVtYmVyIG9mIHNwcmVhZCBzcGVjdHJ1bSBlbnRy eSBmcm9tIHRoZSBTU19JbmZvIHRhYmxlIGZyb20gdGhlIFZCSU9TLgo+ICAgKgo+IC0gKiBAbm90 ZSBUaGVyZSBjYW4gb25seSBiZSBvbmUgZW50cnkgZm9yIGVhY2ggaWQgZm9yIFNTX0luZm8gVGFi bGUKPiAtICoKPiAtICogQHBhcmFtIFtpbl0gaWQsIHNwcmVhZCBzcGVjdHJ1bSBpZAo+IC0gKiBA cmV0dXJuIG51bWJlciBvZiBTUyBFbnRyeSB0aGF0IG1hdGNoIHRoZSBpZAo+ICsgKiBAYnA6ICBw b2ludGVyIHRvIHRoZSBCSU9TIHBhcnNlcgo+ICsgKiBAaWQ6ICBzcHJlYWQgc3BlY3RydW0gaWQK PiArICogcmV0dXJuOiBudW1iZXIgb2YgU1MgRW50cnkgdGhhdCBtYXRjaCB0aGUgaWQKPiArICog bm90ZTogVGhlcmUgY2FuIG9ubHkgYmUgb25lIGVudHJ5IGZvciBlYWNoIGlkIGZvciBTU19JbmZv IFRhYmxlCj4gICAqLwo+ICBzdGF0aWMgdWludDMyX3QgZ2V0X3NzX2VudHJ5X251bWJlcl9mcm9t X3NzX2luZm9fdGJsKAo+ICAgICAgICAgc3RydWN0IGJpb3NfcGFyc2VyICpicCwKPiBAQCAtMTY3 OSw4ICsxNjc1LDkgQEAgc3RhdGljIHVpbnQzMl90IGdldF9zc19lbnRyeV9udW1iZXJfZnJvbV9z c19pbmZvX3RibCgKPiAgICogVGhlcmUgY2FuIG5vdCBiZSBtb3JlIHRoYW4gMSBlbnRyeSBmb3Ig IEFTSUNfSW50ZXJuYWxTU19JbmZvIFZlciAyLjEgb3IKPiAgICogU1NfSW5mby4KPiAgICoKPiAt ICogQHBhcmFtIGlkLCBzcHJlYWQgc3ByZWN0cnVtIGluZm8gaW5kZXgKPiAtICogQHJldHVybiBC aW9zIHBhcnNlciByZXN1bHQgY29kZQo+ICsgKiBAYnA6ICAgIHBvaW50ZXIgdG8gdGhlIEJJT1Mg cGFyc2VyCj4gKyAqIEBpZDogICAgc3ByZWFkIHNwcmVjdHJ1bSBpbmZvIGluZGV4Cj4gKyAqIHJl dHVybjogQmlvcyBwYXJzZXIgcmVzdWx0IGNvZGUKPiAgICovCj4gIHN0YXRpYyB1aW50MzJfdCBn ZXRfc3NfZW50cnlfbnVtYmVyKHN0cnVjdCBiaW9zX3BhcnNlciAqYnAsIHVpbnQzMl90IGlkKQo+ ICB7Cj4gQEAgLTE2OTYsOCArMTY5Myw5IEBAIHN0YXRpYyB1aW50MzJfdCBnZXRfc3NfZW50cnlf bnVtYmVyKHN0cnVjdCBiaW9zX3BhcnNlciAqYnAsIHVpbnQzMl90IGlkKQo+ICAgKiBWZXIgMi4x IGZyb20gdGhlIFZCSU9TCj4gICAqIFRoZXJlIHdpbGwgbm90IGJlIG11bHRpcGxlIGVudHJ5IGZv ciBWZXIgMi4xCj4gICAqCj4gLSAqIEBwYXJhbSBpZCwgc3ByZWFkIHNwcmVjdHJ1bSBpbmZvIGlu ZGV4Cj4gLSAqIEByZXR1cm4gbnVtYmVyIG9mIFNTIEVudHJ5IHRoYXQgbWF0Y2ggdGhlIGlkCj4g KyAqIEBicDogICAgcG9pbnRlciB0byB0aGUgQklPUyBwYXJzZXIKPiArICogQGlkOiAgICBzcHJl YWQgc3ByZWN0cnVtIGluZm8gaW5kZXgKPiArICogcmV0dXJuOiBudW1iZXIgb2YgU1MgRW50cnkg dGhhdCBtYXRjaCB0aGUgaWQKPiAgICovCj4gIHN0YXRpYyB1aW50MzJfdCBnZXRfc3NfZW50cnlf bnVtYmVyX2Zyb21faW50ZXJuYWxfc3NfaW5mb190YmxfdjJfMSgKPiAgICAgICAgIHN0cnVjdCBi aW9zX3BhcnNlciAqYnAsCj4gQEAgLTE3MzEsOCArMTcyOSw5IEBAIHN0YXRpYyB1aW50MzJfdCBn ZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21faW50ZXJuYWxfc3NfaW5mb190YmxfdjJfMSgKPiAgICog R2V0IE51bWJlciBvZiBTcHJlYWRTcGVjdHJ1bSBFbnRyeSBmcm9tIHRoZSBBU0lDX0ludGVybmFs U1NfSW5mbyB0YWJsZSBvZgo+ICAgKiB0aGUgVkJJT1MgdGhhdCBtYXRjaGVzIGlkCj4gICAqCj4g LSAqIEBwYXJhbVtpbl0gIGlkLCBzcHJlYWQgc3ByZWN0cnVtIGlkCj4gLSAqIEByZXR1cm4gbnVt YmVyIG9mIFNTIEVudHJ5IHRoYXQgbWF0Y2ggdGhlIGlkCj4gKyAqIEBicDogICAgcG9pbnRlciB0 byB0aGUgQklPUyBwYXJzZXIKPiArICogQGlkOiAgICBzcHJlYWQgc3ByZWN0cnVtIGlkCj4gKyAq IHJldHVybjogbnVtYmVyIG9mIFNTIEVudHJ5IHRoYXQgbWF0Y2ggdGhlIGlkCj4gICAqLwo+ICBz dGF0aWMgdWludDMyX3QgZ2V0X3NzX2VudHJ5X251bWJlcl9mcm9tX2ludGVybmFsX3NzX2luZm9f dGJsX1YzXzEoCj4gICAgICAgICBzdHJ1Y3QgYmlvc19wYXJzZXIgKmJwLAo+IEBAIC0xNzY3LDEw ICsxNzY2LDExIEBAIHN0YXRpYyB1aW50MzJfdCBnZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21faW50 ZXJuYWxfc3NfaW5mb190YmxfVjNfMSgKPiAgICogYmlvc19wYXJzZXJfZ2V0X2dwaW9fcGluX2lu Zm8KPiAgICogR2V0IEdwaW9QaW4gaW5mb3JtYXRpb24gb2YgaW5wdXQgZ3BpbyBpZAo+ICAgKgo+ IC0gKiBAcGFyYW0gZ3Bpb19pZCwgR1BJTyBJRAo+IC0gKiBAcGFyYW0gaW5mbywgR3Bpb1BpbiBp bmZvcm1hdGlvbiBzdHJ1Y3R1cmUKPiAtICogQHJldHVybiBCaW9zIHBhcnNlciByZXN1bHQgY29k ZQo+IC0gKiBAbm90ZQo+ICsgKiBAZGNiOiAgICAgcG9pbnRlciB0byB0aGUgREMgQklPUwo+ICsg KiBAZ3Bpb19pZDogR1BJTyBJRAo+ICsgKiBAaW5mbzogICAgR3Bpb1BpbiBpbmZvcm1hdGlvbiBz dHJ1Y3R1cmUKPiArICogcmV0dXJuOiAgIEJpb3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gKyAqIG5v dGU6Cj4gICAqICB0byBnZXQgdGhlIEdQSU8gUElOIElORk8sIHdlIG5lZWQ6Cj4gICAqICAxLiBn ZXQgdGhlIEdQSU9fSUQgZnJvbSBvdGhlciBvYmplY3QgdGFibGUsIHNlZSBHZXRIUERJbmZvKCkK PiAgICogIDIuIGluIERBVEFfVEFCTEUuR1BJT19QaW5fTFVULCBzZWFyY2ggYWxsIHJlY29yZHMs IHRvIGdldCB0aGUgcmVnaXN0ZXJBCj4gQEAgLTIxOTcsMTMgKzIxOTcsMTAgQEAgc3RhdGljIHVp bnQzMl90IGdldF9zdXBwb3J0X21hc2tfZm9yX2RldmljZV9pZChzdHJ1Y3QgZGV2aWNlX2lkIGRl dmljZV9pZCkKPiAgfQo+Cj4gIC8qKgo+IC0gKiBiaW9zX3BhcnNlcl9zZXRfc2NyYXRjaF9jcml0 aWNhbF9zdGF0ZQo+IC0gKgo+IC0gKiBAYnJpZWYKPiAtICogIHVwZGF0ZSBjcml0aWNhbCBzdGF0 ZSBiaXQgaW4gVkJJT1Mgc2NyYXRjaCByZWdpc3Rlcgo+IC0gKgo+IC0gKiBAcGFyYW0KPiAtICog IGJvb2wgLSB0byBzZXQgb3IgcmVzZXQgc3RhdGUKPiArICogYmlvc19wYXJzZXJfc2V0X3NjcmF0 Y2hfY3JpdGljYWxfc3RhdGUgLSB1cGRhdGUgY3JpdGljYWwgc3RhdGUKPiArICogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiaXQgaW4gVkJJT1Mgc2NyYXRjaCByZWdp c3Rlcgo+ICsgKiBAZGNiOiAgICBwb2ludGVyIHRvIHRoZSBEQyBCSU9TCj4gKyAqIEBzdGF0ZTog IHNldCBvciByZXNldCBzdGF0ZQo+ICAgKi8KPiAgc3RhdGljIHZvaWQgYmlvc19wYXJzZXJfc2V0 X3NjcmF0Y2hfY3JpdGljYWxfc3RhdGUoCj4gICAgICAgICBzdHJ1Y3QgZGNfYmlvcyAqZGNiLAo+ IEBAIC0yMjIyLDcgKzIyMTksNyBAQCBzdGF0aWMgdm9pZCBiaW9zX3BhcnNlcl9zZXRfc2NyYXRj aF9jcml0aWNhbF9zdGF0ZSgKPiAgICogYmlvc19wYXJzZXIgKmJwIC0gW2luXUJJT1MgcGFyc2Vy IGhhbmRsZXIgdG8gZ2V0IG1hc3RlciBkYXRhIHRhYmxlCj4gICAqIGludGVncmF0ZWRfaW5mbyAq aW5mbyAtIFtvdXRdIHN0b3JlIGFuZCBvdXRwdXQgaW50ZWdyYXRlZCBpbmZvCj4gICAqCj4gLSAq IEByZXR1cm4KPiArICogcmV0dXJuOgo+ICAgKiBlbnVtIGJwX3Jlc3VsdCAtIEJQX1JFU1VMVF9P SyBpZiBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsCj4gICAqICAgICAgICAgICAgICAgICAgQlBf UkVTVUxUX0JBREJJT1NUQUJMRSBvdGhlcndpc2UuCj4gICAqLwo+IEBAIC0yMzcyLDcgKzIzNjks NyBAQCBzdGF0aWMgZW51bSBicF9yZXN1bHQgZ2V0X2ludGVncmF0ZWRfaW5mb192OCgKPiAgICog Ymlvc19wYXJzZXIgKmJwIC0gW2luXUJJT1MgcGFyc2VyIGhhbmRsZXIgdG8gZ2V0IG1hc3RlciBk YXRhIHRhYmxlCj4gICAqIGludGVncmF0ZWRfaW5mbyAqaW5mbyAtIFtvdXRdIHN0b3JlIGFuZCBv dXRwdXQgaW50ZWdyYXRlZCBpbmZvCj4gICAqCj4gLSAqIEByZXR1cm4KPiArICogcmV0dXJuOgo+ ICAgKiBlbnVtIGJwX3Jlc3VsdCAtIEJQX1JFU1VMVF9PSyBpZiBpbmZvcm1hdGlvbiBpcyBhdmFp bGFibGUsCj4gICAqICAgICAgICAgICAgICAgICAgQlBfUkVTVUxUX0JBREJJT1NUQUJMRSBvdGhl cndpc2UuCj4gICAqLwo+IEBAIC0yNTA5LDcgKzI1MDYsNyBAQCBzdGF0aWMgZW51bSBicF9yZXN1 bHQgZ2V0X2ludGVncmF0ZWRfaW5mb192OSgKPiAgICogYmlvc19wYXJzZXIgKmJwIC0gW2luXUJJ T1MgcGFyc2VyIGhhbmRsZXIgdG8gZ2V0IG1hc3RlciBkYXRhIHRhYmxlCj4gICAqIGludGVncmF0 ZWRfaW5mbyAqaW5mbyAtIFtvdXRdIHN0b3JlIGFuZCBvdXRwdXQgaW50ZWdyYXRlZCBpbmZvCj4g ICAqCj4gLSAqIEByZXR1cm4KPiArICogcmV0dXJuOgo+ICAgKiBlbnVtIGJwX3Jlc3VsdCAtIEJQ X1JFU1VMVF9PSyBpZiBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsCj4gICAqICAgICAgICAgICAg ICAgICAgQlBfUkVTVUxUX0JBREJJT1NUQUJMRSBvdGhlcndpc2UuCj4gICAqLwo+IC0tCj4gMi4y NS4xCj4KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRl dmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== 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=-10.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable 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 0ED23C433E0 for ; Fri, 8 Jan 2021 20:42:04 +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 CA55023A7F for ; Fri, 8 Jan 2021 20:42:03 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CA55023A7F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=amd-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id EF3486E8DC; Fri, 8 Jan 2021 20:42:02 +0000 (UTC) Received: from mail-ot1-x333.google.com (mail-ot1-x333.google.com [IPv6:2607:f8b0:4864:20::333]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9DC456E8D8; Fri, 8 Jan 2021 20:42:01 +0000 (UTC) Received: by mail-ot1-x333.google.com with SMTP id n42so10920576ota.12; Fri, 08 Jan 2021 12:42:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=4Y4X+Mb/A+zp2kjLTrCh286RdSf9uxhVlmUD1nGxQxQ=; b=cBluTZw/Bpzu/e/8hq+wcL5hP+tnaQyKhptLN89M8vAqH6G0n3Jlz0Z5lzIi13ooUF A82XdXMviUPcqllyAAKbY8uaoyUNv0r5MQNbjMdnmyFRd4v/2PeOn9TQPZJdgVQYlP6+ wgiVHbskEdHZkYkeJJW/cycv/nZp0z3U5mqEpwIf1rCBIXuZgUdzSj05I2FFbxrxHd0P 2q1EsFq4JSuhHtRw9HcEjqtVLQhTu9Pugy545ueYGWkRmPhOBmh0hnRsD+YH/bre2Tqd kp3XC0abOo+t58sJO+Bw9c1FWf47qqRm1eBtTERorD2v9MnxfN2+sO5bMvRXf+uiQ94X UANw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=4Y4X+Mb/A+zp2kjLTrCh286RdSf9uxhVlmUD1nGxQxQ=; b=kTlfOf5fgs0Iwi9P5OXDjZGknhvyVDNMg1ffaPKpJ6sKybw32jGATA3SgzbGs18NNA DTruLmHOhyr5YOFHuBb8nMeQy14SBzumN8yK3fnombzrXpVWGs8EZ2VqgCwoYVMf5UWB r9yai/mNIBhguOedfaLPRgRvJxLC3d7xxHOxz4GDlwMnhenaloLz9/C9DN/nRp/SXTOZ kRK3NX2AaAii4xR3tR63XtyLKgt+Rl82avF9UXux6tt//pJz638xytA/9prLQ4WMwcpv HDAgnzEcAYkmnS7B7vAFDqMU9cipq+YH0RLjqyq5T9UAOo9Ypw5LmL5/7rXwdiCL9MUU 97Ug== X-Gm-Message-State: AOAM533Qnfmn9arUCHyrjr9eOmXGhEVMvJr1SP9Ji+xKAYQvqxLEiXsU XOUaWz9PxfheX+6u7w1hYqN26QYbOeG4ENcaYMg= X-Google-Smtp-Source: ABdhPJyyURcwWbsGz6v4kikax/QZCdPMNW86PTtSeH3DM23kqcOhXdnY1RC04LQcdlcMtSa3mwua7YoxMtjuzTRUOhg= X-Received: by 2002:a05:6830:1d66:: with SMTP id l6mr3806493oti.23.1610138520972; Fri, 08 Jan 2021 12:42:00 -0800 (PST) MIME-Version: 1.0 References: <20210108201457.3078600-1-lee.jones@linaro.org> <20210108201457.3078600-19-lee.jones@linaro.org> In-Reply-To: <20210108201457.3078600-19-lee.jones@linaro.org> From: Alex Deucher Date: Fri, 8 Jan 2021 15:41:49 -0500 Message-ID: Subject: Re: [PATCH 18/40] drm/amd/display/dc/bios/bios_parser: Fix a whole bunch of legacy doc formatting To: Lee Jones X-BeenThere: amd-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Leo Li , LKML , Maling list - DRI developers , David Airlie , amd-gfx list , Alex Deucher , =?UTF-8?Q?Christian_K=C3=B6nig?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: amd-gfx-bounces@lists.freedesktop.org Sender: "amd-gfx" QXBwbGllZC4gIFRoYW5rcyEKCkFsZXgKCk9uIEZyaSwgSmFuIDgsIDIwMjEgYXQgMzoxNSBQTSBM ZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8ub3JnPiB3cm90ZToKPgo+IEZpeGVzIHRoZSBmb2xs b3dpbmcgVz0xIGtlcm5lbCBidWlsZCB3YXJuaW5nKHMpOgo+Cj4gIGRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjI1ODg6MTY6IHdhcm5p bmc6IG5vIHByZXZpb3VzIHByb3RvdHlwZSBmb3Ig4oCYdXBkYXRlX3Nsb3RfbGF5b3V0X2luZm/i gJkgWy1XbWlzc2luZy1wcm90b3R5cGVzXQo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8u Li9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJzZXIuYzoyNjkyOjE2OiB3YXJuaW5nOiBubyBwcmV2 aW91cyBwcm90b3R5cGUgZm9yIOKAmGdldF9icmFja2V0X2xheW91dF9yZWNvcmTigJkgWy1XbWlz c2luZy1wcm90b3R5cGVzXQo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5 L2RjL2Jpb3MvYmlvc19wYXJzZXIuYzo5MjU6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBv ciBtZW1iZXIgJ2RjYicgbm90IGRlc2NyaWJlZCBpbiAnYmlvc19wYXJzZXJfZ2V0X3NwcmVhZF9z cGVjdHJ1bV9pbmZvJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2Rj L2Jpb3MvYmlvc19wYXJzZXIuYzo5MjU6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBt ZW1iZXIgJ3NpZ25hbCcgbm90IGRlc2NyaWJlZCBpbiAnYmlvc19wYXJzZXJfZ2V0X3NwcmVhZF9z cGVjdHJ1bV9pbmZvJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2Rj L2Jpb3MvYmlvc19wYXJzZXIuYzo5MjU6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBt ZW1iZXIgJ2luZGV4JyBub3QgZGVzY3JpYmVkIGluICdiaW9zX3BhcnNlcl9nZXRfc3ByZWFkX3Nw ZWN0cnVtX2luZm8nCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMv Ymlvcy9iaW9zX3BhcnNlci5jOjkyNTogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1l bWJlciAnc3NfaW5mbycgbm90IGRlc2NyaWJlZCBpbiAnYmlvc19wYXJzZXJfZ2V0X3NwcmVhZF9z cGVjdHJ1bV9pbmZvJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2Rj L2Jpb3MvYmlvc19wYXJzZXIuYzo5OTc6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBt ZW1iZXIgJ2JwJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfaW5mb19mcm9tX3RibCcKPiAgZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6 OTk3OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdpZCcgbm90IGRlc2Ny aWJlZCBpbiAnZ2V0X3NzX2luZm9fZnJvbV90YmwnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjk5Nzogd2FybmluZzogRnVuY3Rp b24gcGFyYW1ldGVyIG9yIG1lbWJlciAnc3NfaW5mbycgbm90IGRlc2NyaWJlZCBpbiAnZ2V0X3Nz X2luZm9fZnJvbV90YmwnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkv ZGMvYmlvcy9iaW9zX3BhcnNlci5jOjEwMjI6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBv ciBtZW1iZXIgJ2JwJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfaW5mb19mcm9tX2ludGVybmFs X3NzX2luZm9fdGJsX1YyXzEnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3Bs YXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjEwMjI6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRl ciBvciBtZW1iZXIgJ2lkJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfaW5mb19mcm9tX2ludGVy bmFsX3NzX2luZm9fdGJsX1YyXzEnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rp c3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjEwMjI6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFt ZXRlciBvciBtZW1iZXIgJ2luZm8nIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9zc19pbmZvX2Zyb21f aW50ZXJuYWxfc3NfaW5mb190YmxfVjJfMScKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv Li4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6MTA4Nzogd2FybmluZzogRnVuY3Rpb24g cGFyYW1ldGVyIG9yIG1lbWJlciAnYnAnIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9zc19pbmZvX2Zy b21fc3NfaW5mb190YWJsZScKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxh eS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6MTA4Nzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVy IG9yIG1lbWJlciAnaWQnIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9zc19pbmZvX2Zyb21fc3NfaW5m b190YWJsZScKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9z L2Jpb3NfcGFyc2VyLmM6MTA4Nzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJl ciAnc3NfaW5mbycgbm90IGRlc2NyaWJlZCBpbiAnZ2V0X3NzX2luZm9fZnJvbV9zc19pbmZvX3Rh YmxlJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlv c19wYXJzZXIuYzoxNDY5OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdk Y2InIG5vdCBkZXNjcmliZWQgaW4gJ2Jpb3NfcGFyc2VyX2dldF9lbmNvZGVyX2NhcF9pbmZvJwo+ ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJz ZXIuYzoxNDY5OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdvYmplY3Rf aWQnIG5vdCBkZXNjcmliZWQgaW4gJ2Jpb3NfcGFyc2VyX2dldF9lbmNvZGVyX2NhcF9pbmZvJwo+ ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJz ZXIuYzoxNDY5OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdpbmZvJyBu b3QgZGVzY3JpYmVkIGluICdiaW9zX3BhcnNlcl9nZXRfZW5jb2Rlcl9jYXBfaW5mbycKPiAgZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6 MTUwODogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnYnAnIG5vdCBkZXNj cmliZWQgaW4gJ2dldF9lbmNvZGVyX2NhcF9yZWNvcmQnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjE1MDg6IHdhcm5pbmc6IEZ1 bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ29iamVjdCcgbm90IGRlc2NyaWJlZCBpbiAnZ2V0 X2VuY29kZXJfY2FwX3JlY29yZCcKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlz cGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6MTU2Njogd2FybmluZzogRnVuY3Rpb24gcGFyYW1l dGVyIG9yIG1lbWJlciAnZGNiJyBub3QgZGVzY3JpYmVkIGluICdiaW9zX3BhcnNlcl9nZXRfc3Nf ZW50cnlfbnVtYmVyJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2Rj L2Jpb3MvYmlvc19wYXJzZXIuYzoxNTY2OiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3Ig bWVtYmVyICdzaWduYWwnIG5vdCBkZXNjcmliZWQgaW4gJ2Jpb3NfcGFyc2VyX2dldF9zc19lbnRy eV9udW1iZXInCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlv cy9iaW9zX3BhcnNlci5jOjE2MTk6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1i ZXIgJ2JwJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21fc3NfaW5m b190YmwnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9i aW9zX3BhcnNlci5jOjE2MTk6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIg J2lkJyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21fc3NfaW5mb190 YmwnCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9z X3BhcnNlci5jOjE2ODY6IHdhcm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2Jw JyBub3QgZGVzY3JpYmVkIGluICdnZXRfc3NfZW50cnlfbnVtYmVyJwo+ICBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJzZXIuYzoxNjg2OiB3YXJu aW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdpZCcgbm90IGRlc2NyaWJlZCBpbiAn Z2V0X3NzX2VudHJ5X251bWJlcicKPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlz cGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6MTcwNTogd2FybmluZzogRnVuY3Rpb24gcGFyYW1l dGVyIG9yIG1lbWJlciAnYnAnIG5vdCBkZXNjcmliZWQgaW4gJ2dldF9zc19lbnRyeV9udW1iZXJf ZnJvbV9pbnRlcm5hbF9zc19pbmZvX3RibF92Ml8xJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJzZXIuYzoxNzA1OiB3YXJuaW5nOiBGdW5j dGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdpZCcgbm90IGRlc2NyaWJlZCBpbiAnZ2V0X3NzX2Vu dHJ5X251bWJlcl9mcm9tX2ludGVybmFsX3NzX2luZm9fdGJsX3YyXzEnCj4gIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjE3NDA6IHdh cm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2JwJyBub3QgZGVzY3JpYmVkIGlu ICdnZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21faW50ZXJuYWxfc3NfaW5mb190YmxfVjNfMScKPiAg ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2Vy LmM6MTc0MDogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnaWQnIG5vdCBk ZXNjcmliZWQgaW4gJ2dldF9zc19lbnRyeV9udW1iZXJfZnJvbV9pbnRlcm5hbF9zc19pbmZvX3Ri bF9WM18xJwo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3Mv Ymlvc19wYXJzZXIuYzoxNzgzOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVy ICdkY2InIG5vdCBkZXNjcmliZWQgaW4gJ2Jpb3NfcGFyc2VyX2dldF9ncGlvX3Bpbl9pbmZvJwo+ ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJz ZXIuYzoxNzgzOiB3YXJuaW5nOiBGdW5jdGlvbiBwYXJhbWV0ZXIgb3IgbWVtYmVyICdncGlvX2lk JyBub3QgZGVzY3JpYmVkIGluICdiaW9zX3BhcnNlcl9nZXRfZ3Bpb19waW5faW5mbycKPiAgZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvLi4vZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmM6 MTc4Mzogd2FybmluZzogRnVuY3Rpb24gcGFyYW1ldGVyIG9yIG1lbWJlciAnaW5mbycgbm90IGRl c2NyaWJlZCBpbiAnYmlvc19wYXJzZXJfZ2V0X2dwaW9fcGluX2luZm8nCj4gIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjIyMTE6IHdh cm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ2RjYicgbm90IGRlc2NyaWJlZCBp biAnYmlvc19wYXJzZXJfc2V0X3NjcmF0Y2hfY3JpdGljYWxfc3RhdGUnCj4gIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3BhcnNlci5jOjIyMTE6IHdh cm5pbmc6IEZ1bmN0aW9uIHBhcmFtZXRlciBvciBtZW1iZXIgJ3N0YXRlJyBub3QgZGVzY3JpYmVk IGluICdiaW9zX3BhcnNlcl9zZXRfc2NyYXRjaF9jcml0aWNhbF9zdGF0ZScKPgo+IENjOiBIYXJy eSBXZW50bGFuZCA8aGFycnkud2VudGxhbmRAYW1kLmNvbT4KPiBDYzogTGVvIExpIDxzdW5wZW5n LmxpQGFtZC5jb20+Cj4gQ2M6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1kLmNv bT4KPiBDYzogIkNocmlzdGlhbiBLw7ZuaWciIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+Cj4g Q2M6IERhdmlkIEFpcmxpZSA8YWlybGllZEBsaW51eC5pZT4KPiBDYzogRGFuaWVsIFZldHRlciA8 ZGFuaWVsQGZmd2xsLmNoPgo+IENjOiBMZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8ub3JnPgo+ IENjOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IENjOiBkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCj4gU2lnbmVkLW9mZi1ieTogTGVlIEpvbmVzIDxsZWUuam9uZXNAbGlu YXJvLm9yZz4KPiAtLS0KPiAgLi4uL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMvYmlvcy9iaW9zX3Bh cnNlci5jIHwgMTE1ICsrKysrKysrKy0tLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgNTYgaW5z ZXJ0aW9ucygrKSwgNTkgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9kaXNwbGF5L2RjL2Jpb3MvYmlvc19wYXJzZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvZGlzcGxheS9kYy9iaW9zL2Jpb3NfcGFyc2VyLmMKPiBpbmRleCBmMDU0YzU4NzJjNjE5Li5k MjY1NGM1MGIwYjIwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9k Yy9iaW9zL2Jpb3NfcGFyc2VyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkv ZGMvYmlvcy9iaW9zX3BhcnNlci5jCj4gQEAgLTkxMSwxMSArOTExLDExIEBAIHN0YXRpYyBlbnVt IGJwX3Jlc3VsdCBnZXRfc3NfaW5mb19mcm9tX3RibCgKPiAgICogdmVyIDIuMSBjYW4gY28tZXhp c3Qgd2l0aCBTU19JbmZvIHRhYmxlLiBFeHBlY3QgQVNJQ19JbnRlcm5hbFNTX0luZm8gdmVyIDMu MSwKPiAgICogdGhlcmUgaXMgb25seSBvbmUgZW50cnkgZm9yIGVhY2ggc2lnbmFsIC9zcyBpZC4g IEhvd2V2ZXIsIHRoZXJlIGlzCj4gICAqIG5vIHBsYW5uaW5nIG9mIHN1cHBvcnRpbmcgbXVsdGlw bGUgc3ByZWFkIFNwcmVjdHVtIGVudHJ5IGZvciBFdmVyR3JlZW4KPiAtICogQHBhcmFtIFtpbl0g dGhpcwo+IC0gKiBAcGFyYW0gW2luXSBzaWduYWwsIEFTU2lnbmFsVHlwZSB0byBiZSBjb252ZXJ0 ZWQgdG8gaW5mbyBpbmRleAo+IC0gKiBAcGFyYW0gW2luXSBpbmRleCwgbnVtYmVyIG9mIGVudHJp ZXMgdGhhdCBtYXRjaCB0aGUgY29udmVydGVkIGluZm8gaW5kZXgKPiAtICogQHBhcmFtIFtvdXRd IHNzX2luZm8sIHNwcmVjdHJ1bSBpbmZvcm1hdGlvbiBzdHJ1Y3R1cmUsCj4gLSAqIEByZXR1cm4g QmlvcyBwYXJzZXIgcmVzdWx0IGNvZGUKPiArICogQGRjYjogICAgIHBvaW50ZXIgdG8gdGhlIERD IEJJT1MKPiArICogQHNpZ25hbDogIEFTU2lnbmFsVHlwZSB0byBiZSBjb252ZXJ0ZWQgdG8gaW5m byBpbmRleAo+ICsgKiBAaW5kZXg6ICAgbnVtYmVyIG9mIGVudHJpZXMgdGhhdCBtYXRjaCB0aGUg Y29udmVydGVkIGluZm8gaW5kZXgKPiArICogQHNzX2luZm86IHNwcmVjdHJ1bSBpbmZvcm1hdGlv biBzdHJ1Y3R1cmUsCj4gKyAqIHJldHVybjogICBCaW9zIHBhcnNlciByZXN1bHQgY29kZQo+ICAg Ki8KPiAgc3RhdGljIGVudW0gYnBfcmVzdWx0IGJpb3NfcGFyc2VyX2dldF9zcHJlYWRfc3BlY3Ry dW1faW5mbygKPiAgICAgICAgIHN0cnVjdCBkY19iaW9zICpkY2IsCj4gQEAgLTk4NSwxMCArOTg1 LDEwIEBAIHN0YXRpYyBlbnVtIGJwX3Jlc3VsdCBnZXRfc3NfaW5mb19mcm9tX2ludGVybmFsX3Nz X2luZm9fdGJsX1YyXzEoCj4gICAqIFRoZXJlIGNhbiBub3QgYmUgbW9yZSB0aGFuIDEgZW50cnkg Zm9yICBBU0lDX0ludGVybmFsU1NfSW5mbyBWZXIgMi4xIG9yCj4gICAqIFNTX0luZm8uCj4gICAq Cj4gLSAqIEBwYXJhbSB0aGlzCj4gLSAqIEBwYXJhbSBpZCwgc3ByZWFkIHNwcmVjdHJ1bSBpbmZv IGluZGV4Cj4gLSAqIEBwYXJhbSBwU1NpbmZvLCBzcHJlY3RydW0gaW5mb3JtYXRpb24gc3RydWN0 dXJlLAo+IC0gKiBAcmV0dXJuIEJpb3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gKyAqIEBicDogICAg ICBwb2ludGVyIHRvIHRoZSBCSU9TIHBhcnNlcgo+ICsgKiBAaWQ6ICAgICAgc3ByZWFkIHNwcmVj dHJ1bSBpbmZvIGluZGV4Cj4gKyAqIEBzc2luZm86ICBzcHJlY3RydW0gaW5mb3JtYXRpb24gc3Ry dWN0dXJlLAo+ICsgKiByZXR1cm46OiAgQklPUyBwYXJzZXIgcmVzdWx0IGNvZGUKPiAgICovCj4g IHN0YXRpYyBlbnVtIGJwX3Jlc3VsdCBnZXRfc3NfaW5mb19mcm9tX3RibCgKPiAgICAgICAgIHN0 cnVjdCBiaW9zX3BhcnNlciAqYnAsCj4gQEAgLTEwMTEsOSArMTAxMSwxMCBAQCBzdGF0aWMgZW51 bSBicF9yZXN1bHQgZ2V0X3NzX2luZm9fZnJvbV90YmwoCj4gICAqIGZyb20gdGhlIFZCSU9TCj4g ICAqIFRoZXJlIHdpbGwgbm90IGJlIG11bHRpcGxlIGVudHJ5IGZvciBWZXIgMi4xCj4gICAqCj4g LSAqIEBwYXJhbSBpZCwgc3ByZWFkIHNwcmVjdHJ1bSBpbmZvIGluZGV4Cj4gLSAqIEBwYXJhbSBw U1NpbmZvLCBzcHJlY3RydW0gaW5mb3JtYXRpb24gc3RydWN0dXJlLAo+IC0gKiBAcmV0dXJuIEJp b3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gKyAqIEBicDogICAgcG9pbnRlciB0byB0aGUgQmlvcyBw YXJzZXIKPiArICogQGlkOiAgICBzcHJlYWQgc3ByZWN0cnVtIGluZm8gaW5kZXgKPiArICogQGlu Zm86ICBzcHJlY3RydW0gaW5mb3JtYXRpb24gc3RydWN0dXJlLAo+ICsgKiByZXR1cm46IEJpb3Mg cGFyc2VyIHJlc3VsdCBjb2RlCj4gICAqLwo+ICBzdGF0aWMgZW51bSBicF9yZXN1bHQgZ2V0X3Nz X2luZm9fZnJvbV9pbnRlcm5hbF9zc19pbmZvX3RibF9WMl8xKAo+ICAgICAgICAgc3RydWN0IGJp b3NfcGFyc2VyICpicCwKPiBAQCAtMTA3Niw5ICsxMDc3LDEwIEBAIHN0YXRpYyBlbnVtIGJwX3Jl c3VsdCBnZXRfc3NfaW5mb19mcm9tX2ludGVybmFsX3NzX2luZm9fdGJsX1YyXzEoCj4gICAqIG9m IGVudHJpZXMgdGhhdCBtYXRjaGVzIHRoZSBpZAo+ICAgKiBmb3IsIHRoZSBTU19JbmZvIHRhYmxl LCB0aGVyZSBzaG91bGQgbm90IGJlIG1vcmUgdGhhbiAxIGVudHJ5IG1hdGNoLgo+ICAgKgo+IC0g KiBAcGFyYW0gW2luXSBpZCwgc3ByZWFkIHNwcmVjdHJ1bSBpZAo+IC0gKiBAcGFyYW0gW291dF0g cFNTaW5mbywgc3ByZWN0cnVtIGluZm9ybWF0aW9uIHN0cnVjdHVyZSwKPiAtICogQHJldHVybiBC aW9zIHBhcnNlciByZXN1bHQgY29kZQo+ICsgKiBAYnA6ICAgICAgcG9pbnRlciB0byB0aGUgQmlv cyBwYXJzZXIKPiArICogQGlkOiAgICAgIHNwcmVhZCBzcHJlY3RydW0gaWQKPiArICogQHNzX2lu Zm86IHNwcmVjdHJ1bSBpbmZvcm1hdGlvbiBzdHJ1Y3R1cmUsCj4gKyAqIHJldHVybjogICBCaW9z IHBhcnNlciByZXN1bHQgY29kZQo+ICAgKi8KPiAgc3RhdGljIGVudW0gYnBfcmVzdWx0IGdldF9z c19pbmZvX2Zyb21fc3NfaW5mb190YWJsZSgKPiAgICAgICAgIHN0cnVjdCBiaW9zX3BhcnNlciAq YnAsCj4gQEAgLTE0NTEsMTYgKzE0NTMsMTQgQEAgc3RhdGljIGVudW0gYnBfcmVzdWx0IGdldF9l bWJlZGRlZF9wYW5lbF9pbmZvX3YxXzMoCj4gIH0KPgo+ICAvKioKPiAtICogYmlvc19wYXJzZXJf Z2V0X2VuY29kZXJfY2FwX2luZm8KPiArICogYmlvc19wYXJzZXJfZ2V0X2VuY29kZXJfY2FwX2lu Zm8gLSBnZXQgZW5jb2RlciBjYXBhYmlsaXR5Cj4gKyAqICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaW5mb3JtYXRpb24gb2YgaW5wdXQgb2JqZWN0IGlkCj4gICAqCj4gLSAqIEBi cmllZgo+IC0gKiAgR2V0IGVuY29kZXIgY2FwYWJpbGl0eSBpbmZvcm1hdGlvbiBvZiBpbnB1dCBv YmplY3QgaWQKPiAtICoKPiAtICogQHBhcmFtIG9iamVjdF9pZCwgT2JqZWN0IGlkCj4gLSAqIEBw YXJhbSBvYmplY3RfaWQsIGVuY29kZXIgY2FwIGluZm9ybWF0aW9uIHN0cnVjdHVyZQo+IC0gKgo+ IC0gKiBAcmV0dXJuIEJpb3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gKyAqIEBkY2I6ICAgICAgIHBv aW50ZXIgdG8gdGhlIERDIEJJT1MKPiArICogQG9iamVjdF9pZDogb2JqZWN0IGlkCj4gKyAqIEBp bmZvOiAgICAgIGVuY29kZXIgY2FwIGluZm9ybWF0aW9uIHN0cnVjdHVyZQo+ICAgKgo+ICsgKiBy ZXR1cm46IEJpb3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gICAqLwo+ICBzdGF0aWMgZW51bSBicF9y ZXN1bHQgYmlvc19wYXJzZXJfZ2V0X2VuY29kZXJfY2FwX2luZm8oCj4gICAgICAgICBzdHJ1Y3Qg ZGNfYmlvcyAqZGNiLAo+IEBAIC0xNDkwLDE3ICsxNDkwLDEyIEBAIHN0YXRpYyBlbnVtIGJwX3Jl c3VsdCBiaW9zX3BhcnNlcl9nZXRfZW5jb2Rlcl9jYXBfaW5mbygKPiAgfQo+Cj4gIC8qKgo+IC0g KiBnZXRfZW5jb2Rlcl9jYXBfcmVjb3JkCj4gLSAqCj4gLSAqIEBicmllZgo+IC0gKiAgR2V0IGVu Y29kZXIgY2FwIHJlY29yZCBmb3IgdGhlIG9iamVjdAo+IC0gKgo+IC0gKiBAcGFyYW0gb2JqZWN0 LCBBVE9NIG9iamVjdAo+ICsgKiBnZXRfZW5jb2Rlcl9jYXBfcmVjb3JkIC0gR2V0IGVuY29kZXIg Y2FwIHJlY29yZCBmb3IgdGhlIG9iamVjdAo+ICAgKgo+IC0gKiBAcmV0dXJuIGF0b20gZW5jb2Rl ciBjYXAgcmVjb3JkCj4gLSAqCj4gLSAqIEBub3RlCj4gLSAqICBzZWFyY2ggYWxsIHJlY29yZHMg dG8gZmluZCB0aGUgQVRPTV9FTkNPREVSX0NBUF9SRUNPUkRfVjIgcmVjb3JkCj4gKyAqIEBicDog ICAgICBwb2ludGVyIHRvIHRoZSBCSU9TIHBhcnNlcgo+ICsgKiBAb2JqZWN0OiAgQVRPTSBvYmpl Y3QKPiArICogcmV0dXJuOiAgIGF0b20gZW5jb2RlciBjYXAgcmVjb3JkCj4gKyAqIG5vdGU6ICAg ICBzZWFyY2ggYWxsIHJlY29yZHMgdG8gZmluZCB0aGUgQVRPTV9FTkNPREVSX0NBUF9SRUNPUkRf VjIgcmVjb3JkCj4gICAqLwo+ICBzdGF0aWMgQVRPTV9FTkNPREVSX0NBUF9SRUNPUkRfVjIgKmdl dF9lbmNvZGVyX2NhcF9yZWNvcmQoCj4gICAgICAgICBzdHJ1Y3QgYmlvc19wYXJzZXIgKmJwLAo+ IEBAIC0xNTU3LDggKzE1NTIsOSBAQCBzdGF0aWMgdWludDMyX3QgZ2V0X3NzX2VudHJ5X251bWJl cl9mcm9tX3NzX2luZm9fdGJsKAo+ICAgKiBHZXQgTnVtYmVyIG9mIFNwcmVhZFNwZWN0cnVtIEVu dHJ5IGZyb20gdGhlIEFTSUNfSW50ZXJuYWxTU19JbmZvIHRhYmxlIGZyb20KPiAgICogdGhlIFZC SU9TIHRoYXQgbWF0Y2ggdGhlIFNTaWQgKHRvIGJlIGNvbnZlcnRlZCBmcm9tIHNpZ25hbCkKPiAg ICoKPiAtICogQHBhcmFtW2luXSBzaWduYWwsIEFTU2lnbmFsVHlwZSB0byBiZSBjb252ZXJ0ZWQg dG8gU1NpZAo+IC0gKiBAcmV0dXJuIG51bWJlciBvZiBTUyBFbnRyeSB0aGF0IG1hdGNoIHRoZSBz aWduYWwKPiArICogQGRjYjogICAgcG9pbnRlciB0byB0aGUgREMgQklPUwo+ICsgKiBAc2lnbmFs OiBBU1NpZ25hbFR5cGUgdG8gYmUgY29udmVydGVkIHRvIFNTaWQKPiArICogcmV0dXJuOiBudW1i ZXIgb2YgU1MgRW50cnkgdGhhdCBtYXRjaCB0aGUgc2lnbmFsCj4gICAqLwo+ICBzdGF0aWMgdWlu dDMyX3QgYmlvc19wYXJzZXJfZ2V0X3NzX2VudHJ5X251bWJlcigKPiAgICAgICAgIHN0cnVjdCBk Y19iaW9zICpkY2IsCj4gQEAgLTE2MDgsMTAgKzE2MDQsMTAgQEAgc3RhdGljIHVpbnQzMl90IGJp b3NfcGFyc2VyX2dldF9zc19lbnRyeV9udW1iZXIoCj4gICAqIGdldF9zc19lbnRyeV9udW1iZXJf ZnJvbV9zc19pbmZvX3RibAo+ICAgKiBHZXQgTnVtYmVyIG9mIHNwcmVhZCBzcGVjdHJ1bSBlbnRy eSBmcm9tIHRoZSBTU19JbmZvIHRhYmxlIGZyb20gdGhlIFZCSU9TLgo+ICAgKgo+IC0gKiBAbm90 ZSBUaGVyZSBjYW4gb25seSBiZSBvbmUgZW50cnkgZm9yIGVhY2ggaWQgZm9yIFNTX0luZm8gVGFi bGUKPiAtICoKPiAtICogQHBhcmFtIFtpbl0gaWQsIHNwcmVhZCBzcGVjdHJ1bSBpZAo+IC0gKiBA cmV0dXJuIG51bWJlciBvZiBTUyBFbnRyeSB0aGF0IG1hdGNoIHRoZSBpZAo+ICsgKiBAYnA6ICBw b2ludGVyIHRvIHRoZSBCSU9TIHBhcnNlcgo+ICsgKiBAaWQ6ICBzcHJlYWQgc3BlY3RydW0gaWQK PiArICogcmV0dXJuOiBudW1iZXIgb2YgU1MgRW50cnkgdGhhdCBtYXRjaCB0aGUgaWQKPiArICog bm90ZTogVGhlcmUgY2FuIG9ubHkgYmUgb25lIGVudHJ5IGZvciBlYWNoIGlkIGZvciBTU19JbmZv IFRhYmxlCj4gICAqLwo+ICBzdGF0aWMgdWludDMyX3QgZ2V0X3NzX2VudHJ5X251bWJlcl9mcm9t X3NzX2luZm9fdGJsKAo+ICAgICAgICAgc3RydWN0IGJpb3NfcGFyc2VyICpicCwKPiBAQCAtMTY3 OSw4ICsxNjc1LDkgQEAgc3RhdGljIHVpbnQzMl90IGdldF9zc19lbnRyeV9udW1iZXJfZnJvbV9z c19pbmZvX3RibCgKPiAgICogVGhlcmUgY2FuIG5vdCBiZSBtb3JlIHRoYW4gMSBlbnRyeSBmb3Ig IEFTSUNfSW50ZXJuYWxTU19JbmZvIFZlciAyLjEgb3IKPiAgICogU1NfSW5mby4KPiAgICoKPiAt ICogQHBhcmFtIGlkLCBzcHJlYWQgc3ByZWN0cnVtIGluZm8gaW5kZXgKPiAtICogQHJldHVybiBC aW9zIHBhcnNlciByZXN1bHQgY29kZQo+ICsgKiBAYnA6ICAgIHBvaW50ZXIgdG8gdGhlIEJJT1Mg cGFyc2VyCj4gKyAqIEBpZDogICAgc3ByZWFkIHNwcmVjdHJ1bSBpbmZvIGluZGV4Cj4gKyAqIHJl dHVybjogQmlvcyBwYXJzZXIgcmVzdWx0IGNvZGUKPiAgICovCj4gIHN0YXRpYyB1aW50MzJfdCBn ZXRfc3NfZW50cnlfbnVtYmVyKHN0cnVjdCBiaW9zX3BhcnNlciAqYnAsIHVpbnQzMl90IGlkKQo+ ICB7Cj4gQEAgLTE2OTYsOCArMTY5Myw5IEBAIHN0YXRpYyB1aW50MzJfdCBnZXRfc3NfZW50cnlf bnVtYmVyKHN0cnVjdCBiaW9zX3BhcnNlciAqYnAsIHVpbnQzMl90IGlkKQo+ICAgKiBWZXIgMi4x IGZyb20gdGhlIFZCSU9TCj4gICAqIFRoZXJlIHdpbGwgbm90IGJlIG11bHRpcGxlIGVudHJ5IGZv ciBWZXIgMi4xCj4gICAqCj4gLSAqIEBwYXJhbSBpZCwgc3ByZWFkIHNwcmVjdHJ1bSBpbmZvIGlu ZGV4Cj4gLSAqIEByZXR1cm4gbnVtYmVyIG9mIFNTIEVudHJ5IHRoYXQgbWF0Y2ggdGhlIGlkCj4g KyAqIEBicDogICAgcG9pbnRlciB0byB0aGUgQklPUyBwYXJzZXIKPiArICogQGlkOiAgICBzcHJl YWQgc3ByZWN0cnVtIGluZm8gaW5kZXgKPiArICogcmV0dXJuOiBudW1iZXIgb2YgU1MgRW50cnkg dGhhdCBtYXRjaCB0aGUgaWQKPiAgICovCj4gIHN0YXRpYyB1aW50MzJfdCBnZXRfc3NfZW50cnlf bnVtYmVyX2Zyb21faW50ZXJuYWxfc3NfaW5mb190YmxfdjJfMSgKPiAgICAgICAgIHN0cnVjdCBi aW9zX3BhcnNlciAqYnAsCj4gQEAgLTE3MzEsOCArMTcyOSw5IEBAIHN0YXRpYyB1aW50MzJfdCBn ZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21faW50ZXJuYWxfc3NfaW5mb190YmxfdjJfMSgKPiAgICog R2V0IE51bWJlciBvZiBTcHJlYWRTcGVjdHJ1bSBFbnRyeSBmcm9tIHRoZSBBU0lDX0ludGVybmFs U1NfSW5mbyB0YWJsZSBvZgo+ICAgKiB0aGUgVkJJT1MgdGhhdCBtYXRjaGVzIGlkCj4gICAqCj4g LSAqIEBwYXJhbVtpbl0gIGlkLCBzcHJlYWQgc3ByZWN0cnVtIGlkCj4gLSAqIEByZXR1cm4gbnVt YmVyIG9mIFNTIEVudHJ5IHRoYXQgbWF0Y2ggdGhlIGlkCj4gKyAqIEBicDogICAgcG9pbnRlciB0 byB0aGUgQklPUyBwYXJzZXIKPiArICogQGlkOiAgICBzcHJlYWQgc3ByZWN0cnVtIGlkCj4gKyAq IHJldHVybjogbnVtYmVyIG9mIFNTIEVudHJ5IHRoYXQgbWF0Y2ggdGhlIGlkCj4gICAqLwo+ICBz dGF0aWMgdWludDMyX3QgZ2V0X3NzX2VudHJ5X251bWJlcl9mcm9tX2ludGVybmFsX3NzX2luZm9f dGJsX1YzXzEoCj4gICAgICAgICBzdHJ1Y3QgYmlvc19wYXJzZXIgKmJwLAo+IEBAIC0xNzY3LDEw ICsxNzY2LDExIEBAIHN0YXRpYyB1aW50MzJfdCBnZXRfc3NfZW50cnlfbnVtYmVyX2Zyb21faW50 ZXJuYWxfc3NfaW5mb190YmxfVjNfMSgKPiAgICogYmlvc19wYXJzZXJfZ2V0X2dwaW9fcGluX2lu Zm8KPiAgICogR2V0IEdwaW9QaW4gaW5mb3JtYXRpb24gb2YgaW5wdXQgZ3BpbyBpZAo+ICAgKgo+ IC0gKiBAcGFyYW0gZ3Bpb19pZCwgR1BJTyBJRAo+IC0gKiBAcGFyYW0gaW5mbywgR3Bpb1BpbiBp bmZvcm1hdGlvbiBzdHJ1Y3R1cmUKPiAtICogQHJldHVybiBCaW9zIHBhcnNlciByZXN1bHQgY29k ZQo+IC0gKiBAbm90ZQo+ICsgKiBAZGNiOiAgICAgcG9pbnRlciB0byB0aGUgREMgQklPUwo+ICsg KiBAZ3Bpb19pZDogR1BJTyBJRAo+ICsgKiBAaW5mbzogICAgR3Bpb1BpbiBpbmZvcm1hdGlvbiBz dHJ1Y3R1cmUKPiArICogcmV0dXJuOiAgIEJpb3MgcGFyc2VyIHJlc3VsdCBjb2RlCj4gKyAqIG5v dGU6Cj4gICAqICB0byBnZXQgdGhlIEdQSU8gUElOIElORk8sIHdlIG5lZWQ6Cj4gICAqICAxLiBn ZXQgdGhlIEdQSU9fSUQgZnJvbSBvdGhlciBvYmplY3QgdGFibGUsIHNlZSBHZXRIUERJbmZvKCkK PiAgICogIDIuIGluIERBVEFfVEFCTEUuR1BJT19QaW5fTFVULCBzZWFyY2ggYWxsIHJlY29yZHMs IHRvIGdldCB0aGUgcmVnaXN0ZXJBCj4gQEAgLTIxOTcsMTMgKzIxOTcsMTAgQEAgc3RhdGljIHVp bnQzMl90IGdldF9zdXBwb3J0X21hc2tfZm9yX2RldmljZV9pZChzdHJ1Y3QgZGV2aWNlX2lkIGRl dmljZV9pZCkKPiAgfQo+Cj4gIC8qKgo+IC0gKiBiaW9zX3BhcnNlcl9zZXRfc2NyYXRjaF9jcml0 aWNhbF9zdGF0ZQo+IC0gKgo+IC0gKiBAYnJpZWYKPiAtICogIHVwZGF0ZSBjcml0aWNhbCBzdGF0 ZSBiaXQgaW4gVkJJT1Mgc2NyYXRjaCByZWdpc3Rlcgo+IC0gKgo+IC0gKiBAcGFyYW0KPiAtICog IGJvb2wgLSB0byBzZXQgb3IgcmVzZXQgc3RhdGUKPiArICogYmlvc19wYXJzZXJfc2V0X3NjcmF0 Y2hfY3JpdGljYWxfc3RhdGUgLSB1cGRhdGUgY3JpdGljYWwgc3RhdGUKPiArICogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiaXQgaW4gVkJJT1Mgc2NyYXRjaCByZWdp c3Rlcgo+ICsgKiBAZGNiOiAgICBwb2ludGVyIHRvIHRoZSBEQyBCSU9TCj4gKyAqIEBzdGF0ZTog IHNldCBvciByZXNldCBzdGF0ZQo+ICAgKi8KPiAgc3RhdGljIHZvaWQgYmlvc19wYXJzZXJfc2V0 X3NjcmF0Y2hfY3JpdGljYWxfc3RhdGUoCj4gICAgICAgICBzdHJ1Y3QgZGNfYmlvcyAqZGNiLAo+ IEBAIC0yMjIyLDcgKzIyMTksNyBAQCBzdGF0aWMgdm9pZCBiaW9zX3BhcnNlcl9zZXRfc2NyYXRj aF9jcml0aWNhbF9zdGF0ZSgKPiAgICogYmlvc19wYXJzZXIgKmJwIC0gW2luXUJJT1MgcGFyc2Vy IGhhbmRsZXIgdG8gZ2V0IG1hc3RlciBkYXRhIHRhYmxlCj4gICAqIGludGVncmF0ZWRfaW5mbyAq aW5mbyAtIFtvdXRdIHN0b3JlIGFuZCBvdXRwdXQgaW50ZWdyYXRlZCBpbmZvCj4gICAqCj4gLSAq IEByZXR1cm4KPiArICogcmV0dXJuOgo+ICAgKiBlbnVtIGJwX3Jlc3VsdCAtIEJQX1JFU1VMVF9P SyBpZiBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsCj4gICAqICAgICAgICAgICAgICAgICAgQlBf UkVTVUxUX0JBREJJT1NUQUJMRSBvdGhlcndpc2UuCj4gICAqLwo+IEBAIC0yMzcyLDcgKzIzNjks NyBAQCBzdGF0aWMgZW51bSBicF9yZXN1bHQgZ2V0X2ludGVncmF0ZWRfaW5mb192OCgKPiAgICog Ymlvc19wYXJzZXIgKmJwIC0gW2luXUJJT1MgcGFyc2VyIGhhbmRsZXIgdG8gZ2V0IG1hc3RlciBk YXRhIHRhYmxlCj4gICAqIGludGVncmF0ZWRfaW5mbyAqaW5mbyAtIFtvdXRdIHN0b3JlIGFuZCBv dXRwdXQgaW50ZWdyYXRlZCBpbmZvCj4gICAqCj4gLSAqIEByZXR1cm4KPiArICogcmV0dXJuOgo+ ICAgKiBlbnVtIGJwX3Jlc3VsdCAtIEJQX1JFU1VMVF9PSyBpZiBpbmZvcm1hdGlvbiBpcyBhdmFp bGFibGUsCj4gICAqICAgICAgICAgICAgICAgICAgQlBfUkVTVUxUX0JBREJJT1NUQUJMRSBvdGhl cndpc2UuCj4gICAqLwo+IEBAIC0yNTA5LDcgKzI1MDYsNyBAQCBzdGF0aWMgZW51bSBicF9yZXN1 bHQgZ2V0X2ludGVncmF0ZWRfaW5mb192OSgKPiAgICogYmlvc19wYXJzZXIgKmJwIC0gW2luXUJJ T1MgcGFyc2VyIGhhbmRsZXIgdG8gZ2V0IG1hc3RlciBkYXRhIHRhYmxlCj4gICAqIGludGVncmF0 ZWRfaW5mbyAqaW5mbyAtIFtvdXRdIHN0b3JlIGFuZCBvdXRwdXQgaW50ZWdyYXRlZCBpbmZvCj4g ICAqCj4gLSAqIEByZXR1cm4KPiArICogcmV0dXJuOgo+ICAgKiBlbnVtIGJwX3Jlc3VsdCAtIEJQ X1JFU1VMVF9PSyBpZiBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsCj4gICAqICAgICAgICAgICAg ICAgICAgQlBfUkVTVUxUX0JBREJJT1NUQUJMRSBvdGhlcndpc2UuCj4gICAqLwo+IC0tCj4gMi4y NS4xCj4KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdm eCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg==