Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752610AbbK3DJV (ORCPT ); Sun, 29 Nov 2015 22:09:21 -0500 Received: from mga01.intel.com ([192.55.52.88]:48693 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751730AbbK3DJS (ORCPT ); Sun, 29 Nov 2015 22:09:18 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.20,363,1444719600"; d="scan'208";a="862911093" From: "Zheng, Lv" To: Daniel J Blueman , "linux-acpi@vger.kernel.org" , LKML CC: Steffen Persvold , Myron Stowe Subject: RE: overriding ACPI _CRS method Thread-Topic: overriding ACPI _CRS method Thread-Index: AQHRKpdD1ST5f6KQI0+QWpayNaEaAp6z4nuw Date: Mon, 30 Nov 2015 03:09:14 +0000 Message-ID: <1AE640813FDE7649BE1B193DEA596E883BAFA0F9@SHSMSX101.ccr.corp.intel.com> References: <1448794735.18592.0@outlook-emeawest.office365.com> In-Reply-To: <1448794735.18592.0@outlook-emeawest.office365.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id tAU39Pt1016249 Content-Length: 3163 Lines: 57 Hi, IMO, if you want the new _CRS to be applied during the Linux early boot stage, you can override the table using initrd override or DSDT override mechanism. Please see Documentation/acpi/initrd_table_override.txt or Documentation/acpi/dsdt-override.txt. If you want the new _CRS to be applied during Linux runtime, you can override it using method customization mechanism. Please see Documentation/acpi/method-customizing.txt Thanks and best regards -Lv -----Original Message----- From: linux-acpi-owner@vger.kernel.org [mailto:linux-acpi-owner@vger.kernel.org] On Behalf Of Daniel J Blueman Sent: Sunday, November 29, 2015 6:59 PM To: linux-acpi@vger.kernel.org; LKML Cc: Steffen Persvold ; Myron Stowe Subject: overriding ACPI _CRS method In firmware that is loaded after the BIOS, I need to trim the root bus resource (0x40000000-0xdfffffff) covering the MMIO window [1], so I can attach further PCI domains. One strategy is to override the BIOS's DSDT [2] _SB.PCI0._CRS method; even when my firmware appends the bytecode for a new _CRS method [3], alas I see AE_ALREADY_EXISTS [4]. I understood methods were overrideable within the same table (eg not from an SSDT), but perhaps am missing something? Or any better approach to reduce the scope of the PCI domain 0000 root bus? Thanks! Daniel -- [1] pci_bus 0000:00: root bus resource [io 0x0000-0x03af window] pci_bus 0000:00: root bus resource [io 0x03e0-0x0cf7 window] pci_bus 0000:00: root bus resource [io 0x03b0-0x03bb window] pci_bus 0000:00: root bus resource [io 0x03c0-0x03df window] pci_bus 0000:00: root bus resource [io 0x8000-0xdfff window] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window] pci_bus 0000:00: root bus resource [mem 0xf0000000-0xffffffff window] pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000dffff window] pci_bus 0000:00: root bus resource [mem 0x40000000-0xdfffffff window] pci_bus 0000:00: root bus resource [bus 00-04] [2] https://resources.numascale.com/DSDT.dsl [3] https://resources.numascale.com/DSDT-extra.dsl -- [4] ACPI: Core revision 20150930 ACPI Error: [_CRS] Namespace lookup failure, AE_ALREADY_EXISTS (20150930/dswload-378) ACPI Exception: AE_ALREADY_EXISTS, During name lookup/catalog (20150930/psobject-227) ACPI Exception: AE_ALREADY_EXISTS, [DSDT] table load failed (20150930/tbxfload-163) ACPI Error: [\_PR_.P001] Namespace lookup failure, AE_NOT_FOUND (20150930/dswload-210) ACPI Exception: AE_NOT_FOUND, During name lookup/catalog (20150930/psobject-227) ACPI Exception: AE_NOT_FOUND, (SSDT:POWERNOW) while loading table (20150930/tbxfload-193) ACPI Error: 2 table load failures, 0 successful (20150930/tbxfload-214) -- Daniel J Blueman Principal Software Engineer, Numascale -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m???? ????????I?