Attention is currently required from: Felix Held, Keith Hui.
Angel Pons has posted comments on this change by Keith Hui. ( https://review.coreboot.org/c/coreboot/+/85792?usp=email )
Change subject: mb/asus/p8x7x-series: Add p8b75-v variant
......................................................................
Patch Set 3:
(3 comments)
Commit Message:
https://review.coreboot.org/c/coreboot/+/85792/comment/efa990e5_ef284d34?us… :
PS3, Line 21: to use both to build a 16MiB flash space but that's to be confirmed.
Firmware update size should tell if it's 8 or 16 MiB: it's a capsule with a 8 MiB body. You could also dump the IFD settings to see the configured chip sizes, but looks like the firmware update capsule does not include IFD/ME regions 😐
My guess is that this is some sort of Dual BIOS feature.
File src/mainboard/asus/p8x7x-series/variants/p8b75-v/cmos.layout:
https://review.coreboot.org/c/coreboot/+/85792/comment/3925e9ce_8a8c50e3?us… :
PS3, Line 30: 425 1 e 9 audio_panel_type
Missing default?
File src/mainboard/asus/p8x7x-series/variants/p8b75-v/gma-mainboard.ads:
https://review.coreboot.org/c/coreboot/+/85792/comment/863e430b_a22c7b7d?us… :
PS3, Line 12: DP1,
: HDMI1,
: HDMI2,
: HDMI3,
I only see DVI-D and VGA
--
To view, visit https://review.coreboot.org/c/coreboot/+/85792?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: coreboot
Gerrit-Branch: main
Gerrit-Change-Id: Ibb14c9efd1fb5b8826a646aae5f3fab9d9c08187
Gerrit-Change-Number: 85792
Gerrit-PatchSet: 3
Gerrit-Owner: Keith Hui <buurin(a)gmail.com>
Gerrit-Reviewer: Felix Held <felix-coreboot(a)felixheld.de>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-CC: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Attention: Keith Hui <buurin(a)gmail.com>
Gerrit-Attention: Felix Held <felix-coreboot(a)felixheld.de>
Gerrit-Comment-Date: Sat, 05 Apr 2025 13:07:25 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Attention is currently required from: Brandon Weeks, Felix Held, Julian Intronati, Paul Menzel.
Angel Pons has posted comments on this change by Julian Intronati. ( https://review.coreboot.org/c/coreboot/+/87027?usp=email )
Change subject: mb/cwwk: Add CWWK CW-ADLNTB-1C2L-V3.0 board as an adl variants
......................................................................
Patch Set 4: Code-Review+2
(3 comments)
File src/mainboard/cwwk/adl/variants/cw-adlntb-1c2l-v3.0/board_info.txt:
https://review.coreboot.org/c/coreboot/+/87027/comment/f532aef5_f6734a98?us… :
PS3, Line 1: CW-X86-P5-V3
> The internal product name of the board is "CW_ADLNTB_1C2L" into the original bios. […]
Generally, I would use whatever name is written on the mainboard, as that should identify the hardware. Laptops and prebuilt desktops may be easier to identify by the commercial name (HP 280 G2 Microtower) as opposed to the mainboard codename (Foxconn H-ICEAGE) as the latter is significantly more obscure, but specifying both might be necessary in some cases to fully identify the hardware.
I usually ignore the names in firmware, especially given that some firmwares say that the board name is "To be filled by O.E.M." (i.e. the OEM forgot to put the name in there) 😄
In any case, I marked this comment as resolved because I don't think it's a big deal. The current names seem fine to me.
File src/mainboard/cwwk/adl/variants/cw-adlntb-1c2l-v3.0/gpio.c:
https://review.coreboot.org/c/coreboot/+/87027/comment/9edae1a4_66537b22?us… :
PS3, Line 167: /* ------- GPIO Group vGPIO ------- */
: //PAD_CFG_GPO(GPP_VGPIO_0, 0, DEEP), /* GPIO */
: //PAD_CFG_GPI_TRIG_OWN(GPP_VGPIO_4, NONE, DEEP, OFF, ACPI), /* GPIO */
: //PAD_CFG_GPIO_BIDIRECT(GPP_VGPIO_5, 1, NONE, DEEP, LEVEL, ACPI), /* GPIO */
: //PAD_CFG_NF(GPP_VGPIO_6, NONE, DEEP, NF1), /* GPP_VGPIO_6 */
: //PAD_CFG_NF(GPP_VGPIO_7, NONE, DEEP, NF1), /* GPP_VGPIO_7 */
: //PAD_CFG_NF(GPP_VGPIO_8, NONE, DEEP, NF1), /* GPP_VGPIO_8 */
: //PAD_CFG_NF(GPP_VGPIO_9, NONE, DEEP, NF1), /* GPP_VGPIO_9 */
: //PAD_CFG_NF(GPP_VGPIO_10, NONE, DEEP, NF1), /* GPP_VGPIO_10 */
: //PAD_CFG_NF(GPP_VGPIO_11, NONE, DEEP, NF1), /* GPP_VGPIO_11 */
: //PAD_CFG_NF(GPP_VGPIO_12, NONE, DEEP, NF1), /* GPP_VGPIO_12 */
: //PAD_CFG_NF(GPP_VGPIO_13, NONE, DEEP, NF1), /* GPP_VGPIO_13 */
: //PAD_CFG_NF(GPP_VGPIO_18, NONE, DEEP, NF1), /* GPP_VGPIO_18 */
: //PAD_CFG_NF(GPP_VGPIO_19, NONE, DEEP, NF1), /* GPP_VGPIO_19 */
: //PAD_CFG_NF(GPP_VGPIO_20, NONE, DEEP, NF1), /* GPP_VGPIO_20 */
: //PAD_CFG_NF(GPP_VGPIO_21, NONE, DEEP, NF1), /* GPP_VGPIO_21 */
: //PAD_CFG_NF(GPP_VGPIO_22, NONE, DEEP, NF1), /* GPP_VGPIO_22 */
: //PAD_CFG_NF(GPP_VGPIO_23, NONE, DEEP, NF1), /* GPP_VGPIO_23 */
: //PAD_CFG_NF(GPP_VGPIO_24, NONE, DEEP, NF1), /* GPP_VGPIO_24 */
: //PAD_CFG_NF(GPP_VGPIO_25, NONE, DEEP, NF1), /* GPP_VGPIO_25 */
: //PAD_CFG_NF(GPP_VGPIO_30, NONE, DEEP, NF1), /* GPP_VGPIO_30 */
: //PAD_CFG_NF(GPP_VGPIO_31, NONE, DEEP, NF1), /* GPP_VGPIO_31 */
: //PAD_CFG_NF(GPP_VGPIO_32, NONE, DEEP, NF1), /* GPP_VGPIO_32 */
: //PAD_CFG_NF(GPP_VGPIO_33, NONE, DEEP, NF1), /* GPP_VGPIO_33 */
: //PAD_CFG_NF(GPP_VGPIO_34, NONE, DEEP, NF1), /* GPP_VGPIO_34 */
: //PAD_CFG_NF(GPP_VGPIO_35, NONE, DEEP, NF1), /* GPP_VGPIO_35 */
: //PAD_CFG_NF(GPP_VGPIO_36, NONE, DEEP, NF1), /* GPP_VGPIO_36 */
: //PAD_CFG_NF(GPP_VGPIO_37, NONE, DEEP, NF1), /* GPP_VGPIO_37 */
> When i generated the file those gpio has been generated. […]
I've never understood what these VGPIOs do, I'm not sure where they're documented (if they're even documented). If someone finds a reason to configure them in the future, then they can just make another change that adds them.
So yes, I agree with removing the commented-out lines.
File src/mainboard/cwwk/adl/variants/cw-adlntb-1c2l-v3.0/romstage.c:
https://review.coreboot.org/c/coreboot/+/87027/comment/e5176fd0_5afaa830?us… :
PS3, Line 22: 0x52
> Yeah this is a weird one, that one took me a bunch of debuging to understand, I was stuck on memory […]
Oof, I can imagine. I know that, at least on older platforms, you can try reading the SPD with userspace tools (e.g. `decode-dimms` from `i2c-tools` on Linux). This saves you from having to guess, but I'm not sure if DDR5 works the same way.
--
To view, visit https://review.coreboot.org/c/coreboot/+/87027?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: coreboot
Gerrit-Branch: main
Gerrit-Change-Id: Ia0553141b41717b560042de1136d53b9c3cf7a69
Gerrit-Change-Number: 87027
Gerrit-PatchSet: 4
Gerrit-Owner: Julian Intronati <julian.intronati(a)gmail.com>
Gerrit-Reviewer: Angel Pons <th3fanbus(a)gmail.com>
Gerrit-Reviewer: Brandon Weeks <bweeks(a)google.com>
Gerrit-Reviewer: Felix Held <felix-coreboot(a)felixheld.de>
Gerrit-Reviewer: Julian Intronati <julian.intronati(a)gmail.com>
Gerrit-Reviewer: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-Attention: Brandon Weeks <bweeks(a)google.com>
Gerrit-Attention: Paul Menzel <paulepanter(a)mailbox.org>
Gerrit-Attention: Julian Intronati <julian.intronati(a)gmail.com>
Gerrit-Attention: Felix Held <felix-coreboot(a)felixheld.de>
Gerrit-Comment-Date: Sat, 05 Apr 2025 12:57:45 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Comment-In-Reply-To: Angel Pons <th3fanbus(a)gmail.com>
Comment-In-Reply-To: Julian Intronati <julian.intronati(a)gmail.com>
Subrata Banik has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/87183?usp=email )
Change subject: WIP: mainboard/fatcat: Temporarily disable barrel charger power limit optimization
......................................................................
WIP: mainboard/fatcat: Temporarily disable barrel charger power limit optimization
This commit temporarily disables the logic that prevents CPU power limit
optimization when a barrel charger is attached. This is being done to
reduce the boot time for fatcat SKU.
We don't wish to keep barrel charger detection logic which is time
consuming.
TEST=Able to reduce boot time by 62ms.
Change-Id: I613417be5a59790b8a5e6055957a2f518f4c42df
Signed-off-by: Subrata Banik <subratabanik(a)google.com>
---
M src/mainboard/google/fatcat/variants/baseboard/fatcat/ramstage.c
1 file changed, 2 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/83/87183/1
diff --git a/src/mainboard/google/fatcat/variants/baseboard/fatcat/ramstage.c b/src/mainboard/google/fatcat/variants/baseboard/fatcat/ramstage.c
index 21f8ccd..3e6405e4 100644
--- a/src/mainboard/google/fatcat/variants/baseboard/fatcat/ramstage.c
+++ b/src/mainboard/google/fatcat/variants/baseboard/fatcat/ramstage.c
@@ -52,10 +52,11 @@
void baseboard_devtree_update(void)
{
+#if 0
/* Don't optimize the power limit if booting with barrel attached */
if (CONFIG(BOARD_GOOGLE_MODEL_FATCAT) && google_chromeec_is_barrel_charger_present())
return;
-
+#endif
if (!google_chromeec_is_battery_present())
variant_update_cpu_power_limits(power_optimized_limits,
ARRAY_SIZE(power_optimized_limits));
--
To view, visit https://review.coreboot.org/c/coreboot/+/87183?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: coreboot
Gerrit-Branch: main
Gerrit-Change-Id: I613417be5a59790b8a5e6055957a2f518f4c42df
Gerrit-Change-Number: 87183
Gerrit-PatchSet: 1
Gerrit-Owner: Subrata Banik <subratabanik(a)google.com>
Subrata Banik has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/87182?usp=email )
Change subject: cpu/x86: Conditionally invalidate caches based on self-snooping support
......................................................................
cpu/x86: Conditionally invalidate caches based on self-snooping support
The code currently unconditionally flushes or invalidates the entire
cache (using `clflush_region` or `wbinvd`) after loading the SIPI vector
for APs and after loading SMM handlers.
This commit modifies this behavior to only perform these cache
operations if the CPU does *not* support self-snooping.
Rationale:
- Self-snooping CPUs can maintain cache coherency within the core/complex
more efficiently. CPU with self-snoop enabled does not necessarily need
to perform wbinvd to ensure data written to the cache is reflected in
main memory. Self-snooping CPUs employ a write-back caching policy,
combined with a cache coherence protocol, to manage data writes and
ensure consistency between cache and main memory.
When the BSP writes the SIPI vector or SMM handlers to memory, other
units within the same CPU that might be caching these regions should
be aware of the updates through the self-snooping mechanism. A full
cache flush or invalidate to ensure cache contains reaches to main
memory might be unnecessary and could negatively impact performance.
By conditionally performing these cache operations based on
`self_snooping_supported()`, we can optimize the boot process for CPUs
that have advanced cache coherency features while maintaining correct
behavior on older or simpler CPUs.
TEST=Boot google/rex, brox and fatcat with this patch. Able to reduce
boot time by ~19-25ms.
Change-Id: If32439752d0ceaa03b1d81873ea0bc562092e9d5
Signed-off-by: Subrata Banik <subratabanik(a)google.com>
---
M src/cpu/x86/mp_init.c
1 file changed, 12 insertions(+), 8 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/82/87182/1
diff --git a/src/cpu/x86/mp_init.c b/src/cpu/x86/mp_init.c
index 47b3a9e..06ab037 100644
--- a/src/cpu/x86/mp_init.c
+++ b/src/cpu/x86/mp_init.c
@@ -365,12 +365,14 @@
ap_count = &sp->ap_count;
atomic_set(ap_count, 0);
- /* Make sure SIPI data hits RAM so the APs that come up will see the
- startup code even if the caches are disabled. */
- if (clflush_supported())
- clflush_region((uintptr_t)mod_loc, module_size);
- else
- wbinvd();
+ if (!self_snooping_supported()) {
+ /* Make sure SIPI data hits RAM so the APs that come up will see the
+ startup code even if the caches are disabled. */
+ if (clflush_supported())
+ clflush_region((uintptr_t)mod_loc, module_size);
+ else
+ wbinvd();
+ }
return ap_count;
}
@@ -826,8 +828,10 @@
smm_disable();
}
- /* Ensure the SMM handlers hit DRAM before performing first SMI. */
- wbinvd();
+ if (!self_snooping_supported()) {
+ /* Ensure the SMM handlers hit DRAM before performing first SMI. */
+ wbinvd();
+ }
/*
* Indicate that the SMM handlers have been loaded and MP
--
To view, visit https://review.coreboot.org/c/coreboot/+/87182?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: coreboot
Gerrit-Branch: main
Gerrit-Change-Id: If32439752d0ceaa03b1d81873ea0bc562092e9d5
Gerrit-Change-Number: 87182
Gerrit-PatchSet: 1
Gerrit-Owner: Subrata Banik <subratabanik(a)google.com>
Attention is currently required from: Felix Held, Keith Hui.
Hello Felix Held, build bot (Jenkins),
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/85792?usp=email
to look at the new patch set (#3).
The following approvals got outdated and were removed:
Code-Review+2 by Felix Held, Verified+1 by build bot (Jenkins)
The change is no longer submittable: Code-Review and Verified are unsatisfied now.
Change subject: mb/asus/p8x7x-series: Add p8b75-v variant
......................................................................
mb/asus/p8x7x-series: Add p8b75-v variant
Not hardware tested; copied from p8h77-v and p8z77-m then adjusted
USB port config and overridetree based on info seen from vendor
firmware update and boardview. VBT extracted manually from vendor
firmware update.
Currently known facts about this board that aren't already coded
into this patch:
- 3 PCI slots wired to B75 PCI bridge
- DRAM_LED on GP07 of SIO and power LED on GPIO27 of PCH, just like
p8z77-m
- Has TWO 8MiB SPI flash chips on board, both wired to PCH. It appears
to use both to build a 16MiB flash space but that's to be confirmed.
Change-Id: Ibb14c9efd1fb5b8826a646aae5f3fab9d9c08187
Signed-off-by: Keith Hui <buurin(a)gmail.com>
---
A Documentation/mainboard/asus/p8b75-v.md
M Documentation/mainboard/index.md
M src/mainboard/asus/p8x7x-series/Kconfig
M src/mainboard/asus/p8x7x-series/Kconfig.name
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/board_info.txt
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/cmos.default
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/cmos.layout
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/data.vbt
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/early_init.c
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/gma-mainboard.ads
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/gpio.c
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/hda_verb.c
A src/mainboard/asus/p8x7x-series/variants/p8b75-v/overridetree.cb
13 files changed, 656 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/92/85792/3
--
To view, visit https://review.coreboot.org/c/coreboot/+/85792?usp=email
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: coreboot
Gerrit-Branch: main
Gerrit-Change-Id: Ibb14c9efd1fb5b8826a646aae5f3fab9d9c08187
Gerrit-Change-Number: 85792
Gerrit-PatchSet: 3
Gerrit-Owner: Keith Hui <buurin(a)gmail.com>
Gerrit-Reviewer: Felix Held <felix-coreboot(a)felixheld.de>
Gerrit-Reviewer: build bot (Jenkins) <no-reply(a)coreboot.org>
Gerrit-Attention: Keith Hui <buurin(a)gmail.com>
Gerrit-Attention: Felix Held <felix-coreboot(a)felixheld.de>