Attention is currently required from: Felix Singer, Martin L Roth.
Karthik Ramasubramanian has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/77541?usp=email )
Change subject: Update amd_blobs submodule to upstream main
......................................................................
Patch Set 3:
(1 comment)
File 3rdparty/amd_blobs:
https://review.coreboot.org/c/coreboot/+/77541/comment/b7c470d0_c71e60a3 :
PS3, Line 1: 1cd6ea5cc5c22d3f4e439652ede85d21488232e4
This is not matching "to commit id 591d5fb:" in the commit message. Actually it is matching the "from commit id".
--
To view, visit https://review.coreboot.org/c/coreboot/+/77541?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Iebb8334a4ca89745dfbeedf6d3e72a1b9d74d708
Gerrit-Change-Number: 77541
Gerrit-PatchSet: 3
Gerrit-Owner: Martin L Roth <gaumless(a)gmail.com>
Gerrit-Reviewer: Robert Zieba <robertzieba(a)google.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-CC: Felix Singer <service+coreboot-gerrit(a)felixsinger.de>
Gerrit-CC: Karthik Ramasubramanian <kramasub(a)google.com>
Gerrit-Attention: Felix Singer <service+coreboot-gerrit(a)felixsinger.de>
Gerrit-Attention: Martin L Roth <gaumless(a)gmail.com>
Gerrit-Comment-Date: Thu, 31 Aug 2023 16:03:30 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: Andrey Petrov, Felix Held, Fred Reitberger, Jason Glenesk, Kapil Porwal, Lean Sheng Tan, Martin L Roth, Matt DeVillier, Nico Huber, Paul Menzel, Raul Rangel.
Subrata Banik has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/77556?usp=email )
Change subject: drivers/intel/fsp2_0: Introduce early MRC cache store
......................................................................
Patch Set 3:
(3 comments)
File src/drivers/mrc_cache/Kconfig:
https://review.coreboot.org/c/coreboot/+/77556/comment/dbbb6812_3ea6cdbe :
PS2, Line 24: MRC_STASH_TO_CBMEM
> > are you suggesting to keep MRC_WRITE_NV_LATE and MRC_STASH_TO_CBMEM ? or saying rename MRC_STASH_T […]
Acknowledged
https://review.coreboot.org/c/coreboot/+/77556/comment/40ee41d6_8dbf7612 :
PS2, Line 35: boot
: states
> seems a bit unclear as written, so I was suggesting to drop "boot states" so it reads: ... […]
Acknowledged
File src/drivers/mrc_cache/mrc_cache.c:
https://review.coreboot.org/c/coreboot/+/77556/comment/123dd2a2_a4c2c7fb :
PS1, Line 742: BOOT_STATE_INIT_ENTRY(BS_OS_RESUME_CHECK, BS_ON_ENTRY, finalize_mrc_cache, NULL);
> > > > This changes the order for devices with MRC_STASH_TO_CBMEM but without
> > > > MRC_WRITE_NV_LATE, e.g. those with BOOT_DEVICE_SPI_FLASH_NO_EARLY_WRITES.
> > > >
> > > > It's theoretically possible that this breaks. For instance, when the SPI
> > > > flash is locked between enumerate/on_exit and resume_check/on_entry. So
> > > > that would need extensive review or testing.
> > >
> > >
> > > So far we have three different ways to store the MRC cache below and different SoC vendors select the applicable config as per the platform need.
> > >
> > > w/o this CL:
> > > ```
> > > 1. NV Write late (AMD)-
> > >
> > > save_mrc_data - BS_PRE_DEVICE_ENTRY
> > > finalize_mrc_cache - BS_OS_RESUME_CHECK_ENTRY
> > > lock - BS_OS_RESUME_CHECK_EXIT
> > >
> > >
> > > 2. MRC_STASH_TO_CBMEM aka w/ BOOT_DEVICE_SPI_FLASH_NO_EARLY_WRITES (BSW, BYT)
> > >
> > > save_mrc_data - BS_PRE_DEVICE_ENTRY
> > > finalize_mrc_cache - BS_DEV_ENUMERATE_EXIT
> > > lock - BS_DEV_RESOURCES_ENTRY
> > >
> > > 3. SAVE_MRC_AFTER_FSPS (XEON-SP)
> > >
> > > save_mrc_data - BS_DEV_INIT_CHIPS_EXIT
> > > finalize_mrc_cache - BS_DEV_ENUMERATE_EXIT
> > > lock - BS_DEV_RESOURCES_ENTRY
> > > ```
> >
> > These are just three special cases that defer the writing into
> > ramstage. Currently also FSP 2.0 platforms do it in ramstage and
> > there are many more that currently do it in romstage.
> >
> > >
> > > w/ this cl:
> > >
> > >
> > > simplified using 2-ways to store the MRC cache below and how it can meet all the needs.
> > >
> > > ```
> > > 1. NV Write late/SAVE_MRC_AFTER_FSPS -> MRC_STASH_TO_CBMEM (also for BOOT_DEVICE_SPI_FLASH_NO_EARLY_WRITES) (AMD, XEON_SP, BSW and BYT)
> > >
> > > save_mrc_data - BS_DEV_INIT_CHIPS_EXIT
> > > finalize_mrc_cache - BS_OS_RESUME_CHECK_ENTRY
> > > lock - BS_OS_RESUME_CHECK_EXIT
> > >
> > >
> > > 2. MRC cache early (INTEL)
> > >
> > > save_mrc_data - post FSP-M
> > > finalize_mrc_cache - BS_DEV_ENUMERATE_EXIT
> > > lock - BS_DEV_RESOURCES_ENTRY
> > >
> > > In summary,
> > > - the order of the execution still remains the same (w/ and w/o this CL) between saving_mrc_cache later finalizes the mrc cache and finally locking the boot media.
> > >
> > > - I don't see any scenario where the we are attempting to write into the SPI but it's getting locked as you have highlighted (when the SPI flash is locked between enumerate/on_exit and resume_check/on_entry)
> > > ```
> >
> > I agree to have only two paths. 1. that defers the write to ramstage,
> > and 2. that does it directly in romstage. However, changing the
> > boot-state hooks in ramstage--when the write is exactly done--requires
> > more careful evaluation.
> >
> > So how about we don't change the boot-state hooks too much right now,
> > and focus on the code paths?
> >
> > This could roughly happen in the following order:
> > * Make the changes of CB:67669 optional (adding an interim Kconfig for this)
> > * Could happen in parallel:
> > - Let SAVE_MRC_AFTER_FSPS use MRC_STASH_TO_CBMEM instead of the `save_mrc_data.c` path
> > - Let other FSP2.0 platforms directly write in romstage
>
> You beat me on this. I'm about to propose this. Lets SAVE_MRC_AFTER_FSPS and MRC_STASH_TO_CBMEM use the same boot states except I need to save mrc_cache a little late (after FSP-S exit) to unify both paths.
>
>
> > * Remove `save_mrc_data.c` path
>
> I'm sure if we can remove this file otherwise i need to copy the save_mrc_cache API into memory_init.c file. And call it from there. may be keep this file as is bt include if MRC_CACHE_EARLY ?
>
> >
> > Then only two major code paths would be left (if I didn't miss any):
> > One with and one without MRC_STASH_TO_CBMEM. Then we could still look
> > into unifying the boot-state hooks.
>
> >
> > Btw. I don't see the Intel/AMD distinction that you seem to imply.
> > Most AMD platforms seem to simply follow the default FSP2.0 code path.
>
> Agree but I don't know why AMD platform would like to finalize_mrc_cache that late like BS_OS_RESUME_CHECK_ENTRY. hence, we ended up keeping both MRC_STASH_TO_CBMEM and MRC_CACHE_LATE
Please take a look at the latest patchset
--
To view, visit https://review.coreboot.org/c/coreboot/+/77556?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Id1e91d25916594f59d1e467a142f5042c6138b51
Gerrit-Change-Number: 77556
Gerrit-PatchSet: 3
Gerrit-Owner: Subrata Banik <subratabanik(a)google.com>
Gerrit-Reviewer: Andrey Petrov <andrey.petrov(a)gmail.com>
Gerrit-Reviewer: Felix Held <felix-coreboot(a)felixheld.de>
Gerrit-Reviewer: Fred Reitberger <reitbergerfred(a)gmail.com>
Gerrit-Reviewer: Jason Glenesk <jason.glenesk(a)gmail.com>
Gerrit-Reviewer: Kapil Porwal <kapilporwal(a)google.com>
Gerrit-Reviewer: Lean Sheng Tan <sheng.tan(a)9elements.com>
Gerrit-Reviewer: Martin L Roth <gaumless(a)gmail.com>
Gerrit-Reviewer: Matt DeVillier <matt.devillier(a)amd.corp-partner.google.com>
Gerrit-Reviewer: Nico Huber <nico.h(a)gmx.de>
Gerrit-Reviewer: Raul Rangel <rrangel(a)chromium.org>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-CC: Johnny Lin <Johnny_Lin(a)wiwynn.com>
Gerrit-CC: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Attention: Jason Glenesk <jason.glenesk(a)gmail.com>
Gerrit-Attention: Nico Huber <nico.h(a)gmx.de>
Gerrit-Attention: Raul Rangel <rrangel(a)chromium.org>
Gerrit-Attention: Martin L Roth <gaumless(a)gmail.com>
Gerrit-Attention: Matt DeVillier <matt.devillier(a)amd.corp-partner.google.com>
Gerrit-Attention: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Attention: Kapil Porwal <kapilporwal(a)google.com>
Gerrit-Attention: Lean Sheng Tan <sheng.tan(a)9elements.com>
Gerrit-Attention: Andrey Petrov <andrey.petrov(a)gmail.com>
Gerrit-Attention: Fred Reitberger <reitbergerfred(a)gmail.com>
Gerrit-Attention: Felix Held <felix-coreboot(a)felixheld.de>
Gerrit-Comment-Date: Thu, 31 Aug 2023 16:02:22 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Nico Huber <nico.h(a)gmx.de>
Comment-In-Reply-To: Subrata Banik <subratabanik(a)google.com>
Comment-In-Reply-To: Matt DeVillier <matt.devillier(a)amd.corp-partner.google.com>
Gerrit-MessageType: comment
Attention is currently required from: Andrey Petrov, Arthur Heymans, Christian Walter, Johnny Lin, Kapil Porwal, Lean Sheng Tan, Martin L Roth, Nill Ge, Reka Norman, Shuo Liu, TangYiwei, Tim Chu.
Subrata Banik has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/77557?usp=email )
Change subject: soc/intel/xeon_sp: Use MRC_STASH_TO_CBMEM config
......................................................................
Patch Set 2:
(1 comment)
Patchset:
PS1:
> > > The problem of seeing "SPI Transaction Timeout" at BS_DEV_RESOURCES is not related to your cls, but with your cls because it's moved to a later stage after BS_DEV_RESOURCES, then it cannot write MRC data.
> > >
> > > I still resolve this comment, just providing some test results for thoughts.
> >
> > @Johnny, can you please help me to debug this issue on AC by commenting below code and share if u r still seeing the timeout issue. I'm suspecting the SPI is getting locked is the reason for this problem
> >
> > ```
> > BOOT_STATE_INIT_ENTRY(BS_DEV_RESOURCES, BS_ON_EXIT, platform_lockdown_config,
> > NULL);
> >
> > BOOT_STATE_INIT_ENTRY(BS_DEV_RESOURCES, BS_ON_ENTRY, lock, NULL);
> > ```
>
> As per my understanding the issue is coming because of applying the BIOS Decode lock so early in the boot
>
> ```
> void spi_lockdown_config(int chipset_lockdown)
> {
> if (chipset_lockdown == CHIPSET_LOCKDOWN_COREBOOT) {
> fast_spi_set_bde();
> fast_spi_set_vcl();
> }
> }
> ```
>
> can you please check by commenting on this function ? alternatively we shall call BDE and VCL from soc_finalize() ?
@Jonny, can you please pick the updated patch train and share your feedback?
--
To view, visit https://review.coreboot.org/c/coreboot/+/77557?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I6275fbc0546468f36baee73691a285092e857e0a
Gerrit-Change-Number: 77557
Gerrit-PatchSet: 2
Gerrit-Owner: Subrata Banik <subratabanik(a)google.com>
Gerrit-Reviewer: Andrey Petrov <andrey.petrov(a)gmail.com>
Gerrit-Reviewer: Arthur Heymans <arthur(a)aheymans.xyz>
Gerrit-Reviewer: Christian Walter <christian.walter(a)9elements.com>
Gerrit-Reviewer: Johnny Lin <Johnny_Lin(a)wiwynn.com>
Gerrit-Reviewer: Kapil Porwal <kapilporwal(a)google.com>
Gerrit-Reviewer: Lean Sheng Tan <sheng.tan(a)9elements.com>
Gerrit-Reviewer: Martin L Roth <gaumless(a)gmail.com>
Gerrit-Reviewer: Nico Huber <nico.h(a)gmx.de>
Gerrit-Reviewer: Nill Ge <geshijian(a)bytedance.com>
Gerrit-Reviewer: Reka Norman <rekanorman(a)chromium.org>
Gerrit-Reviewer: Shuo Liu <shuo.liu(a)intel.com>
Gerrit-Reviewer: TangYiwei
Gerrit-Reviewer: Tim Chu <Tim.Chu(a)quantatw.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-Attention: Martin L Roth <gaumless(a)gmail.com>
Gerrit-Attention: Johnny Lin <Johnny_Lin(a)wiwynn.com>
Gerrit-Attention: Kapil Porwal <kapilporwal(a)google.com>
Gerrit-Attention: Reka Norman <rekanorman(a)chromium.org>
Gerrit-Attention: Christian Walter <christian.walter(a)9elements.com>
Gerrit-Attention: Shuo Liu <shuo.liu(a)intel.com>
Gerrit-Attention: Nill Ge <geshijian(a)bytedance.com>
Gerrit-Attention: Arthur Heymans <arthur(a)aheymans.xyz>
Gerrit-Attention: Lean Sheng Tan <sheng.tan(a)9elements.com>
Gerrit-Attention: TangYiwei
Gerrit-Attention: Andrey Petrov <andrey.petrov(a)gmail.com>
Gerrit-Attention: Tim Chu <Tim.Chu(a)quantatw.com>
Gerrit-Comment-Date: Thu, 31 Aug 2023 16:01:13 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Subrata Banik <subratabanik(a)google.com>
Comment-In-Reply-To: Johnny Lin <Johnny_Lin(a)wiwynn.com>
Gerrit-MessageType: comment
Attention is currently required from: Arthur Heymans, Martin L Roth, Varshit Pandya.
Felix Held has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/76497?usp=email )
Change subject: mb/amd/onyx: Add FMD file and update romsize
......................................................................
Patch Set 5:
(1 comment)
Patchset:
PS5:
adding this part of the next patch to this patch will likely solve the build failure:
ifeq ($(call int-gt, $(CONFIG_ROM_SIZE) 0x1000000), 1)
CBFSTOOL_ADD_CMD_OPTIONS+= --mmap 0:0xff000000:0x1000000
endif
--
To view, visit https://review.coreboot.org/c/coreboot/+/76497?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Idd6f711f5ca5c8a421c0c38edd404b1900bb29b4
Gerrit-Change-Number: 76497
Gerrit-PatchSet: 5
Gerrit-Owner: Arthur Heymans <arthur(a)aheymans.xyz>
Gerrit-Reviewer: Felix Held <felix-coreboot(a)felixheld.de>
Gerrit-Reviewer: Martin L Roth <gaumless(a)gmail.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-CC: Varshit Pandya <pandyavarshit(a)gmail.com>
Gerrit-Attention: Varshit Pandya <pandyavarshit(a)gmail.com>
Gerrit-Attention: Martin L Roth <gaumless(a)gmail.com>
Gerrit-Attention: Arthur Heymans <arthur(a)aheymans.xyz>
Gerrit-Comment-Date: Thu, 31 Aug 2023 16:00:23 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment