[PATCH RESEND v4 0/9] MIPS: Loongson: Add the Loongson-1A processor support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The Loongson 1A is similar with Loongson 1B, which is a 32-bit SoC.
It implements the MIPS32 release 2 instruction set.

They share the same PRID, so we rewrite the PRID_REV_LOONGSON1B to
PRID_REV_LOONGSON1A_1B, and use their CPU macros to distinguish.

However, the pll register of Loongson-1A is write-only, so the cpu clk 
should be set manually with the command line.

The format of command is cpu_clk=osc_clk,cpu_mul
the osc_clk standby cpu clock and the cpu_mul repect the clock multiplier.

For example, we use the command cpu_clk=33333333,8

Changes since v1:

- According commit c908656a7531771ae7642990a7c5f3c7307bd612
  (MIPS: Loongson: Naming style cleanup and rework) to fix the naming style.

Changes since v2:

- Remove__irq_set_handler_locked()
- Rebases on top of v4.5-rc5.

Changes since v3:
- Move ls1x CPU irq setting to driver/irqchip
- Rebases on top of v4.6-rc7.

Binbin Zhou(9):
 MIPS: Loongson: Add basic Loongson-1A CPU support
 MIPS: Loongson: Add Loongson-1A Kconfig options
 MIPS: Loongson: Add platform devices for Loongson-1A/1B
 MIPS: Loongson: Add loongson-1A board support
 MIPS: Loongson-1A: workaround of pll register's write-only property
 MIPS: irqchip/ls1x-cpu: Move the CPU IRQ driver from arch/mips/loongson32/common/
 MIPS: Loongson-1A: Enable SPARSEMEN and HIGHMEM
 MIPS: Loongson-1B: Update config file
 MIPS: Loongson: Add a Loongson-1A default config file

Signed-off-by: Chunbo Cui <cuichboo@xxxxxxx>
Signed-off-by: Binbin Zhou <zhoubb@xxxxxxxxxx>
Signed-off-by: Huacai Chen <chenhc@xxxxxxxxxx>
-- 
 arch/mips/Kconfig                                 |  11 ++++++
 arch/mips/configs/loongson1a_defconfig            | 131 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 arch/mips/configs/loongson1b_defconfig            |   1 +
 arch/mips/include/asm/cpu-type.h                  |   3 +-
 arch/mips/include/asm/cpu.h                       |   2 +-
 arch/mips/include/asm/irq_cpu.h                   |   1 +
 arch/mips/include/asm/mach-loongson32/dma.h       |   1 +
 arch/mips/include/asm/mach-loongson32/irq.h       |   1 +
 arch/mips/include/asm/mach-loongson32/loongson1.h | 183 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------
 arch/mips/include/asm/mach-loongson32/nand.h      |   1 +
 arch/mips/include/asm/mach-loongson32/platform.h  |  14 ++++++++
 arch/mips/include/asm/mach-loongson32/regs-mux.h  |   2 +-
 arch/mips/include/asm/sparsemem.h                 |   6 +++-
 arch/mips/kernel/cpu-probe.c                      |   6 +++-
 arch/mips/loongson32/Kconfig                      |  17 +++++++++
 arch/mips/loongson32/Makefile                     |   6 ++++
 arch/mips/loongson32/Platform                     |   1 +
 arch/mips/loongson32/common/irq.c                 | 128 +------------------------------------------------------------------
 arch/mips/loongson32/common/platform.c            | 256 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------
 arch/mips/loongson32/common/prom.c                |   6 ++++
 arch/mips/loongson32/common/reset.c               |   6 ++++
 arch/mips/loongson32/common/setup.c               |  49 +++++++++++++++++++++++++-
 arch/mips/loongson32/ls1a/Makefile                |   5 +++
 arch/mips/loongson32/ls1a/board.c                 | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 arch/mips/mm/c-r4k.c                              |   9 +++++
 drivers/clk/clk-ls1x.c                            |  22 +++++++++---
 drivers/irqchip/Makefile                          |   1 +
 drivers/irqchip/irq-ls1x-cpu.c                    | 242 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 28 files changed, 1054 insertions(+), 179 deletions(-)
 create mode 100644 arch/mips/configs/loongson1a_defconfig
 create mode 100644 arch/mips/loongson32/ls1a/Makefile
 create mode 100644 arch/mips/loongson32/ls1a/board.c
 create mode 100644 drivers/irqchip/irq-ls1x-cpu.c
--
1.9.0







[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux