lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 3 Sep 2014 16:32:59 +0800 (CST)
From:	Xuetao Guan  <gxt@....edu.cn>
To:	Guenter Roeck <linux@...ck-us.net>
Cc:	linux-kernel@...r.kernel.org, Guan Xuetao <gxt@...c.pku.edu.cn>,
	Chen Gang <gang.chen.5i5j@...il.com>,
	Grant Likely <grant.likely@...aro.org>
Subject: 回复: Re: 回复: Re: 回复: Status of 'unicore32' architecture in Linux kernel


----- Guenter Roeck <linux@...ck-us.net> 写道:
> On Wed, Sep 03, 2014 at 08:09:28AM +0800, Xuetao Guan  wrote:
> > 
> > [...]
> > > > 
> > > > > 
> > > > > unicore32: Add ocd console and qemu-defconfig to support qemu simulator
> > > > > 	This patch adds a primitive OCD console to communicate with qemu.
> > > > > 	The same code is already used for early console support.
> > > > 
> > > > Do you mean there's the same/similar code in QEMU.
> > > > 
> > > No, I mean that the ocd functions in the linux kernel (such as ocd_putc) are
> > > used by both earlyprintk and the ocd console code.
> > Yes. By the way, it's only for qemu and fpga debug.
> > 
> > > 
> > > > > 
> > > > > With this patch added, and with qemu_defconfig as provided by the same patch,
> > > > > it is possible to build and load a unicore32 image in qemu using the following
> > > > > qemu command line.
> > > > > 
> > > > > qemu-system-unicore32 -curses -M puv3 -m 512 -kernel arch/unicore32/boot/zImage
> > > > > 
> > > > > Caveats:
> > > > > - The use of -nographic instead of -curses causes a qemu crash
> > > > Yes, since qemu curses code was modified to meet the simple OCD console requirement.
> > > > 
> > > The lack of support for -nographic is a problem for scripted testing.
> > > The issue is that we have to interpret console output for scripted testing,
> > > and having to go through curses makes that a bit difficult.
> > > 
> > > Wonder if '-nographic' can be modeled as '-curses' with no available terminal
> > > configuration. At least in theory that should work, but executing the above
> > > command with TERM=dumb yields no output. Wonder how difficult it would be to
> > > change that.
> > 
> > I see. I'll try to make -nographic work anyway.
> > 
> Please try the following patch. That seems to do it.
> I am sure it can be improved, but it is a start.
> 
> Thanks,
> Guenter

Thanks. I'll test it.
BTW, Qemu codestyle is different, and tab should be replaced with blanks.

Xuetao

> 
> ---
> From a7c89177b3c00e4c16bea25a0b4b2f9dc511e07b Mon Sep 17 00:00:00 2001
> From: Guenter Roeck <linux@...ck-us.net>
> Date: Tue, 2 Sep 2014 20:55:02 -0700
> Subject: [PATCH] qemu: unicore32: Add support for non-curses display
> 
> Add basic support for DT_NONE and DT_NOGRAPHIC display types.
> 
> Signed-off-by: Guenter Roeck <linux@...ck-us.net>
> ---
>  target-unicore32/helper.c | 14 +++++++++++++-
>  1 file changed, 13 insertions(+), 1 deletion(-)
> 
> diff --git a/target-unicore32/helper.c b/target-unicore32/helper.c
> index e5ebbf4..dda3772 100644
> --- a/target-unicore32/helper.c
> +++ b/target-unicore32/helper.c
> @@ -13,6 +13,7 @@
>  #include "exec/gdbstub.h"
>  #include "exec/helper-proto.h"
>  #include "qemu/host-utils.h"
> +#include "sysemu/sysemu.h"
>  #ifndef CONFIG_USER_ONLY
>  #include "ui/console.h"
>  #endif
> @@ -223,7 +224,18 @@ static void putc_on_screen(unsigned char ch)
>  
>  void helper_cp1_putc(target_ulong x)
>  {
> -    putc_on_screen((unsigned char)x);   /* Output to screen */
> +    switch(display_type) {
> +    case DT_CURSES:
> +	putc_on_screen((unsigned char)x);   /* Output to screen */
> +	break;
> +    case DT_NOGRAPHIC:
> +    case DT_NONE:
> +	putchar((int)x);
> +	break;
> +    default:
> +	break;
> +    }
> +
>      DPRINTF("%c", x);                   /* Output to stdout */
>  }
>  #endif
> -- 
> 1.9.1
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