[coreboot] for Lenovo G505S owners: AtomBIOS ROMs (discrete too!), binaries, datasheets...

Mike Banon mikebdp2 at gmail.com
Sat Jul 15 15:53:46 CEST 2017


Dear Damien, thank you for your interest!

These repositories are not raising G505S free-as-in-freedom level,
just trying to improve the things: e.g. make a discrete GPU working
and erase serial IDs from EC KB9012 proprietary firmware. To clarify:

1) g505s-atombios : contains the AtomBIOS ROMs for discrete GPU of G505S.
AFAIK nobody has successfully extracted these discrete ROMs before!
If your G505S had integrated GPU only you couldn't benefited from them,
but my G505S has a discrete GPU also - which does not work with coreboot.
And I really hope that having two AtomBIOS ROMs inside coreboot.rom
(integrated + discrete, e.g. both pci1002,990b.rom and pci1002,6663.rom )
will help me to make this discrete GPU working. Going to test it soon :D

2) g505s-proprietary : contains the motherboard's LA-A091P and EC KB9012
keyboard controller datasheets, and Lenovo's Hardware Maintenance Manual
(sometimes helps to find the replacement parts, such as the new screws)
Of course many of us already had these files, but it also contains a
clean EC KB9012 ROM - extracted directly from BIOS updating software!
Compared to what is flashed at G505S by default, this clean ROM doesn't
have any IDs, therefore flashing it slightly improves your anonymity

> It would be good to get this chipset working with Timothy's
> non-AGESA ram init, which I was working on at an earlier time but got
> stuck and ran out of time.

Please tell, have you uploaded your unfinished work somewhere?

> I believe the EC has been done too by Paul

Thank you very much for this information! Do you know whether
it has been 100% completed and G505S boots with it, by a chance?

http://git.code.paulk.fr/gitweb/?p=origami-ec.git;a=summary

I am getting a few problems while trying to build:

tools/segments: 19: tools/segments: 0x000016A4: not found
tools/segments: 19: tools/segments: 0x00000C2C: not found
tools/segments: 19: tools/segments: 0x00000E07: not found
tools/segments: 69: tools/segments: cannot open 0x0000: No such file
tools/segments: 69: tools/segments: 0: not found
tools/segments: 69: tools/segments: 49152: not found
tools/segments: 69: tools/segments: cannot open 0x10000: No such file
tools/segments: 69: tools/segments: 65536: not found

Perhaps the tools/segments bash script is not portable enough,
I will try to fix it and contribute a solution in the near future

> the only thing remaining apart from the hardest part (ram init) would be
> the vga init, (which Alex already did 95% for this particular hardware)

Curious to hear about Alex's open source VGA init. Most likely it has been
written with integrated-only GPU in the mind, but if it will become the last
obstacle before fully liberating G505S --> then I could try to complete it

> I no longer have the laptop hardware with me so this is going to be
> problematic for me to do much work on it in the near future.

Its very sad to hear. G505S is the most powerful portable coreboot hardware
without Intel ME / PSP backdoors, and I hope that more of these wonderful
laptops will end up at the hands of opensource/privacy-caring people

Luckily this laptop's default thermal paste is of very poor quality, and
when it starts easily overheating after a couple of years - a lot of people
are simply selling it instead of changing its' thermal paste! Partially
because of that, partially because a lot of G505S have been manufactured,
it is easy to find this laptop at eBay/craigslist for a very cheap price!

For example, just $100 dollars:

http://www.ebay.com/itm/Lenovo-G505s-20255-AMD-A10-6gb-Ram-No-Hdd-Parts-Repair-/332298782671

If I were at USA I would have definitely bought, need just $59 to refurbish

1) 8cells battery, more capacity than original! $33 -
https://www.aliexpress.com/item/8-Cell-Battery-for-Lenovo-IdeaPad-G400s-G405s-G505s-G410s-G510s-S410p-S510p-Z710-L12L4A02-L12M4A02/32819127987.html

