Jump to content

coreboot hackathon 2023

This might a bit too of a niche topic for most of Linus Tech Tips audience, but some still might find it interesting.

There will be a coreboot hackathon on 17th of November (in 3 weeks), in Bochum, Germany. It will last over the entire weekend (until Sunday 19th).
 

FYI: coreboot is open-source firmware (BIOS or UEFI) replacement

 

Quote

The event is aimed for firmware developers and enthusiasts, from beginners to professionals, everyone is welcome.

 
Free snacks and drinks during the entire period.

Number of tickets is limited. Ordinary ticket costs 20 Euro, for students only 10 Euro.spacer.png
Link to comment
Share on other sites

Link to post
Share on other sites

Id totally join if i wasnt all the way over here in indonesia

 

I mean im absolutely interested in bios modding and not just the basic shit like swapping modules with mmtool

 

particularly a bios mod thatd get rid of forced 1.5:1 or 2:1 uncore : memclk on aus boards as theyre very common and seem to have good ram topology for oc but kneecapped by forced uncore ratio

Link to comment
Share on other sites

Link to post
Share on other sites

38 minutes ago, Somerandomtechyboi said:

Id totally join if i wasnt all the way over here in indonesia

Yeah, travel from Indonesia might be a bit complicated. Maybe next year?

 

This goes far beyond BIOS modding since you basically replace the entire BIOS. Personally, I am fan of removing all kinds of vendor-lock, which is very much possible with this approach. For example on my corebooted think-pad x230, while I was there, I also removed the vendor-lock on white-listed batteries from the embedded controller 😄

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, AtomicFS said:

Yeah, travel from Indonesia might be a bit complicated. Maybe next year?

 

This goes far beyond BIOS modding since you basically replace the entire BIOS. Personally, I am fan of removing all kinds of vendor-lock, which is very much possible with this approach. For example on my corebooted think-pad x230, while I was there, I also removed the vendor-lock on white-listed batteries from the embedded controller 😄

Essentially coding a new bios? I mean bios modding will need some coding knowhow anyways

 

afaik the bios itself needs to be flashed externally which is pretty simple to do with some soldering tools or an spi header if the board happens to have one

 

wait theres a vendor lock for batteries on laptops? And howd you go about removing the vendor lock? Id assume you modified the whitelist and flashed that modded firmware onto the controller

 

tbh not that interested in laptops but id buy an x240 for school needs since my moms s410p body is falling apart and a smaller laptop would be nice for school

 

x240 in particular since you can do a simple bios mod that involves removing microcode (6f2 for xeons but unsure about mobile or desktop but definitely possible on both) to let the cpu run at max turbo on all cores, and i think there are some modbioses that allow for 1866 ddr3 aswell so definitely interested to know how i can mod a bios myself to add stuff like that if it isnt simply just a hidden menu you can unhide with amibcp

 

 

Also dont got the money to travel abroad atm but when my pc buisness or even content creation takes off i should be able to go next year, im also looking for an x58a-oc which seem to be unobtainium in indonesia so i hope i can find some abroad alongside other boards like the giga g33m boards (ds2r in particular) or even giga g31 atx boards

Link to comment
Share on other sites

Link to post
Share on other sites

coreboot (wikipedia, official site) is a complete and full replacement of classic proprietary BIOS. Kinda like Linux or BSD can replace Windows. And it does support various laptops, desktops and server boards (motherboards supported in coreboot).

 

Some proprietary BIOSes on some motherboards allow you to flash new coreboot internally, but on some you must flash it externally with pomona clip.

2018 High quality Pomona soic8 clip 5250 soic8 pin clip For Tacho Pro ...

Yeah, laptops can and do have vendor-locked components like batteries, WiFi cards and other things (depends on vendor and model). And it sucks. Modifying the embedded controller is usually the way to fix this anti-feature.

Link to comment
Share on other sites

Link to post
Share on other sites

NOTE: If you have to flash in coreboot externally via pomona clip, it is usually just 1-time thing. If you have coreboot already, than you can flash new coreboot internally.

Link to comment
Share on other sites

