linux-mips
[Top] [All Lists]

Re: [PATCH V15 03/12] MIPS: Loongson 3: Add Lemote-3A machtypes definiti

To: Huacai Chen <chenhc@lemote.com>
Subject: Re: [PATCH V15 03/12] MIPS: Loongson 3: Add Lemote-3A machtypes definition
From: Aurelien Jarno <aurelien@aurel32.net>
Date: Sat, 4 Jan 2014 23:23:34 +0100
Cc: Ralf Baechle <ralf@linux-mips.org>, John Crispin <john@phrozen.org>, "Steven J. Hill" <Steven.Hill@imgtec.com>, linux-mips@linux-mips.org, Fuxin Zhang <zhangfx@lemote.com>, Zhangjin Wu <wuzhangjin@gmail.com>, Hongliang Tao <taohl@lemote.com>, Hua Yan <yanh@lemote.com>
In-reply-to: <CAAhV-H49=Mxt+LJgpQQKJyhj87Hw6_kU4F05sEXNHueYuDOjaA@mail.gmail.com>
List-archive: <http://www.linux-mips.org/archives/linux-mips/>
List-help: <mailto:ecartis@linux-mips.org?Subject=help>
List-id: linux-mips <linux-mips.eddie.linux-mips.org>
List-owner: <mailto:ralf@linux-mips.org>
List-post: <mailto:linux-mips@linux-mips.org>
List-software: Ecartis version 1.0.0
List-subscribe: <mailto:ecartis@linux-mips.org?subject=subscribe%20linux-mips>
List-unsubscribe: <mailto:ecartis@linux-mips.org?subject=unsubscribe%20linux-mips>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <1387109676-540-1-git-send-email-chenhc@lemote.com> <1387109676-540-4-git-send-email-chenhc@lemote.com> <20131230214333.GA20651@hall.aurel32.net> <CAAhV-H66qshv-44q0XR6bfX7=KPa6NzDLO8AtY0Ed0AZScJ8=A@mail.gmail.com> <20140101160945.GA26719@hall.aurel32.net> <CAAhV-H49=Mxt+LJgpQQKJyhj87Hw6_kU4F05sEXNHueYuDOjaA@mail.gmail.com>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mutt/1.5.21 (2010-09-15)
On Thu, Jan 02, 2014 at 09:55:26AM +0800, Huacai Chen wrote:
> LS3A/3B-RS780E-R1.03 is Loongson's reference board, not from Lemote. All

Oh ok, sorry for the mistake.

> machines from Lemote will export "machtype=". We haven't force machtype to
> MACH_LEMOTE_A1101, we just set a default type which doesn't export
> "machtype=", such as LS3A/3B-RS780E-R1.03 reference board.

Ok I understand now. It might be better to name it LOONGSON_DEFAULT_MACHTYPE,
but I have seen that the current name is already in use for Loongson 2.
 
> On Thu, Jan 2, 2014 at 12:09 AM, Aurelien Jarno <aurelien@aurel32.net>wrote:
> 
> > Hi,
> >
> > On Wed, Jan 01, 2014 at 05:58:25PM +0800, Huacai Chen wrote:
> > > The 4 machtypes have different features, such as serial port clock in
> > > patch-7, and the next patchset will bring more differences.
> >
> > I understand that part, it's actually a good idea to have a machine type
> > that is used to differentiate between the supported machine, and thus
> > having a common kernel.
> >
> > > All Loongson-3 machines can use a same kernel, by export a different
> > > "machtype=" parameter via PMON.
> >
> > This doesn't seems to be the case, at least on a LS3A/3B-RS780E-R1.03
> > Lemote machine. Also if the machine type can be detected at runtime, why
> > this patch forces it to MACH_LEMOTE_A1101?
> >
> > > UEFI-like interface cannot be detected, but all Loongson-3 machines will
> > > enable it.
> >
> > > On Tue, Dec 31, 2013 at 5:43 AM, Aurelien Jarno <aurelien@aurel32.net
> > >wrote:
> > >
> > > > On Sun, Dec 15, 2013 at 08:14:27PM +0800, Huacai Chen wrote:
> > > > > Add four Loongson-3 based machine types:
> > > > > MACH_LEMOTE_A1004/MACH_LEMOTE_A1201 are laptops;
> > > > > MACH_LEMOTE_A1101 is mini-itx;
> > > > > MACH_LEMOTE_A1205 is all-in-one machine.
> > > > >
> > > > > The most significant differrent between A1004/A1201 and A1101/A1205
> > is
> > > > > the laptops have EC but others don't.
> > > > >
> > > > > Signed-off-by: Huacai Chen <chenhc@lemote.com>
> > > > > Signed-off-by: Hongliang Tao <taohl@lemote.com>
> > > > > Signed-off-by: Hua Yan <yanh@lemote.com>
> > > > > ---
> > > > >  arch/mips/include/asm/bootinfo.h              |   24
> > > > +++++++++++++++---------
> > > > >  arch/mips/include/asm/mach-loongson/machine.h |    6 ++++++
> > > > >  arch/mips/loongson/common/machtype.c          |    4 ++++
> > > > >  3 files changed, 25 insertions(+), 9 deletions(-)
> > > > >
> > > > > diff --git a/arch/mips/include/asm/bootinfo.h
> > > > b/arch/mips/include/asm/bootinfo.h
> > > > > index 4d2cdea..09956a0 100644
> > > > > --- a/arch/mips/include/asm/bootinfo.h
> > > > > +++ b/arch/mips/include/asm/bootinfo.h
> > > > > @@ -61,15 +61,21 @@
> > > > >  /*
> > > > >   * Valid machtype for Loongson family
> > > > >   */
> > > > > -#define MACH_LOONGSON_UNKNOWN  0
> > > > > -#define MACH_LEMOTE_FL2E       1
> > > > > -#define MACH_LEMOTE_FL2F       2
> > > > > -#define MACH_LEMOTE_ML2F7      3
> > > > > -#define MACH_LEMOTE_YL2F89     4
> > > > > -#define MACH_DEXXON_GDIUM2F10  5
> > > > > -#define MACH_LEMOTE_NAS             6
> > > > > -#define MACH_LEMOTE_LL2F       7
> > > > > -#define MACH_LOONGSON_END      8
> > > > > +enum loongson_machine_type {
> > > > > +     MACH_LOONGSON_UNKNOWN,
> > > > > +     MACH_LEMOTE_FL2E,
> > > > > +     MACH_LEMOTE_FL2F,
> > > > > +     MACH_LEMOTE_ML2F7,
> > > > > +     MACH_LEMOTE_YL2F89,
> > > > > +     MACH_DEXXON_GDIUM2F10,
> > > > > +     MACH_LEMOTE_NAS,
> > > > > +     MACH_LEMOTE_LL2F,
> > > > > +     MACH_LEMOTE_A1004,
> > > > > +     MACH_LEMOTE_A1101,
> > > > > +     MACH_LEMOTE_A1201,
> > > > > +     MACH_LEMOTE_A1205,
> > > > > +     MACH_LOONGSON_END
> > > > > +};
> > > > >
> > > > >  /*
> > > > >   * Valid machtype for group INGENIC
> > > > > diff --git a/arch/mips/include/asm/mach-loongson/machine.h
> > > > b/arch/mips/include/asm/mach-loongson/machine.h
> > > > > index 3810d5c..1b1f592 100644
> > > > > --- a/arch/mips/include/asm/mach-loongson/machine.h
> > > > > +++ b/arch/mips/include/asm/mach-loongson/machine.h
> > > > > @@ -24,4 +24,10 @@
> > > > >
> > > > >  #endif
> > > > >
> > > > > +#ifdef CONFIG_LEMOTE_MACH3A
> > > > > +
> > > > > +#define LOONGSON_MACHTYPE MACH_LEMOTE_A1101
> > > > > +
> > > > > +#endif /* CONFIG_LEMOTE_MACH3A */
> > > > > +
> > > > >  #endif /* __ASM_MACH_LOONGSON_MACHINE_H */
> > > >
> > > > This patch defines 4 machines, but in practice only one is activable.
> > > > Moreover it's only activable using a given Kconfig option, that is
> > > > supposed to be for "Lemote Loongson 3A family machines".
> > > >
> > > > Does it mean we won't be able to have a generic Loongson 3A kernel and
> > > > we will need one per machine? This doesn't seems a good idea for me.
> > > >
> > > > Couldn't it be detected using the UEFI-like interface? Or does it mean
> > > > that one machine type for all Loongson 3A is enough?
> > > >
> > > > > diff --git a/arch/mips/loongson/common/machtype.c
> > > > b/arch/mips/loongson/common/machtype.c
> > > > > index 4becd4f..1a47979 100644
> > > > > --- a/arch/mips/loongson/common/machtype.c
> > > > > +++ b/arch/mips/loongson/common/machtype.c
> > > > > @@ -27,6 +27,10 @@ static const char *system_types[] = {
> > > > >       [MACH_DEXXON_GDIUM2F10]         "dexxon-gdium-2f",
> > > > >       [MACH_LEMOTE_NAS]               "lemote-nas-2f",
> > > > >       [MACH_LEMOTE_LL2F]              "lemote-lynloong-2f",
> > > > > +     [MACH_LEMOTE_A1004]             "lemote-3a-notebook-a1004",
> > > > > +     [MACH_LEMOTE_A1101]             "lemote-3a-itx-a1101",
> > > > > +     [MACH_LEMOTE_A1201]             "lemote-2gq-notebook-a1201",
> > > > > +     [MACH_LEMOTE_A1205]             "lemote-2gq-aio-a1205",
> > > > >       [MACH_LOONGSON_END]             NULL,
> > > > >  };
> > > > >
> > > > > --
> > > > > 1.7.7.3
> > > > >
> > > > >
> > > > >
> > > >
> > > > --
> > > > Aurelien Jarno                          GPG: 1024D/F1BCDB73
> > > > aurelien@aurel32.net                 http://www.aurel32.net
> > > >
> > > >
> >
> > --
> > Aurelien Jarno                          GPG: 1024D/F1BCDB73
> > aurelien@aurel32.net                 http://www.aurel32.net
> >
> >

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

<Prev in Thread] Current Thread [Next in Thread>