Linux MIPS Architecture development
 help / color / mirror / Atom feed
From: David Daney <ddaney.cavm@gmail.com>
To: Huacai Chen <chenhuacai@gmail.com>
Cc: Ralf Baechle <ralf@linux-mips.org>,
	linux-mips@linux-mips.org, Fuxin Zhang <zhangfx@lemote.com>,
	Zhangjin Wu <wuzhangjin@gmail.com>,
	Huacai Chen <chenhc@lemote.com>, Hongliang Tao <taohl@lemote.com>,
	Hua Yan <yanh@lemote.com>
Subject: Re: [PATCH 01/14] MIPS: Loongson: Add basic Loongson 3 CPU support.
Date: Fri, 15 Jun 2012 08:59:37 -0700	[thread overview]
Message-ID: <4FDB5BE9.1090303@gmail.com> (raw)
In-Reply-To: <1339747801-28691-2-git-send-email-chenhc@lemote.com>

On 06/15/2012 01:09 AM, Huacai Chen wrote:
> Loongson-3 is a multi-core MIPS family CPU, it support MIPS64R2
> fully. Loongson-3 has the same IMP field (0x6300) as Loongson-2.
>
> Loongson-3 has a hardware-maintained cache, system software doesn't
> need to maintain coherency.
>
> Loongson-3A is the first revision of Loongson-3, and it is the quad-
> core version of Loongson-2G. Loongson-3A has a simplified version named
> Loongson-2Gq, the main difference between Loongson-3A/2Gq is 3A has two
> HyperTransport controller but 2Gq has only one. HT0 is used for cross-
> chip interconnection and HT1 is used to link PCI bus. Therefore, 2Gq
> cannot support NUMA but 3A can.
>
> Exsisting Loongson family CPUs:
> Loongson-1: Loongson-1A, Loongson-1B, they are 32-bit MIPS CPUs.
> Loongson-2: Loongson-2E, Loongson-2F, Loongson-2G(including Loongson-
>              2Gq), they are 64-bit MIPS CPUs.
> Loongson-3: Loongson-3A, it is a 64-bit MIPS CPU.
>
> 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/Kconfig                            |   13 ++++
>   arch/mips/include/asm/addrspace.h            |    6 ++
>   arch/mips/include/asm/cpu.h                  |    6 +-
>   arch/mips/include/asm/mach-loongson/spaces.h |   15 +++++
>   arch/mips/include/asm/module.h               |    2 +
>   arch/mips/include/asm/pgtable-bits.h         |    7 ++
>   arch/mips/kernel/Makefile                    |    1 +
>   arch/mips/kernel/cpu-probe.c                 |   12 +++-
>   arch/mips/lib/Makefile                       |    1 +
>   arch/mips/loongson/Kconfig                   |    4 +
>   arch/mips/loongson/Platform                  |    1 +
>   arch/mips/loongson/common/env.c              |    3 +
>   arch/mips/loongson/common/setup.c            |    6 +-
>   arch/mips/mm/Makefile                        |    1 +
>   arch/mips/mm/c-r4k.c                         |   84 ++++++++++++++++++++++++++
>   arch/mips/mm/tlb-r4k.c                       |    2 +-
>   arch/mips/mm/tlbex.c                         |    1 +
>   17 files changed, 156 insertions(+), 9 deletions(-)

This patch is too big.  It should be split up into smaller but related 
parts.

For example, the parts that add new identifier constants should be 
first.  Then a separate patch for cpu-probe.c where they are used.

And...

>   create mode 100644 arch/mips/include/asm/mach-loongson/spaces.h
>
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index c179461..38e460b 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -1544,6 +1544,16 @@ config CPU_LOONGSON2
>   	select CPU_SUPPORTS_64BIT_KERNEL
>   	select CPU_SUPPORTS_HIGHMEM
>
> +config CPU_LOONGSON3
> +	bool "Loongson 3 CPU"
> +	depends on SYS_HAS_CPU_LOONGSON3
> +	select CPU_SUPPORTS_32BIT_KERNEL
> +	select CPU_SUPPORTS_64BIT_KERNEL
> +	select CPU_SUPPORTS_HIGHMEM
> +	help
> +		The Loongson 3 processor implements the MIPS III instruction set
> +		with many extensions.
> +

