Dingoonity.org

Other Portable Consoles => SPMP8000 Devices => Topic started by: Meneer Jansen on June 24, 2010, 02:47:56 pm

Title: Linux on the LetCool Gamestation?
Post by: Meneer Jansen on June 24, 2010, 02:47:56 pm
I know there already are discussions about this. But I personally would like to see it in one single topic. Hope y'all don't mind. :)

Title: Re: Linux on the LetCool Gamestation?
Post by: darfgarf on June 24, 2010, 03:01:15 pm
1:most probably, just needs someone to sit down with it and a few bits of equipment, hardest bit would be dissassembling the lcd controller (assuming there's no documentation to help)
2:most probably
3:most probably
4:most probably (eventually)
5:who cares, let the person who gets it running decide that  ;D
Title: Re: Linux on the LetCool Gamestation?
Post by: davdud101 on June 24, 2010, 03:23:58 pm
The Letcool seems to be increasing in popularity here, and maybe I should get one to not only test it out, but also to save 10 bucks. Linux on LetCool seems to be possible. Did you see the thing on Chinavasion:

■I understand similar portable handhelds can be modified to run Linux, can the Letcool N350JP run Linux?
Maybe. If you are a hobbyist and are interested in porting Linux and other software or emulators to the Letcool N350JP, then please contact us! We would be happy to provide you with support!! Contact Gareth or Daniel at [email protected]

Find a hobbyist, maybe try to get BooBoo back.
Title: Re: Linux on the LetCool Gamestation?
Post by: gibberish on June 24, 2010, 03:53:28 pm
I contacted chinavasion about getting a hold of the source code for the firmware, and about possibly getting some hardware schematics and they basically can't help at all. they said they are meeting with the letcool and jxd manufacturers at some point in the future, but were doubtful they'd be able to get any info from them. perhaps they should go straight to sunplus, but i guess that would be a similar dead end. the chinese don't understand, they think giving away secrets will ruin their business... when dingoo a320 is a case for the exact opposite.

davdud, if you want to play gba/snes/megadrive games then you'd be an idiot to buy a letcool at the moment. the dingoo does these things infinitely better. let the hackers hack away at the letcool first, and then maybe get one at a later date when it works like it is supposed to work.
Title: Re: Linux on the LetCool Gamestation?
Post by: omgmog on June 24, 2010, 03:58:21 pm
As the device already uses RedBoot as a bootloader I think getting some version of Linux onto the device wouldn't be a problem.

Getting device drivers written is another matter though.

I'm still waiting for my breakout board to arrive so I can get a serial connection and access the RedBoot prompt, then we can see where to go from there.
Title: Re: Linux on the LetCool Gamestation?
Post by: Meneer Jansen on June 25, 2010, 02:16:27 pm
Thank you all for the positive news! Wish I'd studied electrotechnics instead of chemistry. :D Then I may have helped w/ reverse engineering hardware specs for drivers.
Title: Re: Linux on the LetCool Gamestation?
Post by: alemaxx on June 26, 2010, 09:50:58 am
As the device already uses RedBoot as a bootloader I think getting some version of Linux onto the device wouldn't be a problem.
It has Redboot but the Redboot version that is installed on the device (at least on mine) doesn't support booting linux directly but I included a little loader stub with the linux code (http://alemaxx.al.funpic.de/spmp8000/sp8lin.tar.bz2)
Getting device drivers written is another matter though.
Indeed, thats going to become a tough task.
I'm still waiting for my breakout board to arrive so I can get a serial connection and access the RedBoot prompt, then we can see where to go from there.
A good idea to get one, did you order one of these FT232x boards?
Thank you all for the positive news! Wish I'd studied electrotechnics instead of chemistry. :D Then I may have helped w/ reverse engineering hardware specs for drivers.
Thats not an excuse! I think Ill post a "Reverse engineering guide for chemists" soon. ;)
Title: Re: Linux on the LetCool Gamestation?
Post by: omgmog on June 26, 2010, 10:42:46 am
A good idea to get one, did you order one of these FT232x boards?

Yep, ordered a "Breakout Board for FT232RL USB to Serial", still waiting for it to arrive though. Think I need to chase up the reseller.
Title: Re: Linux on the LetCool Gamestation?
Post by: jusme on June 27, 2010, 06:27:51 pm
i agree with gibberish on that buy dingoo does everything that you need and see if the talented people out there can get things done on letcool because at moment the letcool is far behind the dingoo in what it does but maybe one day???
Title: Re: Linux on the LetCool Gamestation?
Post by: renejr902 on July 27, 2010, 02:51:24 am
im interested to read more about that topic. is it the only topic about linux for the Letcool ? any update about that ?
thanks for answer

note: 2.8'' screen size is too small. prefer the 3.5'' of Letcool
Title: Re: Linux on the LetCool Gamestation?
Post by: Swift_Hawk on September 21, 2010, 03:28:33 am
I feel like I'm kicking a dead dog but is there any more info on this?

Note, I'm no expert on the matter or programmer, but I'm assuming the problem is trying to find out what driver do what. If I understand correctly,which I may not, the Letcool boots from Redboot (Which is open-source) so wouldn't the image file be dumpable and violia! NAND files/folders?

Again, I'm assuming that NAND programming is like some sort of OS or is it more comparable to BiOS programming which is a horse of a different color?
Title: Re: Linux on the LetCool Gamestation?
Post by: 1wiierdguy on November 18, 2010, 02:15:14 am
 This is a response from booboo on the Dingux site about Linux on Letcool.


