Monday, May 18, 2009

Booboo Linux Code and quick start guide posted!!

Required files here and quick start guide here!

I'll be posting more info as time permits.

Help needed on building a mipsel-linux uclibc toolchain.

17 comments :

  1. Awesome! Were the toolchains provided not good enough? There were 2 provided, the gcc412 glibc that you talk about as well as the mipsel-4.1.2-nopic.tar.bz2. I had previously compiled a toolchain from sources anyway following the documentation. Just wondering what more you were needing

    ReplyDelete
  2. The toolchain provided by Ingenic is OK, but memory is a scarce resource in the A320 and we can save quite a lot by using uclibc instread of the standard libc.

    It is just an optimization and any programs written today using the Ingenic toolchain will compile without modifications with the uclibc toolchain.

    ReplyDelete
  3. Great. Many thanks. Downloading :-)

    It would be a bit easier to have just patch against ingenic linux kernel and not full kernel source in versioning system. Will take some time and network bandwidth to check it out via SVN. But nevermind.

    I'll try to play with setting the display to native 240x320 resolution and see how it helps with (diagonal) tearing. I think we should have two resolutions provided by kernel and available to SDL - 320x240 and 240x320. The latter could be useful for some emulators which run natively in portrait or maybe for video playback without tearing too (I guess video could be decoded directly into rotated frame without big speed penalty).

    ReplyDelete
  4. And BTW, the wiki QuickStart page says "usbtool - Get a binary from the downloads section" but there is no usbtool binary in downloads section

    ReplyDelete
  5. Wow, this is awesome, hope anyone can be of service (unfortnantly not a developer myself)!

    ReplyDelete
  6. Ahh, Ill start looking in to uclibc then. Luckily I work with one of the main contributors, so maybe he can help me out a bit.

    ReplyDelete
  7. Booboo, do you have any of your kernel changes in patch form? Im building with the uclibc build tool and it will create an entire rootfs and kernel in one shot and right now I only have it patching the kernel with the ingenic patches. Of course at this point it isnt really necessary since it isnt booting off of the rootfs, but for the future it may be good.

    ReplyDelete
  8. If you want the uclibc toolchain that seems to compile completely, I havent gotten to test it out yet but I can upload it somewhere tomorrow. I have the uclibc buildtool creating a full rootfs that includes sdl, java, alsa and a few other things. It takes a while so Im still working a few kinks out of it but the toolchain itself doesnt have any problems finishing. It is based off of the kernel plus the ingenic patches, so it may need some more of your changes for the lcd, gpios etc to the headers.

    ReplyDelete
  9. Tearing/resolution:

    I think tearing is cause by a lack of sync between the DMA data transfers from the A320 to the LCD memory and the LCD controller refresh. This is the first issu I'll be working on in the next days.

    Regarding resolution, I guess you can provide native portrair resolution if you do the conversion in the framebuffer driver code, but that would take some time. I haven't looked at the LCD datasheet, do you mean it supports portrait mode?.

    ReplyDelete
  10. usbtool binary uploaded. Sorry, forgot it.

    Regarding the patch, yeah... I need svn for everyday work, plus that way anyone can see change history and what's being modified in each revision. I'll make patches available too.

    ReplyDelete
  11. The Ingenic alsa driver DOES NOT WORK. The oss driver does, so that's what I'm using.

    alsa has some features that oss has not and that are absolutely necessary for a modern desktop OS, like simultaneous access from multiple processes. However, the A320 is not a desktop system, and since by design audio is going to be used by only one process, I think oss should do (plus the interface and rootfs setup is way simpler than alsa).

    The only drawback I see is that some programs may not support oss for sound output...

    ReplyDelete
  12. Actually it is possible for an OSS driver to be used by mulptle processes. The OSS emu10k1 driver supports this if I'm not mistaken. It could be handy for listening to music while playing a simple game that does not require a lot of processing power (sudoku, tetris, columns, etc.)

    ReplyDelete
  13. This comment has been removed by the author.

    ReplyDelete
  14. Either way the uclibc toolchain builds, the rootfs is just secondary

    ReplyDelete
  15. Booboo, do you have any info on setting up the serial console? I have my rootfs on the dingoo and it boots up but it has trouble starting the serial console. Ive tried using your existing rootfs as an example but I think Im just missing something.
    Thanks

    ReplyDelete
  16. Hi all, I've set up forum.dingoo-scene.com which is dedicated to the discussion of Booboo Linux. Feel free to go there, or carry on here. Cheers all!

    ReplyDelete
  17. Fantastic BooBoo lhe Pergunto

    es possible usar linux de dingoo en PMP Gemei x760+?

    si?

    ReplyDelete