2) replacement keyboard, $12 -
https://www.aliexpress.com/item/Free-Shipping-US-keyboard-for-lenovo-Ideapad-G505S-FLEX-15-G500S-S500-Z510-US-laptop-keyboard/1945098518.html

3) bottom cover, $14 -
https://www.aliexpress.com/item/New-For-Lenovo-G500S-G505S-Bottom-RAM-HDD-Hard-Drive-Cover-Door-balck/32819067218.html

+ new thermal paste and some 100% alcohol for disinfection,
then could put SSD and 16 GB of RAM there for a beast machine ;)

> I'm not sure if you are allowed to redistribute proprietary roms/datasheets

It depends on your location - different countries have different laws.
At my place I am allowed to use and even distribute them for not-commercial
purposes (e.g. reverse engineering or just a hobby), at some other places
the people are allowed to download these files but aren't allowed to share

Sadly some countries have very strict copyright laws, e.g. at USA I would
have had to wait 75 years :P Many (if not all) GitHub servers are at USA
jurisdiction, but they can't sue me - only to take down my repositories,
which I could easily re-upload to GitHub again or to somewhere else...

However, these datasheets have been at GitHub for almost a year
( https://github.com/mikebdp2/kb9012-g505s-official ) and still available!

Probably because these datasheets aren't like a game or a movie
(when the manufacturer is losing money if someone else is distributing it)
in reality - nobody cares if you are distributing them. Multiple times I
have honestly tried to contact both Compal and ENE asking them if they
don't mind me sharing the datasheets, but they have never replied to me

Good luck to your projects,
Mike Banon

On Sat, Jul 15, 2017 at 6:24 AM, Damien Zammit <damien at zamaudio.com> wrote:
> Dear Mike,
>
> I am not sure what this is all about, but we already ported the G505s to
> coreboot.    I believe the EC has been done too by Paul,
> so the only thing remaining apart from the hardest part (ram init) would
> be the vga init, (which Alex already did 95% for this particular
> hardware).  I no longer have the laptop hardware with me so this is
> going to be problematic for me to do much work on it in the near future.
>
> By the way, I'm not sure if you are allowed to redistribute proprietary
> roms/datasheets, but IANAL.
>
> I wish you luck,
>
> Damien
>
> On 15/07/17 07:48, Mike Banon wrote:
>> Good day! Together with my friend Ivan we have opened a new GitHub page,
>>
>> https://github.com/g505s-opensource-researcher
>>
>> and created 3 repositories there:
>>
>> 1) g505s-atombios
>> AMD AtomBIOS video bios releases for G505S Integrated HD-8650G and
>> discrete HD-8570M / R5-M230 GPUs
>>
>> 2) g505s-proprietary
>> Proprietary stuff: InsydeH20 closed source BIOS files, documents,
>> binaries and datasheets for G505S
>>
>> Their files were described at our previous messages:
>>
>> https://mail.coreboot.org/pipermail/coreboot/2017-July/084660.html
>> https://mail.coreboot.org/pipermail/coreboot/2017-July/084671.html
>> https://mail.coreboot.org/pipermail/coreboot/2017-June/084569.html
>>
>> All the SHA-256 checksums are available at sha256sum.txt text files
>>
>> Also, we are going to set up 3) a bit later:
>>
>> 3) g505s-coreboot
>> coreboot open source BIOS releases for AMD-based Lenovo G505S laptop
>> with A10-5750M quad core APU
>>
>> "3)" could be especially useful for the people who just recently
>> became interested at coreboot/SeaBIOS projects - and would like to
>> quickly test on their G505S laptop because of the official BIOS
>> shortcomings (WiFi whitelist / poor thermal management)
>>
>> By the way, there were two typos at Ivan's cbfstool.sh script - two
>> missing "\" characters at the end of line. g505s-atombios repository
>> has a working version
>>
>> Have the great weekends and happy hacking ;-)
>>
>> Wish you all the best,
>> Mike Banon
>>



More information about the coreboot mailing list