[PATCH v1 3/4] arm64: Add arm64 kexec support

AKASHI Takahiro takahiro.akashi at linaro.org
Thu Jul 21 22:33:17 PDT 2016


On Fri, Jul 22, 2016 at 09:38:42AM +0530, Pratyush Anand wrote:
> On 21/07/2016:02:49:36 PM, Geoff Levand wrote:
> > On Thu, 2016-07-21 at 11:50 +0100, Robin Murphy wrote:
> > > The Exynos UART (drivers/tty/serial/samsung.c) is one which comes to
> > > mind as definitely existing, and on arm64 systems to boot. The TX
> > > register is at offset 0x20 there.
> > 
> > Here's what I came up with.
> > 
> > 
> > +	struct data {const char *name; int tx_offset;};
> > +	static const struct data ok_list[] = {
> > +	/*	{"armada-3700-uart", ?},	*/
> > +		{"exynos4210-uart", 0x20},
> > +	/*	{"ls1021a-lpuart", ?},		*/
> > +	/*	{"meson-uart", ?},		*/
> > +	/*	{"mt6577-uart", ?},		*/
> > +		{"ns16550", 0},
> > +		{"ns16550a", 0},
> > +		{"pl011", 0},
> > +		{NULL, 0}
> > +	};
> 
> sinc functionality is just to debug the scenario when something goes wrong in
> purgatory. IMHO, it should be disabled by default.

+1

-Takahiro AKASHI

> So, why not to keep it as
> simple as possible. Its a low level debugging mainly for developer, so user
> should know the absolute address. Therefore, I think no need to parse earlycon
> or earlyprintk from command line.  Whatever user passes in --port can be treated
> as address of TX register. If TX offset is 0x20, then user can pass --port as
> base+0x20. Additionally, we can pass TX register width as well. So what about
> something like "--port=0x1c020000,1" where 0x1c020000 is TX register address and
> 1 says about it's width in bytes.
> 
> ~Pratyush



More information about the kexec mailing list