From nobody Fri Apr 26 01:11:22 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=xsightlabs.com) ARC-Seal: i=2; a=rsa-sha256; t=1669152004; cv=pass; d=zohomail.com; s=zohoarc; b=EYztMWGXKB2n1YdsGk74EJaThaVDfzaptfIzRx4myqjnlB4fW1Wh6rvrV0V7JDEPybDQJBZhO6zYW3zH/8W+abjKvwUfCVLM0/YpG/1fu1mPBUg6SKHtqpXG0+lP9IkwIhem3WhRU02EnstoI64bshKz6H0l3tcyZySD5z2DPZI= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1669152004; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=fFs2S2gBa4AWRKY8XfHPrNI8sjMuNkjGreS/cQag4Xc=; b=h8CzhLBnG4+vpbU98GILuEvsF70QtPU3DdQCoVxRdsoFAHBSKxKTR5IczS4uR7oiP1tPcmAS2NnJF2wTe2Iwjen97J61Zq5cpcqIUyNTnslSvabcGUnLSTB3TaMdk18ddvUwRv0w0rqllpUXzg7e+0vT6VJcjpg3TavYPKUtKn4= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=xsightlabs.com) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1669152004778331.2768135901365; Tue, 22 Nov 2022 13:20:04 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oxafT-0002JJ-Es; Tue, 22 Nov 2022 16:18:59 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oxYmi-0006v8-DA; Tue, 22 Nov 2022 14:18:20 -0500 Received: from mail-db8eur05on20629.outbound.protection.outlook.com ([2a01:111:f400:7e1a::629] helo=EUR05-DB8-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oxYmg-00021r-Hv; Tue, 22 Nov 2022 14:18:20 -0500 Received: from AM9P193MB1684.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:3eb::9) by AS8P193MB2415.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:40e::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5834.15; Tue, 22 Nov 2022 19:18:11 +0000 Received: from AM9P193MB1684.EURP193.PROD.OUTLOOK.COM ([fe80::4250:f814:d3d6:53fc]) by AM9P193MB1684.EURP193.PROD.OUTLOOK.COM ([fe80::4250:f814:d3d6:53fc%4]) with mapi id 15.20.5834.015; Tue, 22 Nov 2022 19:18:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Bt5VgloJEB8dOpxFfuX8cxiw+trASXBapES2UGmQOXiYd5Z9KeqJeQB4NAqJuSNcYD/XutPL/WgmVqmsNsNQOgNve13d3cLn5ZTwKZdUwsxdZ2XNPziJRgdG6SSD3Lbecyl7xAy9QwWUnAxJpigs7Ur/ESKAoph2QvZwE6IpWgpkWGaTjk6PfhaUGr8UPmV6s6X1LLWnj2rbtyTrBGwh2Usnff/30b5l1MuhUYLiTX6yGbDJGH0Khsmrqpao12O0l95ffYwqp7O1m883sECYa6E8saX+kTwX99QAb/YgPys6Ud4R/gOHkeM98t4ed7/fA42Rv8ykDwBCFBYfCtYkkQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fFs2S2gBa4AWRKY8XfHPrNI8sjMuNkjGreS/cQag4Xc=; b=mzGCg80+uYa1d1NC8TnCzvagDrJngcCCHL4xfiPUzWyhAXQs3R8IgPoPYwJlIqz3jNl4lpi4eSxF0M09FyixFlYUc5l0Eacg6l05U/TO/TQlWGFqBwk19HZmXpdnfU1fqc+vzT0pPUBTwz7GGomv/DlDHynxJyJnUmQAkm0gMdMHVOr0oGu7tKTjeHSqiEVrzDvfrECQxErLhk8UTA+kxfgaW2MmEWKTlhfAoyQ1vmsGJEhtMHLp3nTe2URwhwfhKqir79MvZH6zB3p2Nx8CVIZFqurP34Bx8An8NeXZZK2oJzLYtci40EwQ+LUlOhWEWB7kyvMFNHCrqGqDEfnGRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=xsightlabs.com; dmarc=pass action=none header.from=xsightlabs.com; dkim=pass header.d=xsightlabs.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xsightlabs.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fFs2S2gBa4AWRKY8XfHPrNI8sjMuNkjGreS/cQag4Xc=; b=rCPOh6s35dXsulpMk740YYYzYd1Iop/NxmERApjA/EguIbOb81ugk2O7d6IYvITG/M0BrZRs1dh1IKucogo4hwbGnf0beRO8RRIXOTrb6Wa7dizgvggCXUxfwPh6/Kn5xAmdBVsrYzRRO4UKh9b1xwKes/tBQKsUgWtqof7m70s= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=xsightlabs.com; Message-ID: Date: Tue, 22 Nov 2022 14:18:07 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.5.0 Content-Language: en-US To: qemu-arm@nongnu.org, qemu-devel@nongnu.org Cc: Peter Maydell From: Luke Starrett Subject: Subject: [PATCH] hw/intc/arm_gicv3: Fix GICD_TYPER ITLinesNumber advertisement Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BL0PR02CA0089.namprd02.prod.outlook.com (2603:10b6:208:51::30) To AM9P193MB1684.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:3eb::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9P193MB1684:EE_|AS8P193MB2415:EE_ X-MS-Office365-Filtering-Correlation-Id: 74afcac4-4b60-426f-01ef-08daccbe4bd8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cIcZWAu1pO2hLiXmqulBTcs4HFliPfV7oGS4g2a0mOGO2OWrwAMNiwujHURTORY/k7e7SVcHXVxnmP7hQDmNS/jO4dSeM6fq4zTegnzwwpKGuM1Qt8Eu3t9dX01AmrxiLDOm26rcZxdzTrW2SRwbyUpTwN31u6j+U0wjoBMdCVEgI1tC0GsD1pJ9/Gp+7728tQ3kYY+4o2X7gfzK/T0YeWi0qqHI4l5antPDM0Zz0YpHX50i+Lj/FVYsQGHTgXG64dwUvDJrAQrHb/v4cK9gzCmQhvrdb210LRP0JH0Gix5VvjANgq2HW3QuvK5dvuBETNLvTgONXfQjcr8T6vDmzp0m4gnuufqXDy2DjaJlhnZNhAoGFOgqYeDu8AaLbSlQfzOeMjLBtWk4AmXUHCFsIQJQJBIST05DCiudM9G/XWNZj4yGsBZQ1G0ciV5NVGdVM6KuqyXBdRMfSmro3T1CgtVwjYSF4jDCYyl+U8MO6n0+pONzEM7zbVg5UyR0ATlHOb2R/GxIhjruqT1H5sVQF1Dce3YL6MkpFI1EMOOH2fD6ucPqNa4wliBOcmhXi09Lry/HHVvB/pUNHtCeaus43qyrlm1soZ1pDXGJP+sYyu4dCkwUVSLDNkO91oYQKOkn94IH4vQHBBh5pW2wvi1roL+edl1kdEvB+foHqtbfO09KNV6gNGm+wH9m+HuMxA3rzvzl2oOSVJUdwVDGEJ+c9mno5W1WZorUBfJfAl389L/AWhheLIOc+ZCHORyMv/xdPzfcaRllb7fkijgbeCGuaQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM9P193MB1684.EURP193.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230022)(4636009)(136003)(366004)(346002)(39850400004)(376002)(396003)(451199015)(8676002)(36756003)(8936002)(6506007)(6512007)(26005)(66946007)(4326008)(66556008)(478600001)(6666004)(66476007)(316002)(5660300002)(31696002)(38100700002)(86362001)(83380400001)(6486002)(41300700001)(2616005)(31686004)(186003)(2906002)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ajZlaXc2anBBMlZJOVRPQ3RlN2hWOE4vdFFxbCtKU1JrSTFnWmN1SFNJTWcv?= =?utf-8?B?UGlKamRod0FJQVZUUWgybVB4YVk2RHJ1aTlONmJZZUtCbDdBazc1RklVQmN5?= =?utf-8?B?bHhNM2szdkVsbFJoRmtlM0VQcCt0eVVubnZFNXVnaWJNeThuVXcvaURPcWQx?= =?utf-8?B?dHZoS0NhWUxQcDNCd2FaTS8wVUFuVlZsOHc0T2MyenBMSk9iajF3bDREWTdj?= =?utf-8?B?SHZHVExvdWRldlFzZURrUjg2cUtBL01GSnlCNE1Wblo1aU8vZEFyZWZqYVJj?= =?utf-8?B?RWxlejhxNHc0MFJoZGFXMEdHamc0SVVjbkY1VFJPQlZOUTZLS3c0YzRTbkwv?= =?utf-8?B?czh1TkNzeEdWaDFnWTJqZEZZNWVXMUNYZExsOVJtTzU4QWRMN1V6cHlJMEIv?= =?utf-8?B?WGZuNm9rWmJqN3B4TFJBanFsVWpQSWZDYUtOTE50YURMcmZ2bFJsOGE0Tmhp?= =?utf-8?B?c0N5UUxNbjB6TlNhc0ExNGZqaGkwWlAzUS84MnBOVFZRRTZZYXRQRjF6Zktt?= =?utf-8?B?eVBkOFJzTm91VE9oR052ZWR2K0xFM2xkWStJNGg3VExFZU8rRlZ3WWM1SWhO?= =?utf-8?B?cXovUXNSWUxnQW5LVnY2dVVwT3ZDeXFrTmhHc0U4YWkydXM2T3pBOFNXaFpG?= =?utf-8?B?SFBVN2xtVjl2NkYyMEFSTlF1YjNVUzVFSkVJZHRVS3ZDd1Vmc3Q2VE81bzZl?= =?utf-8?B?VnRHRG1DMUVncW9FcU5SMmx4M1hhYWRzRjMzR0NSa0x6S0pJOGdGVUpXamhW?= =?utf-8?B?ZjVaZzRRYVV0czlLYlJYZlBKd0tYbnhCZmlCLy9CWXlPV2pNb3NMRDNaeWpQ?= =?utf-8?B?eVlXTEFJbU15NGdXZzBYT2NhNFh2VzdjNFpVdURubDYwVHBua2dyQ1hyWTUr?= =?utf-8?B?bkFrL0VDT3Y0UEw2V2JFUGxjYXhZRDJJcWtXN0VvQysxVmd3V1FFSGs3bkgz?= =?utf-8?B?QnRTM3k5Ykd6RHJWa01VU1U0dk13QnY1OHdBaVNxUXZFODJ0UUcxUUlQRzho?= =?utf-8?B?azJ0cnEwc1BwNXdVTk1lQTRLVkV6M0F5V1dJL21xdEEza2l5clpBa2RDMUZP?= =?utf-8?B?cXhRM0dZeWlhZXZpbzQ0bllUYzNTc0kzdDhaZFBQOFBJSnFoZmFqejVYOW5v?= =?utf-8?B?VnZ2QU1uUzRmTlRIaGo2UXQyeFRuSC93QXF0dEozS0lvMGxqbXF3NUs4c3oy?= =?utf-8?B?UTU3ZVdTZFBOcDQrN3FDZERCM01lemZWWk5QWmI0N1F2U2phOWtTUVhYZTd5?= =?utf-8?B?MlZzMlVDTDNPTkpic1RqdHA5N25rV0ROQ3Y4ZDJzTHhnYVI5UXNySkFpak1M?= =?utf-8?B?ZXR5dlRPK00zenN4WGlneDczcld6S1owZW1yNGRGS2ZWSjUwTGVjLzZlaG9j?= =?utf-8?B?VmpvcGhOaGZTalZBSjJJVkg5MjRrcmlOYmlMclRrSmRrQzI1d3FLTEw1Vyti?= =?utf-8?B?cEZzOE42MGJ0cXhMT1dtRXdNRzdKZjhOMGwyaE1iSlBkcjNlVjBPRjg4WE1y?= =?utf-8?B?Q2FmVEdVb2VVYXRwOHhTb2M5Q3MrOEFhNzNJRjdXajYwZjM2a280N05OWHcv?= =?utf-8?B?QXA4eGF6bkl1TTRwNmNWY2EwbTlIM3I0MnNSZXBRZVN3WFRqN0phcW9helVB?= =?utf-8?B?TnhobnZ5TVgvaUEwZU0rWUUzUTVQaWdsRXcrVFI1b3lZWVpBbjlzUFo5ZE9F?= =?utf-8?B?cERnWFFlQ3A2eGtjRm1ZVmZsRiswM3c5aVEwbU81a2JLbUZEM0ExaUJZOW5z?= =?utf-8?B?MHRvM2czUFpOWVpVS0o0cUE3YmZpWlZlYUJPMVczSjhvVTFoVWxvNEcxaitk?= =?utf-8?B?WWxBcEppdkJVYTcraHpMSGtNYXdmSVdpcC9seWczZmlIK0pEbDJUcjlDejlj?= =?utf-8?B?SnQ4bHl1NGN4aTVqaUh6TFZpWkJJL0IybDhjUkNKbWR6bXV5NGtBdFM1T3p0?= =?utf-8?B?S2xRSmNFeW1GYkF5b00wVDdsdTBncHB0Vk5RQlNVZEZ2amU1N3hIWlM0OVdm?= =?utf-8?B?MFdhNEhVQkp4MjJ6eVlaNUx3b1RrdGhWOTJmNFJ4KzJUMGdpcDhDZUFZUm5T?= =?utf-8?B?VWVXdFRjdDljekwzMFRIdkl4bTN0a3BmSXFJeE01Y2FyRWhjbmJneUNNcFBC?= =?utf-8?Q?XyMZYrBhEpoj4Edm232sFmFUP?= X-OriginatorOrg: xsightlabs.com X-MS-Exchange-CrossTenant-Network-Message-Id: 74afcac4-4b60-426f-01ef-08daccbe4bd8 X-MS-Exchange-CrossTenant-AuthSource: AM9P193MB1684.EURP193.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Nov 2022 19:18:11.6536 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 646a3e34-83ea-4273-9177-ab01923abaa9 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3/5YdhoD9TPvMCN6G2aXarwaZTnAEyQ1Iq5I/E9rqr8obKeAkspn59iDU/4uilq/TuyGK2VJN11MXTwz1L68Hw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P193MB2415 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: permerror client-ip=2a01:111:f400:7e1a::629; envelope-from=lukes@xsightlabs.com; helo=EUR05-DB8-obe.outbound.protection.outlook.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FORGED_SPF_HELO=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, T_SPF_PERMERROR=0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Tue, 22 Nov 2022 16:18:58 -0500 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @xsightlabs.com) X-ZM-MESSAGEID: 1669152006836100005 The ARM GICv3 TRM describes that the ITLinesNumber field of GICD_TYPER register: "indicates the maximum SPI INTID that the GIC implementation supports" As SPI #0 is absolute IRQ #32, the max SPI INTID should have accounted for the internal 16x SGI's and 16x PPI's.=C2=A0 However, the original GICv3 model subtracted off the SGI/PPI.=C2=A0 Cosmetically this can be seen at OS boot (Linux) showing 32 shy of what should be there, i.e.: =C2=A0=C2=A0=C2=A0 [=C2=A0=C2=A0=C2=A0 0.000000] GICv3: 224 SPIs implement= ed Though in hw/arm/virt.c, the machine is configured for 256 SPI's. ARM virt machine likely doesn't have a problem with this because the upper 32 IRQ's don't actually have anything meaningful wired. But, this does become a functional issue on a custom use case which wants to make use of these IRQ's.=C2=A0 Additionally, boot code (i.e. TF-A) will only init up to the number (blocks of 32) that it believes to actually be there. Signed-off-by: Luke Starrett --- =C2=A0hw/intc/arm_gicv3_dist.c | 4 ++-- =C2=A01 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/intc/arm_gicv3_dist.c b/hw/intc/arm_gicv3_dist.c index eea0368118..d599fefcbc 100644 --- a/hw/intc/arm_gicv3_dist.c +++ b/hw/intc/arm_gicv3_dist.c @@ -390,9 +390,9 @@ static bool gicd_readl(GICv3State *s, hwaddr offset, =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * MBIS =3D=3D 0 (me= ssage-based SPIs not supported) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * SecurityExtn =3D= =3D 1 if security extns supported =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * CPUNumber =3D=3D = 0 since for us ARE is always 1 -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * ITLinesNumber =3D=3D (n= um external irqs / 32) - 1 +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * ITLinesNumber =3D=3D ((= (max SPI IntID + 1) / 32) - 1) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 */ -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int itlinesnumber =3D ((s->num_= irq - GIC_INTERNAL) / 32) - 1; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int itlinesnumber =3D (s->num_i= rq / 32) - 1; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * SecurityExtn must= be RAZ if GICD_CTLR.DS =3D=3D 1, and =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * "security extensi= ons not supported" always implies DS =3D=3D 1, --=20 2.27.0