-
-
Notifications
You must be signed in to change notification settings - Fork 187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add NovaCustom V560TU board #1846
Conversation
@mkopec Do we plan to add here the rest of the variants as well? |
@macpijan sure, after one starts working I'll do the rest too |
@mkopec this comment might be helpful #1835 (comment) |
|
possible, in Ubuntu and Fedora we found it best to have Linux 6.8 or newer (6.9 also has a fix for s0ix but that's irrelevant for Heads) @tlaurion do you think you can help with updating the kernel? |
I read that 6.12 will be next Lts but that is only speculation. edit: We choose 6.11.9 for all novacustom boards? @mkopec did serial console passed per coreboot config to kernel gave you more info? |
@mkopec there is a lot to tune under 6.11.9 kernel config which writes over shared linux config with other novacustom (config/linux-nitrokey-x.config, should probably renamed and all board configs point to new name as well). See branch https://github.com/tlaurion/heads/tree/dasharo-add_novacustom_v540tu and feel free to steal adapt/change whatever. If you have questions, poke me where/if needed. Note: compare config changes in commit 510bc6e to see all the new olddefconfig stuff applied silently when using defconfig. Ie, what happened with TRUST_CPU and so many other stuff to care about once you have something that boots. See also that I changed your coreboot config to pass linux kernel options to be in debug, with probably wrong serial ttyS0, adapt accordingly and keep me posted. Small iterations in board porting has known good track history. If you decided to tackle #1835 instead, I could help (if you guide me into how you get serial console output [even though this work wasn't planned nor in my plate up to now]). |
Edit:yep. Cannot bump Sandy to 6.11.9: as can be seen, all those do not have enough free spi space without another phase of #590 (not planned.) |
Thanks for the patches @tlaurion , I'm testing them now, i'm not getting a serial console yet, I suspect the LPSS UART driver is missing, will try to fix |
f33526c
to
aeb7fc7
Compare
aeb7fc7
to
005c519
Compare
@tlaurion rebased |
005c519
to
6964713
Compare
@mkopec awesome!!! Trying to dodge politic issues from #1818 (comment) and going practical and specific. @macpijan @mkopec : Can https://review.coreboot.org/c/coreboot/+/85278 be added to Dasharo fork (which nv41/ns50/v540TU/v560TU should build upon (modules/coreboot dasharo pointed commit), tested against #1818 so that we can merge #1818 (which changes configs for nv41) and here changes needed for PR0 for v540TU/V560TU? Makes sense? Otherwise patches need do be under Also, MSI(#1753 should build from same coreboot Dasharo fork commit pointed under modules/coreboot without breaking (otherwise multiple coreboot Dasahro forks will be built under Heads???? Is that the plan because multiple forks for different boards under Dasharo?) |
modules/coreboot
Outdated
@@ -93,8 +93,7 @@ $(eval $(call coreboot_module,purism,24.02.01)) | |||
|
|||
# MSI and Nitropad NV41 / NS50 boards are based on Dasharo coreboot port | |||
coreboot-dasharo_repo := https://github.com/dasharo/coreboot | |||
coreboot-dasharo_commit_hash := 3a9aa3a4692f3dd49732f5b4e3ec54be385f0969 | |||
coreboot-dasharo_patch_version := unreleased | |||
coreboot-dasharo_commit_hash := db1d9cd59d0d7d5b708bbdf8670780914061410c |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not regression tested yet, will report here with results
modules/linux
Outdated
@@ -34,6 +34,9 @@ linux_hash := 40f014d53e81f204f6d2a364aae4201ae07970dd1b70dc602d7c66c1a140f558 | |||
else ifeq "$(CONFIG_LINUX_VERSION)" "6.1.8" | |||
linux_version := 6.1.8 | |||
linux_hash := b60bb53ab8ba370a270454b11e93d41af29126fc72bd6ede517673e2e57b816d | |||
else ifeq "$(CONFIG_LINUX_VERSION)" "6.11.9" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was 6.11.9 verified needed for meteor lake as opposed to 6.1.8 which all other Heads boards depend on after serial console issue being fixed and ACPI related Kconfig addition under linux config added that was the cause of linux hang, maybe not efifb nor 6.1.8?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The cause of hang was X2APIC not being enabled in kernel config, now with that sorted I think I can try 6.1 again to check if we need 6.11 after all
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any news on this @mkopec ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed 6.11.9 leftovers in 313e38a
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some patches against linux were removed and not readded with adaptation as compared to 6.1.8. If 6.11.9 required for meteor lake, missing patches need to be brought back if still needed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mkopec Review dropped :)
@mkopec I decided to not do politics in words, but as code from now on. What is coreboot fork related will be coreboot fork related from now on. #1818 was merged, if you rebase from/merge master in your PR, you will see that added PR0 patch under patches/coreboot-dasharo_unreleased don't apply as for nv4x_adl on master, where only ns50/n4x_adl were the only Heads master consumers of Dasharo forks, showing problem of having multiple forks for different platforms and delegating problem to whom it belongs, making sure patches/coreboot-dasharo_unreleased patches that were pending next downsteam fork release are picked up/adtapted in next downstream release, and for Heads to take for granted that coreboot base is working as expected for Heads to do its Heads stuff.
I will then participate/help adapting changes to coreboot configs/board configs if needed for Heads under #1868, which points to needed knowledge for Heads for PR0 to work as expected on skylake+, and will be used as base so coreboot upstream patch evolves to be useful for all and prevent OS persistent threat to be pushed to firmware (at least under Heads use case) leaving physical attack of tampering bootblock the only threat model to SPI flash for advanced users activating Heads Authenticated Heads, which I intend to push on next feature freeze (next downstream release). |
Signed-off-by: Michał Kopeć <[email protected]>
Support for V54 series is not added at this time. Signed-off-by: Michał Kopeć <[email protected]>
Removed V540TU as per #1846 (comment) |
Reverted changes to NV4x and NS5x in commit: 7445527 It may be reverted at a later date when needed |
I'm not sur I follow what is happening here, reverting changes for boards that depend of the same coreboot branch, defined under modules/coreboot for ns50/nv41/v540tu and v560tu. I understand that Dasharo coreboot's fork use branch for each board in their philosophy as opposed to coreboot master, but doing so under Heads explodes build time from CI, where here n540tu is same gen as n560tu, and where nv41 was tested, leaving ns50 to be the only one needing regression test for current PR, and branch, named v540tu initially. I'm getting confused,was there a regression justifying last commits? If the desire is to have one dasharo branch per board as per dasharo git tree, then modules/coreboot will need to be adapted in such manner, also meaning one patches/branch patches to track and way more regression testing and changes in the future. Can someone explain the reasoning of this seperarion and revert of past testing and changes of this PR to solely touch v560tu prior of going forward that path? CC @BeataZdunczyk @macpijan @mkopec Edit: see comments for dasharo's branch applied patches application: Edit: cache reusal of coreboot version's buildstack per CI (needs reordering, since not reusing 24.02.01 coreboot buildstack): |
|
It is really not, we are doing our best to have all the supported boards in the main branch in coreboot (named: Untangling this. We propose to modify this MR in a following way:
IIUC, at this state, the missing step for merging, would be regression of NS50. I have asked @daringer whether NK can help here. Once this MR is merged, we would sync heads Dasharo fork and make a release for V56. Sounds ok? |
No problem with this plan. I'm still waiting for feedback on #1875. Release (at least automated QA), should be #1846 + #1875. |
Signed-off-by: Michał Kopeć <[email protected]>
313e38a
to
b59c0e2
Compare
nv4x and ns5x restored, moved back to using a single coreboot revision for all clevo boards |
Alright, https://github.com/linuxboot/heads/compare/a80d6da99ba15fa9d1462e084c9065b4ec3c8e9f..b59c0e2e3369a87b1f84ddad887dd821268c7e57 looks sane. Waiting for @jans23 @nestire @daringer to confirm no regression. Off channel response was for next week, Blockers here are affecting #1875 as well, since v560tu is not under master, and required changes for v560tu under #1875 are not there nor testing possible for that platform, which Nitrokey is also expecting to work (for Christmas per blob post). What do we do? I have no problem dropping ns50, which Nitrokey supports with their fork and rebranding as of now. I have no testers for ns50 under https://github.com/linuxboot/heads/blob/master/BOARD_TESTERS.md which is also problematic. If a board is untested, it should be marked as such and we should move forward. |
|
Move linuxboot#1846 forward. Signed-off-by: Thierry Laurion <[email protected]>
@macpijan @mkopec @BeataZdunczyk @jans23 @nestire @daringer I advise cherry-picking tlaurion@d70b01d and merging this PR so that #1875 moves forward. |
Sounds good to us. IIUC NS50 can be always moved back from UNTESTED - this will let us move forward here, and do not put pressure on NK if not priority at this moment. |
@mkopec I apply my maintainer veto here. Please cherry-pick, let's wait for Ci to build, and merge this PR. |
Move linuxboot#1846 forward. Signed-off-by: Thierry Laurion <[email protected]>
Michał is offline already. I have cherry-picked I hope I have done it correctly. |
Oh @macpijan Who should I add for v560tu under https://github.com/linuxboot/heads/blob/master/BOARD_TESTERS.md ? (Can be added later after merge of this PR) |
You can add @mkopec and me as a backup/contact right now. |
Add NovaCustom V560TU (16") laptop.
This machinee is based on the Meteor Lake platform and has integrated graphics. The dGPU variant nor the 14" variant is not supported at this point.
coreboot-dasharo revision is bumped for V560TU support and support for PR0 lockdown by Heads. The base coreboot release is 24.02.1.
Since the NV4x and NS5x boards use the same coreboot rev, their defconfigs are refreshed, too.