"No way. The device is cool, but there is no information at all on the SPMP8000 SoC, and reverse engineering all the peripheals is not an option.

Remember: with the A320 I started with a working linux port for the JZ4732, and just had to reverse engineer GPIO, some LCD stuff and little more. There were also tools to upload code via USB. Ingenic did already support linux, and later they even released datasheets and programmer's manual for the JZ4732 (it sucked a bit, but was quite complete).

So, unless we get somehing to start with, either the source code of the firmware or (better yet) the full datasheet and programmer's manual of the SPMP8000 I wouldn't even remotely hope to have linux running on it anytime."


 There have been no further updates for the .bin format either since the doom and quake ports.
 Is that a fat lady I hear singing for the Letcool.
Title: Re: Linux on the LetCool Gamestation?
Post by: alemaxx on November 23, 2010, 08:24:12 pm
Not really linux related, but I managed to write a tiny tool to upload code while in ROM boot mode (when you hold down some special key while plugging a usb cable into a turned off device). Code can be obtained from here: http://alemaxx.al.funpic.de/spmp8000/romboy.tar.bz2. It uses libusb and is similar to "frmorp" except that it fits another purpose.
If you dont own a serial adapter the only thing you can probably do with this tiny program is to resume normal booting from flash via the "-b" switch.
Title: Re: Linux on the LetCool Gamestation?
Post by: sunnap on May 22, 2011, 05:42:48 pm
For anyone still interested: I have just started a new linux port attempt, as a Google Summer of Code project.
See details and future updates here: http://sunnap.blogspot.com (http://sunnap.blogspot.com)
Title: Re: Linux on the LetCool Gamestation?
Post by: pcercuei on May 22, 2011, 07:52:11 pm
Summer of Code, really? For which organization?

Don't hesitate to come on Freenode/#dingoonity, some kernel gurus are lying there.
Title: Re: Linux on the LetCool Gamestation?
Post by: MValim on May 23, 2011, 05:53:35 pm
Am i really reading this, you are trying to make a linux por for letcool?
WOW man, this is awesome!
If i can support you in something please tell me.
And keep up the good work!
Title: Re: Linux on the LetCool Gamestation?
Post by: booboo on May 25, 2011, 03:07:16 pm
For anyone still interested: I have just started a new linux port attempt, as a Google Summer of Code project.
See details and future updates here: http://sunnap.blogspot.com (http://sunnap.blogspot.com)

Have you got any docs or reference code for the SPMP8000?.

Title: Re: Linux on the LetCool Gamestation?
Post by: Meneer Jansen on May 25, 2011, 04:05:10 pm
Wow. Booboo is here! Any luck yet in porting Dingux/Linux to any of the new batch of Chinese handheld gaming devices? Are you still actively working on it?  :)
Title: Re: Linux on the LetCool Gamestation?
Post by: SilverhawkBR on May 25, 2011, 07:08:49 pm
Wow. Booboo is here! Any luck yet in porting Dingux/Linux to any of the new batch of Chinese handheld gaming devices? Are you still actively working on it?  :)

Yea, at least answer us before disapearing in the dark depts of stuff-coding, please  ???
Title: Re: Linux on the LetCool Gamestation?
Post by: booboo on May 27, 2011, 11:56:00 am
Wow. Booboo is here! Any luck yet in porting Dingux/Linux to any of the new batch of Chinese handheld gaming devices? Are you still actively working on it?  :)

