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

Commit be1e0e98 authored by Stefan Roese's avatar Stefan Roese Committed by Josh Boyer
Browse files

[POWERPC] 4xx: Add AMCC Makalu board support to platforms/40x



This patch adds basic support for the AMCC Makalu board to arch/powerpc.

Signed-off-by: default avatarStefan Roese <sr@denx.de>
Signed-off-by: default avatarJosh Boyer <jwboyer@linux.vnet.ibm.com>
parent dc88416b
Loading
Loading
Loading
Loading
+10 −0
Original line number Original line Diff line number Diff line
@@ -32,6 +32,16 @@ config KILAUEA
	help
	help
	  This option enables support for the AMCC PPC405EX evaluation board.
	  This option enables support for the AMCC PPC405EX evaluation board.


config MAKALU
	bool "Makalu"
	depends on 40x
	default n
	select 405EX
	select PCI
	select PPC4xx_PCI_EXPRESS
	help
	  This option enables support for the AMCC PPC405EX board.

#config REDWOOD_5
#config REDWOOD_5
#	bool "Redwood-5"
#	bool "Redwood-5"
#	depends on 40x
#	depends on 40x
+1 −0
Original line number Original line Diff line number Diff line
obj-$(CONFIG_KILAUEA)				+= kilauea.o
obj-$(CONFIG_KILAUEA)				+= kilauea.o
obj-$(CONFIG_MAKALU)				+= makalu.o
obj-$(CONFIG_WALNUT)				+= walnut.o
obj-$(CONFIG_WALNUT)				+= walnut.o
obj-$(CONFIG_XILINX_VIRTEX_GENERIC_BOARD)	+= virtex.o
obj-$(CONFIG_XILINX_VIRTEX_GENERIC_BOARD)	+= virtex.o
obj-$(CONFIG_EP405)				+= ep405.o
obj-$(CONFIG_EP405)				+= ep405.o
+61 −0
Original line number Original line Diff line number Diff line
/*
 * Makalu board specific routines
 *
 * Copyright 2007 DENX Software Engineering, Stefan Roese <sr@denx.de>
 *
 * Based on the Walnut code by
 * Josh Boyer <jwboyer@linux.vnet.ibm.com>
 * Copyright 2007 IBM Corporation
 *
 * This program is free software; you can redistribute  it and/or modify it
 * under  the terms of  the GNU General  Public License as published by the
 * Free Software Foundation;  either version 2 of the  License, or (at your
 * option) any later version.
 */
#include <linux/init.h>
#include <linux/of_platform.h>
#include <asm/machdep.h>
#include <asm/prom.h>
#include <asm/udbg.h>
#include <asm/time.h>
#include <asm/uic.h>
#include <asm/pci-bridge.h>

static struct of_device_id makalu_of_bus[] = {
	{ .compatible = "ibm,plb4", },
	{ .compatible = "ibm,opb", },
	{ .compatible = "ibm,ebc", },
	{},
};

static int __init makalu_device_probe(void)
{
	if (!machine_is(makalu))
		return 0;

	of_platform_bus_probe(NULL, makalu_of_bus, NULL);

	return 0;
}
device_initcall(makalu_device_probe);

static int __init makalu_probe(void)
{
	unsigned long root = of_get_flat_dt_root();

	if (!of_flat_dt_is_compatible(root, "amcc,makalu"))
		return 0;

	ppc_pci_flags = PPC_PCI_REASSIGN_ALL_RSRC;

	return 1;
}

define_machine(makalu) {
	.name 				= "Makalu",
	.probe 				= makalu_probe,
	.progress 			= udbg_progress,
	.init_IRQ 			= uic_init_tree,
	.get_irq 			= uic_get_irq,
	.calibrate_decr			= generic_calibrate_decr,
};