On Wed, Mar 21, 2012 at 10:09:35PM -0300, Eugeni Dodonov wrote: > Hi folks, > > To contribute to everyones curiosity and further enrich Phoronix articles > :), this is the initial Haswell enablement patchset for basic modesetting > support over VGA. > > This is actually the first time I am doing such enablement, and the > combination of HSW/LPT changes proved to be quite tricky, yet also very cool > to do. But certainly, while I tried to split the patches in the best way to > 'tell a story', I suspect lots and lots of things could be improved. So > bikeshedding is much welcomed! And of course, there are still a bunch of > things missing, but those can be done in parallel now. > > As for those patches, I organized them in the following way: > - The first part adds new hardware information and new registers which we'll > need to make it work (a.k.a, 'The Pledge'). This goes from patch 01 until > patch 21. > - The second part does small changes to existent functions to make them work > on Haswell ('The Turn'). This goes from patch 22 to patch 28. Haswell is > not quite Gen7, but is shares lots of stuff with what we already have, so > there was no point in reinventing the wheel just now. > - The third part makes things work by enabling power wells, DDI and FDI > connections, PCH-specific stuff and so on ('The Prestige'). This is from > patch 29 to patch 35. Those are the scariest ones, but I couldn't split them > better and still maintain logical consistency among them. Initially, those > were 24 small patches, but it was very hard to keep track of them, so I > combined them into just 6 for this patchset. > - And finally, there are 2 last patches ('The Prestige Debug' :)) which won't > be present in the final series, but are helpful at least for me to trace > where things go wrong. So if you run into issues and want to send me a > dmesg, those traces will make my life so much easier. > > I didn't wanted to go much deeper with HSW for now because I would end up > doing a massive code reordering to maintain my mental sanity, and as we > already discussed by email earlier today Jesse is running into same problems > as well. So perhaps we should just settle on doing some cleanup in our > intel_display module before adding more platform-specific stuff? Awesome work and nice patch series. To satisfy you're expectation, I've dropped a few bikesheds on it. Now my gut says that this needs some more work before we can merge hsw support, but there are quite a few things that I'd like to pick up earlier (just so you don't have to carry so many patches): - the separate register definition patches are rather nice, so as soon as someone with enough coffee has cross-checked them with Bspec I could merge them, maybe already next week. - some of the infrastucture work (like adding the has_pch_split feature work) could go in early, too. Luckily hsw seems to be less a frankenstein monster than vlv, which nicely reflects in much fewer pain points when integrating it in our code. - for merging real hsw support (and especially the pci ids) I think we should wait until digital outputs also work somewhat. Yours, Daniel -- Daniel Vetter Mail: daniel at ffwll.ch Mobile: +41 (0)79 365 57 48