Currently doing some specific work on a JZ4755 based device. While the kernel would be specific to that SoC, the rootfs is getting a nice deal of improvements too, from which the A320 and other older machines should benefit too. As soon as I'm done with this I'll probably update the A320 work, hopefully give another shot to the x760+ (yes, I'm that stubborn and got a logic analyzer for my birthday!), and see if I can progress with the CC1800 too, but that one is though because absolutely all has to be done from scratch based on uncommented (and possibly buggy) code. No docs.
Title: Re: Linux on the LetCool Gamestation?
Post by: Meneer Jansen on May 27, 2011, 03:03:11 pm
Currently doing some specific work on a JZ4755 based device. While the kernel would be specific to that SoC, the rootfs is getting a nice deal of improvements too, from which the A320 and other older machines should benefit too. As soon as I'm done with this I'll probably update the A320 work, hopefully give another shot to the x760+ (yes, I'm that stubborn and got a logic analyzer for my birthday!), and see if I can progress with the CC1800 too, but that one is though because absolutely all has to be done from scratch based on uncommented (and possibly buggy) code. No docs.
Thank you very much for your reply.  :) That keeps my hopes up! I lost my beloved Digoo (aaarrghhh: the thing seems damed for all time: I fried the first one you know... ) and I'm considering a Gemei A330 (http://boards.dingoonity.org/gemei-a330/trying-to-clear-up-the-confusion-too/msg30049/#msg30049) because build quality is better than the Dingoo, which I had to repair and I've had some battery probs that probably fried the first one... I just repaired the left shoulder button and the speaker of me Dingoo and lost it the next week. I might wait for the PSP of my little nephew to become "available" when the sp*iled little @#$%^& gets a NDS-3D for his birthday.  ;)

All the best and good luck w/ Dingux coding!
Title: Re: Linux on the LetCool Gamestation?
Post by: booboo on May 27, 2011, 05:35:12 pm
Currently doing some specific work on a JZ4755 based device. While the kernel would be specific to that SoC, the rootfs is getting a nice deal of improvements too, from which the A320 and other older machines should benefit too. As soon as I'm done with this I'll probably update the A320 work, hopefully give another shot to the x760+ (yes, I'm that stubborn and got a logic analyzer for my birthday!), and see if I can progress with the CC1800 too, but that one is though because absolutely all has to be done from scratch based on uncommented (and possibly buggy) code. No docs.
Thank you very much for your reply.  :) That keeps my hopes up! I lost my beloved Digoo (aaarrghhh: the thing seems damed for all time: I fried the first one you know... ) and I'm considering a Gemei A330 (http://boards.dingoonity.org/gemei-a330/trying-to-clear-up-the-confusion-too/msg30049/#msg30049) because build quality is better than the Dingoo, which I had to repair and I've had some battery probs that probably fried the first one... I just repaired the left shoulder button and the speaker of me Dingoo and lost it the next week. I might wait for the PSP of my little nephew to become "available" when the sp*iled little @#$%^& gets a NDS-3D for his birthday.  ;)

All the best and good luck w/ Dingux coding!

Whatever. Mind replying to the original question?. Do you have any docs or reference source code for the SPMP8000?
Title: Re: Linux on the LetCool Gamestation?
Post by: Robert Claypool on May 30, 2011, 01:30:55 pm
Do I understand correctly that someone compiled a Doom engine for the LetCool? Would that be a place to begin? Would a Linux that uses the native operating system to access the device be an improvement over nothing?
Title: Re: Linux on the LetCool Gamestation?
Post by: pcercuei on May 30, 2011, 03:05:45 pm
Would a Linux that uses the native operating system to access the device be an improvement over nothing?
That's quite a non-sense  ;D
Title: Re: Linux on the LetCool Gamestation?
Post by: Robert Claypool on June 04, 2011, 04:40:59 pm
No, No, it's not:
http://www.colinux.org/
Title: Re: Linux on the LetCool Gamestation?
Post by: pcercuei on June 04, 2011, 05:23:24 pm
I know coLinux. But it runs on Windows, not uCos-II.
Title: Re: Linux on the LetCool Gamestation?
Post by: Robert Claypool on June 04, 2011, 10:42:52 pm
And that makes it nonsense how?
Title: Re: Linux on the LetCool Gamestation?
Post by: alemaxx on June 04, 2011, 11:38:32 pm
I guess it would be possible to hijack the device and use a bin game to load a linux kernel (so basically as way to run your code on the device). But we know how to run code without doing this. It is currently possible to execute code directly from ram after bootup and its also possible to replace the two stages of DRAM Init code as well as the Redboot bootloader. The only thing that that remains unknown is the "filesystem" or partition table that is used to store the firmware image (not the ROFS part).

Btw, the Letcool native OS is ecos based not ucos2.

I strongly support all these linux porting efforts :-)
Title: Re: Linux on the LetCool Gamestation?
Post by: pcercuei on June 05, 2011, 08:54:22 am
And that makes it nonsense how?

Because running an OS inside another OS won't be faster than using the first OS directly.
Title: Re: Linux on the LetCool Gamestation?
Post by: Poligrafowicz on June 05, 2011, 02:08:29 pm
I know coLinux. But it runs on Windows, not uCos-II.

Forgive me to offtopic, but does it work better\faster than Virtual Box?
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 17, 2012, 09:53:44 am
we launched the Linux kernel to SPMP8K

