Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,732,428 Members 47,093 Now Online
XDA Developers Android and Mobile Development Forum

[Q] Kernel 3.0 Development?

Tip us?
 
soshite
Old
#1  
soshite's Avatar
Member - OP
Thanks Meter 26
Posts: 76
Join Date: Feb 2012
Location: Layton
Default [Q] Kernel 3.0 Development?

So, my question is, why do we want the 3.0 Kernel for Nook Tablet again? From what I recall, there were absolutely no changes from kernel 2.6 to 3.0, other than the naming. Only the "alpha-manliness", and the shuffle of old drivers or something along those lines.

Any Ducati stuff is provided in acclaim_update.zip isn't it?

Anyways, if someone could answer that, that'd be great.
 
Prof. Penguin
Old
#2  
Junior Member
Thanks Meter 9
Posts: 16
Join Date: Apr 2012
Ok, I am not part of the dev team and I got my NT too late to have read the original reasoning behind development of a 3.0 kernel but after a bit of research I think I may have at least part of the picture.

The main reason for the development of a 3.0 kernel is to gain access to the Ducati hardware integrated into the OMAP 4430 that the NT uses. With the 2.6 kernel we can use only the dual core Cortex A9 part of the processor but if we can develop a Ducati driver it will allow use to use the Cortex M3 dual core (four cores total) for hardware video acceleration.

This is proving to be a challenge because TI will not release the source for the Ducati related kernel elements; they will only give us a binary version which is crippled for our device because it uses the wrong watchdog timer (GPtimer 11 vs GPtimer 10 which we need).

This all requires Kernel 3.0 because the binary for Ducati is built using this kernel. Aside from that, ICS is built for the 3.0 kernel branch and we should be keeping up (if not one step ahead) if possible.

That is what I've gotten so far but if any devs want to step in and correct, clarify, or add anything else, please feel free. Thanks guys for all your hard work!
The Following 4 Users Say Thank You to Prof. Penguin For This Useful Post: [ Click to Expand ]
 
