All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Glass <sjg@chromium.org>
To: u-boot@lists.denx.de
Subject: [PATCH 4/8] x86: slimbootloader: Support 64-bit operation
Date: Wed, 29 Apr 2020 12:03:47 -0600	[thread overview]
Message-ID: <CAPnjgZ3Vj9-QDpvp2LWXOEv2JzKLaqSxkSM94j4NsrEQynXtvQ@mail.gmail.com> (raw)
In-Reply-To: <DM5PR11MB2043357B2B534F90022FFB428EAD0@DM5PR11MB2043.namprd11.prod.outlook.com>

Hi Aiden,

On Wed, 29 Apr 2020 at 00:01, Park, Aiden <aiden.park@intel.com> wrote:
>
> Hi Simon,
>
> > -----Original Message-----
> > From: Simon Glass <sjg@chromium.org>
> > Sent: Sunday, April 26, 2020 1:16 PM
> > To: Park, Aiden <aiden.park@intel.com>
> > Cc: Bin Meng <bmeng.cn@gmail.com>; U-Boot Mailing List <u-
> > boot at lists.denx.de>
> > Subject: Re: [PATCH 4/8] x86: slimbootloader: Support 64-bit operation
> >
> > Hi Aiden,
> >
> > On Tue, 21 Apr 2020 at 18:45, <aiden.park@intel.com> wrote:
> > >
> > > From: Aiden Park <aiden.park@intel.com>
> > >
> > > This supports 64-bit U-Boot as a Slim Bootloader payload.
> > >
> > > Signed-off-by: Aiden Park <aiden.park@intel.com>
> > > ---
> > >  arch/x86/cpu/slimbootloader/Makefile         |  9 +++++++--
> > >  arch/x86/cpu/slimbootloader/entry64.S        | 14 ++++++++++++++
> > >  arch/x86/cpu/slimbootloader/slimbootloader.c | 17 +++++++++++++++--
> > >  3 files changed, 36 insertions(+), 4 deletions(-)  create mode 100644
> > > arch/x86/cpu/slimbootloader/entry64.S
> > >
> > > diff --git a/arch/x86/cpu/slimbootloader/Makefile
> > > b/arch/x86/cpu/slimbootloader/Makefile
> > > index aac9fa3db8..79fa699501 100644
> > > --- a/arch/x86/cpu/slimbootloader/Makefile
> > > +++ b/arch/x86/cpu/slimbootloader/Makefile
> > > @@ -1,5 +1,10 @@
> > >  # SPDX-License-Identifier: GPL-2.0+
> > >  #
> > > -# Copyright (C) 2019 Intel Corporation <www.intel.com>
> > > +# Copyright (C) 2019-2020 Intel Corporation <www.intel.com>
> > >
> > > -obj-y += car.o slimbootloader.o sdram.o serial.o
> > > +ifeq ($(CONFIG_X86_64),y)
> > > +obj-y += entry64.o
> > > +else
> > > +obj-y += car.o
> > > +endif
> > > +obj-y += slimbootloader.o sdram.o serial.o
> > > diff --git a/arch/x86/cpu/slimbootloader/entry64.S
> > > b/arch/x86/cpu/slimbootloader/entry64.S
> > > new file mode 100644
> > > index 0000000000..5e101e18a9
> > > --- /dev/null
> > > +++ b/arch/x86/cpu/slimbootloader/entry64.S
> > > @@ -0,0 +1,14 @@
> > > +/* SPDX-License-Identifier: GPL-2.0+ */
> > > +/*
> > > + * Copyright (C) 2020 Intel Corporation <www.intel.com>  */
> > > +
> > > +#include <generated/asm-offsets.h>
> > > +
> > > +.section .text
> > > +
> > > +.globl init_64bit_entry
> > > +init_64bit_entry:
> > > +       /* Save hob pointer parameter */
> > > +       mov     %rcx, %r10
> > > +       jmp     init_64bit_entry_ret
> > > diff --git a/arch/x86/cpu/slimbootloader/slimbootloader.c
> > > b/arch/x86/cpu/slimbootloader/slimbootloader.c
> > > index 21dcfb2142..7857e4cd8b 100644
> > > --- a/arch/x86/cpu/slimbootloader/slimbootloader.c
> > > +++ b/arch/x86/cpu/slimbootloader/slimbootloader.c
> > > @@ -1,6 +1,6 @@
> > >  // SPDX-License-Identifier: GPL-2.0+
> > >  /*
> > > - * Copyright (C) 2019 Intel Corporation <www.intel.com>
> > > + * Copyright (C) 2019-2020 Intel Corporation <www.intel.com>
> > >   */
> > >
> > >  #include <common.h>
> > > @@ -43,11 +43,23 @@ static void tsc_init(void)
> > >
> > >  int arch_cpu_init(void)
> > >  {
> > > +       int ret = 0;
> > > +
> > >         tsc_init();
> > >
> > > -       return x86_cpu_init_f();
> > > +#if !CONFIG_IS_ENABLED(X86_64)
> >
> > Can you use if() instead of #if ?
> I will do it.
>
> >
> > > +       ret = x86_cpu_init_f();
> > > +#endif
> > > +       return ret;
> > >  }
> > >
> > > +#if CONFIG_IS_ENABLED(X86_64)
> >
> > It should be safe to define both of these functions so I don't think you need the
> > #ifdef
> These are defined in arch/x86/cpu/x86_64/cpu.c already.
> Is it okay to make them weak reference or can I keep this as it is?