[RedBoot> ^C
g_Cfg_s.redbootCfg:0xc0000004
RedBoot> load -m xmodem -r -b 0x200000
g_Cfg_s.redbootCfg:0xc0000004
CRaw file loaded 0x00200000-0x002b2a0b, assumed entry at 0x00200000
xyzModem - CRC mode, 5717(SOH)/0(STX)/0(CAN) packets, 1 retries
RedBoot> go -c 0x200000
g_Cfg_s.redbootCfg:0xc0000004
+do_go
image sel: 0, image_sel_set: 0
rmvb enable!
Mask interrupts on all channels
ID-CACHE sync and invalidate
set up a temporary context. workspace_end=0x00f00000, entry=0x00200000
switch context to trampoline. workspace_end=0x00efffb0
Uncompressing Linux... done, booting the kernel. Sanoend patch one.
console [ttyS0] enabled
Linux version 2.6.33.1spmp8000 ([email protected]) (gcc version 4.5.2 (Ubuntu/Linaro 4.5
.2-8ubuntu3) ) #9 PREEMPT Fri Aug 17 13:07:00 MSD 2012
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00051176
cacheid_init
CPU: VIVT data cache, VIVT instruction cache
init setup_machine
Machine: SPMP8000 SoC
Warning: bad configuration page, trying to continue
Ignoring unrecognised tag 0x00000000
parse_cmd_line
request_standart_resource
cpu_init
cpu_init_end
Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 2032
Kernel command line:
PID hash table entries: 32 (order: -5, 128 bytes)
Dentry cache hash table entries: 1024 (order: 0, 4096 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
BUG: Bad page state in process swapper  pfn:00180
page:(null) flags:ef9f0000 count:0 mapcount:-442502127 mapping:ea00009a index:ea
0000fa
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:00000000
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000000
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
Disabling lock debugging due to kernel taint
BUG: Bad page state in process swapper  pfn:00181
page:00000020 flags:00030058 count:0 mapcount:0 mapping:000301f4 index:1
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:00000020
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000020
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00182
page:00000040 flags:(null) count:0 mapcount:0 mapping:00080018 index:487ac
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:00000040
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000040
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00183
page:00000060 flags:000483ac count:-509558771 mapcount:0 mapping:00048990 index:
487ac
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:00000060
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000060
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00184
page:00000080 flags:000483b4 count:-516948194 mapcount:0 mapping:000487a4 index:
0
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:00000080
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000080
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00185
page:000000a0 flags:000483ac count:-382871552 mapcount:0 mapping:0004a3cc index:
487ac
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:000000a0
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:000000a0
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00186
page:000000c0 flags:000483ac count:-516948194 mapcount:0 mapping:000487ac index:
487ac
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:000000c0
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:000000c0
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00187
page:000000e0 flags:000483ac count:-516948194 mapcount:0 mapping:000487ac index:
487ac
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:000000e0
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:000000e0
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00188
page:00000100 flags:000483ac count:-516948194 mapcount:0 mapping:000487ac index:
487ac
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:00000100
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000100
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00189
page:00000120 flags:000483ac count:-516948194 mapcount:0 mapping:000487ac index:
487ac
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:00000120
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000120
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:0018a
page:00000140 flags:000483ac count:-516948194 mapcount:0 mapping:(null) index:0
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:00000005 r5:0038a270 r4:00000140
[<00308724>] (dump_stack+0x0/0x1c) from [<0025c124>] (bad_page+0x10c/0x140)
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000140
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
BUG: Bad page state in process swapper  pfn:00190
Internal error: Oops - bad syscall: 970000 [#1] PREEMPT
last sysfs file:
Modules linked in:
CPU: 0    Tainted: G    B       (2.6.33.1spmp8000 #9)
PC is at 0x4
LR is at 0x33bc836c
pc : [<00000004>]    lr : [<33bc836c>]    psr: 000000d3
sp : defb8bfd  ip : 0035be60  fp : 0035bf0c
r10: 00000020  r9 : 0038a398  r8 : 0000000b
r7 : 00000010  r6 : 00000005  r5 : 0038a270  r4 : 00000200
r3 : e58de008  r2 : e24ee004  r1 : 40000004  r0 : 0036700c
Flags: nzcv  IRQs off  FIQs off  Mode SVC_32  ISA ARM  Segment kernel
Control: 0005117e  Table: 00060000  DAC: 00000001
Process swapper (pid: 0, stack limit = 0x0035a260)
Stack: (0xdefb8bfd to 0x0035c000)
Backtrace:
[<0025c018>] (bad_page+0x0/0x140) from [<0025d1e8>] (__free_pages_ok+0x68/0x10c)

 r5:00000000 r4:00000200
[<0025d180>] (__free_pages_ok+0x0/0x10c) from [<0025d54c>] (__free_pages+0x44/0x
48)
[<0025d508>] (__free_pages+0x0/0x48) from [<0021316c>] (__free_pages_bootmem+0x8
4/0x88)
 r4:0021486c
[<002130e8>] (__free_pages_bootmem+0x0/0x88) from [<0020d858>] (free_all_bootmem
_core+0xec/0x200)
[<0020d76c>] (free_all_bootmem_core+0x0/0x200) from [<0020da44>] (free_all_bootm
em_node+0x14/0x18)
[<0020da30>] (free_all_bootmem_node+0x0/0x18) from [<0020a710>] (mem_init+0xf0/0
x204)
[<0020a620>] (mem_init+0x0/0x204) from [<002088a4>] (start_kernel+0x13c/0x290)
 r7:0035d4b8 r6:000110a0 r5:00214408 r4:00366d40
[<00208768>] (start_kernel+0x0/0x290) from [<0020802c>] (__after_proc_init+0x0/0
x14)
 r6:00214838 r5:00367044 r4:00051174
Code: 00000000 00000000 00000000 ef970000 (00000000)
---[ end trace 1b75b31a2719ed1c ]---
Kernel panic - not syncing: Attempted to kill the idle task!
Backtrace:
[<002193fc>] (dump_backtrace+0x0/0x110) from [<0030873c>] (dump_stack+0x18/0x1c)

 r6:0035a000 r5:0000000b r4:00367184
[<00308724>] (dump_stack+0x0/0x1c) from [<00308790>] (panic+0x50/0x12c)
[<00308740>] (panic+0x0/0x12c) from [<0022dabc>] (do_exit+0x68/0x658)
 r3:00000000 r2:0035bce0 r1:40000002 r0:0034027e
 r7:0033e8ba
[<0022da54>] (do_exit+0x0/0x658) from [<002197cc>] (die+0x1e8/0x21c)
 r7:0033e8ba
[<002195e4>] (die+0x0/0x21c) from [<00219854>] (bad_syscall+0x0/0x9c)
 r7:00970000
[<00219800>] (arm_notify_die+0x0/0x54) from [<002198dc>] (bad_syscall+0x88/0x9c)

[<00219854>] (bad_syscall+0x0/0x9c) from [<00219a70>] (arm_syscall+0x2c/0x208)
 r4:00000200
[<00219a44>] (arm_syscall+0x0/0x208) from [<00215ee0>] (ret_fast_syscall+0x0/0x2
8)
 r7:00970000 r6:00000005 r5:0038a270 r4:00000200/td]
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 17, 2012, 11:39:23 am
it happened today

we see a kernel panic, but there are flags and launching modules  8)
this is a big step, leading error correction.
Title: Re: Linux on the LetCool Gamestation?
Post by: dmitry_smagin on August 17, 2012, 12:11:32 pm
Go on, man! Don't lose courage.
Title: Re: Linux on the LetCool Gamestation?
Post by: DisgruntleElf on August 19, 2012, 02:41:45 am
Yes, please keep trying.
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 19, 2012, 03:23:31 pm
HI . frequency will vary from 60 MHz (for music, books and other things) to 416(games, videos, other resource-intensive processes) depending on the load (it will save battery power),added support for cache,
still a lot of work, a lot of problems...  :-[  ::)

PS now you can use in the native OS acceleration processor (the usual procedure of the firmware) to 297000000 Hz or 324000000 Hz :) it can be dangerous because the little studied  8)
My clone of the defender, can not afford it at this trying to JXD1000.
Title: Re: Linux on the LetCool Gamestation?
Post by: dmitry_smagin on August 19, 2012, 05:32:25 pm
I recommend to create your gitgub or google-code account where you can store  your current kernel. Thus everybody will see your work.
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 19, 2012, 08:10:26 pm
if someone wants to get involved can distribute as a torrent, little time  :-\
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 21, 2012, 12:53:02 pm
source code http://www.onlinedisk.ru/file/930896/
WE http://handheld.freeforums.org/linux-spmp8000-f57.html
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 25, 2012, 08:34:37 am
+do_go
image sel: 0, image_sel_set: 0
rmvb enable!
Mask interrupts on all channels
ID-CACHE sync and invalidate
set up a temporary context. workspace_end=0x00f00000, entry=0x00200000
switch context to trampoline. workspace_end=0x00efffb0
Uncompressing Linux... done, booting the kernel.

