• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!
  • Fill out your device list and let everyone know which phones you have!    Edit Your Device Inventory

[Kernel][CM7.2]For MiRaGe

Search This thread

thewaywardgeek013

Senior Member
May 31, 2012
105
16
Your choice, the stock mrg666 kernel will work. Probably any of the 3 I built will work as well with the 070512 Mirage build.



The 3 kernels are snapshots in time of 3 mrg666 stock kernels with my changes listed. The 7/1 kernel does not have a 256Hz refresh rate. I'd be glad to make one for you if you or others are interested. The increased refresh rate didn't do anything for me, but a 16 bit frame buffer and a different optimization did.

Frank

What "DIFFERENT OPTIMIZATION" are you referring to?
 

bbernardini

Senior Member
Jun 6, 2011
235
28
Anybody running this with the latest Mirage kang? I keep getting SODs, and I'm not sure if it's the ROM, the included kernel, or something else entirely.
 

bbernardini

Senior Member
Jun 6, 2011
235
28
I downloaded both the 07302012 CM7.2 and kernel from first post (not the 256Hz) from xda and installed both as well as the wifi driver that avoids SOD. CM7 is booting. Which kernel did you use?

Frank

The same. I just redownloaded the kernel, so I'll try it again. Which wifi driver avoids SOD? For some reason, I thought that fix had been incorporated into the Mirage ROM already.
 

aegrotatio

Senior Member
Sep 9, 2011
102
7
Wow, these are really incredible, especially the 256Hz version. I'm not sure how or why but my live backgrounds are smooth as silk on my Nook Color with these kernels.

What I'm wondering is how these could be applied to the CM9 and CM10 builds for even more high-quality, high-performance Nook Color fun.

Thanks in advance!!

Oh, and, the WiFi SOD module patch is still separate, and still required, to avoid the sleep of death problem, I guess.
 
Last edited:

frankusb

Senior Member
Mar 8, 2011
281
153
What I'm wondering is how these could be applied to the CM9 and CM10 builds for even more high-quality, high-performance Nook Color fun.

Oh, and, the WiFi SOD module patch is still separate, and still required, to avoid the sleep of death problem, I guess.

CM9 and CM10 don't support 16 bit frame buffers AFAIK. They could maybe benefit from using the compiler optimization changes (optimize for speed rather than size).

Yes, the wifi module is separate from the kernel. There are two wifi changes, one in the kernel (included here) and the other in the wifi driver itself. Using the combination has eliminated all SODs for me.

Frank
 

frankusb

Senior Member
Mar 8, 2011
281
153
New update from mgr666! still updating the kernel?

I could, but the differences have diminished since he finally turned on speed optimization. The remaining differences are: 16 bit frame buffer and the higher backlight refresh frequency option.

Also, I don't run CM7 any more so I could not test easily. And it doesn't appear he's updated his github with the wifi fix.

Frank
 