Link to post
Share on other sites

18 hours ago, Somerandomtechyboi said:

Id totally join if i wasnt all the way over here in indonesia

 

I mean im absolutely interested in bios modding and not just the basic shit like swapping modules with mmtool

 

particularly a bios mod thatd get rid of forced 1.5:1 or 2:1 uncore : memclk on aus boards as theyre very common and seem to have good ram topology for oc but kneecapped by forced uncore ratio

Should we just hijack some garuda charter flight or something 🤣

LENNYYYYYYYYY!!!!! WHERE R U BUOYYYYY??????

  •  Laptop:
    • Current
      • Spoiler

        Lenovo ThinkPad X1 Yoga Gen 8 | i5-1335U | 16GB LPDDR 6400MT/s Soldered | WD SN810 1TB NVMe (Win11) | 14 inch 1200p IPS 500 nits panel | Intel AX211 | 65W USB-C PD adapter | Aliexpress DIY Thunderbolt 3 eGPU dock with JieShuo RTX 3060M 12GB

         

    • Retired
      • Spoiler

        Heavily modified Lenovo ThinkPad T480 | i7-8550U | 2x 16GB Teamgroup DDR4 3200MT/s | Custom FCBGA 595 to Oculink 2.0 @ PCIe 3.0 x4 (using removed nvidia MX150 dGPU pinout) | 14 inch 1080p IPS 350 nits panel | 7 Row classic keyboard mod (from T25) | 512GB Samsung PM981a NVMe SSD (Win10) + 256GB WD SN520 2242 NVMe SSD (Manjaro; on WWAN slot) | Intel AX210NGW | 65W USB-C PD adapter  | Oculink 2.0 to PCIe x16 DIY dock eGPU with JieShuo RTX 3060M 12GB 

 

  • Workstation:
    • Current - Repurposed as Homelab Dev Server
      • Spoiler

        AMD EPYC 9454P 48C/96T | Tyan Tomcat HX S8050 (S8050GM2NE) Socket SP5 | 8x32GB (256GB) Kingston Fury Renegade DDR5 4800MT/s RDIMM | Colorful iGame RTX 4080 Advanced OC (windows VM) | PowerColor RX 6600XT Fighter (MacOS VM) | 2x Intel Optane M10 64GB (RAID 1, Proxmox) | 4x Samsung 980 Pro 1TB (RAIDZ1, VM storage) | Nvidia Mellanox ConnectX-4 LX 25Gb SFP+ PCIe x8 (MCX4111A) | Seasonic Prime TX 1600W | Thermaltake Core W100 case | Enermax LIQTECH TR4 II 280mm AIO (SP5 Kit) |8x Deepcool TF140S Fan

         

    • Retired
      • Spoiler

        Intel Xeon E5-2650v3 10C/20T (locked all core 3GHz) | Dell ALienware Area 51 R2 Motherboard (MSi MS-7862) LGA 2011v3 with modded BIOS (ReBAR enabled) | 4x16GB (64GB) SKhynix ECC LRDIMM 2666MT/s Quad Channel | Colorful iGame GTX 1070 Flame Ares U-TOP | Samsung PM981a 512GB NVMe SSD (Win10) + TeamGroup MS30 M.2 SATA 512GB (Manjaro) | Mellanox ConnectX-3 OCP 2.0 NIC (with PCIe adapter) |  Thermalright AXP-100H Muscle CPU cooler (hacksawed to work with LGA 2011v3) | PowerUp Raptor 1633 case + 6x Deepcool RF-120FS case fan | IndoCase 500W 80+ Silver PSU (Rebranded & binned up Gamemax GM-500).

         

  • Homelab AIO server:
    • Current - Repurposed as Backup server
      • Spoiler

        AMD Ryzen 9 3900 (OEM CPU, got it from AliExpress) | Asus Prime B550-Plus AC-HES | 4x16GB (64GB) Samsung DDR4 3200MT/s ECC UDIMM | 2x Intel Optane M10 64GB (RAID1, TrueNAS Scale) | 6x Seagate SkyHawk 8TB (Bulk storage; RAID Z1; Alhua rebranded drive) | Asrock ARC A380 6GB Challenger OC (Terminal + Transcoding GPU) | Mellanox ConnectX-3 OCP 2.0 NIC | Deepcool Gammax C40 (dual fan) | IndoCase IC4008 4U rackmount case + 5x Deepcool XFAN120 + 2x Deepcool XFAN80 | IndoCase 800W 80+ Silver PSU (Rebranded & binned up Gamemax GM-800) | Samsung Galaxy S10+ 5G (5G backup uplink for Router VM).

         

    • Retired
      • Spoiler

        Intel Xeon E5-2695v3 14C/28T (force dynamic turbo all core up to 3GHz) | Huananzhi X99-TF-Q (Q87 chipset) LGA 2011v3 with modded BIOS (ReBAR & all core turbo enabled) | 4x32GB (128GB) Samsung ECC LRDIMM 2133MT/s Quad Channel | Nvidia Quadro NVS 295 (via M.2 E key riser; for basic display) + Dell GTX 1070 OEM (transcoding GPU) + Sapphire Pulse RX 470D 4GB (MacOS Ventura VM) | 2x Kingston A400 120GB (mirrored; TrueNAS SCALE) + 6x Samsung PM981a 1TB (VM storage; RAID Z1) + 7x WD Purple 4TB (Bulk storage; RAID Z1) | Mellanox ConnectX-3 OCP 2.0 NIC (with PCIe adapter) | Alseye M90 CPU cooler (hacksawed to work with LGA 2011v3) | IndoCase IC4008 4U rackmount case + 5x Deepcool XFAN120 + 2x Deepcool XFAN80 | IndoCase 800W 80+ Silver PSU (Rebranded & binned up Gamemax GM-800).

         

  • DIY Router:
    • Current
      • Decommisioned, current router system is running on current AIO Homelab server as VM (Modemsofmen ROOTer GoldenORB OpenWRT 22.10).
    • Retired
      • Spoiler

        HP EliteDesk 800 G1 SFF Prebuilt | Intel core i5-4460T | 4x 4GB Samsung DDR3L 1600MT/s UDIMM Dual Channel | 1x Kingston A400 120GB (ROOTer GoldenORB OpenWRT 22.10) | Mellanox ConnectX-3 OCP 2.0 NIC (with PCIe adapter) + Realtek RTL8125 2.5GBe PCIe NIC + Intel i210 SFP PCIe card with Mikrotik SFP ONU module (for WAN, my default ISP modem sucks) + Fibocom L860 4G modem (with USB 3.0 adapter, for WAN redundancy).

 

  • Desk setup:
    • Spoiler

      viewsonic VA2732-H 27 inch + VA2215H 22 inch (portrait) 1080p 75Hz IPS monitor | DIY sound system with 2 50W DIY bookshelf speaker | Senheisser HD 600 Headphone | Keychron K1 SE keyboard (Low profile Gateron brown) | Lenovo ThinkLife WLM210 mice | Samsung Galaxy S8+ (used as a Webcam LOL).

       

Link to comment
Share on other sites

Link to post
Share on other sites

17 hours ago, AtomicFS said:

coreboot (wikipedia, official site) is a complete and full replacement of classic proprietary BIOS. Kinda like Linux or BSD can replace Windows. And it does support various laptops, desktops and server boards (motherboards supported in coreboot).

 

Some proprietary BIOSes on some motherboards allow you to flash new coreboot internally, but on some you must flash it externally with pomona clip.

2018 High quality Pomona soic8 clip 5250 soic8 pin clip For Tacho Pro ...

Yeah, laptops can and do have vendor-locked components like batteries, WiFi cards and other things (depends on vendor and model). And it sucks. Modifying the embedded controller is usually the way to fix this anti-feature.

Is that an actually working bios clip?

The ones i get with my ch341a are trash

 

Btw what tools do you use to actually code the coreboot bios?

And what tools do you use for modifying ami bios code?

 

Also are there any places that actually talk about coding bioses? Not the basic shit like amibcp or mmtool but actually getting in there and screwing with the code itself line by line character by character

Link to comment
Share on other sites

Link to post
Share on other sites

3 hours ago, Somerandomtechyboi said:

Is that an actually working bios clip?

The ones i get with my ch341a are trash

Yeah, the pomona is OK, I got one. But it is still rather finicky thing. To make a proper electric contact on all pins simultaneously is often question of luck (oxidation on IC pins, spring action in the clip pins, angle from which you put it on, current exchange value of USD to EUR and alignment of starts). So often it takes 2 or 3 tries to get a proper connection on all pins.

 

On top of that, they seems to have limited number of uses because the pins on the clip and the plastic too are are tiny and fragile. But I would say it is a common problem.

 

3 hours ago, Somerandomtechyboi said:

Btw what tools do you use to actually code the coreboot bios?

Most old BIOSes were written in assembly language, and were hard to maintain because of that. More modern UEFI on the other hand uses higher languages like C, but still has a lot of code in assembly. For example there is a edk2 project, which is a open-source implementation of UEFI standard (UEFI is a open standard, but majority of implementations in use today are proprietary). And edk2 has around 10% of it's code in assembly.

 

Coreboot on the other hand has less than 0.5% code in assembly. That is thanks to some smart design-decisions.

 

To develop for coreboot, you need to know C programming language and have a Linux to compile it (it is impossible to compile on windows, but maybe WSL would work). You can also you some CI/CD pipeline (for example I am working on re-usable github action  https://github.com/9elements/firmware-action).

 

Then of course you might want to get some external programmer (Raspberry PI is good enough), the motherboard you want to work on, and USB-to-Serial cable for debugging the coreboot (can't stress enough how such cable is useful for debugging!)

 

3 hours ago, Somerandomtechyboi said:

And what tools do you use for modifying ami bios code?

You can't modify AMI BIOS code, because it is not open-source (the code is not public). You can do some reverse-engineering, but I don't do that.

 

3 hours ago, Somerandomtechyboi said:

Also are there any places that actually talk about coding bioses? Not the basic shit like amibcp or mmtool but actually getting in there and screwing with the code itself line by line character by character

The official coreboot webpade has section for developers, but as usual people involved in coreboot do not have that much time to write documentation, so it is lagging behind.

 

There are of course other project besides coreboot, such as already mentioned edk2, oreboot (fork of coreboot re-written in Rust) and libreboot (coreboot fork with no binary-blobs).

 

Binary-blobs are unfortunately necessity in coreboot for more modern hardware, since vendors refuse to open-source their tools, and things like memory (RAM) initialization are very complex thanks memory training. I could not find a source for memory training, but in essence it gets too difficult and costly to make the paths on motherboard exactly the same length for each and every path between CPU and RAM (very important especially on high-frequencies). So since like DDR3 they make them approximately the same length, and compensate for the difference in firmware with memory training. I believe this thing was patented by Intel, which makes it even more complicated.

 

However in a way libreboot feels redundant since if you compile coreboot for motherboard that can run without blobs, there will be no blobs (I might be wrong here, but I generally fail to see the point of libreboot - so this is personal opinion, take it with a grain of salt).

 

Coreboot has a active community at mailing list, IRC channel and Matrix server. For all these contacts see the developer section on coreboot's website. There is also a Slack (osfw.slack.com), but it is not specific to coreboot, it is about open-source firmware in general.

 

EDIT: There are also annual event such like OSFC (Open Source Firmware Conference) which was just 2 weeks ago, where people around open source firmware gather and give talks, workshops and hang out. The OSFC is always at different location every year to reach more people. Of course then there is the coreboot hackathon which is coming up.

Link to comment
Share on other sites

Link to post
Share on other sites

Correction:

3 hours ago, AtomicFS said:

You can't modify AMI BIOS code, because it is not open-source (the code is not public). You can do some reverse-engineering, but I don't do that.

After some digging I found out that some parts of AMI BIOS are open-source, there is something like community edition, but I have no idea what it looks like under the hood.

https://www.ami.com/aptio/

Link to comment
Share on other sites

Link to post
Share on other sites

20 hours ago, AtomicFS said:

Then of course you might want to get some external programmer (Raspberry PI is good enough), the motherboard you want to work on, and USB-to-Serial cable for debugging the coreboot (can't stress enough how such cable is useful for debugging!)

I use a ch341a

Any advantages to using an rpi as an external programmer?

 

and what does a serial cable allow you to do?

 

17 hours ago, AtomicFS said:

Correction:

After some digging I found out that some parts of AMI BIOS are open-source, there is something like community edition, but I have no idea what it looks like under the hood.

https://www.ami.com/aptio/

And the bioses im interested in modifying are amibios based not uefi (aptio) based

 

 

Do you happen to know of any forums that play around with bios modding or any other thinkering with low level firmware?

Link to comment
Share on other sites

Link to post
Share on other sites

3 hours ago, Somerandomtechyboi said:

I use a ch341a

Any advantages to using an rpi as an external programmer?

The only advantage is that people who want to start are more likely to own RPI rather than some SPI programmer.

 

3 hours ago, Somerandomtechyboi said:

and what does a serial cable allow you to do?

Firmware such as coreboot output a lot of information to serial (if enabled) before GPU or RAM initialization. Thanks to this you can read possible error messages / warnings and fix the problems instead of guessing. In essence, if one is working on support for new motherboard, the first thing they want to get working is serial because suddenly you can see what is going on in there.

 

3 hours ago, Somerandomtechyboi said:

And the bioses im interested in modifying are amibios based not uefi (aptio) based

Sorry but I know nothing about AMI BIOS.

 

3 hours ago, Somerandomtechyboi said:

Do you happen to know of any forums that play around with bios modding or any other thinkering with low level firmware?

Sorry, not that I know of. I myself am not into modding proprietary BIOS / UEFI, so I have no clue. But there might be some people in the coreboot / open-source firmware communities. Give it a shot and ask there.

 

If I need some help with coreboot or edk2, I would go to coreboot IRC (or some other platform mentioned in https://coreboot.org/developers.html), or osfw.slack.com. IRC is probably the best platform if you want to get some help with coreboot. There is also subreddit r/coreboot which seems to be active. And there are also some offshoots like heads and skulls, but those communities are even smaller.

Link to comment
Share on other sites

Link to post
Share on other sites

2 hours ago, AtomicFS said:

Firmware such as coreboot output a lot of information to serial (if enabled) before GPU or RAM initialization. Thanks to this you can read possible error messages / warnings and fix the problems instead of guessing. In essence, if one is working on support for new motherboard, the first thing they want to get working is serial because suddenly you can see what is going on in there.

So basically that means i can debug bioses and see whats causing them to not work on that particular board

 

I guess this means if i get the tools and knowledge to modify bioses i can get any bios to work on any board

 

Well then either im gonna modify an asus bios to get rid of bullshit forced uncore memclk or ill flash a god damn x58a oc or atleast an x58a ud7 bios on an asus board

 

I mean i have attempted to flash a giga ep45 ud3r bios on my p5q but it gets stuck at 26 code right before it actually posts (code 2b) so with this debugging shenanigans i can modify the bios and make it actually post, voltage control and stuff will be broken but ill get around that with physical voltmods or adding support for whatever ics control the volts and stuff

 

Now im interested in the serial port, but what kinda software do i need to read the codes from the serial port? And how do i get codes out of boards that dont natively have a serial port?

 

 

Boy oh boy once i get my hands on the knowledge and those tools i will make some absolutely cursed configurations and some absolutely cursed overclocks

Link to comment
Share on other sites

Link to post
Share on other sites

17 hours ago, Somerandomtechyboi said:

So basically that means i can debug bioses and see whats causing them to not work on that particular board

Yes

 

17 hours ago, Somerandomtechyboi said:

I guess this means if i get the tools and knowledge to modify bioses i can get any bios to work on any board

I am afraid that is not the case. Motherboards differ a lot from each other. For one the CPU architecture (like Alder Lake, Tiger Lake for Intel, and the same for AMD) make a huge difference. BIOS in essence must reflect how everything is wired on the board and in the CPU.

 

As such, if you do not have access to the source code, it will be very very very difficult to make BIOS compiled for one board work on another, close to impossible unless to boards are similar.

 

I do not want to crush you hopes now, but the fact that coreboot does output useful log into serial does not necessarily mean that other BIOS from vendors do it too. Generally I would assume most of them don't since serial log is useful for development, but you do not want it in the production.

 

There are many tools to read serial. My favorites are screen and minicom, but in dire situation you can use even Arduino serial monitor. If the board does not have serial, then coreboot can be configured to use another interface, such as USB if I am not mistaken.

Link to comment
Share on other sites

Link to post
Share on other sites

On 10/29/2023 at 12:02 PM, Somerandomtechyboi said:

but what kinda software do i need to read the codes from the serial port?

Stuff like picocom, screen or even the arduino own serial reader should do the trick. And it doesn't spew "code", just debug messages that the developers put in there (pretty much like when you do print debugging).

On 10/29/2023 at 12:02 PM, Somerandomtechyboi said:

And how do i get codes out of boards that dont natively have a serial port?

You find out any other communication port that may be used for debugging, but most mobos have a serial port/uart somewhere.

On 10/29/2023 at 12:02 PM, Somerandomtechyboi said:

Boy oh boy once i get my hands on the knowledge and those tools i will make some absolutely cursed configurations and some absolutely cursed overclocks

It is not that easy and requires shit ton of knowledge of the board you're working with, something that I doubt you'll manage to have without years of reverse engineering the device or having the schematics for it available.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to comment
Share on other sites

Link to post
Share on other sites

3 hours ago, igormp said:

Stuff like picocom, screen or even the arduino own serial reader should do the trick. And it doesn't spew "code", just debug messages that the developers put in there (pretty much like when you do print debugging).

Yea thats what i meant

I just reffered to em as codes since i look at postcodes alot, you get a number letter code and you look it up to determine what it is

 

3 hours ago, igormp said:

You find out any other communication port that may be used for debugging, but most mobos have a serial port/uart somewhere.

Basically just look at other random headers that arent used for anything that id use (usb headers, front panel, audio, spi, etc.)

 

3 hours ago, igormp said:

It is not that easy and requires shit ton of knowledge of the board you're working with, something that I doubt you'll manage to have without years of reverse engineering the device or having the schematics for it available.

All i really want to do is to get rid of that bullshit forced 2:1 / 1.5:1 uncore : memclk ratio on some x58 mobos particularly asus

 

Seems like itd be a pretty simple mod and alot simpler than trying to get an awardbios based x58a ud3r bios to work on an asus board, i mean all i got to do is seperate the uncore and mem multi settings so if i set mem multi to 16 uncore multi doesnt force itself to be at 24 and wont go lower, but amibcp is problably gonna be of no help

 

Without bios modding the only other interesting board i see would be the foxconn flaming blade/bloodrage, if it has the bullshit forced uncore : memclk i simply flash a gigabyte bios on it since its awardbios and control voltages with trimpots (voltmods)

Link to comment
Share on other sites

Link to post
Share on other sites

58 minutes ago, Somerandomtechyboi said:

Basically just look at other random headers that arent used for anything that id use (usb headers, front panel, audio, spi, etc.)

Those may not even be headers, just empty test points. 

58 minutes ago, Somerandomtechyboi said:

All i really want to do is to get rid of that bullshit forced 2:1 / 1.5:1 uncore : memclk ratio on some x58 mobos particularly asus

That has nothing to do with coreboot really, nor will serial stuff help you. You're better off by downloading the bios file from the website and trying to hexedit it, then flash your mobo and hope nothing broke.

 

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, igormp said:

That has nothing to do with coreboot really, nor will serial stuff help you. You're better off by downloading the bios file from the website and trying to hexedit it, then flash your mobo and hope nothing broke.

How do i hex edit a bios file while knowing what the hell im actually doing?

 

I mean asprogrammer seems to let me hex edit the bios files but i have no clue as to which hex controls this nor do i have any clue as to what value i need it to be set to

Link to comment
Share on other sites

Link to post
Share on other sites

9 minutes ago, Somerandomtechyboi said:

How do i hex edit a bios file while knowing what the hell im actually doing?

 

I mean asprogrammer seems to let me hex edit the bios files but i have no clue as to which hex controls this nor do i have any clue as to what value i need it to be set to

You either decompile the thing with your tool of choice, or go raw and try to learn what the hex stuff in there mean. It's a game of patience, reading stuff and trying to figure out what it means and how it works.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to comment
Share on other sites

Link to post
Share on other sites

35 minutes ago, igormp said:

You either decompile the thing with your tool of choice, or go raw and try to learn what the hex stuff in there mean. It's a game of patience, reading stuff and trying to figure out what it means and how it works.

What tool do i use to decompile it?

 

And how tf am i supposed to know what the hell the hex even means? I guess i could edit with amibcp to get a rough idea as to what values i need to edit but amibcp seems to make bioses glitch out if i change their defaults so i bet its changing multiple values and not just one which also means more digging around and with the hundreds if not thousands of lines of code that aint gonna be fun

Link to comment
Share on other sites

Link to post
Share on other sites

17 minutes ago, Somerandomtechyboi said:

What tool do i use to decompile it?

 

And how tf am i supposed to know what the hell the hex even means? I guess i could edit with amibcp to get a rough idea as to what values i need to edit but amibcp seems to make bioses glitch out if i change their defaults so i bet its changing multiple values and not just one which also means more digging around and with the hundreds if not thousands of lines of code that aint gonna be fun

Maybe something like ghidra or binja. 

 

It's not a fun thing to do, it's tedious and hardous, there's no easy way to go about it. 

Your other option would be to port coreboot and add your own overclocking stuff, but AFAIK coreboot doesn't really have any proper support for such stuff, so good luck implementing it.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, igormp said:

Your other option would be to port coreboot and add your own overclocking stuff, but AFAIK coreboot doesn't really have any proper support for such stuff, so good luck implementing it.

im curious as to how id go about that

 

Its a pretty huge thing to undertake but also quite interesting

 

Does coreboot even have a bios menu? Cause if it doesnt then id have to implement that first then on to the oc controls

 

As for the oc controls id assume that ill have to add support for the chips that control the frequencies (like the pll) and voltages but i have no idea what effort it takes to pull that off

 

Bios size shouldnt be much of a problem as i can just salvage 8mb chips (and i already have some laying around), worst case ill have to find a 16mb chip or use an sop -> dip adapter for bigger chip sizes

 

Have there been any coreboot forks that support overclocking?

Link to comment
Share on other sites

Link to post
Share on other sites

47 minutes ago, Somerandomtechyboi said:

im curious as to how id go about that

 

Its a pretty huge thing to undertake but also quite interesting

 

Does coreboot even have a bios menu? Cause if it doesnt then id have to implement that first then on to the oc controls

 

As for the oc controls id assume that ill have to add support for the chips that control the frequencies (like the pll) and voltages but i have no idea what effort it takes to pull that off

 

Bios size shouldnt be much of a problem as i can just salvage 8mb chips (and i already have some laying around), worst case ill have to find a 16mb chip or use an sop -> dip adapter for bigger chip sizes

 

Have there been any coreboot forks that support overclocking?

Coreboot only does some hardware init and then loads a payload of your liking (which then could have a menu). 

I'm not really into the Coreboot world, so you're better off reading their docs or joining the appropriate communities.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to comment
Share on other sites

Link to post
Share on other sites

Coreboot as is has no menu. The premise being you can re-compile and re-flash it when you want some change. It is a design decision to keep the code as simple as possible.

 

Hardware initialization is already difficult. Some additional menu would just add on unnecessary complexity, especially since most people just find config that works and never touch it ever again.

 

There is a rather simplistic menu with few options called nvramcui, but it lets you only pick boot disk and serial options (baudrate and so on). Although I have seen recently some attempts on adding more comprehensive menu system.

 

While I do not have experience with overclocking, I believe it should be possible to do overclocking with coreboot.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×