machine ID --> OK

setup arch --> OK
mm init 1 --> OK
mm init 2 --> OK
setup comand line --> OK
paje alloc init --> OK
jump label init --> OK
mm init --> OK
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 27, 2012, 03:11:27 pm
Hi friends, today we have even more good news

RedBoot> load -m xmodem -r -b 0x200000
CCRaw file loaded 0x00200000-0x002f44ef, assumed entry at 0x00200000
xyzModem - CRC mode, 7818(SOH)/0(STX)/0(CAN) packets, 2 retries
RedBoot> go -c 0x200000
+do_go
image sel: 0, image_sel_set: 0
rmvb enable!
Mask interrupts on all channels
ID-CACHE sync and invalidate
set up a temporary context. workspace_end=0x00f00000, entry=0x00200000
switch context to trampoline. workspace_end=0x00efffb0
Uncompressing Linux... done, booting the kernel.

 machine ID --> OK

Booting Linux on physical CPU 0
Linux version 3.3.8spmp8000 ([email protected]) (gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-
8ubuntu3) ) #33 PREEMPT Mon Aug 27 17:17:11 MSK 2012
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Letcool N350JP

 machine ID --> OK

bootconsole [earlycon0] enabled
Memory policy: ECC disabled, Data cache writeback
On node 0 totalpages: 8192
free_area_init_node: node 0, pgdat c01e0220, node_mem_map c0209000
  Normal zone: 64 pages used for memmap
  Normal zone: 0 pages reserved
  Normal zone: 8128 pages, LIFO batch:0
pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
pcpu-alloc:
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
Kernel command line: console=ttyS0,115200n8 earlyprintk  debug mem=32M
PID hash table entries: 128 (order: -3, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 32MB = 32MB total
Memory: 30344k/30344k available, 2424k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    vmalloc : 0xc2800000 - 0xff000000   ( 968 MB)
    lowmem  : 0xc0000000 - 0xc2000000   (  32 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .text : 0xc0008000 - 0xc01b8000   (1728 kB)
      .init : 0xc01b8000 - 0xc01cf000   (  92 kB)
      .data : 0xc01d0000 - 0xc01e0a00   (  67 kB)
       .bss : 0xc01e0a24 - 0xc02080e4   ( 158 kB)
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:112
time keeping init --> OK
time keeping init --> OK
spmp8000: unable to find timer node in dtbspmp8000: unable to find timer node in
 dtb
Kernel panic - not syncing: spmp8000: unable to find timer node in dtb

Backtrace:
[<c0011f20>] (dump_backtrace+0x0/0x10c) from [<c0154f00>] (dump_stack+0x18/0x1c)

 r6:c01cbcd0 r5:c01e0a40 r4:00000000
[<c0154ee8>] (dump_stack+0x0/0x1c) from [<c0154f88>] (panic+0x84/0x1c8)
[<c0154f04>] (panic+0x0/0x1c8) from [<c01bd450>] (spmp8000_sys_timer_init+0x38/0
x194)
 r3:c01d53e4 r2:c01d53e4 r1:600000d3 r0:c0196c08
 r7:c0249180
[<c01bd418>] (spmp8000_sys_timer_init+0x0/0x194) from [<c01baf0c>] (time_init+0x
28/0x34)
 r7:c0249180 r6:c01cbcd0 r5:c01e0a40 r4:00000001
[<c01baee4>] (time_init+0x0/0x34) from [<c01b86a0>] (start_kernel+0x1a8/0x31c)
[<c01b84f8>] (start_kernel+0x0/0x31c) from [<00008040>] (0x8040)
 r7:c01d3f88 r6:c01cb8a0 r5:c01d2014 r4:00053175
Title: Re: Linux on the LetCool Gamestation?
Post by: pcercuei on August 27, 2012, 06:42:43 pm
Is that a good news? I see a kernel panic :D
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 27, 2012, 08:20:29 pm
 8) yes . Here is the display should work but we have some difficulties,
ps This work is one person for 2nd week  ;)
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 28, 2012, 12:32:46 pm
RedBoot> load -m xmodem -r -b 0x200000
g_Cfg_s.redbootCfg:0xc0000004
CCCCCCCCCCCCCCCCRaw file loaded 0x00200000-0x002f75f6, assumed entry at 0x00200
000
xyzModem - CRC mode, 7916(SOH)/0(STX)/0(CAN) packets, 16 retries
RedBoot> go -c 0x200000
g_Cfg_s.redbootCfg:0xc0000004
+do_go
image sel: 0, image_sel_set: 0
rmvb enable!
Mask interrupts on all channels
ID-CACHE sync and invalidate
set up a temporary context. workspace_end=0x00f00000, entry=0x00200000
switch context to trampoline. workspace_end=0x00efffb0
Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0
Linux version 3.3.8spmp8000 ([email protected]) (gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-
8ubuntu3) ) #44 PREEMPT Tue Aug 28 15:19:07 MSK 2012
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Letcool N350JP, model: Letcool N350JP handheld game console
bootconsole [earlycon0] enabled
Memory policy: ECC disabled, Data cache writeback
On node 0 totalpages: 8192
free_area_init_node: node 0, pgdat c01e0220, node_mem_map c0209000
  Normal zone: 64 pages used for memmap
  Normal zone: 0 pages reserved
  Normal zone: 8128 pages, LIFO batch:0
pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
pcpu-alloc:
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
Kernel command line: console=ttyS0,115200n8 earlyprintk  debug mem=32M
PID hash table entries: 128 (order: -3, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 32MB = 32MB total
Memory: 30328k/30328k available, 2440k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    vmalloc : 0xc2800000 - 0xff000000   ( 968 MB)
    lowmem  : 0xc0000000 - 0xc2000000   (  32 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .text : 0xc0008000 - 0xc01b8000   (1728 kB)
      .init : 0xc01b8000 - 0xc01cf000   (  92 kB)
      .data : 0xc01d0000 - 0xc01e0a00   (  67 kB)
       .bss : 0xc01e0a24 - 0xc02080e4   ( 158 kB)
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:112
VIC @c2800000: id 0x00000000, vendor 0x00
VIC: unknown vendor, continuing anyways
VIC @c2802000: id 0x00000000, vendor 0x00
VIC: unknown vendor, continuing anyways
time keeping init --> OK
time keeping init --> OK
time init --> OK
time init --> OK
local IRQ init --> OK
local IRQ init --> OK
kmem_cache_init_late --> OK
kmem_cache_init_late --> OK
Console: colour dummy device 80x30
console init --> OK
console init --> OK
Calibrating delay loop... 155.03 BogoMIPS (lpj=775168)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x157b70 - 0x157bac
spmp8000-pwm 90000000.pwm: pwm 0 registered
bio: create slab <bio-0> at 0
Switching to clocksource tmrb2
NetWinder Floating Point Emulator V0.97 (double precision)
spmp8000-adc 9301f000.adc: registered
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
io scheduler noop registered (default)
mousedev: PS/2 mouse device common for all mice
turn off boot console earlycon0


 8) 8) 8) 8) 8)
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 28, 2012, 12:44:47 pm
What does this mean? We have a kernel and device tree
Title: Re: Linux on the LetCool Gamestation?
Post by: dmitry_smagin on August 28, 2012, 01:47:03 pm
Keep going, guys!
Title: Re: Re: Linux on the LetCool Gamestation?
Post by: pcercuei on August 28, 2012, 02:51:32 pm
8) yes . Here is the display should work but we have some difficulties,
ps This work is one person for 2nd week  ;)

Believe me I know how you feel. Been there before ;-)
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on August 28, 2012, 03:14:09 pm
because our programmer is busy in other projects he has no SPMP8K device, he said that he would bring the case to start the kernel and a few important drivers, the latest you can download the source code here
http://www.onlinedisk.ru/file/934838/
Title: Re: Linux on the LetCool Gamestation?
Post by: DisgruntleElf on September 01, 2012, 04:31:57 pm
I really appreciate the time your taking to do this.
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on September 02, 2012, 10:41:58 am
problems connecting the display driver to be connected somewhere here 93000000-93100000
that's a lot of options on this, it was decided to look for output to UART

tell me how to write the output to a UART with address  :'(
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on September 12, 2012, 07:11:16 pm
We have good news

+++MMP RomCode ver 0.3.0 2008/06/05
pwrc_cfg=a0000006
vic1_rawSts=00000020
keyscan4=00001880
iotraps=00000000
NAND_TYPE: SAMSUNG
prPyld_LDWORD=b614d5ec
prPyld_HDWORD=7414d574
u16PageNoPerBlk=128
u16PageSize=4224
u16PyldLen=4096
u16ReduntLen=64
u16SpareLen=64
u16TotalBlkNo=4096
Start to read DRAM_Init code from flash...
start to extract DRAM_Init code...
call DRAM_Init()...
no dramcfg available
+ScanRam ver v1.0.0.0
DRAM Type Scan Start

00000020

