On Friday, March 28, 2014 10:03:28 AM Paul Menzel wrote:
Dear coreboot folks,
Alexandru put wood behind the arrow to get coreboot running on an AMD based laptop. He took his old HP Pavilion m6-1035dx [1] and in a day/night had coreboot running on it and he submitted the patch set for review [2]!
Heh! Thanks for the enthusiasm, Paul. I was able to merge this earlier today., so people can start playing around with it.
The hardware in this laptop will eat chromebooks alive performance-wise, and does not have essential, non-replaceable, persistent blobs. I think all the blobs still present could be replaced with free alternatives after some reasonable effort.
I am surprised just how portable the AMD hardware is, as opposed to <evil competitor>. The blobs we're dealing with here are chipset-specific, as opposed to board-specific, as is the case of <evil competitor>. This makes them much less intrusive on the porting process, almost transparent.
Congrats to being, to my knowledge, the first to get coreboot running on an AMD based laptop! Also big thanks to AMD and Sage Electronic Engineering LLC [3] for providing code and support for AMD stuff! Also thanks to Google for contributing code for the COMPAL ENE932 Embedded Controller [4].
I could not have done it if those pieces weren't in place. Having coreboot run on an AMD laptop is really exciting for me. I has been disheartening to see how AMD is helping us, but most of our bright minds defect to hardware which is more restricted and unnecessarily harder to deal with.
So reviewers and help in getting the non-working stuff to work are greatly appreciated.
ACPI is the bigger issue here. Suspend/resume needs work, as does the battery indicator, and some hot-keys.
Bad for Alex that he now has to deal with AGESA and get for example CBMEM console working with it for romstage or to refactor the code to be more maintainable. :P
There was plenty of less-than-perfect code which sneaked in along the years, albeit I am glad we have it. I will only touch fam15tn part of AGESA, as I can test the changes and avoid breaking hardware I do not own.
There are some circular dependencies here and there, and a definite abuse of compiler include paths. This confuses code editors, and makes development harder, as you first have to figure out which file is included. I'll be working briefly to address these, and, as you put it, make "the code to be more maintainable".
My motivation for doing this is not to get coreboot to run on this laptop. The laptop itself is poorly constructed. I do, however, want to lay the groundwork for the LTS laptop everyone's been talking about.
I also have some ARM laptops due to arrive, so I'll also focus on getting those up to speed.
Alex