Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c8bc4dce authored by Olof Johansson's avatar Olof Johansson
Browse files

Merge tag 'D01-for-3.18' of git://github.com/hisilicon/linux-hisi into next/soc

Merge "pull request for hisilicon hip04 soc and D01 board updates" from Wei Xu:

ARM: mach-hisi: Hisilicon hip04 soc and D01 board updates for 3.18

- Add the CONFIG_MCPM_QUAD_CLUSTER configuration to enlarge cluster number from 2 to 4
- Enable MCPM on HiP04 SoC
- Enable 16 cores on HiP04 SoC
- Add platform & Fabric controller devicetree binding document for HiP04 SoC
- Add hip04.dtsi & hip04-d01.dts for hip04 SoC platform and D01 board
- Enable HiP04 SoC in both hi3xxx_defconfig & multi_v7_defconfig
- Add the support of Hisilicon HiP04 debug uart

* tag 'D01-for-3.18' of git://github.com/hisilicon/linux-hisi

:
  ARM: debug: add HiP04 debug uart
  ARM: config: enable hisilicon hip04
  ARM: dts: add hip04 dts
  document: dt: add the binding on HiP04
  ARM: hisi: enable HiP04
  ARM: hisi: enable MCPM implementation
  ARM: mcpm: support 4 clusters

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 0501414b c9a1df48
Loading
Loading
Loading
Loading
+23 −0
Original line number Original line Diff line number Diff line
@@ -5,6 +5,11 @@ Hi4511 Board
Required root node properties:
Required root node properties:
	- compatible = "hisilicon,hi3620-hi4511";
	- compatible = "hisilicon,hi3620-hi4511";


HiP04 D01 Board
Required root node properties:
	- compatible = "hisilicon,hip04-d01";


Hisilicon system controller
Hisilicon system controller


Required properties:
Required properties:
@@ -55,3 +60,21 @@ Example:
		compatible = "hisilicon,pctrl";
		compatible = "hisilicon,pctrl";
		reg = <0xfca09000 0x1000>;
		reg = <0xfca09000 0x1000>;
	};
	};

-----------------------------------------------------------------------
Fabric:

Required Properties:
- compatible: "hisilicon,hip04-fabric";
- reg: Address and size of Fabric

-----------------------------------------------------------------------
Bootwrapper boot method (software protocol on SMP):

Required Properties:
- compatible: "hisilicon,hip04-bootwrapper";
- boot-method: Address and size of boot method.
  [0]: bootwrapper physical address
  [1]: bootwrapper size
  [2]: relocation physical address
  [3]: relocation size
+9 −0
Original line number Original line Diff line number Diff line
@@ -1406,6 +1406,15 @@ config MCPM
	  for (multi-)cluster based systems, such as big.LITTLE based
	  for (multi-)cluster based systems, such as big.LITTLE based
	  systems.
	  systems.


config MCPM_QUAD_CLUSTER
	bool
	depends on MCPM
	help
	  To avoid wasting resources unnecessarily, MCPM only supports up
	  to 2 clusters by default.
	  Platforms with 3 or 4 clusters that use MCPM must select this
	  option to allow the additional clusters to be managed.

config BIG_LITTLE
config BIG_LITTLE
	bool "big.LITTLE support (Experimental)"
	bool "big.LITTLE support (Experimental)"
	depends on CPU_V7 && SMP
	depends on CPU_V7 && SMP
+10 −0
Original line number Original line Diff line number Diff line
@@ -231,6 +231,14 @@ choice
		  Say Y here if you want kernel low-level debugging support
		  Say Y here if you want kernel low-level debugging support
		  on Hix5hd2 UART.
		  on Hix5hd2 UART.


	config DEBUG_HIP04_UART
		bool "Hisilicon HiP04 Debug UART"
		depends on ARCH_HIP04
		select DEBUG_UART_8250
		help
		  Say Y here if you want kernel low-level debugging support
		  on HIP04 UART.

	config DEBUG_HIGHBANK_UART
	config DEBUG_HIGHBANK_UART
		bool "Kernel low-level debugging messages via Highbank UART"
		bool "Kernel low-level debugging messages via Highbank UART"
		depends on ARCH_HIGHBANK
		depends on ARCH_HIGHBANK
@@ -1109,6 +1117,7 @@ config DEBUG_UART_PHYS
	default 0xd4017000 if DEBUG_MMP_UART2
	default 0xd4017000 if DEBUG_MMP_UART2
	default 0xd4018000 if DEBUG_MMP_UART3
	default 0xd4018000 if DEBUG_MMP_UART3
	default 0xe0000000 if ARCH_SPEAR13XX
	default 0xe0000000 if ARCH_SPEAR13XX
	default 0xe4007000 if DEBUG_HIP04_UART
	default 0xf0000be0 if ARCH_EBSA110
	default 0xf0000be0 if ARCH_EBSA110
	default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
	default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
	default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
	default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
@@ -1152,6 +1161,7 @@ config DEBUG_UART_VIRT
	default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
	default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
				DEBUG_S3C2410_UART2)
				DEBUG_S3C2410_UART2)
	default 0xf7fc9000 if DEBUG_BERLIN_UART
	default 0xf7fc9000 if DEBUG_BERLIN_UART
	default 0xf8007000 if DEBUG_HIP04_UART
	default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
	default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
	default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
	default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
	default 0xfa71e000 if DEBUG_QCOM_UARTDM
	default 0xfa71e000 if DEBUG_QCOM_UARTDM
+1 −0
Original line number Original line Diff line number Diff line
@@ -90,6 +90,7 @@ dtb-$(CONFIG_ARCH_HI3xxx) += hi3620-hi4511.dtb
dtb-$(CONFIG_ARCH_HIX5HD2) += hisi-x5hd2-dkb.dtb
dtb-$(CONFIG_ARCH_HIX5HD2) += hisi-x5hd2-dkb.dtb
dtb-$(CONFIG_ARCH_HIGHBANK) += highbank.dtb \
dtb-$(CONFIG_ARCH_HIGHBANK) += highbank.dtb \
	ecx-2000.dtb
	ecx-2000.dtb
dtb-$(CONFIG_ARCH_HIP04) += hip04-d01.dtb
dtb-$(CONFIG_ARCH_INTEGRATOR) += integratorap.dtb \
dtb-$(CONFIG_ARCH_INTEGRATOR) += integratorap.dtb \
	integratorcp.dtb
	integratorcp.dtb
dtb-$(CONFIG_ARCH_KEYSTONE) += k2hk-evm.dtb \
dtb-$(CONFIG_ARCH_KEYSTONE) += k2hk-evm.dtb \
+32 −0
Original line number Original line Diff line number Diff line
/*
 *  Copyright (C) 2013-2014 Linaro Ltd.
 *  Author: Haojian Zhuang <haojian.zhuang@linaro.org>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License version 2 as
 *  publishhed by the Free Software Foundation.
 */

/dts-v1/;

#include "hip04.dtsi"

/ {
	/* memory bus is 64-bit */
	#address-cells = <2>;
	#size-cells = <2>;
	model = "Hisilicon D01 Development Board";
	compatible = "hisilicon,hip04-d01";

	memory@00000000,10000000 {
		device_type = "memory";
		reg = <0x00000000 0x10000000 0x00000000 0xc0000000>,
		      <0x00000004 0xc0000000 0x00000003 0x40000000>;
	};

	soc {
		uart0: uart@4007000 {
			status = "ok";
		};
	};
};
Loading