From nobody Mon May 20 02:17:45 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1dmarc=pass fromdomain=citrix.com); dmarc=pass(p=reject dis=none) header.from=citrix.com ARC-Seal: i=2; a=rsa-sha256; t=1616589150; cv=pass; d=zohomail.com; s=zohoarc; b=bR1mXXGKesXOjGs2gEsRR0DPBnxrUXhFt9gXNnwxQZN0RYzfOmIdg6cUUWGmCnyHTMNR0qjPY+qDK4Lv494JbLi4otyXABl9LrgbFKxjCC04uJOCd9gOACJIC8DdmpS/HjmWRYumdZgozwxaBFa3EgMZO/qUVBA9c81YFQ4c/Fc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1616589150; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=POqR+yGlRcp/InBe4dSo99f2+VyBz/rcTmCM4AxG96w=; b=hoT7CwnJ2vMeWYdAAxd1e23YHcOTTVHyJR2MLd/N0EHJZlUrDG64YN9TULNp4l6a74SU6JpxY8GXDe7Gr+AbC+qCg6F8LOwNwgL3nLI1XLzPK7wK3Wt6RtuiF50dNBxwggQ1KYOK3EIIUldVmU5Bw7sdijvZ+GpHulj3wUR7l/0= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1dmarc=pass fromdomain=citrix.com); dmarc=pass header.from= (p=reject dis=none) header.from= Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1616589150611304.65648541485564; Wed, 24 Mar 2021 05:32:30 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.100977.192745 (Exim 4.92) (envelope-from ) id 1lP2g8-0007K3-5W; Wed, 24 Mar 2021 12:32:04 +0000 Received: by outflank-mailman (output) from mailman id 100977.192745; Wed, 24 Mar 2021 12:32:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1lP2g8-0007Jw-2K; Wed, 24 Mar 2021 12:32:04 +0000 Received: by outflank-mailman (input) for mailman id 100977; Wed, 24 Mar 2021 12:32:02 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1lP2g5-0007Jr-Vz for xen-devel@lists.xenproject.org; Wed, 24 Mar 2021 12:32:02 +0000 Received: from esa6.hc3370-68.iphmx.com (unknown [216.71.155.175]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 23fcc9b2-0187-4fec-a75a-4561bb1f131c; Wed, 24 Mar 2021 12:32:01 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 23fcc9b2-0187-4fec-a75a-4561bb1f131c DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1616589120; h=from:to:cc:subject:date:message-id: content-transfer-encoding:mime-version; bh=R4gkis194kilftpQstf9rZL9/bcNSgw//ydipzRXofk=; b=Sh00lpc788MCSytamy/RnLUPpI4lSQXVpR8dGoBHniD0DFaolCgv0qhz dSNijZBzJkPJBkZdcPKDXpDvwb4qVlLDeHSx03cTdOK9fyXn66YLOLHso hE3Xvgm04g7DxHouDlaRKhPBbMyXbAN0G/Czda8N8li894Il/k28dM+xz 4=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com IronPort-SDR: YvE/SYBQjZkmiLZVR/s9RWc1wp0hPbnz1mMDbt7SupI7cYiHIMeRb1MFVLD7rBDO/rz1jL7fzR JFdw6HovvlLqbNLqkQQZ/oi9hvbLDEwk/BzFTN/0fJR/etdBtb3TUwfpM0j0k3OVTDOOiGFyjQ WTos7uIbE03rXG9TnoOeoep+aj90Wc69s0JBlPs24eUUYMzIOwfC1J8Pi2FFGiIG0v4MtItG2u di1ABYmmkntoPY3bCjKcXQvr1yh/Ov60NxoYkJ5ZTkE/C2FUKuhe6Yrb5JEFzc1DFO6YDIRhcH 55g= X-SBRS: 5.2 X-MesageID: 40164727 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.83 X-Policy: $RELAYED IronPort-HdrOrdr: A9a23:Zt6Y4qHcc/kVw6ZYpLqFDJTXdLJzesId70hD6mlYcjYQWtCEls yogfQQ3QL1jjFUY307hdWcIsC7Lk/03aVepa0cJ62rUgWjgmunK4l+8ZDvqgeNJwTXzcQY76 tpdsFFZeHYJURmjMr8/QmzG8shxt7Cy6yzmeLC1R5WLD1CQYsI1XYcNi+wFEpqSA5aQacjHJ 2H6cZd4xamc3IbbsO0b0N1JdTrjdvNiZ7gfFo6FwcqgTP+9g+AxZzbN1yj3hkYWy5S2rtKyw b4uiHw+6nLiYDc9jbyzGnWhq4m+ufJ7vtmKIiyhtMOKjPq4zzYGrhJf7GZpjg6rKWOxT8R4a DxiiwtNchy9H/dF1vdyXCGu3iCoUYTwkTv1EOChj/bqdH5LQhKdPZpv55TcRfS9iMbzbZB+Z 9Mtljp0qZ/PFfrmSTw4MXwTBd6lka4impKq59us1VvFaQZc7NftooZ4Qd8F4oBBjvz7MQdHP BpF9y03ocdTXqqK1Ti+kV/yt2lWXo+Wj+AX0g5o8SQlxxbhmpwwUc0zNEW901wua4Vet1h3a DpI65onLZBQos9dqRmHtoMRsOxFyjkXQ/MGHj6GyWoKIg3f1b277Ln6rQ84++nPLYSyoEppZ jHWFRE8UYvZkPVD9GU1pEjyGGDfEyNGRDWju1O7ZlwvbPxAJDxNzeYdVwom8y859oFBMn2XO uyJYJ2D/fvIXCGI/cI4yTOH71pbVUOWswcvdg2H3iUpNjQF4HsvuvHNNbfTYCdUgoMayfaOD 8uTTLzLMJP4gSAQXnjmiXcXHvrZwja9ZJ0G67KwvgLxOE2R89xmzlQrW78ytCAKDVEvKBzVl B5OqnbnqSyonTz2mrU8WNzOF54AlxO6LvtF1NGzDV6f3/cQPImgZGyaGpS1HyIKltUVMXNCj NSoFxx5OaQNJyfxScrDvq9KWKEh34vpHaHJq1s25Gr1IPAQNcVH5wmUKt+GUHgDBpugztnr2 9FdUs5XEPFLyjvjq+klZQQI+nae7BH8UKWCP8RjUiamVSXpMkpSHdeezK1S8aYjTwjQCduik Rr/7USh6eBnjiTOXIy6d5IQWFkWSCyOvZrHQ6FbIJblvTQdAZ8QXyjqBaahxswE1Cavnk6ty jEF2m5aPvLCl1StjRkya7s6kpzbXjYVVl3cGpGvYp0Ennmtn5/3fSQXLe613KcZzI5s6UgGQ CARQFXDhJlxtix2hLQpS2LEm8+wI4yesPaF7YuftjoqweQAbzNsZtDOfBa/Jxobo+z9sAKVP +SYA+TInfTDfgz1wmcu3YiP21VpRAf4IHV8SygyFL9+ng1Rcf2ChBBYZowJtmH9WjqR/qSyv xC/KQIlNr1Fl+0U8KMzKHcUiVKJRzSq1OnVu1Ak+EmgYsC8J9IW6TBWTTG1Ht7zAwzAcf9mk QZWrl66tn6S/pSVv1XXypY+1Yz/e7/VHcDg0jTAuUke0sqgGKeF9SV46DQob5HODzImCLAfX 2e+TZa5fHLQm+q0qMbEbs5JSBzZFIn4HpvuMOEeIu4MnTgS8hzuH67OGS6arlTVeysHqgRtA 9z55WwpNCsHhCIrzz4jH9cOaJB82GuXMO0DkatIIdzgqGHEGXJpLCr7s61hCrwUh2hZS0j9M p4SXA= X-IronPort-AV: E=Sophos;i="5.81,274,1610427600"; d="scan'208";a="40164727" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UgDQOaSsfd3W3qD9htEZcTaPiyPjAN+aVMqunwhtdUzIXAEc1c/F6YeLFjFWYKeFmIMr4erpDIdP/+Z4TDsvaCl1xErXkNshG9re4q6XaJdXwNWMMcI4d4oLGx9QDQRyhnEHyUqOjsTZ/1OERgr6SGEMmgmJMY++ZegwH6z3TLKFMs6G1aPCReLlnxclIKX8RcWK/wts9GSC+HHwD+F0IxpKCxgdTwZ9gurO40Kg+qbjsCW8nPgmQgQZyjI8dYyj8nB51DSLPc7RRZu+6u+3LT8yhsvfrwL7B4mp7W2Ke/vxVHWb9ABCcRbR9uY5hMlL3nWmgr5fu4B6dpjFqhaPog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=POqR+yGlRcp/InBe4dSo99f2+VyBz/rcTmCM4AxG96w=; b=GIiI9WOcFt6E9RLyXnT1fglJ3B9WzlQZUDnrxcu5XITGaMjn1fDEMUjD5ykidavFk7tpb/R9bMIJscUQ4nDpjrYWmHAbOTJ/4Rdjuri47ROG3Hb2JLB7+WhvO0R6NgyAYSh+sHkusdW97V6m3p0FBRjZGJc6tYHGK7MeMJ7YdUS35gVQ71cm/vzcLrQZQztzFRFOufQv4TMTWQabPXXMCPiYyajMkuBjVwEy8VObl55annQlGQEIruqxe1Ok2r/17M2csSxoRHrX6RpKnhyHDrTAgTP7NWXI7fGbDrJBVm9uT9YgoXFxoahYXfsYiTZqybWkEGblzBKeibtSUXq74Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=POqR+yGlRcp/InBe4dSo99f2+VyBz/rcTmCM4AxG96w=; b=mQJ+v9ZlRgcbMPOXMfz9prtuKnnR0rHEneCml8nBCrCe4O+mfRJgRqGwEYKSMUr/5Q1GM8tz1rQATuFiU58hMVhsIb0y3mjU8U131e0PFK95F4/TBT2Niw+EWAX5Ot4hv4BIGUAtn9HqwV86nae1cChJgAr3hSjQDHMfiuZpjzw= From: Roger Pau Monne To: CC: , Roger Pau Monne , Mika Westerberg , Andy Shevchenko , Linus Walleij , Subject: [PATCH RESEND] intel/pinctrl: check capability offset is between MMIO region Date: Wed, 24 Mar 2021 13:31:18 +0100 Message-ID: <20210324123118.58865-1-roger.pau@citrix.com> X-Mailer: git-send-email 2.30.1 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: MRXP264CA0020.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500:15::32) To DS7PR03MB5608.namprd03.prod.outlook.com (2603:10b6:5:2c9::18) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0d6d2bac-85c1-4936-e2b7-08d8eec0d031 X-MS-TrafficTypeDiagnostic: DM6PR03MB4539: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:4303; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: j+BTsEOI/Yk7IN6cquruSnNPhksZGXV17HknzSm0EO7b+bvjjc42Q4n/SWTwe+yl1kbI3uze+tywyOREB+ODqGAW+MGtsagVUYvpVsD/GvGwfik7lnM08fMfwLVFcZ2W+LapHqErIDfFXhekQ4bUUJ0gv4gx6N2/y4ZFcAa3OOG72UYc+xcsQvPIz0FXXqFWNJdKrSoOhrnaYxt0plFn7XN8RWdWV+XUB8prACktKIwFSdUT0eTgmm7kzvyl0ZrsgxFSEIpTnV4ZKZPzls6o4Y73pigfzEtLQj+J/sT/X1bTJWlyTjA7axSAq6hqGRw6HUF3U/zApU5MP5vpIQZbtNbkyCTo7Gs0ffTU8VnhXHFHBNxzO7A4n0EFs0YkTD9Zf+AXZgCxOVURGLvDuKp/jwRJRbChRljhtbmzQ+Aa9HIXlrLnzWE5Vvya1zGqaRXYcLOMiUYodNG0Cl+xj1Lz6hjkotZmi0M5IOmPIR5Hr1PsIdIPXYNWpxoNs3a6Cr2gO3idHkwguIV6/ol0A6wV7KV+8u8mEEm/k6Tj5hGawfixnk0vpBC+TKaetiNJcEKYrjwsUtWO9+TG1EODlSYOfFUfTnEyrZWT8qAZqEOj4tKq47NenWHJl+asi8doezpSNDFOItGiClYPkZyYHGI44bTZBP5b1snHxBZY/5qlme4= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5608.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(39860400002)(396003)(366004)(136003)(346002)(376002)(83380400001)(6666004)(2906002)(186003)(86362001)(4326008)(5660300002)(26005)(54906003)(36756003)(38100700001)(1076003)(316002)(16526019)(8676002)(2616005)(6486002)(66476007)(6916009)(66946007)(956004)(8936002)(66556008)(478600001)(6496006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?MFhWZFZIUXduOVVYTlZVcjZjcFl3cWxLSWdBQVFHcUtsTWE0bzlVbDVBVmd2?= =?utf-8?B?MUJGclZISkI4eHpKOGsvTG9lNXhCRU0xb3hTR2VJaHlNMjUwN2tzcUxTS1l1?= =?utf-8?B?VGlXMDMzUTU4d0VvZWhOSm1SdlkvRlBlQ0VibEpiaHJPUmdCdGlTZ3oxT0l0?= =?utf-8?B?Vi83KzV4QlkvaFpjRjFiWmMxTU54ajVmd0IyZUR0M01xTkh4VHJYeDVKcW9V?= =?utf-8?B?U25DcUJRWGIrRzVsMHM3bjlFeEhoUExIUzhBWHJJKzNNc1V1aFFtaHdJSDJI?= =?utf-8?B?aWxPSzQ1bGJncFExa3FRdk9tTXZQb3RuWFhQWWlsN1JGUXo2eVVJSkI3SWlx?= =?utf-8?B?bnpvU1VIbjRTWkhxZXdYRHd4OWhrSE5FQ3Bid3JIem5lenp3ZXpLVDhjU2Nx?= =?utf-8?B?S0JrRWdCNEdNWXB0b2dBWWc3U0FoYnZPaG9ZQUVJYWlnQVU2UDk1cWdtcmx0?= =?utf-8?B?YytDOVdVQ1ZYdjlVL0dCNkkyTmo0Ry81NXJHQXVxYyt0aC9xcmxhUEJYVzM5?= =?utf-8?B?Z1NISnRkWlNwNTlaS0NsU1UvRjNVMEZZa21HemwveVpoSzZYSC9PUjNCSnJ0?= =?utf-8?B?Sm04ZUZka0FGUUg2ZWpRanZkSjJ5YllKR2NHNDN0YVVuZDlTaERTOGFIdVox?= =?utf-8?B?R0pmMGlxTU5QVjB4MVQ2eVAwbDRJNkc5K2FvZllTbVdRSnVFeStFYTc5NVZC?= =?utf-8?B?U1gwSE5RMDAvQS9uY3NpLy9PU1ArekdmeGRRT0hVOU5vRGRQeTNQYytCMnlo?= =?utf-8?B?ejlzaWIvUExobzhoSXMrbDlHdzVIYXo5R0dEdDZaa2dKdjJWK2xTeEYzaWxk?= =?utf-8?B?WlJrYjNneVZUem1wcVZ2Qm9SaTJ4OTFNZEZXV3JpOFpINnpaTUNZaXM2NFNK?= =?utf-8?B?Zm05Wit6cWx0ZUxZeUdwNkJPOENBWUNMMFZVOWl0ekNiRjgzUHcvbzdoRS9Z?= =?utf-8?B?c2JOalZrOXFCVmQ4SWFSM2FmeU1TZ2taWFlzZnIvTG1ySExWMGxuVDkySHV5?= =?utf-8?B?RmN3bHB3Y1FWU0EydU1oOHRBOHlPenNidThkcUVkdUlwT0ZFWWwzV3poNlFr?= =?utf-8?B?N3hMYkRWM3B2OEEzbGRVZWpoY3VPRUFrYUpuUDB1MXZQYTRyQ0xDbHFsQmI1?= =?utf-8?B?SHRPVmIvSGtNWlJ3NDNvZGYyYzRCZUsvRGVlM1gyaHFCZlpCUVl4bit3bmpV?= =?utf-8?B?YXV0Z1Y1ZFpudWF4dUNwRHdCU0F3S2F1UmhKZlQwbDdJL2xaWjMybEpraDFz?= =?utf-8?B?Q3FpV3RwOGlidnRqRG9ITnFzNWVOWnFicmRUalRJQm1FRHJOWHpSbmFILzBU?= =?utf-8?B?NUFsdUE1akJVSE5zbk54T3BnSTB3UXB1RzJsY0xja0hUYXk5RkNvRGNnSHU3?= =?utf-8?B?N2Nkc3g5NTUrK3FUUHcrMytvbzRhZ0ZiT0lhSE1ia0hwVEkxTlpSOUtFdkZE?= =?utf-8?B?Wk1oUTBhTEUxQ0NJU1JRTjhWdFM2TS9zcXVyeUlUMjhwS091eVAzKzFUeVR2?= =?utf-8?B?dUM0WWdmbGtkenN0LzFLRjhCUzhKT1NVSTJ2Y1BXNkRLNTVycTJjMmJ5Y21y?= =?utf-8?B?Wm5FNk1wTEFwWHVJeDM1UHVYeTVtZjlHWUJmWUFqNkt3d3luS2dKQ2t6Qmlh?= =?utf-8?B?RmR5N1UrUE9HMzFxVW51WkUvZWNZRFg5UnVkd0EzbEZIZDlmNXJkSXQxZ3Bp?= =?utf-8?B?cEFCeFpnbGE2ekY2MlBGODJvaGNTcGxETURlQmpHVzBSWjBXNmJncTNpajBH?= =?utf-8?Q?dwWuqF53Nx1KqR31R509HT/VO6cxnUhWg64C58X?= X-MS-Exchange-CrossTenant-Network-Message-Id: 0d6d2bac-85c1-4936-e2b7-08d8eec0d031 X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5608.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Mar 2021 12:31:56.9097 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: V9oFOlKY/6NeDTSIPMKZLXlX8D16tgYJIzZHHVecf9LrQBWW8SNfRGewzeZ3cvbb41RFCMB1t7YbRcy7UCZj+A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4539 X-OriginatorOrg: citrix.com X-ZohoMail-DKIM: pass (identity @citrix.com) When parsing the capability list make sure the offset is between the MMIO region mapped in 'regs', or else the kernel hits a page fault. This fault has been seen when running as a Xen PVH dom0, which doesn't have the MMIO regions mapped into the domain physical memory map, despite having the device reported in the ACPI DSDT table. This results in reporting a capability offset of 0xffff (because the kernel is accessing unpopulated memory), and such offset is outside of the mapped region. Adding the check is harmless, and prevents buggy or broken systems from crashing the kernel if the MMIO region is not properly reported. Fixes: 91d898e51e60 ('pinctrl: intel: Convert capability list to features') Signed-off-by: Roger Pau Monn=C3=A9 --- Cc: Mika Westerberg Cc: Andy Shevchenko Cc: Linus Walleij Cc: linux-gpio@vger.kernel.org --- Resend because I've missed adding the maintainers, sorry for the spam. --- drivers/pinctrl/intel/pinctrl-intel.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/= pinctrl-intel.c index 8085782cd8f9..bc8b990d8021 100644 --- a/drivers/pinctrl/intel/pinctrl-intel.c +++ b/drivers/pinctrl/intel/pinctrl-intel.c @@ -1481,16 +1481,22 @@ static int intel_pinctrl_probe(struct platform_devi= ce *pdev, =20 for (i =3D 0; i < pctrl->ncommunities; i++) { struct intel_community *community =3D &pctrl->communities[i]; + struct resource *res; void __iomem *regs; + size_t size; u32 offset; u32 value; =20 *community =3D pctrl->soc->communities[i]; =20 - regs =3D devm_platform_ioremap_resource(pdev, community->barno); + regs =3D devm_platform_get_and_ioremap_resource(pdev, + community->barno, + &res); if (IS_ERR(regs)) return PTR_ERR(regs); =20 + size =3D res->end - res->start; + /* Determine community features based on the revision */ value =3D readl(regs + REVID); if (((value & REVID_MASK) >> REVID_SHIFT) >=3D 0x94) { @@ -1519,6 +1525,12 @@ static int intel_pinctrl_probe(struct platform_devic= e *pdev, break; } offset =3D (value & CAPLIST_NEXT_MASK) >> CAPLIST_NEXT_SHIFT; + if (offset >=3D size) { + dev_err(&pdev->dev, + "wrong capability offset: %#x\n", + offset); + return -ENOENT; + } } while (offset); =20 dev_dbg(&pdev->dev, "Community%d features: %#08x\n", i, community->featu= res); --=20 2.30.1