[coreboot] RV: Error booting with TPM enabled.
Zaolin
zaolin at das-labor.org
Fri Jun 22 16:34:58 CEST 2018
Hey Jorge,
Are you sure that it's the right ACPI path name ?
Also can you please provide me your decompiled SSDT
so I can check whats going on ?
Best Regards, Philipp
On 22.06.2018 12:52, Jorge Fernandez Monteagudo wrote:
>
> Hi,
>
>
> I've found the src/southbridge/amd/pi/hudson/lpc.c, the related to the
> AMD Bettong demoboard, and
>
> 'lpc_acpi_name' and 'lpc_ops' are already defined... Maybe they are
> not enabled or used?
>
>
> Thanks!
>
>
>
> static const char *lpc_acpi_name(const struct device *dev)
> {
> if (dev->path.type != DEVICE_PATH_PCI)
> return NULL;
>
> if (dev->path.pci.devfn == LPC_DEVFN)
> return "LIBR";
>
> return NULL;
> }
>
> static struct device_operations lpc_ops = {
> .read_resources = hudson_lpc_read_resources,
> .set_resources = hudson_lpc_set_resources,
> .enable_resources = hudson_lpc_enable_resources,
> #if IS_ENABLED(CONFIG_HAVE_ACPI_TABLES)
> .write_acpi_tables = acpi_write_hpet,
> #endif
> .init = lpc_init,
> .scan_bus = scan_lpc_bus,
> .ops_pci = &lops_pci,
> .acpi_name = lpc_acpi_name,
> };
>
>
> ------------------------------------------------------------------------
> *De:* Zaolin <zaolin at das-labor.org>
> *Enviado:* viernes, 22 de junio de 2018 12:26:27
> *Para:* Jorge Fernandez Monteagudo; coreboot at coreboot.org
> *Asunto:* Re: [coreboot] RV: Error booting with TPM enabled.
>
>
> Hey,
>
>
> you miss the LPC ACPI path for your SoC.
>
> Just register the acpi_name method:
>
>
> https://review.coreboot.org/#/c/coreboot/+/25534/2/src/soc/intel/fsp_broadwell_de/southcluster.c
>
>
> I hope that helps.
>
>
>
> Best Regards, Philipp
>
>
> On 22.06.2018 12:18, Jorge Fernandez Monteagudo wrote:
>> Hi all,
>>
>> I have an AMD Bettong demoboard supported by coreboot and the default
>> configuration works ok.
>>
>> I've been able to boot a debian8 with a 4.17.1 kernel using the
>> SeaBios payload. Now I've connected
>>
>> a TPM 1.2 to the LPC bus and I've done the next changes to the
>> coreboot master code
>>
>> (ae05d095b36ac835a6b1a221e6858065e5486888)
>>
>>
>> --- src/mainboard/amd/bettong/devicetree.cb 2018-05-10
>> 09:39:18.000000000 +0200
>> +++ src/mainboard/amd/bettong/devicetree.cb 2018-06-18
>> 15:13:53.761093194 +0200
>> @@ -52,7 +52,11 @@
>> end
>> end # SM
>> #device pci 14.2 on end # HDA 0x4383
>> - device pci 14.3 on end # LPC 0x439d
>> + device pci 14.3 on # LPC 0x439d
>> + chip drivers/pc80/tpm
>> + device pnp 0c31.0 on end
>> + end # LPC TPM
>> + end
>> device pci 14.7 on end # SD
>> end #chip southbridge/amd/pi/hudson
>>
>> --- src/mainboard/amd/bettong/Kconfig 2018-05-10
>> 09:39:18.000000000 +0200
>> +++ src/mainboard/amd/bettong/Kconfig 2018-06-18
>> 12:36:10.014905977 +0200
>> @@ -27,7 +27,9 @@
>> select HAVE_ACPI_TABLES
>> select BOARD_ROMSIZE_KB_8192
>> select GFXUMA
>> -
>> + select MAINBOARD_HAS_LPC_TPM
>> + select TPM
>> +
>> config MAINBOARD_DIR
>> string
>> default amd/bettong
>>
>> --- src/mainboard/amd/bettong/romstage.c 2018-05-10
>> 09:39:18.000000000 +0200
>> +++ src/mainboard/amd/bettong/romstage.c 2018-06-22
>> 09:57:09.650663554 +0200
>> @@ -24,6 +24,7 @@
>> #include <northbridge/amd/pi/agesawrapper.h>
>> #include <northbridge/amd/pi/agesawrapper_call.h>
>> #include <southbridge/amd/pi/hudson/hudson.h>
>> +#include <security/tpm/tis.h>
>>
>> void cache_as_ram_main(unsigned long bist, unsigned long
>> cpu_init_detectedx)
>> {
>> @@ -67,6 +68,8 @@
>> post_code(0x41);
>> AGESAWRAPPER(amdinitenv);
>>
>> + init_tpm(false);
>> +
>> if (acpi_is_wakeup_s4()) {
>> outb(0xEE, PM_INDEX);
>> outb(0x8, PM_DATA);
>>
>>
>> Now the demoboard boots and a new option for TPM is displayed on
>> screen (t for TPM actions),
>>
>> the grub is loaded ok, but the kernel complains with the next lines
>> I've been able to write down
>>
>> from a pic I took with the phone.
>>
>>
>> object-220)
>> ACPI Error: Method parse/execution failed \, AE_NOT_FOUND
>> (20180313/psparse-516)
>> ACPI Error: Invalid zero thread count in method (20180313/dsmethod-760)
>> ACPI Error: Invalid OwnerId: 0x00 (20180313/utownerid-156)
>> ACPI Error: AE_NOT_FOUND, (SSDT:COREBOOT) while loading table
>> (20180313/tbxfload-197)
>> ACPI Error: 1 table load failures, 3 successful (20180313/tbxfload-215)
>> ACPI BIOS Error (bug): Failure looking up [\_SB.PCI0._CRS.TOM1],
>> AE_NOT_FOUND (20180313/psargs-330)
>> ACPI Error: Method parse/execution failed \_SB.PCI0._CRS,
>> AE_NOT_FOUND (20180313/psparse-516)
>> ACPI BIOS Error (bug): Failure looking up [\_SB.PCI0._CRS.TOM1],
>> AE_NOT_FOUND (20180313/psargs-330)
>> ACPI Error: Method parse/execution failed \_SB.PCI0._CRS,
>> AE_NOT_FOUND (20180313/psparse-516)
>> ACPI BIOS Error (bug): Failure looking up [\_SB.PCI0._CRS.TOM1],
>> AE_NOT_FOUND (20180313/psargs-330)
>> ACPI Error: Method parse/execution failed \_SB.PCI0._CRS,
>> AE_NOT_FOUND (20180313/psparse-516)
>> acpi PNP0A08:00: Bus 0000:00 not present in PCI namespace
>> Loading, please wait...
>>
>> Anybody could help me to make the board boots again?
>>
>>
>> Regards
>>
>> Jorge
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.coreboot.org/pipermail/coreboot/attachments/20180622/e2469765/attachment.html>
More information about the coreboot
mailing list