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

Commit 4ff62e1c authored by Scott Wood's avatar Scott Wood Committed by Kumar Gala
Browse files

[POWERPC] mpc82xx: Remove a bunch of cruft that duplicates generic functionality.



m82xx_calibrate_decr(), mpc82xx_ads_show_cpuinfo(), and mpc82xx_halt() do
anything useful beyond what the generic code does.

Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
parent 11af1192
Loading
Loading
Loading
Loading
+0 −1
Original line number Original line Diff line number Diff line
#
#
# Makefile for the PowerPC 82xx linux kernel.
# Makefile for the PowerPC 82xx linux kernel.
#
#
obj-$(CONFIG_PPC_82xx) += mpc82xx.o
obj-$(CONFIG_MPC82xx_ADS) += mpc82xx_ads.o
obj-$(CONFIG_MPC82xx_ADS) += mpc82xx_ads.o
+0 −109
Original line number Original line Diff line number Diff line
/*
 * MPC82xx setup and early boot code plus other random bits.
 *
 * Author: Vitaly Bordug <vbordug@ru.mvista.com>
 *
 * Copyright (c) 2006 MontaVista Software, Inc.
 *
 * 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/stddef.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/errno.h>
#include <linux/reboot.h>
#include <linux/pci.h>
#include <linux/interrupt.h>
#include <linux/kdev_t.h>
#include <linux/major.h>
#include <linux/console.h>
#include <linux/delay.h>
#include <linux/seq_file.h>
#include <linux/root_dev.h>
#include <linux/initrd.h>
#include <linux/module.h>
#include <linux/fsl_devices.h>
#include <linux/fs_uart_pd.h>

#include <asm/system.h>
#include <asm/pgtable.h>
#include <asm/page.h>
#include <asm/atomic.h>
#include <asm/time.h>
#include <asm/io.h>
#include <asm/machdep.h>
#include <asm/pci-bridge.h>
#include <asm/mpc8260.h>
#include <asm/irq.h>
#include <mm/mmu_decl.h>
#include <asm/prom.h>
#include <asm/cpm2.h>
#include <asm/udbg.h>
#include <asm/i8259.h>
#include <linux/fs_enet_pd.h>

#include <sysdev/fsl_soc.h>
#include <sysdev/cpm2_pic.h>

#include "pq2ads.h"

static int __init get_freq(char *name, unsigned long *val)
{
	struct device_node *cpu;
	const unsigned int *fp;
	int found = 0;

	/* The cpu node should have timebase and clock frequency properties */
	cpu = of_find_node_by_type(NULL, "cpu");

	if (cpu) {
		fp = of_get_property(cpu, name, NULL);
		if (fp) {
			found = 1;
			*val = *fp;
		}

		of_node_put(cpu);
	}

	return found;
}

void __init m82xx_calibrate_decr(void)
{
	ppc_tb_freq = 125000000;
	if (!get_freq("bus-frequency", &ppc_tb_freq)) {
		printk(KERN_ERR "WARNING: Estimating decrementer frequency "
				"(not found)\n");
	}
	ppc_tb_freq /= 4;
	ppc_proc_freq = 1000000000;
	if (!get_freq("clock-frequency", &ppc_proc_freq))
		printk(KERN_ERR "WARNING: Estimating processor frequency"
				"(not found)\n");
}

void mpc82xx_ads_show_cpuinfo(struct seq_file *m)
{
	uint pvid, svid, phid1;
	uint memsize = total_memory;

	pvid = mfspr(SPRN_PVR);
	svid = mfspr(SPRN_SVR);

	seq_printf(m, "Vendor\t\t: Freescale Semiconductor\n");
	seq_printf(m, "Machine\t\t: %s\n", CPUINFO_MACHINE);
	seq_printf(m, "PVR\t\t: 0x%x\n", pvid);
	seq_printf(m, "SVR\t\t: 0x%x\n", svid);

	/* Display cpu Pll setting */
	phid1 = mfspr(SPRN_HID1);
	seq_printf(m, "PLL setting\t: 0x%x\n", ((phid1 >> 24) & 0x3f));

	/* Display the amount of memory */
	seq_printf(m, "Memory\t\t: %d MB\n", memsize / (1024 * 1024));
}
+2 −9
Original line number Original line Diff line number Diff line
@@ -612,20 +612,13 @@ static void m82xx_restart(char *cmd)
	while (1) ;
	while (1) ;
}
}


static void m82xx_halt(void)
{
	local_irq_disable();
	while (1) ;
}

define_machine(mpc82xx_ads)
define_machine(mpc82xx_ads)
{
{
	.name = "MPC82xx ADS",
	.name = "MPC82xx ADS",
	.probe = mpc82xx_ads_probe,
	.probe = mpc82xx_ads_probe,
	.setup_arch =    mpc82xx_ads_setup_arch,
	.setup_arch =    mpc82xx_ads_setup_arch,
	.init_IRQ =    mpc82xx_ads_pic_init,
	.init_IRQ =    mpc82xx_ads_pic_init,
	.show_cpuinfo =    mpc82xx_ads_show_cpuinfo,
	.get_irq =    cpm2_get_irq,
	.get_irq =    cpm2_get_irq,
	.calibrate_decr =    m82xx_calibrate_decr,
	.calibrate_decr = generic_calibrate_decr,
	.restart = m82xx_restart,.halt = m82xx_halt,
	.restart = m82xx_restart,
};
};
+0 −6
Original line number Original line Diff line number Diff line
@@ -24,10 +24,6 @@


#include <linux/seq_file.h>
#include <linux/seq_file.h>


/* For our show_cpuinfo hooks. */
#define CPUINFO_VENDOR		"Freescale Semiconductor"
#define CPUINFO_MACHINE		"PQ2 ADS PowerPC"

/* Backword-compatibility stuff for the drivers */
/* Backword-compatibility stuff for the drivers */
#define CPM_MAP_ADDR		((uint)0xf0000000)
#define CPM_MAP_ADDR		((uint)0xf0000000)
#define CPM_IRQ_OFFSET 0
#define CPM_IRQ_OFFSET 0
@@ -58,8 +54,6 @@
#define SIU_INT_SCC4		((uint)0x2b+CPM_IRQ_OFFSET)
#define SIU_INT_SCC4		((uint)0x2b+CPM_IRQ_OFFSET)


void m82xx_pci_init_irq(void);
void m82xx_pci_init_irq(void);
void mpc82xx_ads_show_cpuinfo(struct seq_file*);
void m82xx_calibrate_decr(void);


#endif /* __MACH_ADS8260_DEFS */
#endif /* __MACH_ADS8260_DEFS */
#endif /* __KERNEL__ */
#endif /* __KERNEL__ */