init DRAM done
Enter the bypass mode!
+ver=00030000
RedBoot_ver=01000000
Scanram_ver=01000000
warning! target IC is not 8000(eco_e) or 8050
version=ffff0000
usb sno=0000ffff
g_delay2ExitSelfRefresh=600, delayForDllLock=0, g_clk_sw_check=00000000
g_LcdRatio[0]=0
g_spll_ratio[0]=000e0a00
g_LcdRatio[1]=7
g_spll_ratio[1]=000e082c
g_LcdRatio[2]=11
g_spll_ratio[2]=000e082c
g_LcdRatio[3]=7
g_spll_ratio[3]=000e082c
g_LcdRatio[4]=8
g_spll_ratio[4]=000e0a44
there is case that dll is diabled
-RetrieveSysInfo
romfs_mount g_IsFirst_Mount:0
ReadID(1,0)
begin ReSet(1,0)
end ReSet(1,0)
ReadID(1, 0)buf:0x1001b1c0

ec d5 14 b6 74 ec d5 14 - b6 74 ec d5 14 b6 74 ec
d5 14 b6 74 ec d5 14 b6 - 74 ec d5 14 b6 74 ec d5
######################################

g_ChipMap[0]=0
g_ChipMap[1]=255
g_ChipMap[2]=255
g_ChipMap[3]=255
ReadID(1,0)
buf:0x1001b1c0

ec d5 14 b6 74 ec d5 14 - b6 74 ec d5 14 b6 74 ec
d5 14 b6 74 ec d5 14 b6 - 74 ec d5 14 b6 74 ec d5
ID : ec d5 14 b6 74
#############pstSysInfo->u16PyldLen:4096
#############pstSysInfo->u16PageNoPerBlk:128
#############pstSysInfo->u16TotalBlkNo:4096
XXpstSysInfo->u8Internal_Chip_Number:0
###################sysinfo###################
pstSysInfo->u16PageNoPerBlk:128
pstSysInfo->u16PageSize:4224
pstSysInfo->u16PyldLen:4096
pstSysInfo->u16ReduntLen:64
pstSysInfo->u16TotalBlkNo:4096
pstSysInfo->u8TotalBlkNoShift:12
pstSysInfo->u8MultiChannel:0
pstSysInfo->u8Support_Internal_Interleave:0
pstSysInfo->u8Support_External_Interleave:0
pstSysInfo->u8Internal_Chip_Number:0
pstSysInfo->u8PagePerBlkShift:7
pstSysInfo->u8Support_TwoPlan:0
g_IsNand_4CS:1
#############################################
begin ReadPage_Test
begin ReadPage_Test
rFM_AC_TIMING:0x1f2222
end of AutoSettingACTiming:0x1f2222
g_nbi.RomFs_Max_BlkCount : 120
**********************NFRC INFO*************************
nfrc.rom.start : 64
nfrc.rom.count : 120
nfrc.rom1.start : 184
nfrc.rom1.count : 120
nfrc.rom_a.start : 304
nfrc.rom_a.count : 0
nfrc.block_count : 120
nfrc.page_per_block : 128
nfrc.pagesize : 4096
nfrc.phy_pagesize : 4096
nfrc.sectors_per_page : 8
nfrc.u8Support_TwoPlan : 0
nfrc.u8Support_Internal_Interleave : 0
nfrc.u8Support_External_Interleave : 0
nfrc.u8Internal_Chip_Number : 0
********************************************************
g_PageSize:4096
pdisk->magic:0x526f6d2e
pdisk->nodecount:0x423
sizeof(romfs_node):32
page count:9

pwrc_cfg=a0000006
vic1_rawSts=00000020
keyscan4=00001880
iotraps=00000000


ref_clk: 243000000 Hz
sys_clk: 121500000, sys_ahb=60750000, sys_apb=30375000 Hz
ceva_clk: 243000000, ceva_ahb=121500000, ceva_apb=60750000 Hz
arm_clk: 243000000, arm_ahb=121500000, arm_apb=15187500 Hz

do_bootcfg: [Exec kernel][Load romfs]
========= usbmsd_init: enter
if_dm9000.c debug var(0x0002fbdc)=0
sysCtrl.c debug var(0x0002fbe4)=1
msd debug var(0x0002fbec)=1
net_io.c debug var(0x0002fbf4)=0
standalone eth_drv.c debug var(0x0002fbfc)=0
main.c debug var(0x0002fc04)=3
enet.c debug var(0x0002fc0c)=0
[UDC ]::init_msd(394) ========== init_msd:enter ==========
pInfo->heards:55545353
pInfo->hearde:55545345
pInfo->pattern:ec439a4b
Id=ec439a4b
pInfo->heards:55545353
pInfo->hearde:55545345
pInfo->pattern:ec439a4b
[UDC ]::genRandomSerial_UDC(2784) read have Id=ec439a4b
[UDC ]::genRandomSerial_UDC(2838) finish genRandomSerial_UDC()
[UDC ]::init_msd(402) ========== disconnect UDC =========
[UDC ]::initial_udc(1992) --UDC_Init() finish--[UDC ]::start_udc(2022) ---- star
t_udc()-------

g_IsInit_nf:1
[UDC ]::init_msd(419) ======= init udc finish ========
[UDC ]::poll_udc_connected(2622) ====== poll..=======
[UDC ]::poll_udc_connected(2650) ====== poll.EXIT EXIT .=======
usbmsd_init: exit
net_init: skip init ethernet

RedBoot(tm) bootstrap and debug environment [ROM]
Non-certified release, version v2_0_28 - built 13:43:27, Jun 15 2009

Platform: SUNPLUS_MMP (ARM 9)
Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.
Copyright (C) 2003, 2004, eCosCentric Limited

Copyright (C) 2008, Sunplusmm v1.0.0.0

RAM: 0x00000000-0x00f00000, [0x00200000-0x00f00000] available
Load image from romfs!
Found the image entry point: 0xa08034
== Executing boot script in 0.010 seconds - enter ^C to abort
RedBoot> go -c 0xa08034
+do_go
image sel: 0, image_sel_set: 0
rmvb enable!
Mask interrupts on all channels
ID-CACHE sync and invalidate
set up a temporary context. workspace_end=0x00f00000, entry=0x00a08034
switch context to trampoline. workspace_end=0x00efffb0
Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0
Linux version 3.3.8spmp8000 ([email protected]) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3
-1ubuntu5) ) #107 PREEMPT Tue Sep 11 19:52:32 MSK 2012
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Letcool N350JP, model: Letcool N350JP handheld game console
bootconsole [earlycon0] enabled
debug: skip boot console de-registration.
Memory policy: ECC disabled, Data cache writeback
On node 0 totalpages: 32768
free_area_init_node: node 0, pgdat c01de460, node_mem_map c0207000
Normal zone: 256 pages used for memmap
Normal zone: 0 pages reserved
Normal zone: 32512 pages, LIFO batch:7
pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
pcpu-alloc:
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
Kernel command line: mem=128M root=initrd console=ttyS0,115200 rootdelay=5 logle
vel=8 earlyprintk keep_bootcon=1
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 127796k/127796k available, 3276k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xc8800000 - 0xff000000 ( 872 MB)
lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
modules : 0xbf000000 - 0xc0000000 ( 16 MB)
.text : 0xc0008000 - 0xc01b7000 (1724 kB)
.init : 0xc01b7000 - 0xc01ce000 ( 92 kB)
.data : 0xc01ce000 - 0xc01dec40 ( 68 kB)
.bss : 0xc01dec64 - 0xc0206ae4 ( 160 kB)
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:112
spmp8000_init_irq start --> OK
spmp8000_init_irq start --> OK
create struct device_node and int ret --> OK
create struct device_node and int ret --> OK
create NP --> OK
create NP --> OK
VIC @c8800000: id 0x00000000, vendor 0x00
VIC: unknown vendor, continuing anyways
VIC @c8802000: id 0x00000000, vendor 0x00
VIC: unknown vendor, continuing anyways
of_node_put -> OK
of_node_put -> OK
LSD clock find - > OK!!!!LSD clock find - > OK!!!!LSD clock run - > OK!!!!LSD cl
ock run - > OK!!!!
Console: colour dummy device 80x30
Calibrating delay loop... 120.72 BogoMIPS (lpj=603648)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x1556d8 - 0x155714
letcool_dt_init start
letcool_dt_init start
letcool_dt_init displ
letcool_dt_init displ
spmp8000-pwm 90000000.pwm: pwm 0 registered
bio: create slab <bio-0> at 0
Switching to clocksource tmrb2
NetWinder Floating Point Emulator V0.97 (double precision)
LCD clock -> OK !!!!!!!!!!!!!!!!!!!!!!
LCD clock -> OK !!!!!!!!!!!!!!!!!!!!!!
spmp8000-adc 9301f000.adc: registered
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
io scheduler noop registered (default)
probe called: device is c01d31fc
Epson S1D13XXX FB Driver
Trying to free nonexistent resource <0000000093000000-0000000093100000>
s1d13xxxfb: probe of s1d13xxxfb.0 failed with error -16
s1d13xxxfb: probe of s1d13xxxfb.0 failed with error -16
Warning: unable to open an initial console.
Waiting 5sec before mounting root device...
List of all partitions:
No filesystem could mount root, tried:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Backtrace:
[<c0011dbc>] (dump_backtrace+0x0/0x10c) from [<c0151584>] (dump_stack+0x18/0x1c)

r6:c01ca2b4 r5:c7819000 r4:c01defe8
[<c015156c>] (dump_stack+0x0/0x1c) from [<c0151688>] (panic+0x84/0x1b8)
[<c0151604>] (panic+0x0/0x1b8) from [<c01b7ca8>] (mount_block_root+0x24c/0x29c)
r3:00000020 r2:00000000 r1:c7831f64 r0:c01928c8
r7:00008001
[<c01b7a5c>] (mount_block_root+0x0/0x29c) from [<c01b7d4c>] (mount_root+0x54/0x6
c)
[<c01b7cf8>] (mount_root+0x0/0x6c) from [<c01b7e94>] (prepare_namespace+0x130/0x
184)
r5:c01ca2c0 r4:c01dece0
[<c01b7d64>] (prepare_namespace+0x0/0x184) from [<c01b78d4>] (kernel_init+0x100/
0x130)
r5:c01cce8c r4:c01cce8c
[<c01b77d4>] (kernel_init+0x0/0x130) from [<c001e514>] (do_exit+0x0/0x6dc)
r5:c01b77d4 r4:00000000

is flashing a new kernel through FRM & many new things you will see in the log  ;)
Title: Re: Linux on the LetCool Gamestation?
Post by: beaviz on September 14, 2012, 10:31:49 pm
Really appreciate the work people...
Title: Re: Linux on the LetCool Gamestation?
Post by: SEA on September 14, 2012, 10:56:47 pm
SANOEND writes:

It is worth noting that at the moment firmware kernel and run through FRM ordinary users as to what All debug messages are still falling in UART.
The screen does not work.
But the opportunity to flash the kernel to do USB and firmware with Linux This is a huge breakthrough. Now we can build the image of the kernel + initrd + rootfs and obschatsya kernel in the console like a normal Linux. Execute commands, load modules, etc.