-
-
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 x230-maximized-fhd_edp and x230-hotp-maximized-fhd_edp boards #967
Conversation
Build is happening from commits under https://github.com/tlaurion/heads/tree/x230-maximized-fhd Artifacts will be there to test. |
I can test this, can't remember which kit mine is but it works vanilla coreboot with the fhd variant |
Build will take a while since only musl-cross cache can be reused; adding patches to coreboot invalidated the two fuller caches, so all boards needs to be recompiled. So participants of #614: @n4ru @arl4223 @tslilc @computer-user123 @Thrilleratplay @Tonux599, you might want to read and understand what happened #614 (comment) while the build is successful (or fails) You can come back to https://app.circleci.com/pipelines/github/tlaurion/heads/694/workflows/9d351748-166a-4fa6-b0e4-7a08510cedcc/jobs/765 artifact section in like 3 hours or ping me if it fails before then, or play around the PR if you find something weird in there. I do not care about the ownership of this code. Please take it, change it, and recreate another PR that would supersede this one. As long as your commits are signed, that functional tested PR by one of FHD owner will get merged in. Thanks. This was my tutorial attempt to make this community a bit more autonomous on their owned boards to create new board configs. |
OMG. Another problem? |
Rebase on master when PR resulting of #970 is ready and merged. |
8e191c8
to
2df946f
Compare
2df946f
to
093af76
Compare
Damn. forgot to change path in coreboot config pointed to that board to proper initrd and bzImage... Rebuilding. |
@tlaurion flashed and appears to work! |
093af76
to
0d3aa7b
Compare
Commits will be squashed. 1rst commit shows how to upgrade board configs, coreboot configs to latest coreboot version. |
Superseded but not included in #1015 |
What's the current process for building an x230 FHD ROM? Been a while and haven't been tracking as closely. |
@n4ru just checked the current patchset and it seems that you could apply the patch over master and make BOARD=x230-maximized-fhd on a clean checkout. The magic is in the patch, which creates a new board under coreboot 4.13 Checking the coreboot config, I'm pretty sure Qubes won't install since VBT is not activated under coreboot config. Also note that this is maximized board config, so should be flashed externally through bottom and top ROM files, and the board config doesn't include HOTP support. This is a bit off compared to master. |
From a cloned coreboot tree:
Results in:
Missing bits should be added in the patch under this PR. |
Patch refuses to apply git created binary patch above... |
Guys, I would have replied earlier to this thread/email , but I’ve been
busy af at work … no time to form a quality reply filled with substance.
I would really like to help, and I am even open to sharing my “personal”
x230-FHD image, working with qubes … everything works. (HOTP & TOTP )
Let me know if you would like a copy of the FW I am running on my personal
machine (x230-FHD)
Heads works beautifully and I have no issues, other the clock drift
(manually resetting machines time in UTC)
.
I have so many projects going rn, the x230 is the last on my mind…
If you would like a copy of my running FW, I have no problems making a
copy, and re-setting intel nic to DEADCOFFEE.
Let me know.
I’m sorry I do not have time to formulate a “proper” reply.
Thank you.
…On Thu, Aug 11, 2022 at 7:26 PM tlaurion ***@***.***> wrote:
Patch refuses to apply got created binary patch....
—
Reply to this email directly, view it on GitHub
<#967 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ASIUQUBCIS34RBNZEV7DJNDVYWD4BANCNFSM4W3TU3BA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@computer-user123 question here would be to know if you needed vbt in your rom Edit: referred issue shows you added it manually. So vbt is needed. Got my answer here, where I guess @Tonux599 test was prior of Qubes 4.1 installer (current tested PR for x230-fhd didn't include vbt) So next step is to change Make file patch tool reference to git, see below |
Patch above coming from more recent changeset https://review.coreboot.org/c/coreboot/+/28950 But cannot be applied with patch because vbt file is binary. It seems that we just hit our first corner case where global Makefile will need to use git instead of patch to apply binary patches, since patch still don't know how to apply binary diff even if we just want to create a binary file:
Which in above patch description is required for:
Otherwise not created, as in this PR.
Also, coreboot changeset is still not merged, but:
|
Yet again, this is not nitrocaster mod, which doesn't need any firmware mod. @n4ru applies or not? Willing to do the Makefile PR to switch patch calls to git? From my understanding it "should" be as simple as replacing From https://git-scm.com/docs/git-apply.html
|
Yes, I used the vbt from coreboot patch.
I remember battling with it, and not getting anything to boot without it.
I should have my x230-FHD (successful) build tree and commands/ configs
used… somewhere..
Qubes works, and
…On Thu, Aug 11, 2022 at 9:59 PM tlaurion ***@***.***> wrote:
@computer-user123 <https://github.com/computer-user123> question here
would be to know if you needed vbt in your rom
—
Reply to this email directly, view it on GitHub
<#967 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ASIUQUDWYIUBT4O5TRKRREDVYWVWTANCNFSM4W3TU3BA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I am only familiar with my own (2) x230 machines. One of which has a fried
Mobo (due to me being an idiot in the “learning” stages) , the other has a
nitro caster daughter board soldered onto x230 main board (by a helping
friend)
All I can confirm is that heads with HOTP/topt works 100% fine as it is,
with a x230 3320m, with nitro caster board.
This is / was my main coreboot device (because it is trusted). Since
then, I have a w530 k2000, running without dgpu , and using AFAIK intel
4000 gfx (same as x230)
At this point , I am working on assembling a KGPE-D16 with 128gb ram ….
I am busy at work and personal life, i unfortunately cannot spend more then
20-30min of my time, unless they’re is a specific goal or ?
I do remain honest, I know that I have the (my local build)
x230-FHD-nitrocaster FW somewhere close, as it currently runs in my
machine, and works problem free
Im thinking in todays work/time/hobby/budget, etc that my current time
spent on (hobbies) heads/coreboot , would be better served adding
additional 2/3gen intell Mobo / laptops to the project.
I just read yday, that coreboot repo has a utility called auto-port.
I wish to focus my efforts on future coreboot/heads/FW to help with
research, testing, and hopefully soon, porting and writing docs for heads
proj.
Look forward to taking “my chance” at cracking Panasonic toughbook fw/ec
It’s not an easy task, but I feel I want to try,
Do or do not, there is no try
…On Fri, Aug 12, 2022 at 12:02 AM Evan Lausch ***@***.***> wrote:
Yes, I used the vbt from coreboot patch.
I remember battling with it, and not getting anything to boot without it.
I should have my x230-FHD (successful) build tree and commands/ configs
used… somewhere..
Qubes works, and
On Thu, Aug 11, 2022 at 9:59 PM tlaurion ***@***.***> wrote:
> @computer-user123 <https://github.com/computer-user123> question here
> would be to know if you needed vbt in your rom
>
> —
> Reply to this email directly, view it on GitHub
> <#967 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/ASIUQUDWYIUBT4O5TRKRREDVYWVWTANCNFSM4W3TU3BA>
> .
> You are receiving this because you were mentioned.Message ID:
> ***@***.***>
>
|
2963f56
to
3fec9fe
Compare
I'll be able to test this later tonight. |
@Tonux599 @computer-user123 @n4ru : @n4ru @computer-user123 : if you already flashed a maximized board before, you can flash internally the ROMs produced by CircleCI for each commit following https://osresearch.net/Downloading Of course, you should only do that if you own an external programmer to be able to revert to taken backups. As said everywhere else, you cannot flash maximized boards from 1vyrain blahblablah, this requires initial external flashing. I will check to make sure this PR works, tracing CircleCI fresh build with patches applied by git here (see Makefile changes). |
Following x230-hotp-maximized build that is happening under https://app.circleci.com/jobs/github/tlaurion/heads/8346?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link where full build log is at https://circleci.com/api/v1.1/project/github/tlaurion/heads/8346/output/103/0?file=true&allocation-id=62f67dfd11f310285d2a0333-0-build%2F2DC2F74E. Patching with git seems to be functional and my local tests were exiting early, but I only tested by removing build/coreboot-4.13 and adapting the patch so that no rejection was made, to adapt Makefile to be able to apply binary patches with --directory pointing to relative path from git local dir. Otherwise it was failing silently (weird). Hacks found online where to create local git init in extracted dir when not a git repository, where forcing --directory seemed to be the cleaner approach, but now we expect to by under git dir, where some modules change directories to do make kung fu. Hopefully everything will work as expected. If you have something cleaner then this patch against Makefile, please tell me: 8adca9a Seems to be ok as of now, but it is still early to tell, with linux having been extracted and coreboot being built:
|
…y behavior. In link with linuxboot#967 discussions
@JonathonHall-Purism so yeah, we could remove --binary from latest tests. But not --reject. Merge? |
Ah @tlaurion I didn't realize we were using git apply to patch tarballs, OK definitely no --3way then. I think you have --reject backwards though. TL;DR though, the build will fail with or without --reject. I'm good with merging this either way.
IIUC, the default behavior is to "reject the entire patch":
With --reject, it will still apply as much as it can and only reject individual hunks. The name is somewhat confusing though:
The exit code though isn't mentioned in the man page. I just checked and it exits unsuccessfully with or without --reject, so either way should be fine. I had thought that it might still be successful if it drops individual hunks to .rej files (with --reject) since this is what --reject asked for, but it turns out it fails either way. So with or without --reject is fine - only difference is what you would see in the build output after a failed build. |
Depends on #1201 being merged, and rebasing of this PR on master. |
CircleCI building rebase under https://app.circleci.com/pipelines/github/tlaurion/heads?branch=x230-maximized-fhd_rebase commited under https://github.com/tlaurion/heads/tree/x230-maximized-fhd_rebase branch to see if building of new boards are successful as-is. Next steps (not directly related):
Notes:
|
- One single shared coreboot config between boards/x230-hotp-maximized-fhd_edp/x230-hotp-maximized-fhd_edp.config and boards/x230-maximized-fhd_edp/x230-maximized-fhd_edp.config - Coreboot 4.13 patch from coreboot at patches/coreboot-4.13/0002-x230-fhd-variant.patch - config/coreboot-x230-maximized-fhd_edp.config points to seperate coreboot config per patch (CONFIG_BOARD_LENOVO_X230_EDP)
- One single shared coreboot config between boards/x230-hotp-maximized-fhd_edp/x230-hotp-maximized-fhd_edp.config and boards/x230-maximized-fhd_edp/x230-maximized-fhd_edp.config - Coreboot 4.13 patch from coreboot at patches/coreboot-4.13/0002-x230-fhd-variant.patch - config/coreboot-x230-maximized-fhd_edp.config points to seperate coreboot config per patch (CONFIG_BOARD_LENOVO_X230_EDP) - fix path for vbt under coreboot config file
c003901
to
55374cf
Compare
This comment was marked as duplicate.
This comment was marked as duplicate.
- add x230-maximized-fhd_edp and x230-hotp-maximized-fhd_edp board configs - add/rework coreboot patch for x230 fhd variant to be applied on top of 4.13 - add coreboot config to point to x230-edp variant, fixing path to vbt file since default path is wrong under. Comment made upstream https://review.coreboot.org/c/coreboot/+/28950/22#message-4904ce82f01ba0505b391e072e4537b6a9f1a229 - remove no gfx init and replace with libgfxinit(defonfig default), set internal display as default - add x230-hotp-maximized-fhd_edp and x230-maximized-fhd_edp to CircleCI builds - One single shared coreboot config between boards/x230-hotp-maximized-fhd_edp/x230-hotp-maximized-fhd_edp.config and boards/x230-maximized-fhd_edp/x230-maximized-fhd_edp.config - Coreboot 4.13 patch from coreboot at patches/coreboot-4.13/0002-x230-fhd-variant.patch - config/coreboot-x230-maximized-fhd_edp.config points to seperate coreboot config per patch (CONFIG_BOARD_LENOVO_X230_EDP)
55374cf
to
2b05a6b
Compare
@echo-84 sorry for the spam (config was not pointing to vbt by unfixed review at https://review.coreboot.org/c/coreboot/+/28950/22#message-4904ce82f01ba0505b391e072e4537b6a9f1a229 which is last commit 2b05a6b. This is a rebase on top of master. If you could test new added board's rom from this PR and confirm everything is right, I would merge. Build on clean checkout (without reusing CircleCI caches layers from CircleCI config by overriding CACHE_VERSION under CircleCI project setting) happening at: https://app.circleci.com/pipelines/github/tlaurion/heads/1415/workflows/488017c4-6fd7-4a8a-86e8-133af566b2ee
Note that another commit will add additional freed space per #1298 once this PR is merged. |
Also pinged upstream to (hopefully) have this merged under coreboot 4.19 to ease support of this coreboot board variant (I hate patching and associated maintainer's costs) This is happening here: https://review.coreboot.org/c/coreboot/+/28950/comments/3e4d62ef_79715796 So @n4ru @computer-user123 @Tonux599 @househead : if you could also insist on upstream merge, would be nice. A gentle reminder that the reason why boards get dropped and features are not merged is because not enough people participate in upstream projects. I do not own a FHD/eDP board, so I can only rely on your testing and have less power then the number of you telling coreboot that you need this :) |
No worries and sure, I'll test in a few days when I have access to my flashing setup in case anything goes haywire. I'll also look into the upstream side; see what's going on there and what I can do to help with get it merged. |
Flash was successful and it appears to be functioning properly. I ran my own compile and was able to build successfully but I came out with a different hash. Only thing I could think of is that I have a different ME blob tho mines the same as README. Or possible different files pulled due to it being a day? Also unrelated, I did manage to kernel panic and will open a bug with it but not really a big deal as the process to cause it shouldn't really happen unless you try to make it happen. |
Final ROM hashes will be different if anything packed in ROM is different. If ME is different, hash will be different as well. Under build dir, hashes.txt contains sha256sum hashes for everything Heads related (bzimage, tools.cpio and its packed tools, modules.cpio and kernel modules packed, heads.cpio containing everything git related from initrd dir and finally, all those 3 initrd cpio are packed under initrd.cpio.xz with its hash. There is issue detailing more in detail how to investigate reproducibility issues, but pushing this forward individually (each modules/* should contain either proper make hacks to make sure rpath etc are overriden otherwise some path can bleed into the compiled binaries and causing discrepancy) or patches need to be applied on top of uncompressed tarballs to fix upstream tools reproducibility issues |
@n4ru @computer-user123 @Tonux599 @househead: if you have any issue, please open an issue! |
Fixes x230 FHD mod not supported #614
Current status of PR and direct download link for roms (avail 30 days from now) at Add x230-maximized-fhd_edp and x230-hotp-maximized-fhd_edp boards #967 (comment)
The whole trailing of how this PoC happened can be read #614 (comment)