Oh I see. I am not a fan of weak functions so perhaps we should keep them as is.


>
> >
> > > +int set_hob_list(void *hob_list)
> > > +{
> > > +       gd->arch.hob_list = hob_list;
> > > +       return 0;
> > > +}
> > > +#else
> > >  int checkcpu(void)
> > >  {
> > >         return 0;
> > > @@ -57,3 +69,4 @@ int print_cpuinfo(void)  {
> > >         return default_print_cpuinfo();  }
> > > +#endif
> > > --
> > > 2.20.1
> > >
Regards,
Simon

  reply	other threads:[~2020-04-29 18:03 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-22  0:44 [PATCH 0/8] Support 64-bit U-Boot for Slim Bootloader aiden.park at intel.com
2020-04-22  0:45 ` [PATCH 1/8] x86: Add a new X86_RUN_64BIT_ONLY to Kconfig aiden.park at intel.com
2020-04-26 20:15   ` Simon Glass
2020-04-29  5:44     ` Park, Aiden
2020-04-30  9:13       ` Bin Meng
2020-05-01 18:36         ` Park, Aiden
2020-05-03  2:26           ` Simon Glass
2020-04-22  0:45 ` [PATCH 2/8] x86: start64: Add a hook at 64-bit entry aiden.park at intel.com
2020-04-26 20:15   ` Simon Glass
2020-04-29  5:48     ` Park, Aiden
2020-04-22  0:45 ` [PATCH 3/8] x86: start64: Support HOB in 64-bit U-Boot aiden.park at intel.com
2020-04-26 20:15   ` Simon Glass
2020-04-29  5:57     ` Park, Aiden
2020-04-22  0:45 ` [PATCH 4/8] x86: slimbootloader: Support 64-bit operation aiden.park at intel.com
2020-04-26 20:15   ` Simon Glass
2020-04-29  6:01     ` Park, Aiden
2020-04-29 18:03       ` Simon Glass [this message]
2020-05-01 18:34         ` Park, Aiden
2020-04-22  0:45 ` [PATCH 5/8] configs: slimbootloader: Add x86_64 slimbootloader config aiden.park at intel.com
2020-04-26 20:32   ` Simon Glass
2020-04-29  6:02     ` Park, Aiden
2020-04-30  9:13     ` Bin Meng
2020-04-22  0:45 ` [PATCH 6/8] x86: Fix 64-bit compile warning aiden.park at intel.com
2020-04-26 19:45   ` Simon Glass
2020-04-29  6:08     ` Park, Aiden
2020-04-22  0:45 ` [PATCH 7/8] x86: enable 64-bit kernel boot from 64-bit U-Boot aiden.park at intel.com
2020-04-26 20:15   ` Simon Glass
2020-04-29  6:17     ` Park, Aiden
2020-04-22  0:45 ` [PATCH 8/8] doc: slimbootloader: Update 64-bit build instruction aiden.park at intel.com
2020-04-30  9:13   ` Bin Meng
2020-04-26 20:15 ` [PATCH 0/8] Support 64-bit U-Boot for Slim Bootloader Simon Glass
2020-04-29  5:41   ` Park, Aiden

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAPnjgZ3Vj9-QDpvp2LWXOEv2JzKLaqSxkSM94j4NsrEQynXtvQ@mail.gmail.com \
    --to=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.