Demetris
Old
(Last edited by Demetris; 25th April 2012 at 05:14 PM.)
#3  
Demetris's Avatar
Recognized Developer
Thanks Meter 6099
Posts: 2,203
Join Date: Aug 2008
Location: Limassol

 
DONATE TO ME
Android ICS v4 was build upon kernel v3 and also the framework (api's)
It provides some elemental changes over Gingerbread like HWA of the gui so in plain words it takes the burden off the cpu and uses the gpu like Nvidia VDPAU (Video Decode and Presentation API for Unix)
http://en.wikipedia.org/wiki/VDPAU
And Windows DXVA V2
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
http://en.wikipedia.org/wiki/DirectX_Video_Acceleration
Hardware-accelerated 2D drawing

All Android-powered devices running Android 4.0 are required to support hardware-accelerated 2D drawing. Developers can take advantage of this to add great UI effects while maintaining optimal performance on high-resolution screens, even on phones. For example, developers can rely on accelerated scaling, rotation, and other 2D operations, as well as accelerated UI components such as TextureView and compositing modes such as filtering, blending, and opacity.
As everyone thinks that no changes where made on kernel transportation to v3 from 2.6, later on many arm optimizations where sync to git from different sources that help to make the v3 kernel more feature full over v2.6.
For starters,
Linaro is pushing more and more advancements to the git for v3.
Ubuntu decided to support arm hardware in Server and Userbase because of those changes.
They are putting out a Plasma tablet with Arm Cortex A9 cpu 512mb Ram with kde Plasma interface as well as pushing theirs code onto the git also.
So in the v3 kernel we see things done right.
Another proof that kernel v3 done miracles to arm is the XBMC project.
Now we have an xbmc version for arm also.
This is no coincidence at all.
The Following 3 Users Say Thank You to Demetris For This Useful Post: [ Click to Expand ]
 
boomn
Old
#4  
Senior Member
Thanks Meter 83
Posts: 272
Join Date: Feb 2011
An important factor to all this is that Android does not run on a stock Linux kernel. The source code for each Android release also includes a large number of Android-specific changes to the Linux kernel, including custom features and even entire subsystems. Each release of the Android OS is developed hand-in-hand with a specific kernel version and its changes, and ICS was developed around a modified 3.0.1 kernel. Using an older kernel version could potentially require work in patching newer changes into an old kernel or hacking in workarounds instead of just focusing on drivers. This is why most ROMs aren't just jumping straight to the newest Linux 3.3 either. I don't know any specifics about what changes are important though

Many drivers available from all these outside sources have been built around this same Android 3.0.1 kernel version too, so the chances of issues are much smaller if you stick to the same version

Also, to clarify about the Linux numbering: you're correct that the 3.0 version itself didn't include any big changes over 2.6.39 so as to keep the focus on simply replacing "2.6" with "3" while sticking with the same development process. However since they started the 2.6 branch many years ago they have constantly added new features, new frameworks, and all kinds of significant changes in the 2.6.X/3.X sub-versions as the code became ready. There wasn't simply a 2.6 kernel there were many 2.6 kernels, and it changed a lot over time from the initial 2.6.0 version just as it continues to evolve with each 3.X version
The Following 2 Users Say Thank You to boomn For This Useful Post: [ Click to Expand ]
 
soshite
Old
#5  
soshite's Avatar
Member - OP
Thanks Meter 26
Posts: 76
Join Date: Feb 2012
Location: Layton
Quote:
Originally Posted by demetris_I View Post
Android ICS v4 was build upon kernel v3 and also the framework (api's)
It provides some elemental changes over Gingerbread like HWA of the gui so in plain words it takes the burden off the cpu and uses the gpu like Nvidia VDPAU (Video Decode and Presentation API for Unix)
http://en.wikipedia.org/wiki/VDPAU
And Windows DXVA V2
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
http://en.wikipedia.org/wiki/DirectX_Video_Acceleration
Hardware-accelerated 2D drawing

All Android-powered devices running Android 4.0 are required to support hardware-accelerated 2D drawing. Developers can take advantage of this to add great UI effects while maintaining optimal performance on high-resolution screens, even on phones. For example, developers can rely on accelerated scaling, rotation, and other 2D operations, as well as accelerated UI components such as TextureView and compositing modes such as filtering, blending, and opacity.
As everyone thinks that no changes where made on kernel transportation to v3 from 2.6, later on many arm optimizations where sync to git from different sources that help to make the v3 kernel more feature full over v2.6.
For starters,
Linaro is pushing more and more advancements to the git for v3.
Ubuntu decided to support arm hardware in Server and Userbase because of those changes.
They are putting out a Plasma tablet with Arm Cortex A9 cpu 512mb Ram with kde Plasma interface as well as pushing theirs code onto the git also.
So in the v3 kernel we see things done right.
Another proof that kernel v3 done miracles to arm is the XBMC project.
Now we have an xbmc version for arm also.
This is no coincidence at all.
Sounds good. But the nook Tablet is running Gingerbread, and it gets Ducati features. Doesn't that mean a 2.6 Kernel suffices the Ducati Susbsystem? Does moving to Kernel 3.0.x make it easier to crack Ducati? Hmm.
 
boomn
Old
(Last edited by boomn; 27th April 2012 at 11:23 PM.)
#6  
Senior Member
Thanks Meter 83
Posts: 272
Join Date: Feb 2011
Quote:
Originally Posted by so****e View Post
Sounds good. But the nook Tablet is running Gingerbread, and it gets Ducati features. Doesn't that mean a 2.6 Kernel suffices the Ducati Susbsystem? Does moving to Kernel 3.0.x make it easier to crack Ducati? Hmm.
Ducati wasn't the point because as you pointed out it already works with the original kernel, and it not working yet with this 3.0 kernel is an unfortunate side effect of the real goal.

Moving to a newer Android kernel apparently makes it much easier to get proper graphics acceleration working for apps and general user interface components. This hardware acceleration of the UI is why ICS can feel so much smoother than Honeycomb or Gingerbread. Without the proper kernel I think they have to resort to dirtier hacks into the rest of ICS to make it run properly. I'm admittedly a little fuzzy on the details though
 
Demetris
Old
#7  
Demetris's Avatar
Recognized Developer
Thanks Meter 6099
Posts: 2,203
Join Date: Aug 2008
Location: Limassol

 
DONATE TO ME
Lets just say that moving to Kernel v3 will make full use of our hardware, something GB doesn't do right now.
 
Aleq
Old
#8  
Aleq's Avatar
Senior Member
Thanks Meter 85
Posts: 211
Join Date: Apr 2008
Quote:
Originally Posted by boomn View Post
This hardware acceleration of the UI is why ICS can feel so much smoother than Honeycomb or Gingerbread.
AFAIK Honeycomb has already the UI acceleration. But I haven't had any device with HC, is ICS really much smoother then HC? I didn't think so.
[GUIDE][JB4.2+]Backup/Restore app data of all Multi-User Accounts in Jelly Bean 4.2+
My enhanced/fixed version of Sztupy's ADB FileSystem plugin for Total Commander
CM9+ BatteryMod Theme Holo2

SGS4 (i9505) - Google Edition ROM
Nexus 10 - Stock KitKat
SGS2 (i9100) - CM10.1
B&N naNOOK Tablet - CM10.2
 
TheForceUnleashed
Old
#9  
TheForceUnleashed's Avatar
Senior Member
Thanks Meter 234
Posts: 364
Join Date: Feb 2012
Location: Louisiana
Quote:
Originally Posted by Aleq View Post
AFAIK Honeycomb has already the UI acceleration. But I haven't had any device with HC, is ICS really much smoother then HC? I didn't think so.
The thing is, Honeycomb is really heavy on the device. Honeycomb would be slower than ICS, as it would be ported and contains more contents than ICS. ICS was made to be the faster successor to HC.
Droid Razr M (CM11.0 4.4.3)
Nook Tablet (AOKP 4.4.2)
Nexus 5 (AOSP 4.4.3)
 
boomn
Old
#10  
Senior Member
Thanks Meter 83
Posts: 272
Join Date: Feb 2011
Quote:
Originally Posted by Aleq View Post
AFAIK Honeycomb has already the UI acceleration. But I haven't had any device with HC, is ICS really much smoother then HC? I didn't think so.
I was mistaken and you are correct. However, something under the hood was definitely changed or tweaked in regards to acceleration and how it is used because ICS does feel much smoother and more responsive throughout than Honeycomb did

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes