Bug 3519 - Integrate screen rotation patches into stock kernel and X server
: Integrate screen rotation patches into stock kernel and X server
Status: RESOLVED WONTFIX
Product: Core
X Server
: 4.1 (4.2008.23-14)
: ARM Maemo
: Medium enhancement with 33 votes (vote)
: 5.0 (1.2009.41-10)
Assigned To: unassigned
: x-server-bugs
:
: community-diablo, patch
: 644
: 3654
  Show dependency tree
 
Reported: 2008-07-30 15:50 UTC by luarvique
Modified: 2009-10-22 07:57 UTC (History)
17 users (show)

See Also:


Attachments
Xomap server patch (12.97 KB, patch)
2008-10-09 18:01 UTC, luarvique
Details
Kernel patch (6.99 KB, patch)
2008-10-09 18:02 UTC, luarvique
Details


Note

You need to log in before you can comment on or make changes to this bug.


Description luarvique (reporter) 2008-07-30 15:50:58 UTC
Please, integrate community-provided patches that allow for screen rotation
into stock IT OS kernel(s) *and* Xomap server.

While this feature will not affect regular tablet users who have no rotation
utilities installed, it will provide more advanced users with screen rotation
without needing to compile and maintain alternative kernel and X server builds.

There is no additional support costs involved for Nokia as screen rotation will
not be enabled by default, only with the help of an external community-provided
utility not officially supported by Nokia.
Comment 1 luarvique (reporter) 2008-07-30 15:58:29 UTC
*** This bug has been confirmed by popular vote. ***
Comment 2 Andre Klapper maemo.org 2008-07-30 17:25:45 UTC
(In reply to comment #0)
> Please, integrate community-provided patches that allow for screen rotation
> into stock IT OS kernel(s) *and* Xomap server.

This is way too vague to be handled. Please provide explicit links to the
patches at least, and descriptions. The easier it is/more info you provide, the
more likely it will be done and fixed.
Comment 3 Jonas Hurrelmann 2008-07-30 17:29:56 UTC
You can find the kernel patches at

http://sse2.net/rotate/Updated_blizzard_rotation_support_v2.diff 


And the patches to Xomap at 

http://labs.vivi.eng.br/blog/rotation-patches/adding-support-to-xrandr-on-xomap.patch
Comment 4 Faheem Pervez maemo.org 2008-07-30 21:53:41 UTC
Also, including rotation support means that left-handed tablet owners can use
their tablet much more easier. Nokia not providing an option to move the
scrollbars to the left side for left-handed users has been talked about a lot
on the internet tablet talk forums.  The inverse rotation option, which allows
a left-handed user to use the tablet much more easily, has no ill effects on
the UI and even mplayer which uses the framebuffer to playback video, plays it
fine in inverse rotation.

Nokia also carry the libxrandr2 library which is needed for rotation in the
Diablo SDK repository which makes doing this even easier.
Comment 5 Eero Tamminen nokia 2008-08-05 14:49:33 UTC
Daniel handles X server related things.
Comment 6 Ryan Abel maemo.org 2008-08-16 04:33:25 UTC
(In reply to comment #5)
> Daniel handles X server related things.
> 

Would it be useful to open a second bug for just the kernel stuff and re-task
this for just the x-server?
Comment 7 luarvique (reporter) 2008-10-09 18:01:44 UTC
Created an attachment (id=961) [details]
Xomap server patch
Comment 8 luarvique (reporter) 2008-10-09 18:02:14 UTC
Created an attachment (id=962) [details]
Kernel patch
Comment 9 Andre Klapper maemo.org 2008-10-09 18:23:13 UTC
This is definitely being worked on for Fremantle, hence setting Target
Milestone.
Comment 10 Quim Gil nokia 2008-12-09 11:41:47 UTC
(In reply to comment #9)
> This is definitely being worked on for Fremantle, hence setting Target
> Milestone.


The Fremantle pre-alpha sources are out but Daniel is not anymore in charge of
this, so let me reassign the bug to whatever defaults are.
Comment 11 Quim Gil nokia 2009-01-06 18:14:42 UTC
You have seen that Bug 644 (supporting portrait mode) is FIXED in Fremantle.
I'm still trying to figure out what is the resolution of this request, though.

- At this stage the Diablo release won't take these patches. In this sense this
is a WONTFIX.

- I don't know myself how these patches compare to the enablers of portrait
mode that will be available in Fremantle's Kernel and X server. Will these
enablers provide the same functionality? Are they based on the code contributed
in these patches? Need to ask the developers.

It is possible that considering the request as "take these patches" the
resolution will be also WONTFIX for Fremantle. Still, I wonder whether the
portrait mode supported in Fremantle will solve your problem anyway or not.
Comment 12 Ryan Abel maemo.org 2009-01-06 19:58:37 UTC
(In reply to comment #11)
> - At this stage the Diablo release won't take these patches. In this sense this
> is a WONTFIX.
>

The only purpose of this bug is to see Nokia ship the XServer and Kernel
patches to support rotation. This is a low-impact code-change for them, as no
UI must be provided, and the patches are 100% stable. Advanced Backlight will
provide the front-end for using rotation.

It's really a small thing for us to ask Nokia to do, and it will greatly reduce
the impact on users who wish to install and use rotation on Diablo. If Nokia is
unwilling to do this small thing, though, it's clearly WONTFIX, as it's
entirely useless if it's not shipped for Diablo.
Comment 13 Ryan Abel maemo.org 2009-01-06 20:04:47 UTC
johnx brought up the point that continually ignoring patches isn't a
particularly good way to encourage people to continue contributing.

I'm not sure if you realize exactly how much good will this small thing could
generate for Nokia in the community. . . .
Comment 14 benson 2009-01-06 20:50:37 UTC
(In reply to comment #12)
> The only purpose of this bug is to see Nokia ship the XServer and Kernel
> patches to support rotation. This is a low-impact code-change for them, as no
> UI must be provided, and the patches are 100% stable. Advanced Backlight will
> provide the front-end for using rotation.

A point related to that (already said, but worthy of repetition):

> There is no additional support costs involved for Nokia as screen rotation
> will not be enabled by default, only with the help of an external
> community-provided utility not officially supported by Nokia.

I just don't see the cost to Nokia; why can't/won't they just apply these
patches?
Comment 15 Ryan Abel maemo.org 2009-01-06 21:50:00 UTC
(In reply to comment #14)
> > There is no additional support costs involved for Nokia as screen rotation
> > will not be enabled by default, only with the help of an external
> > community-provided utility not officially supported by Nokia.
> 
> I just don't see the cost to Nokia; why can't/won't they just apply these
> patches?
> 

Because the product managers haven't set it as a required feature, Diablo is
closed for enhancement requests, and Nokia's release pipeline is about as
static and non-agile as it could get.
Comment 16 Quim Gil nokia 2009-01-07 00:19:49 UTC
(In reply to comment #15) 
> Because the product managers haven't set it as a required feature, Diablo is
> closed for enhancement requests, and Nokia's release pipeline is about as
> static and non-agile as it could get.

A complementary way to look at this is: the type of users willing to have these
enablers integrated are most likely the same type of users willing to push and
use other features not supported officially in Diablo. For these reasons they
would push and use Maemo variants / community edition...

No patch comes at no cost and the teams maintaining Kernel and X are
concentrated on putting Fremantle in shape. Screen rotation is as unsupported
as it gets in Diablo and therefore  is not the most bizarre idea not to get
these patches in the official release. And invest the time improving the tools
for creation of community variants.
Comment 17 Paul M 2009-01-07 01:47:21 UTC
Answering Quim Gil

Personally, the whole point of the nokia tablet is to be a flexible platform to
allow a community to use the device in ways not conceived by the original
maker. Nokia have received a lot of "free" help from the community in promoting
the tablet, as well as debugging/testing and developing the tablets - it's a
symbiotic relationship almost.

I would NOT have bought the tablet if, say, it had been S60 or WinCE based,
just as I haven't ever considered an iPhone, but would consider a googlePhone
developer's. I own three tablets (2 x n800, 1 x 770). I also own two Zaurus for
the same reason.

I cannot see why Nokia will not expend the very small effort to apply the patch
for the sake of a little good will, and they might be surprised what benefits
would come along because of it. The tablet must be profitable for Nokia,
otherwise it would have been abandoned, so Nokia should try harder to win
loyalty as there are now competitors in the tablet space.
Comment 18 Andre Klapper maemo.org 2009-01-07 05:41:37 UTC
@Paul M: To me this has been answered already in comment 16.
Let's push community variants (Mer) for such patches, as Nokia seems to
concentrate on Fremantle already...
Comment 19 luarvique (reporter) 2009-01-07 09:30:51 UTC
This essentially kills the original idea of cooperation between Nokia and
external developers on the NIT development. Instead, we are suggested to have a
separate external OS distribution developed independently from Nokia. Oh
well...
Comment 20 Andre Klapper maemo.org 2009-01-07 13:15:00 UTC
(In reply to comment #19)
> This essentially kills the original idea of cooperation between Nokia and
> external developers on the NIT development. Instead, we are suggested to have a
> separate external OS distribution developed independently from Nokia. Oh
> well...

Errrm... no. Please don't generalize. :)
My impression is that Nokia is very interested in cooperation for Fremantle and
is in the process of changing their internal organisation/processes to
successfully get more open here.
Changing internal processes for Diablo though is much harder.
Comment 21 Quim Gil nokia 2009-01-07 13:54:32 UTC
I will resolve this request as WONTFIX.

- Screen rotation was not specified for Diablo and we are not introducing
changes there anymore.
- Portrait mode is officially supported in Fremantle. Feedback and patches
related to the new code released are welcome.
- Instead of trying to inject this patch in the official Diablo release, we
prefer to invest our time improving the processes and tools for the community
to create their own customized releases.

Some additional comments:

(In reply to comment #17)
> Personally, the whole point of the nokia tablet is to be a flexible platform to
> allow a community to use the device in ways not conceived by the original
> maker.

And you can indeed do so in most cases. But one thing is to be able to create
variants at will, another one is to get patches accepted to the official
release.

> I cannot see why Nokia will not expend the very small effort to apply the patch
> for the sake of a little good will, and they might be surprised what benefits
> would come along because of it.

Again, the good will is shown in the effort we are putting allowing the
community to play as much as they wish with the platform.

There are reasons to think that a patch like this would be rejected from trunk
by the maintainers of complex and agile, open and community based projects:

- It's a patch on an unsupported feature. The feature itself makes total sense,
and we have committed to integrate it in the platform - but in Fremantle
onwards. If you say that Maemo hasn't got a good policy or infrastructure for
handling backports and keep pushing older releases I can only agree with that.

- It's a patch that came late. By the time this patch was submitted Diablo was
in maintenance mode, taking bugs and having the door open to enhancements to
current features. It's surely not your fault, since we haven't got a solid
process for unstable platform releases until Fremantle (and still more can be
done and will be done in Harmattan). If you say that Maemo should release
sooner and more often, again I can only agree with you.

One additional element to consider is whether the potential users of these
rotation enables won't be more interested in the Fremantle community edition
for OMAP2 devices anyway. In that context, doesn't make more sense to build on
top of the officially supported Fremantle enablers?

(In reply to comment #19)
> This essentially kills the original idea of cooperation between Nokia and
> external developers on the NIT development. Instead, we are suggested to have a
> separate external OS distribution developed independently from Nokia. Oh
> well...

Maemo variants, community edition and I bet even Mer are as separate external
OS from Maemo as Debian Blends are from Debian and Ubuntu derivatives are for
Ubuntu. We see them as complementary efforts and not as competitive efforts. 

They, for instance, can take patches like this and play with them - even if
Nokia thinks they don'e make much sense to have integrated in commercial and
officially supported releases for consumer products.
Comment 22 Faheem Pervez maemo.org 2009-01-07 17:42:45 UTC
WONTFIX? Surprise, surprise.

It is one thing asking Nokia to do something that may be costly for the
business but not being bothered to run "patch", which isn't the most time
consuming thing in the world, smells of BS to be honest.

Please don't say that you cannot risk it because the patches *are* stable and
lets face it, once Fremantle is out, you aren't going to going to spend time
fixing Diablo just like Bora wasn't updated once Chinook was released. I can
see why you don't want to implement new features for Diablo from Fremantle but
I fail to have the same reasoning when the feature has *already* been
implemented, properly (a long time before Nokia was able to do it), and Nokia
are refusing to apply the patch. That makes me think Nokia is being
intentionally obnoxious for the hell of it.
Comment 23 Sebastiaan Lauwers 2009-01-07 18:37:35 UTC
I don't see what all the fuss is about quite frankly. The only obnoxious people
in this thread are those who keep arguing that Nokia is to blame because they
took the decision not to add a feature to a version of their software that is
going to see a major update soon.

From a business stand point, it makes perfect sense for Nokia to tell the
community to "tough it up". I suspect that at this stage, Diablo is in a
code-freeze status, and it would be idiotic for anyone to try and change that.
The only things that will be supported are major issues, and I don't see
anything wrong with that.

The rotation feature was never part of the feature list. There are already
extremely easy ways to add support for this, thanks to loads of work of a lot
of people. I will just quote someone who posted on this very thread, as it
quite applies to this issue as well: "Did it say it supported it on the box
when you bought it? No, so stop whining about it."

If Fremantle happens to not be compatible with the n8x0 devices, then turn your
attention to Mer, as we all know that Diablo support will die out pretty soon.
If it does support the n8x0 devices, rejoice, you'll have your rotation support
natively.

PS: Don't take the flamebait
Comment 24 Ryan Abel maemo.org 2009-01-07 23:27:56 UTC
(In reply to comment #23)
> The rotation feature was never part of the feature list. There are already
> extremely easy ways to add support for this, thanks to loads of work of a lot
> of people.
>

Well, the problem is is that they really _aren't_ very easy. It requires a lot
of fiddling with packaging to be sure not to break SSU, it requires new
packages every time Nokia pushes an SSU update (which since we receive no
pre-notification of leaves the community scrambling to update the kernel and
users without rotation support for several days), and requires users to
reinstall the packages again and again after every update. Since this can't be
handled through the Application Manager, this is a very complicated process for
most people.

Now, if Nokia would do integrate these patches into the officially provided
kernel and xserver, none of this work would be required, rotation support would
be as simple to enable as installing Advanced Backlight, and Nokia would gain a
LOT of (much needed, I might add) respect from the Maemo Community. It's a win
for everybody, really, for only a modest amount of work from Nokia's side.
Comment 25 Quim Gil nokia 2009-01-08 16:17:11 UTC
(In reply to comment #24)
> it requires new
> packages every time Nokia pushes an SSU update (which since we receive no
> pre-notification of leaves the community scrambling to update the kernel and
> users without rotation support for several days)

Solutions for this:

- Nokia releases beta SSU a couple of weeks before a planned SSU.
- Kernel, Xserver and other OSS are developed openly so everybody can follow
relevant changes anyway.

Working on both, although targetting Fremantle.

> and requires users to
> reinstall the packages again and again after every update. 

fwiw we don't expect to touch Diablo's low layers anymore, unless strictly
needed.

> Since this can't be
> handled through the Application Manager, this is a very complicated process for
> most people.

It's a question of perspectives. Some people see that it's easy for Nokia to
commit these patches and ship them in an official release, while it's more
difficult for users and third parties to handle this unsupported feature-
Others see it the other way around...

> and Nokia would gain a
> LOT of (much needed, I might add) respect from the Maemo Community.

This is my opinion, but I believe the respect is better gained delivering an
impressive Fremantle including open development and beta releases. There are
many little things we could still do for Diablo but they would take resources
and concentration from the very demanding Fremantle.
Comment 26 Ryan Abel maemo.org 2009-01-08 21:29:13 UTC
(In reply to comment #25)
> This is my opinion, but I believe the respect is better gained delivering an
> impressive Fremantle including open development and beta releases. There are
> many little things we could still do for Diablo but they would take resources
> and concentration from the very demanding Fremantle.
> 

The problem here is that in the mean time while we wait for all these great
things Fremantle is supposedly going to bring, that respect is steadily ebbing
away. . . .
Comment 27 tz 2009-01-09 00:49:32 UTC
Let me focus on this because it is a difference between Canonical/Ubuntu and
Nokia/Maemo.

I can download and play with a fully installable Jaunty Jackelope today, though
only Intrepid is fully supported.  There are things being fixed (marked that
way in Launchpad) so I can watch and test.

I won't be able to see more than half of the fixes, enhancements, improvements,
additions, or whatever for Fremantle until the actual release several months
away, and am not sure what the updated SDKs might or might not contain and if
it will be beneficial or more of a headache until the actual Fremantle release.

And I don't think Fremantle has been frozen yet, so the features, APIs, and
other things worry me in a way they wouldn't if I could see an alpha version
running on my existing tablet.

I do trust and believe Fremantle will be great, and although there will be the
usual hiccups, it should make everyone happy when it appears.

But what do we all do until then?  Just stop trying to develop or improve
things?  Wait for that release?  Then after a month or two of excitement
hibernate until Harmattan?

There are a lot of things marked "fixed in Fremantle", even in the open side of
things, apparently including these patches.  But I can't create a shadow-beta
of Fremantle because not everything says how they will be fixed or has code
available, and there may be dependencies.
Comment 28 Ryan Abel maemo.org 2009-01-09 01:29:54 UTC
(In reply to comment #27)
> Let me focus on this because it is a difference between Canonical/Ubuntu and
> Nokia/Maemo.
> 

It's really easy to understand: Canonical doesn't deal with hardware. :)

> But what do we all do until then?  Just stop trying to develop or improve
> things?  Wait for that release?  Then after a month or two of excitement
> hibernate until Harmattan?
> 

You can't see it because, for the most part, it doesn't exist yet. Give it a
few weeks for the proper alpha to be released, then the beta a few more months
after that. You'll have plenty of time to play before the device proper is out,
I'm sure.
Comment 29 Oskar 2009-01-09 11:22:38 UTC
(In reply to comment #19)
> This essentially kills the original idea of cooperation between Nokia and
> external developers on the NIT development. 

Now come on... Patch submitted, patch rejected for whatever obscure reason:
This happens every day in any open project. Even 'normal' FOSS projects not
emcumbered by quixotic managers and marketing people reject patches because
they feel it doesn't fit into their roadmap (or because they don't like your
mail address or whatever).

There's nothing really special about the way Nokia handles this.

I say this even though I would have loved this patch to be applied, voted for
this bug and still think Nokia's decision is wrong. - But it being wrong
doesn't "kill the original idea of cooperation", the same way a rejected patch
for whatever project on sourceforge doesn't make it less open.
Comment 30 luarvique (reporter) 2009-01-09 11:32:39 UTC
(In reply to comment #29)
> Now come on... Patch submitted, patch rejected for whatever obscure reason:
> This happens every day in any open project.
Try finding out how many community patches to core system components (kernel,
drivers, daemons, x11) have been actually accepted and integrated by Nokia.
Comment 31 Eero Tamminen nokia 2009-01-09 12:00:46 UTC
(In reply to comment #30)
> (In reply to comment #29)
> > Now come on... Patch submitted, patch rejected for whatever obscure reason:
> > This happens every day in any open project.
> Try finding out how many community patches to core system components (kernel,
> drivers, daemons, x11) have been actually accepted and integrated by Nokia.

They're easy to find, the bugs with patches are marked with "patch" keyword and
currently there are 71 of them.  About half of them are open, slightly less
fixed and couple of them are marked as invalid, worksforme or wontfix.  Some of
the patches are good, many of them are just small kludges, for obsolete[1]
versions of the software.

[1] In 770 and early N800 times the problem was our handling of Bugzilla, but
then Quim hired Andre to look after this.

The problem in N810 times was our process where 3rd parties could participate
only when those major release had entered the bugfix mode (Diablo has been in
bugfix mode since June, no new features accepted) and internal work moved to
newer versions (in the case of X server, freedesktop.org GIT head). 

This is being fixed in Fremantle, the platform code and alpha & beta releases
get out long before the release, like in other Linux distributions.

Not having hardware to test it still makes things more awkward for 3rd parties
though.
Comment 32 Quim Gil nokia 2009-01-09 16:32:18 UTC
This is getting off-topic and this interesting discussion could be better
handled in a more generic place.

Let me only answer to the Ubuntu/Maemo comparison. 

Canonical/Ubuntu are very, very good at integrating many pieces mostly
developed and available somewhere, offering it to end user for installation in
publicly available hardware.  

Instead, Nokia develops quite a lot in-house, even on open source components
handled by community projects. A noticeable percentage of this development
brings features that might be considered new in the mobile context (or the way
of implementing it). And quite often we are targetting this development to new
hardware non launched yet. Finally, just because Maemo has de Nokia label
behind, everything we do might have a sudden ressonance in the media and the
industry.

All this defines a rather different context for the development of the Maemo
platform. still, we agree there is room for improvement, transparency and
collaboration. The Fremantle release process still needs many improvements but
leaves time and chances to integrate community patches when is the best time to
submit and review them.
Comment 33 Lucas Maneos 2009-10-22 07:57:29 UTC
Marking patches of interest to Diablo (Maemo4) community updates, please excuse
the noise.