This bit must be the very last patch of the entire set, not the first.

Ask yourself what would happen if someone did a build selecting 
CPU_LOONGSON3 after this patch were applied?  Would a runnable kernel 
result?  If the answer is no, then you did it in the wrong order.

David Daney

  reply	other threads:[~2012-06-15 15:59 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-15  8:09 [PATCH 00/14] MIPS: Add Loongson-3 based machines support Huacai Chen
2012-06-15  8:09 ` [PATCH 01/14] MIPS: Loongson: Add basic Loongson 3 CPU support Huacai Chen
2012-06-15 15:59   ` David Daney [this message]
2012-06-15 16:13     ` Ralf Baechle
2012-06-16 12:49       ` huacai chen
2012-06-15  8:09 ` [PATCH 02/14] MIPS: Loongson 3: Add Lemote-3A machtypes definition Huacai Chen
2012-06-15  8:09 ` [PATCH 03/14] MIPS: Loongson: Make Loongson 3 to use BCD format for RTC Huacai Chen
2012-06-15  8:09 ` [PATCH 04/14] MIPS: Loongson: Add UEFI-like firmware interface support Huacai Chen
2012-06-15  8:09 ` [PATCH 05/14] MIPS: Loongson 3: Add HT-linked PCI support Huacai Chen
2012-06-15 14:34   ` LIU Qi
2012-06-15  8:09 ` [PATCH 06/14] MIPS: Loongson 3: Add IRQ init and dispatch support Huacai Chen
2012-06-15 14:32   ` LIU Qi
2012-06-15  8:09 ` [PATCH 07/14] MIPS: Loongson 3: Add serial port support Huacai Chen
2012-06-15  9:50   ` Arnaud Patard
2012-06-15 11:44     ` huacai chen
2012-06-15  8:09 ` [PATCH 08/14] MIPS: Loongson: Add swiotlb to support big memory (>4GB) Huacai Chen
2012-06-15  8:09 ` [PATCH 09/14] ata: Use 32bit DMA in AHCI for Loongson 3 Huacai Chen
2012-06-15 10:04   ` Sergei Shtylyov
2012-06-15 12:42     ` huacai chen
2012-06-17 12:05       ` Borislav Petkov
2012-06-18  9:04         ` huacai chen
2012-06-18 10:10           ` Borislav Petkov
2012-06-18 10:41             ` Huacai Chen
2012-06-18 14:52               ` Borislav Petkov
2012-06-15  8:09 ` [PATCH 10/14] drm/radeon: Make radeon card usable for Loongson Huacai Chen
2012-06-15 14:28   ` LIU Qi
2012-06-15  8:09 ` [PATCH 11/14] ALSA: Make hda sound " Huacai Chen
2012-06-15  8:09 ` [PATCH 12/14] MIPS: Loongson 3: Add Loongson-3 SMP support Huacai Chen
2012-06-15  8:10 ` [PATCH 13/14] MIPS: Loongson 3: Add CPU Hotplug support Huacai Chen
2012-06-15  8:10 ` [PATCH 14/14] MIPS: Loongson: Add a Loongson 3 default config file Huacai Chen
2012-06-15 14:37   ` LIU Qi
2012-06-16 12:52     ` huacai chen
2012-06-15 13:10 ` [PATCH 00/14] MIPS: Add Loongson-3 based machines support LIU Qi
2012-06-16 12:46   ` huacai chen

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=4FDB5BE9.1090303@gmail.com \
    --to=ddaney.cavm@gmail.com \
    --cc=chenhc@lemote.com \
    --cc=chenhuacai@gmail.com \
    --cc=linux-mips@linux-mips.org \
    --cc=ralf@linux-mips.org \
    --cc=taohl@lemote.com \
    --cc=wuzhangjin@gmail.com \
    --cc=yanh@lemote.com \
    --cc=zhangfx@lemote.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox