I flashed 'grub_t500_8mb_libgfxinit_corebootfb_usquerty.rom' on my quad-core T500 with a qx9300. Speedstep works fine on my custom Coreboot build (4.13). Libreboot 20210522 is stuck at 1.6ghz (which is the lowest speed GM45 quad cores can run, as they don't have a super-low-frequency mode for 800mhz). Behavior is the same if I boot directly from libreboot-grub, or load Seabios.
I'm willing to spend time and help debug this issue, but I have a very full schedule for the next several weeks.
I believe you mentioned on libreboot IRC that a coreboot ROM gave you the possibility to use those cores at the maximum speed. Do you still have that ROM? If so, please send it to me. I would like to look inside it, to see what coreboot revision you were on.
One of two possibilities likely: configuration option that I overlooked, or regression in recent coreboot 4.14 release. With the above info requested, I can look into this.
Here's a copy of the coreboot ROM I built. I reflashed it on my T500 and confirmed it allows running all 4 cores at maximum speed (2.53ghz in my case). The build date is 7/21/2020. I don't have the original build directory or config files. It boots straight to SeaBIOS, no grub, no proprietary VBIOS, no microcode. The SeaBIOS 'nvramcui' and 'coreinfo' boot options show the first screen but are buggy and aren't interactive. Booting from SATA or USB works fine.
I hope this helps, and thanks for taking a look!
EDIT - notabug only seems to support uploading jpegs and pngs, not binaries or compressed files. I'll send via email.
QX9300 is a Intel Xtreme processor, which may be undervolting itself due to thermal conditions(how hot is it running?) Coreboot may not be doing this due to a different Temperature/throttling curve(inside a blob?), try using a Blobless coreboot and send logs here.
Also if you have enough time and money, try using a Q9100 (non Xtreme and lower TDP, same or superior performance) and tell us how it goes
Thanks for the troubleshooting ideas. I'm certain that throttling and undervolting are not the issue for the following reasons:
1) With my blobless coreboot ROM, the machine runs stable at 2.53ghz with 100% load on all cores, and maxes out at 85C. No thermal throttling was observed from either reported clockspeed or benchmarks.
2) Core 2 shouldn't thermal throttle until 100C.
3) I even did some basic overclocking; 3.06ghz appears to be stable with 100% load on all 4 cores, no voltage increase, with a max temp of 97C. I doubt higher clocks are possible due to thermal limits. I ran some basic benchmarks and the performance improvement was consistent with the clock increase (linear). A significant powerdraw increase was measured from the wall outlet while overclocked.
4) Speedstep works as expected with this blobless coreboot ROM.
I doubt the Q9100 would help - it has the same 45W TDP. The slightly lower clock might help keep temps a bit lower, but 85C should be fine anyway.
Side note in case someone else is trying to use a QX9300: I'm using a W500 heatsink with a Intel-only T500 motherboard. I had to desolder and remove some of the 56k modem components from the motherboard to get the W500 heatsink to fit. The W500 heatsink has more heat pipes and likely performs significantly better than the T500 intel-only heatsink, although I have not measured this.
Try using old 2016***** libreboot version and send logs here, maybe there was a regression.
Offtopic: A guide on how to quad-core a T500 the way you did can be useful
Are there any 2016**** releases known to work with quadcores? I thought they all had MAX_CPUS=2.