Top Liked Posts

  • There are no posts matching your filters.
  • 12
    Hi,

    I've built some kernels that can be applied to the MiRaGe CM7 build. Below are the changes of each kernel build.

    The 16 BPP frame buffer uses 16 bits per pixel instead of 32 bits per pixel. This reduces the amount of memory used for the screen frame buffer. It also means that when Android updates the screen, it has to move half the amount of data. This has the potential to increase performance. The potential downside is color banding. Using fewer bits for each pixel reduces the number of colors that can be displayed. I haven't noticed a difference in how the screen looks.

    Compiling the kernel for speed versus size tells the compiler to use more memory if it will make the code run faster. This tradeoff uses less than 256k more memory (the Nook has 524288k) for the kernel.

    By default, the backlight is turned on and off at a base frequency of 128 times per second. If you are at 50% brightness it will be turned on and off 128 times in one second. The 256Hz kernel doubles the rate at which the backlight is turned on and off as some people can see the backlight flashing at 128Hz. Since the switching is done in an interrupt to the processor, there is more overhead at the higher frequency so it's not a free change. Only use if the default screen seems to flicker.

    encore_kernel_07302012.zip:
    - 16 BPP frame buffer
    - Compiled with -O2 instead of -Os (speed instead of size)

    encore_kernel_256Hz_07302012.zip:
    - same as above and 256Hz backlight instead of 128Hz

    encore_kernel_07122012.zip:
    - 16 BPP frame buffer
    - Compiled with -O2 instead of -Os (speed instead of size)

    encore_kernel_256Hz_07122012.zip:
    - same as above and 256Hz backlight instead of 128Hz

    Attached are CWM zips you can apply to probably any recent MiRaGe build.

    Frank
    3
    The kernel is the engine that drives your rom. It is the core of the system, responsible for drivers, modules and managing the communication between hardware and software, among other responsibilities. You already have one, you just don't have this one made just for you.

    Looks like frankusb has put it into a flashable zip, so just flash it over your Mirage rom.

    Alternatively, for emmc installs, you could just take out the uImage file from the zip, rename it to kernel and put it in any rom you want.

    If you have an sd install, just replace the uImage in your boot partition with his.

    ------------------------------------------------------------------------------------------

    off-topic

    I've been following the 3.x kernel thread over at the Nook Tablet forum, as well as building and configuring my own from keyodi's source.

    I'm not very good at it yet, though, and that's kind. My kernel builds tend to boot and I was able to enable the NAT stuff on my own (before the new .config was pushed) but that's as far as I have gone with it.

    I wouldn't mind having a thread where kernel development was discussed, although frankusb, maybe you would rather keep the discussion on your kernel.

    Here is fattire's post at the acclaim forum, urging people to try and build their own kernel. (with links and guides)
    1
    For the uninitiated, what does this do? (layman's terms)

    - The LEDs that bring light to the screen flash twice faster, so it should be less noticeable, especially at lower brightness levels and a darker room. You might have noticed that cameras (see Youtube) also see the Nook Color flickering.
    - The screen is now updated at 60Hz instead of 44 frames per second. Most laptop/desktop LCDs are run at 60Hz. Can make it possible to have smoother graphics. Does give the programs a harder time to keep up if they try to do this, since they need to push 40% more image data per second.
    - With half the bits (32 vs 16) to push to the display, graphics get slightly faster. I believe this is optional in Cyanogenmod settings.

    ---------- Post added at 07:47 AM ---------- Previous post was at 07:31 AM ----------

    Over from the Mirage main topic:
    I'm talking about the backlight. On a static image I can distinctly see the corners of the display in a stroboscopic effect when I move the Nook Color by hand. As if the image quickly disappears and then time travels to another spot ;). It's quite annoying and possibly tiring.

    (Probably spaced ~78mm)
    With this kernel build I now see the flickering at a reduced distance when I move the nook color by hand. It does look like half the distance, like it should :p

    Still noticeable though.

    There is a bug now, that ever so often 100% brightness in RootDim puts the backlight brightness all the way down. I wonder if the unmodified driver has a similar race condition in writing the value to the PWM divider register.
    1
    I'm having trouble downloading the 7-1 kernel from my desktop (404 not found). Mirror or link fix, please?

    Weird - uploaded to a file host as well.

    Frank
    1
    Just installed Mirage 070512 and now confused as to which kernel to go with. Do I stick with the kernel from Mirage or do I flash one of the kernels in the OP?

    Your choice, the stock mrg666 kernel will work. Probably any of the 3 I built will work as well with the 070512 Mirage build.

    If OP, what are differences of the 3 kernels? I like the idea of 256, but not sure if 7/1 kernel also has 256? Appreciate any advice on this.

    The 3 kernels are snapshots in time of 3 mrg666 stock kernels with my changes listed. The 7/1 kernel does not have a 256Hz refresh rate. I'd be glad to make one for you if you or others are interested. The increased refresh rate didn't do anything for me, but a 16 bit frame buffer and a different optimization did.

    Frank