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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 441BEFD374E for ; Wed, 25 Feb 2026 13:58:00 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B1B6D10E159; Wed, 25 Feb 2026 13:57:59 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.b="SngD41I0"; dkim=pass (2048-bit key; unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="CgJnHiFD"; dkim-atps=neutral Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) by gabe.freedesktop.org (Postfix) with ESMTPS id EEA7C10E159 for ; Wed, 25 Feb 2026 13:57:58 +0000 (UTC) Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61P9TCpA2365382 for ; Wed, 25 Feb 2026 13:57:58 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= xBYPi7uwmyms6qiKiYpOhYR8HyAd/7uAOTP2ZQu479c=; b=SngD41I08N36oMO6 tYE2d77d7x+/raH5JgVXcHVUQ8nEjcQrITPqEa2e5yAVeU+u8gH7S2lRGIQI5Ndo YIFsSxzcACHZasaST4AD5xRn+hRi1qSKrOjgYRFwlHOaN7W0GGcO+Q8fG0QHEuZa m++zp+42KeBUePer+VKMgN7g1bXlLaxRku0dtgMveJpJo+BdO5hzMytiBzI9PZg4 imrJ2iANeWWl7UP/vlyld9XiBLlmJvC/nfDREkeHpLCqOJilokGRtUxeay9tdy5D tIJZVjcEtDoNhTlItSWFjDrNRrpHkPkHgiDx83dp9Q6EsDpPZrqe6h+KS6IoY2SL 8eTE8Q== Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4cherjbr7s-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 25 Feb 2026 13:57:58 +0000 (GMT) Received: by mail-pl1-f197.google.com with SMTP id d9443c01a7336-2aaeafeadbcso76227125ad.1 for ; Wed, 25 Feb 2026 05:57:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1772027878; x=1772632678; darn=lists.freedesktop.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=xBYPi7uwmyms6qiKiYpOhYR8HyAd/7uAOTP2ZQu479c=; b=CgJnHiFDf7nH9np7LvYgN6AYwocBKAQ/5GLa0MDhTBMhF1YazR/JoRm9NKG0lo0FeT Ii/oVEJdW3TiUIB4mi8oVVZZ5m0Kz+2zEILkAqDqZ+ej1XiMSEft5jirDxnAZ00Ag0ZH uSGFKMkqBY6yrLMiVE58ZfCtqi5xq/wEdAybRh6WPhbS5W1iR+9i6trUfpRYxKdFxJq1 hzR+Xvcn6JN59epUmi0RqhcbpOVX255/nHpleIVP+rtz3vnwi+KOYR1ikg6oW/PfG6MQ AJ+hv4mS2y8jyela5g1foq17C4V/sWDjTMDawI68o+5Old+GrW0t/XQss1UcgvWf2igo xkYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772027878; x=1772632678; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=xBYPi7uwmyms6qiKiYpOhYR8HyAd/7uAOTP2ZQu479c=; b=YH939vOW8knmlFZDxPqdMd/2+Yp5vU28jPoaKryz3ibz/XzUpFFa6ZbviXkYE48bnd a2Y/q4hbcfRRhdVBsR7K+/EkMeqA7/eQus6382keqEsH0N9CQfYpK5kDRQ1Q5OnhLwju MLZ+9PjOBOT5/IE4vpjvkuw7xISVHPzwU//TBDBo88/Xb/PQlFPeKkY3BodAtkDvQj5Y jL+80Ajhevf1OhLZBMDcyfPf8QVK4unBHDc7i2gk+t4pE1mpXxK2kEAcvgIpQSnBu3De zoTHzUMcUZxxEBAe40zEWBiU/dZhsq4TnJ/Zi4YR/Dx6ljRiaTtqCj4hDaq7KvL0qB7N Wmrw== X-Forwarded-Encrypted: i=1; AJvYcCWn50hNpI7WoKXZUMbvdOil5qZEim51p4OXpQT951ljmZeA2LWi5Pi+57GbrU9LDH6SMRoUedkyIJE=@lists.freedesktop.org X-Gm-Message-State: AOJu0YwE/BrZRh39foP3ls6hk5iftkXEaPyFxI2KBqovuHksVau+/EhN 7y2iZjZV8TtlmQQp9HM87WInWUrRnBqgFpqJNvBiVp2SBVkn+r/U7uPwaxcVF1RdYZp9qBA2u6M Oro2F3HCba6sfiC/QK3/4I35BTEShhGPRqnIr5rxEu8uqh8xLhJOeNI8zBvaHj9MnERCFDAQ= X-Gm-Gg: ATEYQzyXmZchHJB2/HPFcDNgfchARL/XLqiAvUF9FG+RicqvA1O7C3PDIIX8/rjp9KT oZsiiJdQ3Qz5e3ERSPJ2J7lym7nQEJ3RR8Rl9yonBWGhe9YBjtpc2bFuwVu5pnNlONTw0UEzN30 FBjWVD4YC4JMGuja+p3LjD2vdh8vLxmfekCUN4k0t9ZU15HftaG3yillkr2Aq3wfHBer4X2Sb8X rzCacROBAuS0f7/2YwObp4GPZm3kByHal6jGTdR7GwOxtktxTWMX/aRqzT8zqWATyGwhzoHWEKg 2kQ59lsvEFsvfDSJ9VAKz1JZBQ09ajptoIQqiy1DS3mL0cB5sRCIKYWn7gSx71jJakSfD4haMFW qjbsDtwo9jTmoCNFIxI2TXxkvHwItFGi5QcrMele3FMUzRhh2I+0= X-Received: by 2002:a17:903:22d2:b0:2ad:ca65:a398 with SMTP id d9443c01a7336-2adca65a58cmr27706765ad.57.1772027877469; Wed, 25 Feb 2026 05:57:57 -0800 (PST) X-Received: by 2002:a17:903:22d2:b0:2ad:ca65:a398 with SMTP id d9443c01a7336-2adca65a58cmr27706515ad.57.1772027876861; Wed, 25 Feb 2026 05:57:56 -0800 (PST) Received: from [192.168.1.5] ([171.61.227.247]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2ad750275d0sm175587235ad.61.2026.02.25.05.57.49 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 25 Feb 2026 05:57:55 -0800 (PST) Message-ID: Date: Wed, 25 Feb 2026 19:27:47 +0530 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH RFC 01/18] accel/qda: Add Qualcomm QDA DSP accelerator driver docs To: Dmitry Baryshkov Cc: Oded Gabbay , Jonathan Corbet , Shuah Khan , Joerg Roedel , Will Deacon , Robin Murphy , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Sumit Semwal , =?UTF-8?Q?Christian_K=C3=B6nig?= , dri-devel@lists.freedesktop.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, iommu@lists.linux.dev, linux-media@vger.kernel.org, linaro-mm-sig@lists.linaro.org, Srinivas Kandagatla , Bharath Kumar , Chenna Kesava Raju References: <20260224-qda-firstpost-v1-0-fe46a9c1a046@oss.qualcomm.com> <20260224-qda-firstpost-v1-1-fe46a9c1a046@oss.qualcomm.com> Content-Language: en-US From: Ekansh Gupta In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjI1MDEzMyBTYWx0ZWRfXwnV2FQmXpWK2 iiUY6qDJs5kxqD6+/qQDmqkjHVd9mRzPUpRB0In+NQ/tOnD5PAEu4HUUAsjNR04nr2y3q4TilpS ZPelvo4FhmSI7Q0cbf+uGY4X15Rh6AAcGxeGKP4aEHtwqod80JsaMdsjDwzfzD7B0fKZu4iYLzn PWQbZDyfSqZJ88ynJ4k3qyE2pOiHslBnCiK8Q0n3JqZvt3ayBvVRX57gadIC/KBb92TI2WQKR+t hhvJ01UAVOCgHudsS6N9UBjQ7R8iL+uX9YJVJoG+PJxPMEmPHsAUSWzZ5DzWMTU9rlRrcVphZ6Y 1eqnU9ynyHTpU52giCd0hilYa93x5vZFDxdUii/jr9aMjQYudg5wGoBF5200L0RI4PVl78aeCVW fwv47h8BAf0m4KpOiL8OEYnd8CTJGJH8eAAW3FypxvwiKECyg3QIMKByuG9mnhbM8Md25Hh6vwK VCwoDA9uQUrIhwetriA== X-Proofpoint-GUID: FpSyTDDN_yXU-w7SoOKi9dopnYqD2JzC X-Proofpoint-ORIG-GUID: FpSyTDDN_yXU-w7SoOKi9dopnYqD2JzC X-Authority-Analysis: v=2.4 cv=NeDrFmD4 c=1 sm=1 tr=0 ts=699effe6 cx=c_pps a=cmESyDAEBpBGqyK7t0alAg==:117 a=CLJ8B99oKJtQbdnoKiLypA==:17 a=IkcTkHD0fZMA:10 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=DJpcGTmdVt4CTyJn9g5Z:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=7m3UXCOrzlUTUB1U0ZMA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=1OuFwYUASf3TG4hYMiVC:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-25_01,2026-02-25_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 bulkscore=0 adultscore=0 spamscore=0 priorityscore=1501 suspectscore=0 lowpriorityscore=0 phishscore=0 malwarescore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2602250133 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: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" CgpPbiAyLzI0LzIwMjYgMjo0NyBBTSwgRG1pdHJ5IEJhcnlzaGtvdiB3cm90ZToKPiBPbiBUdWUs IEZlYiAyNCwgMjAyNiBhdCAxMjozODo1NUFNICswNTMwLCBFa2Fuc2ggR3VwdGEgd3JvdGU6Cj4+ IEFkZCBpbml0aWFsIGRvY3VtZW50YXRpb24gZm9yIHRoZSBRdWFsY29tbSBEU1AgQWNjZWxlcmF0 b3IgKFFEQSkgZHJpdmVyCj4+IGludGVncmF0ZWQgaW4gdGhlIERSTSBhY2NlbCBzdWJzeXN0ZW0u Cj4+Cj4+IFRoZSBuZXcgZG9jcyBpbnRyb2R1Y2UgUURBIGFzIGEgRFJNL2FjY2VsLWJhc2VkIGlt cGxlbWVudGF0aW9uIG9mCj4+IEhleGFnb24gRFNQIG9mZmxvYWQgdGhhdCBpcyBpbnRlbmRlZCBh cyBhIG1vZGVybiBhbHRlcm5hdGl2ZSB0byB0aGUKPj4gbGVnYWN5IEZhc3RSUEMgZHJpdmVyIGlu IGRyaXZlcnMvbWlzYy4gVGhlIHRleHQgZGVzY3JpYmVzIHRoZSBkcml2ZXIKPj4gbW90aXZhdGlv biwgaGlnaC1sZXZlbCBhcmNoaXRlY3R1cmUgYW5kIGludGVyYWN0aW9uIHdpdGggSU9NTVUgY29u dGV4dAo+PiBiYW5rcywgR0VNLWJhc2VkIGJ1ZmZlciBtYW5hZ2VtZW50IGFuZCB0aGUgUlBNc2cg dHJhbnNwb3J0Lgo+Pgo+PiBUaGUgdXNlci1zcGFjZSBmYWNpbmcgc2VjdGlvbiBkb2N1bWVudHMg dGhlIG1haW4gUURBIElPQ1RMcyB1c2VkIHRvCj4+IGVzdGFibGlzaCBEU1Agc2Vzc2lvbnMsIG1h bmFnZSBHRU0gYnVmZmVyIG9iamVjdHMgYW5kIGludm9rZSByZW1vdGUKPj4gcHJvY2VkdXJlcyB1 c2luZyB0aGUgRmFzdFJQQyBwcm90b2NvbCwgYWxvbmcgd2l0aCBhIHR5cGljYWwgbGlmZWN5Y2xl Cj4+IGV4YW1wbGUgZm9yIGFwcGxpY2F0aW9ucy4KPj4KPj4gRmluYWxseSwgdGhlIGRyaXZlciBp cyB3aXJlZCBpbnRvIHRoZSBDb21wdXRlIEFjY2VsZXJhdG9ycwo+PiBkb2N1bWVudGF0aW9uIGlu ZGV4IHVuZGVyIERvY3VtZW50YXRpb24vYWNjZWwsIGFuZCBhIGJyaWVmIGRlYnVnZ2luZwo+PiBz ZWN0aW9uIHNob3dzIGhvdyB0byBlbmFibGUgZHluYW1pYyBkZWJ1ZyBmb3IgdGhlIFFEQSBpbXBs ZW1lbnRhdGlvbi4KPj4KPj4gU2lnbmVkLW9mZi1ieTogRWthbnNoIEd1cHRhIDxla2Fuc2guZ3Vw dGFAb3NzLnF1YWxjb21tLmNvbT4KPj4gLS0tCj4+ICBEb2N1bWVudGF0aW9uL2FjY2VsL2luZGV4 LnJzdCAgICAgfCAgIDEgKwo+PiAgRG9jdW1lbnRhdGlvbi9hY2NlbC9xZGEvaW5kZXgucnN0IHwg IDE0ICsrKysrCj4+ICBEb2N1bWVudGF0aW9uL2FjY2VsL3FkYS9xZGEucnN0ICAgfCAxMjkgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPj4gIDMgZmlsZXMgY2hhbmdlZCwg MTQ0IGluc2VydGlvbnMoKykKPj4KPj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vYWNjZWwv aW5kZXgucnN0IGIvRG9jdW1lbnRhdGlvbi9hY2NlbC9pbmRleC5yc3QKPj4gaW5kZXggY2JjN2Q0 YzM4NzZhLi41OTAxZWE3Zjc4NGMgMTAwNjQ0Cj4+IC0tLSBhL0RvY3VtZW50YXRpb24vYWNjZWwv aW5kZXgucnN0Cj4+ICsrKyBiL0RvY3VtZW50YXRpb24vYWNjZWwvaW5kZXgucnN0Cj4+IEBAIC0x MCw0ICsxMCw1IEBAIENvbXB1dGUgQWNjZWxlcmF0b3JzCj4+ICAgICBpbnRyb2R1Y3Rpb24KPj4g ICAgIGFtZHhkbmEvaW5kZXgKPj4gICAgIHFhaWMvaW5kZXgKPj4gKyAgIHFkYS9pbmRleAo+PiAg ICAgcm9ja2V0L2luZGV4Cj4+IGRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2FjY2VsL3FkYS9p bmRleC5yc3QgYi9Eb2N1bWVudGF0aW9uL2FjY2VsL3FkYS9pbmRleC5yc3QKPj4gbmV3IGZpbGUg bW9kZSAxMDA2NDQKPj4gaW5kZXggMDAwMDAwMDAwMDAwLi5iY2UxODhmMjExMTcKPj4gLS0tIC9k ZXYvbnVsbAo+PiArKysgYi9Eb2N1bWVudGF0aW9uL2FjY2VsL3FkYS9pbmRleC5yc3QKPj4gQEAg LTAsMCArMSwxNCBAQAo+PiArLi4gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAtb25s eQo+PiArCj4+ICs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPj4gKyBhY2NlbC9xZGEg UXVhbGNvbW0gRFNQIERyaXZlcgo+PiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4+ ICsKPj4gK1RoZSAqKmFjY2VsL3FkYSoqIGRyaXZlciBwcm92aWRlcyBzdXBwb3J0IGZvciBRdWFs Y29tbSBIZXhhZ29uIERTUHMgKERpZ2l0YWwKPj4gK1NpZ25hbCBQcm9jZXNzb3JzKSB3aXRoaW4g dGhlIERSTSBhY2NlbGVyYXRvciBmcmFtZXdvcmsuIEl0IHNlcnZlcyBhcyBhIG1vZGVybgo+PiAr cmVwbGFjZW1lbnQgZm9yIHRoZSBsZWdhY3kgRmFzdFJQQyBkcml2ZXIsIG9mZmVyaW5nIGltcHJv dmVkIHJlc291cmNlIG1hbmFnZW1lbnQKPj4gK2FuZCBzdGFuZGFyZCBzdWJzeXN0ZW0gaW50ZWdy YXRpb24uCj4+ICsKPj4gKy4uIHRvY3RyZWU6Ogo+PiArCj4+ICsgICBxZGEKPj4gZGlmZiAtLWdp dCBhL0RvY3VtZW50YXRpb24vYWNjZWwvcWRhL3FkYS5yc3QgYi9Eb2N1bWVudGF0aW9uL2FjY2Vs L3FkYS9xZGEucnN0Cj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAwMDAw MC4uNzQyMTU5ODQxYjk1Cj4+IC0tLSAvZGV2L251bGwKPj4gKysrIGIvRG9jdW1lbnRhdGlvbi9h Y2NlbC9xZGEvcWRhLnJzdAo+PiBAQCAtMCwwICsxLDEyOSBAQAo+PiArLi4gU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEdQTC0yLjAtb25seQo+PiArCj4+ICs9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Cj4+ICtRdWFsY29tbSBIZXhhZ29uIERTUCAoUURBKSBEcml2ZXIKPj4gKz09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPj4gKwo+PiArSW50cm9kdWN0aW9uCj4+ ICs9PT09PT09PT09PT0KPj4gKwo+PiArVGhlICoqUURBKiogKFF1YWxjb21tIERTUCBBY2NlbGVy YXRvcikgZHJpdmVyIGlzIGEgbmV3IERSTS1iYXNlZAo+PiArYWNjZWxlcmF0b3IgZHJpdmVyIGZv ciBRdWFsY29tbSdzIEhleGFnb24gRFNQcy4gSXQgcHJvdmlkZXMgYSBzdGFuZGFyZGl6ZWQKPj4g K2ludGVyZmFjZSBmb3IgdXNlci1zcGFjZSBhcHBsaWNhdGlvbnMgdG8gb2ZmbG9hZCBjb21wdXRh dGlvbmFsIHRhc2tzIHJhbmdpbmcKPj4gK2Zyb20gYXVkaW8gcHJvY2Vzc2luZyBhbmQgc2Vuc29y IG9mZmxvYWQgdG8gY29tcHV0ZXIgdmlzaW9uIGFuZCBBSQo+PiAraW5mZXJlbmNlIHRvIHRoZSBI ZXhhZ29uIERTUHMgZm91bmQgb24gUXVhbGNvbW0gU29Dcy4KPj4gKwo+PiArVGhpcyBkcml2ZXIg aXMgZGVzaWduZWQgdG8gYWxpZ24gd2l0aCB0aGUgTGludXgga2VybmVsJ3MgbW9kZXJuICoqQ29t cHV0ZQo+PiArQWNjZWxlcmF0b3JzKiogc3Vic3lzdGVtIChgZHJpdmVycy9hY2NlbC9gKSwgcHJv dmlkaW5nIGEgcm9idXN0IGFuZCBtb2R1bGFyCj4+ICthbHRlcm5hdGl2ZSB0byB0aGUgbGVnYWN5 IEZhc3RSUEMgZHJpdmVyIGluIGBkcml2ZXJzL21pc2MvYCwgb2ZmZXJpbmcKPj4gK2ltcHJvdmVk IHJlc291cmNlIG1hbmFnZW1lbnQgYW5kIGJldHRlciBpbnRlZ3JhdGlvbiB3aXRoIHN0YW5kYXJk IGtlcm5lbAo+PiArc3Vic3lzdGVtcy4KPj4gKwo+PiArTW90aXZhdGlvbgo+PiArPT09PT09PT09 PQo+PiArCj4+ICtUaGUgZXhpc3RpbmcgRmFzdFJQQyBpbXBsZW1lbnRhdGlvbiBpbiB0aGUga2Vy bmVsIHV0aWxpemVzIGEgY3VzdG9tIGNoYXJhY3Rlcgo+PiArZGV2aWNlIGFuZCBsYWNrcyBpbnRl Z3JhdGlvbiB3aXRoIG1vZGVybiBrZXJuZWwgbWVtb3J5IG1hbmFnZW1lbnQgZnJhbWV3b3Jrcy4K Pj4gK1RoZSBRREEgZHJpdmVyIGFkZHJlc3NlcyB0aGVzZSBsaW1pdGF0aW9ucyBieToKPj4gKwo+ PiArMS4gICoqQWRvcHRpbmcgdGhlIERSTSBhY2NlbCBGcmFtZXdvcmsqKjogTGV2ZXJhZ2luZyBz dGFuZGFyZCB1QVBJcyBmb3IgZGV2aWNlCj4+ICsgICAgbWFuYWdlbWVudCwgam9iIHN1Ym1pc3Np b24sIGFuZCBzeW5jaHJvbml6YXRpb24uCj4+ICsyLiAgKipVdGlsaXppbmcgR0VNIGZvciBNZW1v cnkqKjogUHJvdmlkaW5nIHByb3BlciBidWZmZXIgb2JqZWN0IG1hbmFnZW1lbnQsCj4+ICsgICAg aW5jbHVkaW5nIERNQS1CVUYgaW1wb3J0L2V4cG9ydCBjYXBhYmlsaXRpZXMuCj4+ICszLiAgKipJ bXByb3ZpbmcgSXNvbGF0aW9uKio6IFVzaW5nIElPTU1VIGNvbnRleHQgYmFua3MgdG8gZW5mb3Jj ZSBtZW1vcnkKPj4gKyAgICBpc29sYXRpb24gYmV0d2VlbiBkaWZmZXJlbnQgRFNQIHVzZXIgc2Vz c2lvbnMuCj4+ICsKPj4gK0tleSBGZWF0dXJlcwo+PiArPT09PT09PT09PT09Cj4+ICsKPj4gKyog ICAqKlN0YW5kYXJkIEFjY2VsZXJhdG9yIEludGVyZmFjZSoqOiBFeHBvc2VzIGEgc3RhbmRhcmQg Y2hhcmFjdGVyIGRldmljZQo+PiArICAgIG5vZGUgKGUuZy4sIGAvZGV2L2FjY2VsL2FjY2VsMGAp IHZpYSB0aGUgRFJNIHN1YnN5c3RlbS4KPj4gKyogICAqKlVuaWZpZWQgT2ZmbG9hZCBTdXBwb3J0 Kio6IFN1cHBvcnRzIGFsbCBEU1AgZG9tYWlucyAoQURTUCwgQ0RTUCwgU0RTUCwKPj4gKyAgICBH RFNQKSB2aWEgYSBzaW5nbGUgZHJpdmVyIGFyY2hpdGVjdHVyZS4KPj4gKyogICAqKkZhc3RSUEMg UHJvdG9jb2wqKjogSW1wbGVtZW50cyB0aGUgcmVsaWFibGUgUmVtb3RlIFByb2NlZHVyZSBDYWxs Cj4+ICsgICAgKEZhc3RSUEMpIHByb3RvY29sIGZvciBjb21tdW5pY2F0aW9uIGJldHdlZW4gdGhl IGFwcGxpY2F0aW9uIHByb2Nlc3Nvcgo+PiArICAgIGFuZCBEU1AuCj4+ICsqICAgKipETUEtQlVG IEludGVyb3AqKjogU2VhbWxlc3Mgc2hhcmluZyBvZiBtZW1vcnkgYnVmZmVycyBiZXR3ZWVuIHRo ZSBEU1AKPj4gKyAgICBhbmQgb3RoZXIgbXVsdGltZWRpYSBzdWJzeXN0ZW1zIChHUFUsIENhbWVy YSwgVmlkZW8pIHZpYSBzdGFuZGFyZCBETUEtQlVGcy4KPj4gKyogICAqKk1vZHVsYXIgRGVzaWdu Kio6IENsZWFuIHNlcGFyYXRpb24gYmV0d2VlbiB0aGUgY29yZSBEUk0gbG9naWMsIHRoZSBtZW1v cnkKPj4gKyAgICBtYW5hZ2VyLCBhbmQgdGhlIFJQTXNnLWJhc2VkIHRyYW5zcG9ydCBsYXllci4K Pj4gKwo+PiArQXJjaGl0ZWN0dXJlCj4+ICs9PT09PT09PT09PT0KPj4gKwo+PiArVGhlIFFEQSBk cml2ZXIgaXMgY29tcG9zZWQgb2Ygc2V2ZXJhbCBtb2R1bGFyIGNvbXBvbmVudHM6Cj4+ICsKPj4g KzEuICAqKkNvcmUgRHJpdmVyIChgcWRhX2RydmApKio6IE1hbmFnZXMgZGV2aWNlIHJlZ2lzdHJh dGlvbiwgZmlsZSBvcGVyYXRpb25zLAo+PiArICAgIGFuZCBicmlkZ2VzIHRoZSBkcml2ZXIgd2l0 aCB0aGUgRFJNIGFjY2VsZXJhdG9yIHN1YnN5c3RlbS4KPj4gKzIuICAqKk1lbW9yeSBNYW5hZ2Vy IChgcWRhX21lbW9yeV9tYW5hZ2VyYCkqKjogQSBmbGV4aWJsZSBtZW1vcnkgbWFuYWdlbWVudAo+ PiArICAgIGxheWVyIHRoYXQgaGFuZGxlcyBJT01NVSBjb250ZXh0IGJhbmtzLiBJdCBzdXBwb3J0 cyBwbHVnZ2FibGUgYmFja2VuZHMKPj4gKyAgICAoc3VjaCBhcyBETUEtY29oZXJlbnQpIHRvIGFk YXB0IHRvIGRpZmZlcmVudCBTb0MgbWVtb3J5IGFyY2hpdGVjdHVyZXMuCj4+ICszLiAgKipHRU0g U3Vic3lzdGVtKio6IEltcGxlbWVudHMgdGhlIERSTSBHRU0gaW50ZXJmYWNlIGZvciBidWZmZXIg bWFuYWdlbWVudDoKPj4gKwo+PiArICAgICogKipgcWRhX2dlbWAqKjogQ29yZSBHRU0gb2JqZWN0 IG1hbmFnZW1lbnQsIGluY2x1ZGluZyBhbGxvY2F0aW9uLCBtbWFwCj4+ICsgICAgICBvcGVyYXRp b25zLCBhbmQgYnVmZmVyIGxpZmVjeWNsZSBtYW5hZ2VtZW50Lgo+PiArICAgICogKipgcWRhX3By aW1lYCoqOiBQUklNRSBpbXBvcnQgZnVuY3Rpb25hbGl0eSBmb3IgRE1BLUJVRiBpbnRlcm9wZXJh YmlsaXR5LAo+PiArICAgICAgZW5hYmxpbmcgc2VhbWxlc3MgYnVmZmVyIHNoYXJpbmcgd2l0aCBv dGhlciBrZXJuZWwgc3Vic3lzdGVtcy4KPj4gKwo+PiArNC4gICoqVHJhbnNwb3J0IExheWVyIChg cWRhX3JwbXNnYCkqKjogQWJzdHJhY3Rpb24gb3ZlciB0aGUgUlBNc2cgZnJhbWV3b3JrCj4+ICsg ICAgdG8gaGFuZGxlIGxvdy1sZXZlbCBtZXNzYWdlIHBhc3Npbmcgd2l0aCB0aGUgRFNQIGZpcm13 YXJlLgo+PiArNS4gICoqQ29tcHV0ZSBCdXMgKGBxZGFfY29tcHV0ZV9idXNgKSoqOiBBIGN1c3Rv bSB2aXJ0dWFsIGJ1cyB1c2VkIHRvCj4+ICsgICAgZW51bWVyYXRlIGFuZCBtYW5hZ2UgdGhlIHNw ZWNpZmljIGNvbXB1dGUgY29udGV4dCBiYW5rcyBkZWZpbmVkIGluIHRoZQo+PiArICAgIGRldmlj ZSB0cmVlLgo+IEknbSByZWFsbHkgbm90IHN1cmUgaWYgaXQncyBhIGJvbnVzIG9yIG5vdC4gSSdt IHdhaXRpbmcgZm9yIGlvbW11LW1hcAo+IGltcHJvdmVtZW50cyB0byBsYW5kIHRvIHNlbmQgcGF0 Y2hlcyByZXdvcmtpbmcgRmFzdFJQQyBDQiBmcm9tIHVzaW5nCj4gcHJvYmUgaW50byBiZWluZyBj cmVhdGVkIGJ5IHRoZSBtYWluIGRyaXZlcjogaXQgd291bGQgcmVtb3ZlIHNvbWUgb2YgdGhlCj4g cG9zc2libGUgcmFjZSBjb25kaXRpb25zIGJldHdlZW4gbWFpbiBkcml2ZXIgZmluaXNoaW5nIHBy b2JlIGFuZCB0aGUgQ0IKPiBkZXZpY2VzIHByb2JpbmcgaW4gdGhlIGJhY2tncm91bmQuCj4KPiBX aGF0J3MgdGhlIGFjdHVhbCBiZW5lZml0IG9mIHRoZSBDQiBidXM/CkkgdHJpZWQgZm9sbG93aW5n IHRoZSBUZWdyYSBob3N0MXggbG9naWMgaGVyZSBhcyB3YXMgZGlzY3Vzc2VkIGhlcmVbMV0uIE15 IHVuZGVyc3RhbmRpbmcgaXMgdGhhdAp3aXRoIHRoaXMgdGhlIENCIHdpbGwgYmVjb21lIG1vcmUg bWFuYWdlYWJsZSByZWR1Y2luZyB0aGUgc2NvcGUgb2YgcmFjZXMgdGhhdCBleGlzdHMgaW4gdGhl CmN1cnJlbnQgZmFzdHJwYyBkcml2ZXIuCgpUaGF0IHNhaWQsIEknbSBub3QgY29tcGxldGVseSBh d2FyZSBhYm91dCB0aGUgaW9tbXUtbWFwIGltcHJvdmVtZW50cy4gSXMgaXQgdGhlIG9uZQpiZWlu ZyBkaXNjdXNzZWQgZm9yIHRoaXMgcGF0Y2hbMl0/IElmIGl0IGhlbHBzIGluIG1haW4gZHJpdmVy IHRvIGNyZWF0ZSBDQiBkZXZpY2VzIGRpcmVjdGx5LCB0aGVuIEkKd291bGQgYmUgaGFwcHkgdG8g YWRhcHQgdGhlIGRlc2lnbi4KClsxXSBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvMjQ1ZDYw MmYtMzAzNy00YWUzLTlhZjktZDk4ZjM3MjU4YWFlQG9zcy5xdWFsY29tbS5jb20vClsyXSBodHRw czovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyNjAxMjYta2FhbmFwYWxpLWlyaXMtdjEtMy1lMjY0 NjI0NmJmYzFAb3NzLnF1YWxjb21tLmNvbS8KPgo+PiArNi4gICoqRmFzdFJQQyBDb3JlIChgcWRh X2Zhc3RycGNgKSoqOiBJbXBsZW1lbnRzIHRoZSBwcm90b2NvbCBsb2dpYyBmb3IKPj4gKyAgICBt YXJzaGFsbGluZyBhcmd1bWVudHMgYW5kIGhhbmRsaW5nIHJlbW90ZSBpbnZvY2F0aW9ucy4KPj4g Kwo+PiArVXNlci1TcGFjZSBBUEkKPj4gKz09PT09PT09PT09PT09Cj4+ICsKPj4gK1RoZSBkcml2 ZXIgZXhwb3NlcyBhIHNldCBvZiBEUk0tY29tcGxpYW50IElPQ1RMcy4gTm90ZSB0aGF0IHRoZXNl IGFyZSBkZXNpZ25lZAo+PiArdG8gYmUgZmFtaWxpYXIgdG8gZXhpc3RpbmcgRmFzdFJQQyB1c2Vy cyB3aGlsZSBhZGhlcmluZyB0byBEUk0gc3RhbmRhcmRzLgo+PiArCj4+ICsqICAgYERSTV9JT0NU TF9RREFfUVVFUllgOiBRdWVyeSBEU1AgdHlwZSAoZS5nLiwgImNkc3AiLCAiYWRzcCIpCj4+ICsg ICAgYW5kIGNhcGFiaWxpdGllcy4KPj4gKyogICBgRFJNX0lPQ1RMX1FEQV9JTklUX0FUVEFDSGA6 IEF0dGFjaCBhIHVzZXIgc2Vzc2lvbiB0byB0aGUgRFNQJ3MgcHJvdGVjdGlvbgo+PiArICAgIGRv bWFpbi4KPj4gKyogICBgRFJNX0lPQ1RMX1FEQV9JTklUX0NSRUFURWA6IEluaXRpYWxpemUgYSBu ZXcgcHJvY2VzcyBjb250ZXh0IG9uIHRoZSBEU1AuCj4gWW91IG5lZWQgdG8gZXhwbGFpbiB0aGUg ZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZXNlIHR3by4KQWNrLgo+Cj4+ICsqICAgYERSTV9JT0NUTF9R REFfSU5WT0tFYDogU3VibWl0IGEgcmVtb3RlIG1ldGhvZCBpbnZvY2F0aW9uICh0aGUgcHJpbWFy eQo+PiArICAgIGV4ZWN1dGlvbiB1bml0KS4KPj4gKyogICBgRFJNX0lPQ1RMX1FEQV9HRU1fQ1JF QVRFYDogQWxsb2NhdGUgYSBHRU0gYnVmZmVyIG9iamVjdCBmb3IgRFNQIHVzYWdlLgo+PiArKiAg IGBEUk1fSU9DVExfUURBX0dFTV9NTUFQX09GRlNFVGA6IFJldHJpZXZlIG1tYXAgb2Zmc2V0cyBm b3IgbWVtb3J5IG1hcHBpbmcuCj4+ICsqICAgYERSTV9JT0NUTF9RREFfTUFQYCAvIGBEUk1fSU9D VExfUURBX01VTk1BUGA6IE1hcCBvciB1bm1hcCBidWZmZXJzIGludG8gdGhlCj4+ICsgICAgRFNQ J3MgdmlydHVhbCBhZGRyZXNzIHNwYWNlLgo+IERvIHdlIG5lZWQgdG8gbWFrZSB0aGlzIHNlcGFy YXRlPyBDYW4gd2UgbWFwL3VubWFwIGJ1ZmZlcnMgb24gdGhlaXIKPiB1c2FnZT8gT3Igd2hlbiB0 aGV5IGFyZSBjcmVhdGVkPyBJJ20gdGhpbmtpbmcgYWJvdXQgdGhhdCB0aGUKPiB2aXJ0dWFsaXph dGlvbi4gClRoZSBsaWIgcHJvdmlkZXMgd2F5cyhmYXN0cnBjX21tYXAvcmVtb3RlX21tYXA2NCkg Zm9yIHVzZXJzIHRvIG1hcC91bm1hcCB0aGUKYnVmZmVycyBvbiBEU1AgYXMgcGVyIHByb2Nlc3Nl cyByZXF1aXJlbWVudC4gVGhlIGlvY3RscyBhcmUgYWRkZWQgdG8gc3VwcG9ydCB0aGUgc2FtZS4K PiBBbiBhbHRlcm5hdGl2ZSBhcHByb2FjaCB3b3VsZCBiZSB0byBtZXJnZQo+IEdFVF9NTUFQX09G RlNFVCB3aXRoIF9NQVA6IG9uY2UgeW91IG1hcCBpdCB0byB0aGUgRFNQIG1lbW9yeSwgeW91IHdp bGwKPiBnZXQgdGhlIG9mZnNldC4gCl9NQVAgaXMgbm90IG5lZWQgZm9yIGFsbCB0aGUgYnVmZmVy cy4gTW9zdCBvZiB0aGUgcmVtb3RlIGNhbGwgYnVmZmVycyB0aGF0IGFyZSBwYXNzZWQgdG8gRFNQ CmFyZSBhdXRvbWF0aWNhbGx5IG1hcHBlZCBieSBEU1AgYmVmb3JlIGludm9raW5nIHRoZSBEU1Ag aW1wbGVtZW50YXRpb24gc28gdGhlIHVzZXItc3BhY2UKZG9lcyBub3QgbmVlZCB0byBjYWxsIF9N QVAgZm9yIHRoZXNlLgoKU29tZSBidWZmZXJzKGUuZy4sIHNoYXJlZCBwZXJzaXN0ZW50IGJ1ZmZl cnMpIGRvIHJlcXVpcmUgZXhwbGljaXQgbWFwcGluZywgd2hpY2ggaXMgd2h5Ck1BUC9NVU5NQVAg ZXhpc3RzIGluIEZhc3RSUEMuCgpCZWNhdXNlIG9mIHRoaXMgYmVoYXZpb3JhbCBkaWZmZXJlbmNl LCBtZXJnaW5nIEdFVF9NTUFQX09GRlNFVCB3aXRoIE1BUCBpcyBub3QgYWNjdXJhdGUuCkdFVF9N TUFQX09GRlNFVCBpcyBmb3IgQ1BV4oCRc2lkZSBtbWFwIHZpYSBHRU0sIHdoZXJlYXMgTUFQIGlz IHNwZWNpZmljYWxseSBmb3IgRFNQCnZpcnR1YWwgYWRkcmVzcyBhc3NpZ25tZW50Lgo+Cj4+ICsK Pj4gK1VzYWdlIEV4YW1wbGUKPj4gKz09PT09PT09PT09PT0KPj4gKwo+PiArQSB0eXBpY2FsIGxp ZmVjeWNsZSBmb3IgYSB1c2VyLXNwYWNlIGFwcGxpY2F0aW9uOgo+PiArCj4+ICsxLiAgKipEaXNj b3ZlcnkqKjogT3BlbiBgL2Rldi9hY2NlbC9hY2NlbCpgIGFuZCBjaGVjawo+PiArICAgIGBEUk1f SU9DVExfUURBX1FVRVJZYCB0byBmaW5kIHRoZSBkZXNpcmVkIERTUCAoZS5nLiwgQ0RTUCBmb3IK Pj4gKyAgICBjb21wdXRlIHdvcmtsb2FkcykuCj4+ICsyLiAgKipJbml0aWFsaXphdGlvbioqOiBD YWxsIGBEUk1fSU9DVExfUURBX0lOSVRfQVRUQUNIYCBhbmQKPj4gKyAgICBgRFJNX0lPQ1RMX1FE QV9JTklUX0NSRUFURWAgdG8gZXN0YWJsaXNoIGEgc2Vzc2lvbi4KPj4gKzMuICAqKk1lbW9yeSoq OiBBbGxvY2F0ZSBidWZmZXJzIHZpYSBgRFJNX0lPQ1RMX1FEQV9HRU1fQ1JFQVRFYCBvciBpbXBv cnQKPj4gKyAgICBETUEtQlVGcyAoUFJJTUUgZmQpIGZyb20gb3RoZXIgZHJpdmVycyB1c2luZyBg RFJNX0lPQ1RMX1BSSU1FX0ZEX1RPX0hBTkRMRWAuCj4+ICs0LiAgKipFeGVjdXRpb24qKjogVXNl IGBEUk1fSU9DVExfUURBX0lOVk9LRWAgdG8gcGFzcyBhcmd1bWVudHMgYW5kIGV4ZWN1dGUKPj4g KyAgICBmdW5jdGlvbnMgb24gdGhlIERTUC4KPj4gKzUuICAqKkNsZWFudXAqKjogQ2xvc2UgZmls ZSBkZXNjcmlwdG9ycyB0byBhdXRvbWF0aWNhbGx5IHJlbGVhc2UgcmVzb3VyY2VzIGFuZAo+PiAr ICAgIGRldGFjaCB0aGUgc2Vzc2lvbi4KPj4gKwo+PiArSW50ZXJuYWwgSW1wbGVtZW50YXRpb24K Pj4gKz09PT09PT09PT09PT09PT09PT09PT09Cj4+ICsKPj4gK01lbW9yeSBNYW5hZ2VtZW50Cj4+ ICstLS0tLS0tLS0tLS0tLS0tLQo+PiArVGhlIGRyaXZlcidzIG1lbW9yeSBtYW5hZ2VyIGNyZWF0 ZXMgdmlydHVhbCAiSU9NTVUgZGV2aWNlcyIgdGhhdCBtYXAgdG8KPj4gK2hhcmR3YXJlIGNvbnRl eHQgYmFua3MuIFRoaXMgYWxsb3dzIHRoZSBkcml2ZXIgdG8gbWFuYWdlIG11bHRpcGxlIGlzb2xh dGVkCj4+ICthZGRyZXNzIHNwYWNlcy4gVGhlIGltcGxlbWVudGF0aW9uIGN1cnJlbnRseSB1c2Vz IGEgKipETUEtY29oZXJlbnQgYmFja2VuZCoqCj4+ICt0byBlbnN1cmUgZGF0YSBjb25zaXN0ZW5j eSBiZXR3ZWVuIHRoZSBDUFUgYW5kIERTUCB3aXRob3V0IG1hbnVhbCBjYWNoZQo+PiArbWFpbnRl bmFuY2UgaW4gbW9zdCBjYXNlcy4KPj4gKwo+PiArRGVidWdnaW5nCj4+ICs9PT09PT09PT0KPj4g K1RoZSBkcml2ZXIgaW5jbHVkZXMgZXh0ZW5zaXZlIGR5bmFtaWMgZGVidWcgc3VwcG9ydC4gRW5h YmxlIGl0IHZpYSB0aGUKPj4gK2tlcm5lbCdzIGR5bmFtaWMgZGVidWcgY29udHJvbDoKPj4gKwo+ PiArLi4gY29kZS1ibG9jazo6IGJhc2gKPj4gKwo+PiArICAgIGVjaG8gImZpbGUgZHJpdmVycy9h Y2NlbC9xZGEvKiArcCIgPiAvc3lzL2tlcm5lbC9kZWJ1Zy9keW5hbWljX2RlYnVnL2NvbnRyb2wK PiBQbGVhc2UgYWRkIGRvY3VtZW50YXRpb24gb24gaG93IHRvIGJ1aWxkIHRoZSB0ZXN0IGFwcHMg YW5kIGhvdyB0byBsb2FkCj4gdGhlbSB0byB0aGUgRFNQLgpBY2suCj4KPj4gLS0gCj4+IDIuMzQu MQo+PgoK