Skip to content
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

test me_cleaner for gen1 ME (Q9100 Penryn with my FTS Celsius H265/H270) #201

Closed
estellnb opened this issue May 17, 2018 · 11 comments
Closed

Comments

@estellnb
Copy link

Nicola Corna told me that he has a draft commit which would implement switching off the Intel ME for a generation 1 ME as it has my Penryn based system (Q9100 with my FTS Celsius H265/H270). Up to now only generation 2 and generation 3 Intel MEs like used from the Intel Nehalem CPU architecture onwards have been supported.

@corna
Copy link
Owner

corna commented May 24, 2018

I've pushed initial support for generation 1 in the dev branch. It is currently untested, however the output file is almost identical to the one generated by ich9deblob (which has been already widely tested).

If you want to test it I suggest to add the -d flag, to replicate as much as possible ich9deblob.

Let me know if it works.

@estellnb
Copy link
Author

estellnb commented May 24, 2018 via email

@estellnb
Copy link
Author

estellnb commented May 24, 2018 via email

@estellnb
Copy link
Author

estellnb commented May 24, 2018 via email

@corna
Copy link
Owner

corna commented May 25, 2018

What does ich9deblob do in deed; is it another tool to remove the me?

Yes, but it also does some libreboot-specific stuff, like extracting the descriptor, removing the Platform Data region (which might be needed by your BIOS) and automatically moving the BIOS region. If you compare the ich9deblob output image with the one from me_cleaner (with ifdtool -d) you'll see that the differences are minimal.

What is the exact command line I should use with me_cleaner? ./me_cleaner.py -d -O celsius3-me_cleaed.rom celsius3.rom ??

Yes

Perhaps you can look at the output once more.

Yes, they're ok. If you want you can run ifdtool -x on both images to highlight the differences:

  • flashregion_0_flashdescriptor.bin are mostly identical:
    • bytes 0x48-0x4b are the ME region offset and size; 0x00001fff (the image is little endian) means "this region is disabled"
    • bytes 0x67-0x68 are the ME access permissions; 0x0404 means "ME has RW access only to its own region" (only if you've used the -d flag, but it probably has no effect)
    • bytes 0x100-0x103 are the ICHSTRP0, bit 0 is the "meDisable" bit
    • bytes 0x200-0x203 are the MCHSTRP0, bit 0 is the "meDisable" bit
  • flashregion_2_intel_me.bin is not present anymore in the modified image (as we've removed it)
  • flashregion_3_gbe.bin and flashregion_4_platform_data.bin are identical

@estellnb
Copy link
Author

estellnb commented May 26, 2018 via email

@corna
Copy link
Owner

corna commented May 28, 2018

Great, does the PC turn on correctly? Does it have any delay or issue?

@estellnb
Copy link
Author

estellnb commented May 28, 2018 via email

@corna
Copy link
Owner

corna commented Jun 1, 2018

Wonderful! After checking the code in the dev branch I'm going to merge it in master.
Can you run intelmetool -m?

@estellnb
Copy link
Author

estellnb commented Jun 1, 2018 via email

@corna
Copy link
Owner

corna commented Jun 1, 2018

Great!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants