* kexec on Nokia Internet Tablets
@ 2009-02-17 21:32 Otto Solares
2009-02-17 21:46 ` Tony Lindgren
0 siblings, 1 reply; 6+ messages in thread
From: Otto Solares @ 2009-02-17 21:32 UTC (permalink / raw)
To: linux-omap
Hi all!
I want to make kexec work on current Nokia Internet Tablets but
maybe someone here have a clue or better if a patch :)
When I run a kexec enabled linux-omap kernel and try to boot the
production Maemo kernel or a linux-omap kernel I only succeed if
the serial-console flag in r&d mode is set, if not the device
just hangs.
It seems as a timing problem because if I insert small delays to
the kexeced kernel via CONFIG_BOOT_PRINTK_DELAY it works too
without the serial-console flag set.
Any idea what to debug or where to start?
Thanks.
-otto
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: kexec on Nokia Internet Tablets
2009-02-17 21:32 kexec on Nokia Internet Tablets Otto Solares
@ 2009-02-17 21:46 ` Tony Lindgren
2009-02-17 21:58 ` Otto Solares
0 siblings, 1 reply; 6+ messages in thread
From: Tony Lindgren @ 2009-02-17 21:46 UTC (permalink / raw)
To: Otto Solares; +Cc: linux-omap
* Otto Solares <solca@guug.org> [090217 13:37]:
> Hi all!
>
> I want to make kexec work on current Nokia Internet Tablets but
> maybe someone here have a clue or better if a patch :)
Do you need to patch anything for this, or does it work out of the box?
> When I run a kexec enabled linux-omap kernel and try to boot the
> production Maemo kernel or a linux-omap kernel I only succeed if
> the serial-console flag in r&d mode is set, if not the device
> just hangs.
Sounds like something does not get correctly initialized..
> It seems as a timing problem because if I insert small delays to
> the kexeced kernel via CONFIG_BOOT_PRINTK_DELAY it works too
> without the serial-console flag set.
>
> Any idea what to debug or where to start?
Well since the LCD is on, you could write a little function that
writes the output to the LCD. You just need to find out the virtual
address of the LCD and then add a function for displaying fonts..
Pretty easy to do.
BTW, do you have some Maemo package for kexec?
Tony
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: kexec on Nokia Internet Tablets
2009-02-17 21:46 ` Tony Lindgren
@ 2009-02-17 21:58 ` Otto Solares
2009-02-17 22:09 ` Tony Lindgren
0 siblings, 1 reply; 6+ messages in thread
From: Otto Solares @ 2009-02-17 21:58 UTC (permalink / raw)
To: Tony Lindgren; +Cc: linux-omap
On Tue, Feb 17, 2009 at 01:46:12PM -0800, Tony Lindgren wrote:
> * Otto Solares <solca@guug.org> [090217 13:37]:
> > Hi all!
> >
> > I want to make kexec work on current Nokia Internet Tablets but
> > maybe someone here have a clue or better if a patch :)
>
> Do you need to patch anything for this, or does it work out of the box?
Tried with l-o out of the box and tried too with this patch applied but same
results so far:
http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-jaunty.git;a=commit;h=6cd8dd766aec17ce66aa4f732928d05534da0937
Although it seems it was reverted here:
http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-jaunty.git;a=commit;h=484b70239a16c01d706a82e5e4afe2f82f24d950
> > When I run a kexec enabled linux-omap kernel and try to boot the
> > production Maemo kernel or a linux-omap kernel I only succeed if
> > the serial-console flag in r&d mode is set, if not the device
> > just hangs.
>
> Sounds like something does not get correctly initialized..
>
> > It seems as a timing problem because if I insert small delays to
> > the kexeced kernel via CONFIG_BOOT_PRINTK_DELAY it works too
> > without the serial-console flag set.
> >
> > Any idea what to debug or where to start?
>
> Well since the LCD is on, you could write a little function that
> writes the output to the LCD. You just need to find out the virtual
> address of the LCD and then add a function for displaying fonts..
> Pretty easy to do.
Ok, btw do you known a function name I should patch with the debugging
output?
> BTW, do you have some Maemo package for kexec?
Nope, although I host a userland patch and the statically compiled binary
here:
http://guug.org/nit/kexec/
-otto
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: kexec on Nokia Internet Tablets
2009-02-17 21:58 ` Otto Solares
@ 2009-02-17 22:09 ` Tony Lindgren
2009-02-17 23:57 ` Otto Solares
2009-02-18 8:21 ` Jarkko Nikula
0 siblings, 2 replies; 6+ messages in thread
From: Tony Lindgren @ 2009-02-17 22:09 UTC (permalink / raw)
To: Otto Solares; +Cc: linux-omap
[-- Attachment #1: Type: text/plain, Size: 2085 bytes --]
* Otto Solares <solca@guug.org> [090217 13:59]:
> On Tue, Feb 17, 2009 at 01:46:12PM -0800, Tony Lindgren wrote:
> > * Otto Solares <solca@guug.org> [090217 13:37]:
> > > Hi all!
> > >
> > > I want to make kexec work on current Nokia Internet Tablets but
> > > maybe someone here have a clue or better if a patch :)
> >
> > Do you need to patch anything for this, or does it work out of the box?
>
> Tried with l-o out of the box and tried too with this patch applied but same
> results so far:
>
> http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-jaunty.git;a=commit;h=6cd8dd766aec17ce66aa4f732928d05534da0937
>
> Although it seems it was reverted here:
>
> http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-jaunty.git;a=commit;h=484b70239a16c01d706a82e5e4afe2f82f24d950
OK, thanks for the links.
> > > When I run a kexec enabled linux-omap kernel and try to boot the
> > > production Maemo kernel or a linux-omap kernel I only succeed if
> > > the serial-console flag in r&d mode is set, if not the device
> > > just hangs.
> >
> > Sounds like something does not get correctly initialized..
> >
> > > It seems as a timing problem because if I insert small delays to
> > > the kexeced kernel via CONFIG_BOOT_PRINTK_DELAY it works too
> > > without the serial-console flag set.
> > >
> > > Any idea what to debug or where to start?
> >
> > Well since the LCD is on, you could write a little function that
> > writes the output to the LCD. You just need to find out the virtual
> > address of the LCD and then add a function for displaying fonts..
> > Pretty easy to do.
>
> Ok, btw do you known a function name I should patch with the debugging
> output?
We have the DEBUG_LL patch in l-o tree that's for low-level debug
output to serial port. You could could add a function called
printlcd() and call that instead of printascii().
> > BTW, do you have some Maemo package for kexec?
>
> Nope, although I host a userland patch and the statically compiled binary
> here:
>
> http://guug.org/nit/kexec/
Great, it would be nice to switch between Maemo and whatever easily.
Tony
[-- Attachment #2: debug-ll.patch --]
[-- Type: text/x-diff, Size: 674 bytes --]
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -44,6 +44,10 @@ void asmlinkage __attribute__((weak)) early_printk(const char *fmt, ...)
#define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)
+#ifdef CONFIG_DEBUG_LL
+extern void printascii(char *);
+#endif
+
/* printk's without a loglevel use this.. */
#define DEFAULT_MESSAGE_LOGLEVEL 4 /* KERN_WARNING */
@@ -668,6 +672,9 @@ asmlinkage int vprintk(const char *fmt, va_list args)
printed_len += vscnprintf(printk_buf + printed_len,
sizeof(printk_buf) - printed_len, fmt, args);
+#ifdef CONFIG_DEBUG_LL
+ printascii(printk_buf);
+#endif
/*
* Copy the output into log_buf. If the caller didn't provide
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: kexec on Nokia Internet Tablets
2009-02-17 22:09 ` Tony Lindgren
@ 2009-02-17 23:57 ` Otto Solares
2009-02-18 8:21 ` Jarkko Nikula
1 sibling, 0 replies; 6+ messages in thread
From: Otto Solares @ 2009-02-17 23:57 UTC (permalink / raw)
To: Tony Lindgren; +Cc: linux-omap
On Tue, Feb 17, 2009 at 02:09:36PM -0800, Tony Lindgren wrote:
> * Otto Solares <solca@guug.org> [090217 13:59]:
> > On Tue, Feb 17, 2009 at 01:46:12PM -0800, Tony Lindgren wrote:
> > > * Otto Solares <solca@guug.org> [090217 13:37]:
> > > > Hi all!
> > > >
> > > > I want to make kexec work on current Nokia Internet Tablets but
> > > > maybe someone here have a clue or better if a patch :)
> > >
> > > Do you need to patch anything for this, or does it work out of the box?
> >
> > Tried with l-o out of the box and tried too with this patch applied but same
> > results so far:
> >
> > http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-jaunty.git;a=commit;h=6cd8dd766aec17ce66aa4f732928d05534da0937
> >
> > Although it seems it was reverted here:
> >
> > http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-jaunty.git;a=commit;h=484b70239a16c01d706a82e5e4afe2f82f24d950
>
> OK, thanks for the links.
>
> > > > When I run a kexec enabled linux-omap kernel and try to boot the
> > > > production Maemo kernel or a linux-omap kernel I only succeed if
> > > > the serial-console flag in r&d mode is set, if not the device
> > > > just hangs.
> > >
> > > Sounds like something does not get correctly initialized..
> > >
> > > > It seems as a timing problem because if I insert small delays to
> > > > the kexeced kernel via CONFIG_BOOT_PRINTK_DELAY it works too
> > > > without the serial-console flag set.
> > > >
> > > > Any idea what to debug or where to start?
> > >
> > > Well since the LCD is on, you could write a little function that
> > > writes the output to the LCD. You just need to find out the virtual
> > > address of the LCD and then add a function for displaying fonts..
> > > Pretty easy to do.
> >
> > Ok, btw do you known a function name I should patch with the debugging
> > output?
>
> We have the DEBUG_LL patch in l-o tree that's for low-level debug
> output to serial port. You could could add a function called
> printlcd() and call that instead of printascii().
>
> > > BTW, do you have some Maemo package for kexec?
> >
> > Nope, although I host a userland patch and the statically compiled binary
> > here:
> >
> > http://guug.org/nit/kexec/
>
> Great, it would be nice to switch between Maemo and whatever easily.
>
> Tony
> --- a/kernel/printk.c
> +++ b/kernel/printk.c
> @@ -44,6 +44,10 @@ void asmlinkage __attribute__((weak)) early_printk(const char *fmt, ...)
>
> #define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)
>
> +#ifdef CONFIG_DEBUG_LL
> +extern void printascii(char *);
> +#endif
> +
> /* printk's without a loglevel use this.. */
> #define DEFAULT_MESSAGE_LOGLEVEL 4 /* KERN_WARNING */
>
> @@ -668,6 +672,9 @@ asmlinkage int vprintk(const char *fmt, va_list args)
> printed_len += vscnprintf(printk_buf + printed_len,
> sizeof(printk_buf) - printed_len, fmt, args);
>
> +#ifdef CONFIG_DEBUG_LL
> + printascii(printk_buf);
> +#endif
>
> /*
> * Copy the output into log_buf. If the caller didn't provide
Cool! will try something when get home... thx!
-otto
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: kexec on Nokia Internet Tablets
2009-02-17 22:09 ` Tony Lindgren
2009-02-17 23:57 ` Otto Solares
@ 2009-02-18 8:21 ` Jarkko Nikula
1 sibling, 0 replies; 6+ messages in thread
From: Jarkko Nikula @ 2009-02-18 8:21 UTC (permalink / raw)
To: Tony Lindgren; +Cc: Otto Solares, linux-omap
On Tue, 17 Feb 2009 14:09:36 -0800
Tony Lindgren <tony@atomide.com> wrote:
> > > Well since the LCD is on, you could write a little function that
> > > writes the output to the LCD. You just need to find out the
> > > virtual address of the LCD and then add a function for displaying
> > > fonts.. Pretty easy to do.
> >
> > Ok, btw do you known a function name I should patch with the
> > debugging output?
>
> We have the DEBUG_LL patch in l-o tree that's for low-level debug
> output to serial port. You could could add a function called
> printlcd() and call that instead of printascii().
>
Haven't tried but how about easier option CONFIG_MTD_OOPS? I.e. using
Maemo root device /dev/mtdblock4 for console=ttyMTD4 and then analyze
the partion afterward by booting root from sd card.
Jarkko
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2009-02-18 8:18 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-02-17 21:32 kexec on Nokia Internet Tablets Otto Solares
2009-02-17 21:46 ` Tony Lindgren
2009-02-17 21:58 ` Otto Solares
2009-02-17 22:09 ` Tony Lindgren
2009-02-17 23:57 ` Otto Solares
2009-02-18 8:21 ` Jarkko Nikula
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox