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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0EC82C433FE for ; Mon, 18 Apr 2022 07:21:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236972AbiDRHXm (ORCPT ); Mon, 18 Apr 2022 03:23:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57100 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236959AbiDRHXj (ORCPT ); Mon, 18 Apr 2022 03:23:39 -0400 Received: from mailout4.samsung.com (mailout4.samsung.com [203.254.224.34]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6562B13DEA for ; Mon, 18 Apr 2022 00:21:00 -0700 (PDT) Received: from epcas2p3.samsung.com (unknown [182.195.41.55]) by mailout4.samsung.com (KnoxPortal) with ESMTP id 20220418072054epoutp04b47661288a12a06178cc8aa96cd41974~m7Ji0tndZ1434814348epoutp048 for ; Mon, 18 Apr 2022 07:20:54 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout4.samsung.com 20220418072054epoutp04b47661288a12a06178cc8aa96cd41974~m7Ji0tndZ1434814348epoutp048 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1650266454; bh=YYtRa5V6YFOQcb0Dnb1EWlf8BLba7dBd1YOsZoRaqGg=; h=Subject:Reply-To:From:To:CC:Date:References:From; b=R3sZ/kYI0dAF69UFjK0TFWIMdS+SaeFMGIZb6bqwKnicAkHjDmPPfTHfdg9szjPR+ qi8BqcARw+Wqu8MgpQFzZjrXheMo+YqsKetWMQgWGFNpB/rV+tDAuWw8U/I3YzwzQ3 vPwIeiKSR6ww7bc5OLM9JQog3FlB/T8NiUMl3eWo= Received: from epsnrtp3.localdomain (unknown [182.195.42.164]) by epcas2p4.samsung.com (KnoxPortal) with ESMTP id 20220418072053epcas2p40c34b72d4534b5a70682d784f52aa5b5~m7JiQaIAe0288902889epcas2p4U; Mon, 18 Apr 2022 07:20:53 +0000 (GMT) Received: from epsmges2p2.samsung.com (unknown [182.195.36.90]) by epsnrtp3.localdomain (Postfix) with ESMTP id 4KhddG0R6Bz4x9Q3; Mon, 18 Apr 2022 07:20:50 +0000 (GMT) X-AuditID: b6c32a46-ba1ff70000009dd5-1e-625d11513e80 Received: from epcas2p3.samsung.com ( [182.195.41.55]) by epsmges2p2.samsung.com (Symantec Messaging Gateway) with SMTP id DE.F2.40405.1511D526; Mon, 18 Apr 2022 16:20:49 +0900 (KST) Mime-Version: 1.0 Subject: Re: [PATCH 0/5] Add support for Axis, ARTPEC-8 PCIe driver Reply-To: wangseok.lee@samsung.com Sender: Wangseok Lee From: Wangseok Lee To: Krzysztof Kozlowski , robh+dt , krzk+dt , kishon , vkoul , linux-kernel , "jesper.nilsson" , "lars.persson" CC: bhelgaas , linux-phy , linux-pci , devicetree , "lorenzo.pieralisi" , kw , linux-arm-kernel , kernel , Moon-Ki Jun , Dongjin Yang X-Priority: 3 X-Content-Kind-Code: NORMAL X-CPGS-Detection: blocking_info_exchange X-Drm-Type: N,general X-Msg-Generator: Mail X-Msg-Type: PERSONAL X-Reply-Demand: N Message-ID: <20220418072049epcms2p463a9f01d8ae3e29f75b746a0dce934f1@epcms2p4> Date: Mon, 18 Apr 2022 16:20:49 +0900 X-CMS-MailID: 20220418072049epcms2p463a9f01d8ae3e29f75b746a0dce934f1 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" X-Sendblock-Type: AUTO_CONFIDENTIAL X-CPGSPASS: Y X-CPGSPASS: Y CMS-TYPE: 102P X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrHJsWRmVeSWpSXmKPExsWy7bCmuW6gYGySwbRVxhZLmjIsXh7StJh/ 5Byrxe4Zy5ksnh+axWzxqUXV4sLTHjaLl7PusVmcP7+B3aKh5zerxZE3H5kt9h9fyWRxedcc Nouz846zWUxY9Y3F4s3vF+wW5xZnWrTuPcJusfPOCWYHYY8189YwelxfF+CxYFOpx6ZVnWwe T65MZ/LYvKTeo2/LKkaP4ze2M3l83iQXwBmVbZORmpiSWqSQmpecn5KZl26r5B0c7xxvamZg qGtoaWGupJCXmJtqq+TiE6DrlpkD9I+SQlliTilQKCCxuFhJ386mKL+0JFUhI7+4xFYptSAl p8C8QK84Mbe4NC9dLy+1xMrQwMDIFKgwITtjS+syxoJbcRWPTr1ha2CcEdPFyMkhIWAicWfu XKYuRi4OIYEdjBIXf/SxdTFycPAKCEr83SEMUiMs4Czx73YrM4gtJKAksWPNPGaIuL7E9RXd rCA2m4CuxL/FL9lA5ogILGCSuD93BthQZoH/TBKvGo+xQWzjlZjR/pQFwpaW2L58KyOErSHx Y1kvM4QtKnFz9Vt2GPv9sflQNSISrffOQtUISjz4uRsqLiWx4MkhVgi7WmL/399MEHYDo0T/ /VSQZySALt1x3RgkzCvgKzGnqRHsHBYBVYlbU7uhznGR2PKtHWwks4C2xLKFr5lBWpkFNCXW 79KHmKIsceQWC8wjDRt/s6OzmQX4JDoO/4WL75j3BOoYNYl5K3cyQ4yRkdj60n8Co9IsRDjP QrJ2FsLaBYzMqxjFUguKc9NTi40KjOBRm5yfu4kRnLC13HYwTnn7Qe8QIxMH4yFGCQ5mJRHe niXRSUK8KYmVValF+fFFpTmpxYcYTYEensgsJZqcD8wZeSXxhiaWBiZmZobmRqYG5krivF4p GxKFBNITS1KzU1MLUotg+pg4OKUamGx9OFa95doc5LeDd3FpYfHEV3PjDjXs2/vr94o7iprb ZnZH52/5KxjaPHvi0TC3qrkBE2bdM3u+oM9tt2TEiT9eDgqf/j3IzXKr01e4qVWYvfBFdHyf QPqZfP37sgVyEyf/tSubnOh8w6nyzfyCLZ801dd+Dv9zmLO2auPK9a8av3i9XG9+U1HBupDD 9NAxaekZVzO27f2t8oHn5HwXsWqV+KC9c5rNEr59Vn/1+JxJ2QON1Or7rBd3XdiQzK3/+3RN l//xKyoe15NsEuZrpIftOGrxYpfahoQTa6dcy/T6//NMZ/GDjbbTlZ4o+n1z+86wMW5RUccU xl8pBQc2B3kbHlfXYhJXPWGV4S7ts1aJpTgj0VCLuag4EQBc2jCiYQQAAA== DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20220418072049epcms2p463a9f01d8ae3e29f75b746a0dce934f1 References: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > --------- Original Message --------- > Sender : Krzysztof Kozlowski=C2=A0=0D=0A>=20Date=20:=202022-03-29=2015:41= =20(GMT+09:00)=0D=0A>=20Title=20:=20Re:=20=5BPATCH=200/5=5D=20Add=20support= =20for=20Axis,=20ARTPEC-8=20PCIe=20driver=0D=0A>=20=C2=A0=0D=0A>=20On=C2=A0= 29/03/2022=C2=A005:49,=C2=A0=EC=9D=B4=EC=99=95=EC=84=9D=C2=A0wrote:=0D=0A>>= >=C2=A0---------=C2=A0Original=C2=A0Message=C2=A0---------=0D=0A>>>=C2=A0Se= nder=C2=A0:=C2=A0Krzysztof=C2=A0Kozlowski=C2=A0=0D=0A>>>=20Date=20:=202022-= 03-28=2020:44=20(GMT+9)=0D=0A>>>=20Title=20:=20Re:=20=5BPATCH=200/5=5D=20Ad= d=20support=20for=20Axis,=20ARTPEC-8=20PCIe=20driver=0D=0A>>>=0D=0A>>>=20On= =C2=A028/03/2022=C2=A013:29,=C2=A0=EC=9D=B4=EC=99=95=EC=84=9D=C2=A0wrote:= =0D=0A>>>>>=20=C2=A0---------=C2=A0Original=C2=A0Message=C2=A0---------=0D= =0A>>>>>=20=C2=A0Sender=C2=A0:=C2=A0Krzysztof=C2=A0Kozlowski=C2=A0=0D=0A>>>= >>=20=C2=A0Date=C2=A0:=C2=A02022-03-28=C2=A018:38=C2=A0(GMT+9)=0D=0A>>>>>= =20=C2=A0Title=C2=A0:=C2=A0Re:=C2=A0=5BPATCH=C2=A00/5=5D=C2=A0Add=C2=A0supp= ort=C2=A0for=C2=A0Axis,=C2=A0ARTPEC-8=C2=A0PCIe=C2=A0driver=0D=0A>>>>>=0D= =0A>>>>>=20=C2=A0On=C2=A028/03/2022=C2=A011:02,=C2=A0=EC=9D=B4=EC=99=95=EC= =84=9D=C2=A0wrote:=0D=0A>>>>>>>=20=C2=A0=C2=A0---------=C2=A0Original=C2=A0= Message=C2=A0---------=0D=0A>>>>>>>=20=C2=A0=C2=A0Sender=C2=A0:=C2=A0Krzysz= tof=C2=A0Kozlowski=C2=A0=0D=0A>>>>>>>=20=C2=A0=C2=A0Date=C2=A0:=C2=A02022-0= 3-28=C2=A016:12=C2=A0(GMT+9)=0D=0A>>>>>>>=20=C2=A0=C2=A0Title=C2=A0:=C2=A0R= e:=C2=A0=5BPATCH=C2=A00/5=5D=C2=A0Add=C2=A0support=C2=A0for=C2=A0Axis,=C2= =A0ARTPEC-8=C2=A0PCIe=C2=A0driver=0D=0A>>>>>>>=0D=0A>>>>>>>=20=C2=A0=C2=A0O= n=C2=A028/03/2022=C2=A003:44,=C2=A0=EC=9D=B4=EC=99=95=EC=84=9D=C2=A0wrote:= =0D=0A>>>>>>>>=20=C2=A0=C2=A0=C2=A0This=C2=A0series=C2=A0patches=C2=A0inclu= de=C2=A0newly=C2=A0PCIe=C2=A0support=C2=A0for=C2=A0Axis=C2=A0ARTPEC-8=C2=A0= SoC.=0D=0A>>>>>>>>=20=C2=A0=C2=A0=C2=A0ARTPEC-8=C2=A0is=C2=A0the=C2=A0SoC= =C2=A0platform=C2=A0of=C2=A0Axis=C2=A0Communications.=0D=0A>>>>>>>>=20=C2= =A0=C2=A0=C2=A0PCIe=C2=A0controller=C2=A0driver=C2=A0and=C2=A0phy=C2=A0driv= er=C2=A0have=C2=A0been=C2=A0newly=C2=A0added.=0D=0A>>>>>>>>=20=C2=A0=C2=A0= =C2=A0There=C2=A0is=C2=A0also=C2=A0a=C2=A0new=C2=A0MAINTAINER=C2=A0in=C2=A0= the=C2=A0addition=C2=A0of=C2=A0phy=C2=A0driver.=0D=0A>>>>>>>>=20=C2=A0=C2= =A0=C2=A0PCIe=C2=A0controller=C2=A0is=C2=A0designed=C2=A0based=C2=A0on=C2= =A0Design-Ware=C2=A0PCIe=C2=A0controller=C2=A0IP=0D=0A>>>>>>>>=20=C2=A0=C2= =A0=C2=A0and=C2=A0PCIe=C2=A0phy=C2=A0is=C2=A0desinged=C2=A0based=C2=A0on=C2= =A0SAMSUNG=C2=A0PHY=C2=A0IP.=0D=0A>>>>>>>>=20=C2=A0=C2=A0=C2=A0It=C2=A0also= =C2=A0includes=C2=A0modifications=C2=A0to=C2=A0the=C2=A0Design-Ware=C2=A0co= ntroller=C2=A0driver=C2=A0to=C2=A0=0D=0A>>>>>>>>=20=C2=A0=C2=A0=C2=A0run=C2= =A0the=C2=A064bit-based=C2=A0ARTPEC-8=C2=A0PCIe=C2=A0controller=C2=A0driver= .=0D=0A>>>>>>>>=20=C2=A0=C2=A0=C2=A0It=C2=A0consists=C2=A0of=C2=A06=C2=A0pa= tches=C2=A0in=C2=A0total.=0D=0A>>>>>>>>=20=C2=A0=C2=A0=C2=A0=0D=0A>>>>>>>>= =20=C2=A0=C2=A0=C2=A0This=C2=A0series=C2=A0has=C2=A0been=C2=A0tested=C2=A0o= n=C2=A0AXIS=C2=A0SW=C2=A0bring-up=C2=A0board=C2=A0=0D=0A>>>>>>>>=20=C2=A0= =C2=A0=C2=A0with=C2=A0ARTPEC-8=C2=A0chipset.=0D=0A>>>>>>>=0D=0A>>>>>>>=20= =C2=A0=C2=A0You=C2=A0lost=C2=A0mail=C2=A0threading.=C2=A0This=C2=A0makes=C2= =A0reading=C2=A0this=C2=A0difficult=C2=A0for=C2=A0us.=C2=A0Plus=0D=0A>>>>>>= >=20=C2=A0=C2=A0you=C2=A0sent=C2=A0something=C2=A0non-applicable=C2=A0(patc= h=C2=A0=232),=C2=A0so=C2=A0please=C2=A0resend.=0D=0A>>>>>>>=0D=0A>>>>>>>=20= =C2=A0=C2=A0Knowing=C2=A0recent=C2=A0Samsung=C2=A0reluctance=C2=A0to=C2=A0e= xtend=C2=A0existing=C2=A0drivers=C2=A0and=C2=A0always=0D=0A>>>>>>>=20=C2=A0= =C2=A0duplicate,=C2=A0please=C2=A0provide=C2=A0description/analysis=C2=A0wh= y=C2=A0this=C2=A0driver=C2=A0cannot=C2=A0be=0D=0A>>>>>>>=20=C2=A0=C2=A0comb= ined=C2=A0with=C2=A0existing=C2=A0driver.=C2=A0The=C2=A0answer=C2=A0like:= =C2=A0we=C2=A0need=C2=A0several=C2=A0syscon=0D=0A>>>>>>>=20=C2=A0=C2=A0beca= use=C2=A0we=C2=A0do=C2=A0not=C2=A0implement=C2=A0other=C2=A0frameworks=C2= =A0(like=C2=A0interconnect)=C2=A0are=C2=A0not=0D=0A>>>>>>>=20=C2=A0=C2=A0va= lid.=0D=0A>>>>>>>=0D=0A>>>>>>>=20=C2=A0=C2=A0Best=C2=A0regards,=0D=0A>>>>>>= >=20=C2=A0=C2=A0Krzysztof=0D=0A>>>>>>=20=C2=A0=C2=A0=0D=0A>>>>>>=20=C2=A0= =C2=A0Hello,=C2=A0Krzysztof=0D=0A>>>>>>=20=C2=A0=C2=A0Thanks=C2=A0for=C2=A0= your=C2=A0review.=0D=0A>>>>>>=20=C2=A0=C2=A0=0D=0A>>>>>>=20=C2=A0=C2=A0patc= h=232=C2=A0was=C2=A0sent=C2=A0to=C2=A0the=C2=A0wrong=C2=A0format=C2=A0so=C2= =A0sent=C2=A0again.=0D=0A>>>>>>=20=C2=A0=C2=A0Sorry=C2=A0for=C2=A0causing= =C2=A0confusion.=0D=0A>>>>>=20=C2=A0=C2=A0=0D=0A>>>>>=20=C2=A0The=C2=A0firs= t=C2=A0sending=C2=A0was=C2=A0HTML.=C2=A0Second=C2=A0was=C2=A0broken=C2=A0te= xt,=C2=A0so=C2=A0still=C2=A0not=C2=A0working.=0D=0A>>>>>=0D=0A>>>>>=20=C2= =A0Please=C2=A0resend=C2=A0everything=C2=A0with=C2=A0proper=C2=A0threading.= =0D=0A>>>>=20=C2=A0=0D=0A>>>>=20=C2=A0Hello,=C2=A0Krzysztof=0D=0A>>>>=20=C2= =A0=0D=0A>>>>=20=C2=A0I=C2=A0sent=C2=A0patch=232=C2=A0three=C2=A0times.=0D= =0A>>>>=20=C2=A0due=C2=A0to=C2=A0the=C2=A0influence=C2=A0of=C2=A0the=C2=A0e= mail=C2=A0system,=0D=0A>>>>=20=C2=A0there=C2=A0was=C2=A0something=C2=A0wron= g=C2=A0with=C2=A0the=C2=A0first=C2=A0and=C2=A0second=C2=A0mails.=0D=0A>>>>= =20=C2=A0Sorry=C2=A0for=C2=A0causing=C2=A0confusion.=0D=0A>>>>=20=C2=A0Did= =C2=A0you=C2=A0receive=C2=A0the=C2=A0third=C2=A0patch=C2=A0i=C2=A0sent=C2= =A0you?=0D=0A>>>=0D=0A>>>=20Maybe,=C2=A0I=C2=A0don't=C2=A0know.=C2=A0It's= =C2=A0not=C2=A0threaded=C2=A0so=C2=A0it's=C2=A0difficult=C2=A0to=C2=A0find= =C2=A0it=0D=0A>>>=20among=C2=A0other=C2=A0100=C2=A0emails...=0D=0A>>=20=0D= =0A>>=20I=20think=20you=20also=20received=20a=20normal=20patch=23=202.=0D= =0A>>=20=0D=0A>>>>=20=C2=A0=C2=A0=0D=0A>>>>>>=20=C2=A0=C2=A0This=C2=A0patch= =C2=A0is=C2=A0specialized=C2=A0in=C2=A0Artpec-8,=C2=A0=0D=0A>>>>>>=20=C2=A0= =C2=A0the=C2=A0SoC=C2=A0Platform=C2=A0of=C2=A0Axis=C2=A0Communication,=C2= =A0and=C2=A0is=C2=A0newly=C2=A0applied.=0D=0A>>>>>>=20=C2=A0=C2=A0Since=C2= =A0the=C2=A0target=C2=A0SoC=C2=A0platform=C2=A0is=C2=A0different=C2=A0from= =C2=A0the=C2=A0driver=C2=A0previously=C2=A0=0D=0A>>>>>>=20=C2=A0=C2=A0used= =C2=A0by=C2=A0Samsung,=C2=A0it=C2=A0is=C2=A0difficult=C2=A0to=C2=A0merge=C2= =A0with=C2=A0the=C2=A0existing=C2=A0driver.=0D=0A>>>>>=0D=0A>>>>>=20=C2=A0R= ecently=C2=A0I=C2=A0always=C2=A0saw=C2=A0such=C2=A0answers=C2=A0and=C2=A0so= metimes=C2=A0it=C2=A0was=C2=A0true,=C2=A0sometimes=0D=0A>>>>>=20=C2=A0not.= =C2=A0What=C2=A0is=C2=A0exactly=C2=A0different?=0D=0A>>>>>=0D=0A>>>>>=20=C2= =A0Best=C2=A0regards,=0D=0A>>>>>=20=C2=A0Krzysztof=0D=0A>>>>=20=C2=A0=0D=0A= >>>>=20=C2=A0The=C2=A0main=C2=A0reason=C2=A0this=C2=A0patch=C2=A0should=C2= =A0be=C2=A0added=C2=A0is=C2=A0that=0D=0A>>>>=20=C2=A0this=C2=A0patch=C2=A0i= s=C2=A0not=C2=A0the=C2=A0driver=C2=A0applied=C2=A0to=C2=A0exynos=C2=A0platf= orm.=0D=0A>>>=0D=0A>>>=20Still=C2=A0this=C2=A0does=C2=A0not=C2=A0explain=C2= =A0why=C2=A0you=C2=A0need=C2=A0separate=C2=A0driver.=0D=0A>>=20=0D=0A>>=20P= CIe=20driver=20of=20artpec-8=20is=20not=20available=20in=20exynos=20platfor= m.=0D=0A>>=20because=20the=20PCIe=20of=20artpec=20and=20exynos=20have=20ver= y=20different=20=0D=0A>>=20hardware=20in=20SoC=20design.=0D=0A>>=20Not=20on= ly=20it=20is=20the=20SoC=20different,=20=0D=0A>>=20but=20the=20hardware=20d= esign=20of=20PCIe=20is=20also=20different.=0D=0A>>=20Therefore,=20we=20are= =20using=20driver's=20compatible=20=0D=0A>>=20as=20axis,=20artpec8-pcie=20r= ather=20than=20samsung,=20artpec8-pcie.=0D=0A>=20=0D=0A>=20You=20keep=20rep= eating=20the=20same=20over=20and=20over.=20What=20is=20different?=20Drivers= =0D=0A>=20can=20support=20different=20devices,=20I=20already=20wrote=20it.= =20Just=20because=20device=0D=0A>=20is=20different=20does=20not=20mean=20it= =20should=20have=20separate=20driver.=0D=0A>=20=0D=0A>>=20=0D=0A>>>>=20=C2= =A0Because=C2=A0the=C2=A0SoC=C2=A0platform=C2=A0is=C2=A0different,=C2=A0=0D= =0A>>>>=20=C2=A0the=C2=A0IP=C2=A0configuration=C2=A0of=C2=A0PCIe=C2=A0is=C2= =A0also=C2=A0different.=0D=0A>>>=0D=0A>>>=20What=C2=A0is=C2=A0exactly=C2=A0= different?=C2=A0Usually=C2=A0drivers=C2=A0can=C2=A0support=C2=A0IP=C2=A0blo= cks=C2=A0with=0D=0A>>>=20some=C2=A0differences...=0D=0A>>>=0D=0A>>>>=20=C2= =A0We=C2=A0will=C2=A0organize=C2=A0a=C2=A0driver=C2=A0for=C2=A0Artpec-8=C2= =A0platform=C2=A0and=C2=A0=0D=0A>>>>=20=C2=A0if=C2=A0there=C2=A0is=C2=A0no= =C2=A0special=C2=A0reason,=C2=A0maintain=C2=A0this=C2=A0=0D=0A>>>>=20=C2=A0= without=C2=A0adding=C2=A0it=C2=A0from=C2=A0the=C2=A0next=C2=A0series.=0D=0A= >>>=0D=0A>>>=20I=C2=A0don't=C2=A0understand=C2=A0this.=0D=0A>>>=0D=0A>>>=0D= =0A>>>=20Best=C2=A0regards,=0D=0A>>>=20Krzysztof=0D=0A>>=20=0D=0A>>=20Also,= =20as=20you=20know,=0D=0A>>=20exynos=20driver=20is=20designed=20according= =20to=20exynos=20SoC=20platform,=0D=0A>>=20so=20both=20function=20and=20var= iable=20names=20start=20with=20exynos.=0D=0A>=20=0D=0A>=20That's=20hardly= =20a=20problem...=0D=0A>=20=0D=0A>>=20Compared=20to=20the=20existing=20exyn= os=20driver,=20=0D=0A>>=20you=20can=20see=20that=20the=20structure=20and=20= type=20of=20function=20are=20different.=0D=0A>=20=0D=0A>=20No,=20I=20cannot= =20see=20it.=20You=20coded=20the=20driver=20that=20way,=20you=20can=20code= =20it=20in=0D=0A>=20other=20way.=0D=0A>=20=0D=0A>>=20For=20this=20reason,= =20it=20is=20difficult=20to=20use=20the=20existing=20exynos=20driver=20=0D= =0A>>=20for=20artpec.=0D=0A>=20=0D=0A>=20Naming=20of=20functions=20and=20st= ructures=20is=20not=20making=20it=20difficult.=20That's=0D=0A>=20not=20the= =20reason.=0D=0A>=20=0D=0A>>=20Our=20idea=20is=20to=20register=20a=20new=20= PCIe=20driver=20for=20artpec-8=20SoC=20platform=20=0D=0A>>=20and=20maintain= =20it=20in=20the=20future.=0D=0A>=20=0D=0A>=20We=20also=20want=20to=20maint= ain=20Exynos=20PCIe=20driver=20in=20the=20future.=0D=0A>=20=0D=0A>=20Best= =20regards,=0D=0A>=20Krzysztof=0D=0A=0D=0AHi,=20=0D=0ASorry=20for=20delay= =20response.=0D=0AI=20have=20listed=20some=20parts=20that=20are=20different= =20from=20exynos=20pcie=20driver.=0D=0A=0D=0APHY=20driver=0D=0APHY=20is=20d= ifferent,=20so=20register=20map=20is=20also=20different.=0D=0AThree=20refer= ence=20clock=20options=20are=20available=20in=20ARTPEC-8.=0D=0A=20=20It=20o= perates=20by=20selecting=20one=20clock=20among=20XO,=20IO,=20and=20SOC=20PL= L.=0D=0A=20=20However,=20the=20exynos=20phy=20driver=20sets=20one=20ref=20c= lk=20though=20sysreg.=0D=0AThe=20reset=20method=20and=20type=20of=20PHY=20f= or=20initialization=20are=20different.=0D=0AThe=20overall=20sysreg=20config= uration=20is=20different=0D=0AArtpec-8=20requires=20a=20separate=20sequence= =20for=20phy=20tuning,=0D=0Abut=20it=20does=20not=20exist=20in=20exynos=20p= hy=20driver.=0D=0AArtpec-8=20requires=20pcs=20resources,=20but=20exynos=20p= hy=20driver=20does=20not=20exist.=0D=0A=0D=0AController=20driver=0D=0ASub= =20controller=20is=20different,=20so=20register=20map=20is=20also=20differe= nt.=0D=0AAnd=20it=20is=20different=20handles=20lane=20control,=20link=20con= trol,=20PHY=20clocking,=0D=0Areset,=20interrupt=20control.=20=0D=0AThe=20nu= mber=20and=20type=20of=20clock=20resources=20used=20are=20different.=0D=0AT= he=20overall=20sysreg=20configuration=20is=20different=0D=0A=0D=0AAlso=20ar= tpec-8=20is=20performed=20in=20dual=20mode=20that=20supports=20both=20RC=20= and=20EP.=0D=0AAs=20described=20above,=20the=20PHY=20and=20sub=20ontroller= =20are=20different=0D=0Aand=20the=20regiser=20map=20is=20different.=0D=0Asy= sreg=20is=20also=20different.=20And=20there=20are=20differences=20such=20as= =20reset.=0D=0AThe=20driver=20will=20be=20much=20more=20complicated=20if=20= both=20hardwares=20should=20be=0D=0Asupported=20in=20the=20same=20driver.= =0D=0AFor=20these=20reasons,=20my=20opinion=20is=20that=20better=20to=20cre= ate=0D=0Aa=20phy,=20controller=20both=20driver=20with=20a=20new=20file.=0D= =0APlease=20let=20me=20know=20your=20opinion.=0D=0A=0D=0AThank=20you. 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 7F8DDC433F5 for ; Mon, 18 Apr 2022 07:21:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:Reply-To:List-Subscribe:List-Help: List-Post:List-Archive:List-Unsubscribe:List-Id:References:Date:Message-ID:CC :To:From:Subject:Mime-Version:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: List-Owner; bh=ga+v/FWHKlcYQ/aIiHqaeo+c3oDhx2NQQbjEjZAe94c=; b=e63xW6K0wT6pR4 vymEoTycRh/FVl2Qzo/iZ3lpDQicbs+R2L3cj2khBOaHTmXmt+Ami5kj6ufNZIjLPKNHOC8DmKGXt SoWvqQUxjyTB6vo9wrEye8SYbniTmQ6txPpXft/VDHp+0fKnlQ/cgvT1dV66LPOFbyxpv1JupfOVK GKVF+g2nYIONRfs5yD8kPTZZlChpjxpVI+HLwJfuQ619u7ympcCx1b33itUt+uFMLGnmKW4+FNc+o oNBBCoUx7VxB7NEDh7AdvwDFT/LgYvyzyuzp1T4SHGEacpHz7+jmPsp3q9fD8R0kDMETs+w6L0BIa QbBFE1YyRnKExZEKsNXg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1ngLh9-00Frl7-P2; Mon, 18 Apr 2022 07:21:11 +0000 Received: from mailout3.samsung.com ([203.254.224.33]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1ngLh4-00Frj6-OR for linux-phy@lists.infradead.org; Mon, 18 Apr 2022 07:21:10 +0000 Received: from epcas2p3.samsung.com (unknown [182.195.41.55]) by mailout3.samsung.com (KnoxPortal) with ESMTP id 20220418072054epoutp036b71a50b3e8539611cae55c5d6145209~m7Ji0XvIh0506305063epoutp03d for ; Mon, 18 Apr 2022 07:20:54 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout3.samsung.com 20220418072054epoutp036b71a50b3e8539611cae55c5d6145209~m7Ji0XvIh0506305063epoutp03d DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1650266454; bh=YYtRa5V6YFOQcb0Dnb1EWlf8BLba7dBd1YOsZoRaqGg=; h=Subject:Reply-To:From:To:CC:Date:References:From; b=R3sZ/kYI0dAF69UFjK0TFWIMdS+SaeFMGIZb6bqwKnicAkHjDmPPfTHfdg9szjPR+ qi8BqcARw+Wqu8MgpQFzZjrXheMo+YqsKetWMQgWGFNpB/rV+tDAuWw8U/I3YzwzQ3 vPwIeiKSR6ww7bc5OLM9JQog3FlB/T8NiUMl3eWo= Received: from epsnrtp3.localdomain (unknown [182.195.42.164]) by epcas2p4.samsung.com (KnoxPortal) with ESMTP id 20220418072053epcas2p40c34b72d4534b5a70682d784f52aa5b5~m7JiQaIAe0288902889epcas2p4U; Mon, 18 Apr 2022 07:20:53 +0000 (GMT) Received: from epsmges2p2.samsung.com (unknown [182.195.36.90]) by epsnrtp3.localdomain (Postfix) with ESMTP id 4KhddG0R6Bz4x9Q3; Mon, 18 Apr 2022 07:20:50 +0000 (GMT) X-AuditID: b6c32a46-ba1ff70000009dd5-1e-625d11513e80 Received: from epcas2p3.samsung.com ( [182.195.41.55]) by epsmges2p2.samsung.com (Symantec Messaging Gateway) with SMTP id DE.F2.40405.1511D526; Mon, 18 Apr 2022 16:20:49 +0900 (KST) Mime-Version: 1.0 Subject: Re: [PATCH 0/5] Add support for Axis, ARTPEC-8 PCIe driver From: Wangseok Lee To: Krzysztof Kozlowski , robh+dt , krzk+dt , kishon , vkoul , linux-kernel , "jesper.nilsson" , "lars.persson" CC: bhelgaas , linux-phy , linux-pci , devicetree , "lorenzo.pieralisi" , kw , linux-arm-kernel , kernel , Moon-Ki Jun , Dongjin Yang X-Priority: 3 X-Content-Kind-Code: NORMAL X-CPGS-Detection: blocking_info_exchange X-Drm-Type: N,general X-Msg-Generator: Mail X-Msg-Type: PERSONAL X-Reply-Demand: N Message-ID: <20220418072049epcms2p463a9f01d8ae3e29f75b746a0dce934f1@epcms2p4> Date: Mon, 18 Apr 2022 16:20:49 +0900 X-CMS-MailID: 20220418072049epcms2p463a9f01d8ae3e29f75b746a0dce934f1 X-Sendblock-Type: AUTO_CONFIDENTIAL X-CPGSPASS: Y X-CPGSPASS: Y CMS-TYPE: 102P X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrHJsWRmVeSWpSXmKPExsWy7bCmuW6gYGySwbRVxhZLmjIsXh7StJh/ 5Byrxe4Zy5ksnh+axWzxqUXV4sLTHjaLl7PusVmcP7+B3aKh5zerxZE3H5kt9h9fyWRxedcc Nouz846zWUxY9Y3F4s3vF+wW5xZnWrTuPcJusfPOCWYHYY8189YwelxfF+CxYFOpx6ZVnWwe T65MZ/LYvKTeo2/LKkaP4ze2M3l83iQXwBmVbZORmpiSWqSQmpecn5KZl26r5B0c7xxvamZg qGtoaWGupJCXmJtqq+TiE6DrlpkD9I+SQlliTilQKCCxuFhJ386mKL+0JFUhI7+4xFYptSAl p8C8QK84Mbe4NC9dLy+1xMrQwMDIFKgwITtjS+syxoJbcRWPTr1ha2CcEdPFyMkhIWAicWfu XKYuRi4OIYEdjBIXf/SxdTFycPAKCEr83SEMUiMs4Czx73YrM4gtJKAksWPNPGaIuL7E9RXd rCA2m4CuxL/FL9lA5ogILGCSuD93BthQZoH/TBKvGo+xQWzjlZjR/pQFwpaW2L58KyOErSHx Y1kvM4QtKnFz9Vt2GPv9sflQNSISrffOQtUISjz4uRsqLiWx4MkhVgi7WmL/399MEHYDo0T/ /VSQZySALt1x3RgkzCvgKzGnqRHsHBYBVYlbU7uhznGR2PKtHWwks4C2xLKFr5lBWpkFNCXW 79KHmKIsceQWC8wjDRt/s6OzmQX4JDoO/4WL75j3BOoYNYl5K3cyQ4yRkdj60n8Co9IsRDjP QrJ2FsLaBYzMqxjFUguKc9NTi40KjOBRm5yfu4kRnLC13HYwTnn7Qe8QIxMH4yFGCQ5mJRHe niXRSUK8KYmVValF+fFFpTmpxYcYTYEensgsJZqcD8wZeSXxhiaWBiZmZobmRqYG5krivF4p GxKFBNITS1KzU1MLUotg+pg4OKUamGx9OFa95doc5LeDd3FpYfHEV3PjDjXs2/vr94o7iprb ZnZH52/5KxjaPHvi0TC3qrkBE2bdM3u+oM9tt2TEiT9eDgqf/j3IzXKr01e4qVWYvfBFdHyf QPqZfP37sgVyEyf/tSubnOh8w6nyzfyCLZ801dd+Dv9zmLO2auPK9a8av3i9XG9+U1HBupDD 9NAxaekZVzO27f2t8oHn5HwXsWqV+KC9c5rNEr59Vn/1+JxJ2QON1Or7rBd3XdiQzK3/+3RN l//xKyoe15NsEuZrpIftOGrxYpfahoQTa6dcy/T6//NMZ/GDjbbTlZ4o+n1z+86wMW5RUccU xl8pBQc2B3kbHlfXYhJXPWGV4S7ts1aJpTgj0VCLuag4EQBc2jCiYQQAAA== DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20220418072049epcms2p463a9f01d8ae3e29f75b746a0dce934f1 References: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220418_002107_198009_5F4F3715 X-CRM114-Status: GOOD ( 11.40 ) X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: wangseok.lee@samsung.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-phy" Errors-To: linux-phy-bounces+linux-phy=archiver.kernel.org@lists.infradead.org PiAtLS0tLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0tLS0tLS0KPiBTZW5kZXIgOiBLcnp5c3p0 b2YgS296bG93c2tpwqANCj4gRGF0ZSA6IDIwMjItMDMtMjkgMTU6NDEgKEdNVCswOTowMCkNCj4g VGl0bGUgOiBSZTogW1BBVENIIDAvNV0gQWRkIHN1cHBvcnQgZm9yIEF4aXMsIEFSVFBFQy04IFBD SWUgZHJpdmVyDQo+IMKgDQo+IE9uwqAyOS8wMy8yMDIywqAwNTo0OSzCoOydtOyZleyEncKgd3Jv dGU6DQo+Pj7CoC0tLS0tLS0tLcKgT3JpZ2luYWzCoE1lc3NhZ2XCoC0tLS0tLS0tLQ0KPj4+wqBT ZW5kZXLCoDrCoEtyenlzenRvZsKgS296bG93c2tpwqANCj4+PiBEYXRlIDogMjAyMi0wMy0yOCAy MDo0NCAoR01UKzkpDQo+Pj4gVGl0bGUgOiBSZTogW1BBVENIIDAvNV0gQWRkIHN1cHBvcnQgZm9y IEF4aXMsIEFSVFBFQy04IFBDSWUgZHJpdmVyDQo+Pj4NCj4+PiBPbsKgMjgvMDMvMjAyMsKgMTM6 MjkswqDsnbTsmZXshJ3CoHdyb3RlOg0KPj4+Pj4gwqAtLS0tLS0tLS3CoE9yaWdpbmFswqBNZXNz YWdlwqAtLS0tLS0tLS0NCj4+Pj4+IMKgU2VuZGVywqA6wqBLcnp5c3p0b2bCoEtvemxvd3NracKg DQo+Pj4+PiDCoERhdGXCoDrCoDIwMjItMDMtMjjCoDE4OjM4wqAoR01UKzkpDQo+Pj4+PiDCoFRp dGxlwqA6wqBSZTrCoFtQQVRDSMKgMC81XcKgQWRkwqBzdXBwb3J0wqBmb3LCoEF4aXMswqBBUlRQ RUMtOMKgUENJZcKgZHJpdmVyDQo+Pj4+Pg0KPj4+Pj4gwqBPbsKgMjgvMDMvMjAyMsKgMTE6MDIs wqDsnbTsmZXshJ3CoHdyb3RlOg0KPj4+Pj4+PiDCoMKgLS0tLS0tLS0twqBPcmlnaW5hbMKgTWVz c2FnZcKgLS0tLS0tLS0tDQo+Pj4+Pj4+IMKgwqBTZW5kZXLCoDrCoEtyenlzenRvZsKgS296bG93 c2tpwqANCj4+Pj4+Pj4gwqDCoERhdGXCoDrCoDIwMjItMDMtMjjCoDE2OjEywqAoR01UKzkpDQo+ Pj4+Pj4+IMKgwqBUaXRsZcKgOsKgUmU6wqBbUEFUQ0jCoDAvNV3CoEFkZMKgc3VwcG9ydMKgZm9y wqBBeGlzLMKgQVJUUEVDLTjCoFBDSWXCoGRyaXZlcg0KPj4+Pj4+Pg0KPj4+Pj4+PiDCoMKgT27C oDI4LzAzLzIwMjLCoDAzOjQ0LMKg7J207JmV7ISdwqB3cm90ZToNCj4+Pj4+Pj4+IMKgwqDCoFRo aXPCoHNlcmllc8KgcGF0Y2hlc8KgaW5jbHVkZcKgbmV3bHnCoFBDSWXCoHN1cHBvcnTCoGZvcsKg QXhpc8KgQVJUUEVDLTjCoFNvQy4NCj4+Pj4+Pj4+IMKgwqDCoEFSVFBFQy04wqBpc8KgdGhlwqBT b0PCoHBsYXRmb3JtwqBvZsKgQXhpc8KgQ29tbXVuaWNhdGlvbnMuDQo+Pj4+Pj4+PiDCoMKgwqBQ Q0llwqBjb250cm9sbGVywqBkcml2ZXLCoGFuZMKgcGh5wqBkcml2ZXLCoGhhdmXCoGJlZW7CoG5l d2x5wqBhZGRlZC4NCj4+Pj4+Pj4+IMKgwqDCoFRoZXJlwqBpc8KgYWxzb8KgYcKgbmV3wqBNQUlO VEFJTkVSwqBpbsKgdGhlwqBhZGRpdGlvbsKgb2bCoHBoecKgZHJpdmVyLg0KPj4+Pj4+Pj4gwqDC oMKgUENJZcKgY29udHJvbGxlcsKgaXPCoGRlc2lnbmVkwqBiYXNlZMKgb27CoERlc2lnbi1XYXJl wqBQQ0llwqBjb250cm9sbGVywqBJUA0KPj4+Pj4+Pj4gwqDCoMKgYW5kwqBQQ0llwqBwaHnCoGlz wqBkZXNpbmdlZMKgYmFzZWTCoG9uwqBTQU1TVU5HwqBQSFnCoElQLg0KPj4+Pj4+Pj4gwqDCoMKg SXTCoGFsc2/CoGluY2x1ZGVzwqBtb2RpZmljYXRpb25zwqB0b8KgdGhlwqBEZXNpZ24tV2FyZcKg Y29udHJvbGxlcsKgZHJpdmVywqB0b8KgDQo+Pj4+Pj4+PiDCoMKgwqBydW7CoHRoZcKgNjRiaXQt YmFzZWTCoEFSVFBFQy04wqBQQ0llwqBjb250cm9sbGVywqBkcml2ZXIuDQo+Pj4+Pj4+PiDCoMKg wqBJdMKgY29uc2lzdHPCoG9mwqA2wqBwYXRjaGVzwqBpbsKgdG90YWwuDQo+Pj4+Pj4+PiDCoMKg wqANCj4+Pj4+Pj4+IMKgwqDCoFRoaXPCoHNlcmllc8KgaGFzwqBiZWVuwqB0ZXN0ZWTCoG9uwqBB WElTwqBTV8KgYnJpbmctdXDCoGJvYXJkwqANCj4+Pj4+Pj4+IMKgwqDCoHdpdGjCoEFSVFBFQy04 wqBjaGlwc2V0Lg0KPj4+Pj4+Pg0KPj4+Pj4+PiDCoMKgWW91wqBsb3N0wqBtYWlswqB0aHJlYWRp bmcuwqBUaGlzwqBtYWtlc8KgcmVhZGluZ8KgdGhpc8KgZGlmZmljdWx0wqBmb3LCoHVzLsKgUGx1 cw0KPj4+Pj4+PiDCoMKgeW91wqBzZW50wqBzb21ldGhpbmfCoG5vbi1hcHBsaWNhYmxlwqAocGF0 Y2jCoCMyKSzCoHNvwqBwbGVhc2XCoHJlc2VuZC4NCj4+Pj4+Pj4NCj4+Pj4+Pj4gwqDCoEtub3dp bmfCoHJlY2VudMKgU2Ftc3VuZ8KgcmVsdWN0YW5jZcKgdG/CoGV4dGVuZMKgZXhpc3RpbmfCoGRy aXZlcnPCoGFuZMKgYWx3YXlzDQo+Pj4+Pj4+IMKgwqBkdXBsaWNhdGUswqBwbGVhc2XCoHByb3Zp ZGXCoGRlc2NyaXB0aW9uL2FuYWx5c2lzwqB3aHnCoHRoaXPCoGRyaXZlcsKgY2Fubm90wqBiZQ0K Pj4+Pj4+PiDCoMKgY29tYmluZWTCoHdpdGjCoGV4aXN0aW5nwqBkcml2ZXIuwqBUaGXCoGFuc3dl csKgbGlrZTrCoHdlwqBuZWVkwqBzZXZlcmFswqBzeXNjb24NCj4+Pj4+Pj4gwqDCoGJlY2F1c2XC oHdlwqBkb8Kgbm90wqBpbXBsZW1lbnTCoG90aGVywqBmcmFtZXdvcmtzwqAobGlrZcKgaW50ZXJj b25uZWN0KcKgYXJlwqBub3QNCj4+Pj4+Pj4gwqDCoHZhbGlkLg0KPj4+Pj4+Pg0KPj4+Pj4+PiDC oMKgQmVzdMKgcmVnYXJkcywNCj4+Pj4+Pj4gwqDCoEtyenlzenRvZg0KPj4+Pj4+IMKgwqANCj4+ Pj4+PiDCoMKgSGVsbG8swqBLcnp5c3p0b2YNCj4+Pj4+PiDCoMKgVGhhbmtzwqBmb3LCoHlvdXLC oHJldmlldy4NCj4+Pj4+PiDCoMKgDQo+Pj4+Pj4gwqDCoHBhdGNoIzLCoHdhc8Kgc2VudMKgdG/C oHRoZcKgd3JvbmfCoGZvcm1hdMKgc2/CoHNlbnTCoGFnYWluLg0KPj4+Pj4+IMKgwqBTb3JyecKg Zm9ywqBjYXVzaW5nwqBjb25mdXNpb24uDQo+Pj4+PiDCoMKgDQo+Pj4+PiDCoFRoZcKgZmlyc3TC oHNlbmRpbmfCoHdhc8KgSFRNTC7CoFNlY29uZMKgd2FzwqBicm9rZW7CoHRleHQswqBzb8Kgc3Rp bGzCoG5vdMKgd29ya2luZy4NCj4+Pj4+DQo+Pj4+PiDCoFBsZWFzZcKgcmVzZW5kwqBldmVyeXRo aW5nwqB3aXRowqBwcm9wZXLCoHRocmVhZGluZy4NCj4+Pj4gwqANCj4+Pj4gwqBIZWxsbyzCoEty enlzenRvZg0KPj4+PiDCoA0KPj4+PiDCoEnCoHNlbnTCoHBhdGNoIzLCoHRocmVlwqB0aW1lcy4N Cj4+Pj4gwqBkdWXCoHRvwqB0aGXCoGluZmx1ZW5jZcKgb2bCoHRoZcKgZW1haWzCoHN5c3RlbSwN Cj4+Pj4gwqB0aGVyZcKgd2FzwqBzb21ldGhpbmfCoHdyb25nwqB3aXRowqB0aGXCoGZpcnN0wqBh bmTCoHNlY29uZMKgbWFpbHMuDQo+Pj4+IMKgU29ycnnCoGZvcsKgY2F1c2luZ8KgY29uZnVzaW9u Lg0KPj4+PiDCoERpZMKgeW91wqByZWNlaXZlwqB0aGXCoHRoaXJkwqBwYXRjaMKgacKgc2VudMKg eW91Pw0KPj4+DQo+Pj4gTWF5YmUswqBJwqBkb24ndMKga25vdy7CoEl0J3PCoG5vdMKgdGhyZWFk ZWTCoHNvwqBpdCdzwqBkaWZmaWN1bHTCoHRvwqBmaW5kwqBpdA0KPj4+IGFtb25nwqBvdGhlcsKg MTAwwqBlbWFpbHMuLi4NCj4+IA0KPj4gSSB0aGluayB5b3UgYWxzbyByZWNlaXZlZCBhIG5vcm1h bCBwYXRjaCMgMi4NCj4+IA0KPj4+PiDCoMKgDQo+Pj4+Pj4gwqDCoFRoaXPCoHBhdGNowqBpc8Kg c3BlY2lhbGl6ZWTCoGluwqBBcnRwZWMtOCzCoA0KPj4+Pj4+IMKgwqB0aGXCoFNvQ8KgUGxhdGZv cm3CoG9mwqBBeGlzwqBDb21tdW5pY2F0aW9uLMKgYW5kwqBpc8KgbmV3bHnCoGFwcGxpZWQuDQo+ Pj4+Pj4gwqDCoFNpbmNlwqB0aGXCoHRhcmdldMKgU29DwqBwbGF0Zm9ybcKgaXPCoGRpZmZlcmVu dMKgZnJvbcKgdGhlwqBkcml2ZXLCoHByZXZpb3VzbHnCoA0KPj4+Pj4+IMKgwqB1c2VkwqBiecKg U2Ftc3VuZyzCoGl0wqBpc8KgZGlmZmljdWx0wqB0b8KgbWVyZ2XCoHdpdGjCoHRoZcKgZXhpc3Rp bmfCoGRyaXZlci4NCj4+Pj4+DQo+Pj4+PiDCoFJlY2VudGx5wqBJwqBhbHdheXPCoHNhd8Kgc3Vj aMKgYW5zd2Vyc8KgYW5kwqBzb21ldGltZXPCoGl0wqB3YXPCoHRydWUswqBzb21ldGltZXMNCj4+ Pj4+IMKgbm90LsKgV2hhdMKgaXPCoGV4YWN0bHnCoGRpZmZlcmVudD8NCj4+Pj4+DQo+Pj4+PiDC oEJlc3TCoHJlZ2FyZHMsDQo+Pj4+PiDCoEtyenlzenRvZg0KPj4+PiDCoA0KPj4+PiDCoFRoZcKg bWFpbsKgcmVhc29uwqB0aGlzwqBwYXRjaMKgc2hvdWxkwqBiZcKgYWRkZWTCoGlzwqB0aGF0DQo+ Pj4+IMKgdGhpc8KgcGF0Y2jCoGlzwqBub3TCoHRoZcKgZHJpdmVywqBhcHBsaWVkwqB0b8KgZXh5 bm9zwqBwbGF0Zm9ybS4NCj4+Pg0KPj4+IFN0aWxswqB0aGlzwqBkb2VzwqBub3TCoGV4cGxhaW7C oHdoecKgeW91wqBuZWVkwqBzZXBhcmF0ZcKgZHJpdmVyLg0KPj4gDQo+PiBQQ0llIGRyaXZlciBv ZiBhcnRwZWMtOCBpcyBub3QgYXZhaWxhYmxlIGluIGV4eW5vcyBwbGF0Zm9ybS4NCj4+IGJlY2F1 c2UgdGhlIFBDSWUgb2YgYXJ0cGVjIGFuZCBleHlub3MgaGF2ZSB2ZXJ5IGRpZmZlcmVudCANCj4+ IGhhcmR3YXJlIGluIFNvQyBkZXNpZ24uDQo+PiBOb3Qgb25seSBpdCBpcyB0aGUgU29DIGRpZmZl cmVudCwgDQo+PiBidXQgdGhlIGhhcmR3YXJlIGRlc2lnbiBvZiBQQ0llIGlzIGFsc28gZGlmZmVy ZW50Lg0KPj4gVGhlcmVmb3JlLCB3ZSBhcmUgdXNpbmcgZHJpdmVyJ3MgY29tcGF0aWJsZSANCj4+ IGFzIGF4aXMsIGFydHBlYzgtcGNpZSByYXRoZXIgdGhhbiBzYW1zdW5nLCBhcnRwZWM4LXBjaWUu DQo+IA0KPiBZb3Uga2VlcCByZXBlYXRpbmcgdGhlIHNhbWUgb3ZlciBhbmQgb3Zlci4gV2hhdCBp cyBkaWZmZXJlbnQ/IERyaXZlcnMNCj4gY2FuIHN1cHBvcnQgZGlmZmVyZW50IGRldmljZXMsIEkg YWxyZWFkeSB3cm90ZSBpdC4gSnVzdCBiZWNhdXNlIGRldmljZQ0KPiBpcyBkaWZmZXJlbnQgZG9l cyBub3QgbWVhbiBpdCBzaG91bGQgaGF2ZSBzZXBhcmF0ZSBkcml2ZXIuDQo+IA0KPj4gDQo+Pj4+ IMKgQmVjYXVzZcKgdGhlwqBTb0PCoHBsYXRmb3JtwqBpc8KgZGlmZmVyZW50LMKgDQo+Pj4+IMKg dGhlwqBJUMKgY29uZmlndXJhdGlvbsKgb2bCoFBDSWXCoGlzwqBhbHNvwqBkaWZmZXJlbnQuDQo+ Pj4NCj4+PiBXaGF0wqBpc8KgZXhhY3RsecKgZGlmZmVyZW50P8KgVXN1YWxsecKgZHJpdmVyc8Kg Y2FuwqBzdXBwb3J0wqBJUMKgYmxvY2tzwqB3aXRoDQo+Pj4gc29tZcKgZGlmZmVyZW5jZXMuLi4N Cj4+Pg0KPj4+PiDCoFdlwqB3aWxswqBvcmdhbml6ZcKgYcKgZHJpdmVywqBmb3LCoEFydHBlYy04 wqBwbGF0Zm9ybcKgYW5kwqANCj4+Pj4gwqBpZsKgdGhlcmXCoGlzwqBub8Kgc3BlY2lhbMKgcmVh c29uLMKgbWFpbnRhaW7CoHRoaXPCoA0KPj4+PiDCoHdpdGhvdXTCoGFkZGluZ8KgaXTCoGZyb23C oHRoZcKgbmV4dMKgc2VyaWVzLg0KPj4+DQo+Pj4gScKgZG9uJ3TCoHVuZGVyc3RhbmTCoHRoaXMu DQo+Pj4NCj4+Pg0KPj4+IEJlc3TCoHJlZ2FyZHMsDQo+Pj4gS3J6eXN6dG9mDQo+PiANCj4+IEFs c28sIGFzIHlvdSBrbm93LA0KPj4gZXh5bm9zIGRyaXZlciBpcyBkZXNpZ25lZCBhY2NvcmRpbmcg dG8gZXh5bm9zIFNvQyBwbGF0Zm9ybSwNCj4+IHNvIGJvdGggZnVuY3Rpb24gYW5kIHZhcmlhYmxl IG5hbWVzIHN0YXJ0IHdpdGggZXh5bm9zLg0KPiANCj4gVGhhdCdzIGhhcmRseSBhIHByb2JsZW0u Li4NCj4gDQo+PiBDb21wYXJlZCB0byB0aGUgZXhpc3RpbmcgZXh5bm9zIGRyaXZlciwgDQo+PiB5 b3UgY2FuIHNlZSB0aGF0IHRoZSBzdHJ1Y3R1cmUgYW5kIHR5cGUgb2YgZnVuY3Rpb24gYXJlIGRp ZmZlcmVudC4NCj4gDQo+IE5vLCBJIGNhbm5vdCBzZWUgaXQuIFlvdSBjb2RlZCB0aGUgZHJpdmVy IHRoYXQgd2F5LCB5b3UgY2FuIGNvZGUgaXQgaW4NCj4gb3RoZXIgd2F5Lg0KPiANCj4+IEZvciB0 aGlzIHJlYXNvbiwgaXQgaXMgZGlmZmljdWx0IHRvIHVzZSB0aGUgZXhpc3RpbmcgZXh5bm9zIGRy aXZlciANCj4+IGZvciBhcnRwZWMuDQo+IA0KPiBOYW1pbmcgb2YgZnVuY3Rpb25zIGFuZCBzdHJ1 Y3R1cmVzIGlzIG5vdCBtYWtpbmcgaXQgZGlmZmljdWx0LiBUaGF0J3MNCj4gbm90IHRoZSByZWFz b24uDQo+IA0KPj4gT3VyIGlkZWEgaXMgdG8gcmVnaXN0ZXIgYSBuZXcgUENJZSBkcml2ZXIgZm9y IGFydHBlYy04IFNvQyBwbGF0Zm9ybSANCj4+IGFuZCBtYWludGFpbiBpdCBpbiB0aGUgZnV0dXJl Lg0KPiANCj4gV2UgYWxzbyB3YW50IHRvIG1haW50YWluIEV4eW5vcyBQQ0llIGRyaXZlciBpbiB0 aGUgZnV0dXJlLg0KPiANCj4gQmVzdCByZWdhcmRzLA0KPiBLcnp5c3p0b2YNCg0KSGksIA0KU29y cnkgZm9yIGRlbGF5IHJlc3BvbnNlLg0KSSBoYXZlIGxpc3RlZCBzb21lIHBhcnRzIHRoYXQgYXJl IGRpZmZlcmVudCBmcm9tIGV4eW5vcyBwY2llIGRyaXZlci4NCg0KUEhZIGRyaXZlcg0KUEhZIGlz IGRpZmZlcmVudCwgc28gcmVnaXN0ZXIgbWFwIGlzIGFsc28gZGlmZmVyZW50Lg0KVGhyZWUgcmVm ZXJlbmNlIGNsb2NrIG9wdGlvbnMgYXJlIGF2YWlsYWJsZSBpbiBBUlRQRUMtOC4NCiAgSXQgb3Bl cmF0ZXMgYnkgc2VsZWN0aW5nIG9uZSBjbG9jayBhbW9uZyBYTywgSU8sIGFuZCBTT0MgUExMLg0K ICBIb3dldmVyLCB0aGUgZXh5bm9zIHBoeSBkcml2ZXIgc2V0cyBvbmUgcmVmIGNsayB0aG91Z2gg c3lzcmVnLg0KVGhlIHJlc2V0IG1ldGhvZCBhbmQgdHlwZSBvZiBQSFkgZm9yIGluaXRpYWxpemF0 aW9uIGFyZSBkaWZmZXJlbnQuDQpUaGUgb3ZlcmFsbCBzeXNyZWcgY29uZmlndXJhdGlvbiBpcyBk aWZmZXJlbnQNCkFydHBlYy04IHJlcXVpcmVzIGEgc2VwYXJhdGUgc2VxdWVuY2UgZm9yIHBoeSB0 dW5pbmcsDQpidXQgaXQgZG9lcyBub3QgZXhpc3QgaW4gZXh5bm9zIHBoeSBkcml2ZXIuDQpBcnRw ZWMtOCByZXF1aXJlcyBwY3MgcmVzb3VyY2VzLCBidXQgZXh5bm9zIHBoeSBkcml2ZXIgZG9lcyBu b3QgZXhpc3QuDQoNCkNvbnRyb2xsZXIgZHJpdmVyDQpTdWIgY29udHJvbGxlciBpcyBkaWZmZXJl bnQsIHNvIHJlZ2lzdGVyIG1hcCBpcyBhbHNvIGRpZmZlcmVudC4NCkFuZCBpdCBpcyBkaWZmZXJl bnQgaGFuZGxlcyBsYW5lIGNvbnRyb2wsIGxpbmsgY29udHJvbCwgUEhZIGNsb2NraW5nLA0KcmVz ZXQsIGludGVycnVwdCBjb250cm9sLiANClRoZSBudW1iZXIgYW5kIHR5cGUgb2YgY2xvY2sgcmVz b3VyY2VzIHVzZWQgYXJlIGRpZmZlcmVudC4NClRoZSBvdmVyYWxsIHN5c3JlZyBjb25maWd1cmF0 aW9uIGlzIGRpZmZlcmVudA0KDQpBbHNvIGFydHBlYy04IGlzIHBlcmZvcm1lZCBpbiBkdWFsIG1v ZGUgdGhhdCBzdXBwb3J0cyBib3RoIFJDIGFuZCBFUC4NCkFzIGRlc2NyaWJlZCBhYm92ZSwgdGhl IFBIWSBhbmQgc3ViIG9udHJvbGxlciBhcmUgZGlmZmVyZW50DQphbmQgdGhlIHJlZ2lzZXIgbWFw IGlzIGRpZmZlcmVudC4NCnN5c3JlZyBpcyBhbHNvIGRpZmZlcmVudC4gQW5kIHRoZXJlIGFyZSBk aWZmZXJlbmNlcyBzdWNoIGFzIHJlc2V0Lg0KVGhlIGRyaXZlciB3aWxsIGJlIG11Y2ggbW9yZSBj b21wbGljYXRlZCBpZiBib3RoIGhhcmR3YXJlcyBzaG91bGQgYmUNCnN1cHBvcnRlZCBpbiB0aGUg c2FtZSBkcml2ZXIuDQpGb3IgdGhlc2UgcmVhc29ucywgbXkgb3BpbmlvbiBpcyB0aGF0IGJldHRl ciB0byBjcmVhdGUNCmEgcGh5LCBjb250cm9sbGVyIGJvdGggZHJpdmVyIHdpdGggYSBuZXcgZmls ZS4NClBsZWFzZSBsZXQgbWUga25vdyB5b3VyIG9waW5pb24uDQoNClRoYW5rIHlvdS4KCi0tIAps aW51eC1waHkgbWFpbGluZyBsaXN0CmxpbnV4LXBoeUBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHBz Oi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXBoeQo=