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

Commit 63cddd25 authored by Arnd Bergmann's avatar Arnd Bergmann Committed by Gregory CLEMENT
Browse files

ARM: orion5x: multiplatform support



The orion5x platform is now ready to be enabled for multiplatform
support, this patch does the switch over by modifying the Kconfig file,
the defconfig and removing the last mach/*.h header that becomes obsolete
with this.

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Acked-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarGregory CLEMENT <gregory.clement@free-electrons.com>
parent c22c2c60
Loading
Loading
Loading
Loading
+0 −17
Original line number Diff line number Diff line
@@ -519,23 +519,6 @@ config ARCH_DOVE
	help
	  Support for the Marvell Dove SoC 88AP510

config ARCH_ORION5X
	bool "Marvell Orion"
	depends on MMU
	select ARCH_REQUIRE_GPIOLIB
	select CPU_FEROCEON
	select GENERIC_CLOCKEVENTS
	select MVEBU_MBUS
	select MULTI_IRQ_HANDLER
	select PCI
	select PLAT_ORION_LEGACY
	select MULTI_IRQ_HANDLER
	select SPARSE_IRQ
	help
	  Support for the following Marvell Orion 5x series SoCs:
	  Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
	  Orion-2 (5281), Orion-1-90 (6183).

config ARCH_MMP
	bool "Marvell PXA168/910/MMP2"
	depends on MMU
+3 −0
Original line number Diff line number Diff line
@@ -13,6 +13,9 @@ CONFIG_MODULE_UNLOAD=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_PARTITION_ADVANCED=y
CONFIG_BSD_DISKLABEL=y
CONFIG_ARCH_MULTI_V5=y
# CONFIG_ARCH_MULTI_V6 is not set
# CONFIG_ARCH_MULTI_V7 is not set
CONFIG_ARCH_ORION5X=y
CONFIG_ARCH_ORION5X_DT=y
CONFIG_MACH_DB88F5281=y
+14 −4
Original line number Diff line number Diff line
if ARCH_ORION5X
menuconfig ARCH_ORION5X
	bool "Marvell Orion"
	depends on MMU && ARCH_MULTI_V5
	select ARCH_REQUIRE_GPIOLIB
	select CPU_FEROCEON
	select GENERIC_CLOCKEVENTS
	select MVEBU_MBUS
	select PCI
	select PLAT_ORION_LEGACY
	help
	  Support for the following Marvell Orion 5x series SoCs:
	  Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
	  Orion-2 (5281), Orion-1-90 (6183).

menu "Orion Implementations"
if ARCH_ORION5X

config ARCH_ORION5X_DT
	bool "Marvell Orion5x Flattened Device Tree"
@@ -163,6 +175,4 @@ config MACH_RD88F6183AP_GE
	  Say 'Y' here if you want your kernel to support the
	  Marvell Orion-1-90 (88F6183) AP GE RD.

endmenu

endif
+2 −0
Original line number Diff line number Diff line
ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/arch/arm/plat-orion/include

obj-y				+= common.o pci.o irq.o mpp.o
obj-$(CONFIG_MACH_DB88F5281)	+= db88f5281-setup.o
obj-$(CONFIG_MACH_RD88F5182)	+= rd88f5182-setup.o
+0 −46
Original line number Diff line number Diff line
/*
 * Tzachi Perelstein <tzachi@marvell.com>
 *
 * This file is licensed under the terms of the GNU General Public
 * License version 2.  This program is licensed "as is" without any
 * warranty of any kind, whether express or implied.
 */

#include <linux/serial_reg.h>

#define UART0_PHYS_BASE (0xf1000000 + 0x12000)
#define SERIAL_BASE	((unsigned char *)UART0_PHYS_BASE)

static void putc(const char c)
{
	unsigned char *base = SERIAL_BASE;
	int i;

	for (i = 0; i < 0x1000; i++) {
		if (base[UART_LSR << 2] & UART_LSR_THRE)
			break;
		barrier();
	}

	base[UART_TX << 2] = c;
}

static void flush(void)
{
	unsigned char *base = SERIAL_BASE;
	unsigned char mask;
	int i;

	mask = UART_LSR_TEMT | UART_LSR_THRE;

	for (i = 0; i < 0x1000; i++) {
		if ((base[UART_LSR << 2] & mask) == mask)
			break;
		barrier();
	}
}

/*
 * nothing to do
 */
#define arch_decomp_setup()