On Tuesday 08 September 2009 16:33:24 you wrote: > On Mon, Sep 07, 2009 at 06:22:59PM +0300, Vasily Khoruzhick wrote: > > If anyone is still interested, here's haret sources that works with > > rx1950 (and probably with rx3000), rx1950 suspend related patches are not > > applied: > > > > http://fenix-fen.at.tut.by/haret-s3c2442.tar.bz2 > > As far as I know, everything in that version is also in the mainline > version. I've booted the kernel on htc hermes with the 0.5 haret > without issue. > > There was a report of needing to change the setting PHYSOFFSET_KERNEL > to: > > #define PHYSOFFSET_KERNEL 0x98000 > > on one machine, though that seems like a kernel bug and not a haret > issue. > > Anyway, if you have a machine that boots with the above haret and not > mainline can you send the full log as described at: > > http://www.handhelds.org/moin/moin.cgi/HaRET_20Documentation > > Thanks, > -Kevin
I was able to boot linux on my rx1950 with recent haret (and modified PHYSOFFSET_KERNEL, as I need it to get resume working). The problem was in uninitialized uart. Kernel hangs if it uses ttySAC0 for console, but ttySAC0 was not initialized. AFAIK this bug in kernel was already fixed (in 2.6.30 or 31, not sure). As a workaround I've added uart initialization to bootLinux function. There're two patches in attachment, first one adds proper RX1950 detection to haret, second one is workaround I've used. Please consider applying of first one. Regards Vasily
From cfd584e060086f5bbed12266971c667e1740a7be Mon Sep 17 00:00:00 2001 From: Vasily Khoruzhick <anars...@gmail.com> Date: Tue, 15 Sep 2009 20:03:17 +0300 Subject: [PATCH 1/2] Added RX1950 machine Signed-off-by: Vasily Khoruzhick <anars...@gmail.com> --- src/mach/machlist.txt | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/src/mach/machlist.txt b/src/mach/machlist.txt index 95ff722..7a39f4c 100644 --- a/src/mach/machlist.txt +++ b/src/mach/machlist.txt @@ -26,6 +26,7 @@ Magician, PXA27x ,PM10, MAGICIAN Universal, PXA27x ,PU10, HTCUNIVERSAL H1910, PXA ,hp iPAQ h191, H1900 H1940, S3c2410 ,HP iPAQ h193;HP iPAQ h194, H1940, set ramsize 64*1024*1024 +RX1950, S3c2442 ,HP iPAQ rx195, RX1950, set ramsize 32*1024*1024 H2200, PXA ,hp iPAQ h22, H2200 H3600b, SA ,Compaq iPAQ H3600, H3600 H3700, SA ,Compaq iPAQ H3700 -- 1.6.5.rc1
From 1c759e513494219747c4725aa39d22ec35228d8b Mon Sep 17 00:00:00 2001 From: Vasily Khoruzhick <anars...@gmail.com> Date: Tue, 15 Sep 2009 20:03:51 +0300 Subject: [PATCH 2/2] Added workaround to boot rx1950 Signed-off-by: Vasily Khoruzhick <anars...@gmail.com> --- src/linboot.cpp | 11 +++++++++-- src/wince/com_port.cpp | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/linboot.cpp b/src/linboot.cpp index d44ea11..73cc8f7 100644 --- a/src/linboot.cpp +++ b/src/linboot.cpp @@ -25,6 +25,7 @@ #include "winvectors.h" // stackJumper_s #include "linboot.h" #include "resource.h" +#include "com_port.h" // Kernel file name static char *bootKernel = "zimage"; @@ -86,9 +87,9 @@ REG_VAR_INT(0, "FBDURINGBOOT", FBDuringBoot ****************************************************************/ // Recommended tags placement = RAM start + 256 -#define PHYSOFFSET_TAGS 0x100 +#define PHYSOFFSET_TAGS 0x90100 // Recommended kernel placement = RAM start + 32K -#define PHYSOFFSET_KERNEL 0x8000 +#define PHYSOFFSET_KERNEL 0x98000 // Initrd will be put at the address of kernel + 5MB #define PHYSOFFSET_INITRD (PHYSOFFSET_KERNEL + 0x500000) // Maximum size of the tags structure. @@ -792,6 +793,12 @@ tryLaunch(struct bootmem *bm, int bootViaResume) static void bootLinux(const char *cmd, const char *args) { + char w[64]; + if (com_port_open()) + { + sprintf (w, "\n\rbootLinux() Machine:%x", bootMachineType); + com_port_write (w, strlen (w)); + } int bootViaResume = toupper(cmd[0]) == 'R'; // Load the kernel/initrd/tags/preloader into memory diff --git a/src/wince/com_port.cpp b/src/wince/com_port.cpp index 3c04453..8e7331f 100644 --- a/src/wince/com_port.cpp +++ b/src/wince/com_port.cpp @@ -7,7 +7,7 @@ #include "script.h" // REG_VAR_RWFUNC static HANDLE port_handle = INVALID_HANDLE_VALUE; -static uint32 port_number = 0; +static uint32 port_number = 1; static uint32 comScrNumber (bool setval, uint32 *args, uint32 val) { -- 1.6.5.rc1
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Haret mailing list Haret@handhelds.org https://handhelds.org/mailman/listinfo/haret