mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 19:21:31 -04:00
[PATCH] powerpc: Kill _machine and hard-coded platform numbers
This removes statically assigned platform numbers and reworks the powerpc platform probe code to use a better mechanism. With this, board support files can simply declare a new machine type with a macro, and implement a probe() function that uses the flattened device-tree to detect if they apply for a given machine. We now have a machine_is() macro that replaces the comparisons of _machine with the various PLATFORM_* constants. This commit also changes various drivers to use the new macro instead of looking at _machine. Signed-off-by: Benjamin Herrenschmidt <[email protected]> Signed-off-by: Paul Mackerras <[email protected]>
This commit is contained in:
parent
056cb48a2f
commit
e8222502ee
63 changed files with 560 additions and 543 deletions
|
|
@ -67,6 +67,7 @@
|
|||
#include <asm/io.h>
|
||||
|
||||
#ifdef CONFIG_PPC_PMAC
|
||||
#include <asm/machdep.h>
|
||||
#include <asm/pmac_feature.h>
|
||||
#include <asm/prom.h>
|
||||
#include <asm/pci-bridge.h>
|
||||
|
|
@ -1748,7 +1749,7 @@ static int __init aty128_init(struct pci_dev *pdev, const struct pci_device_id *
|
|||
|
||||
var = default_var;
|
||||
#ifdef CONFIG_PPC_PMAC
|
||||
if (_machine == _MACH_Pmac) {
|
||||
if (machine_is(powermac)) {
|
||||
/* Indicate sleep capability */
|
||||
if (par->chip_gen == rage_M3) {
|
||||
pmac_call_feature(PMAC_FTR_DEVICE_CAN_WAKE, NULL, 0, 1);
|
||||
|
|
@ -2011,7 +2012,7 @@ static int aty128fb_blank(int blank, struct fb_info *fb)
|
|||
return 0;
|
||||
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if ((_machine == _MACH_Pmac) && blank)
|
||||
if (machine_is(powermac) && blank)
|
||||
set_backlight_enable(0);
|
||||
#endif /* CONFIG_PMAC_BACKLIGHT */
|
||||
|
||||
|
|
@ -2029,7 +2030,7 @@ static int aty128fb_blank(int blank, struct fb_info *fb)
|
|||
aty128_set_lcd_enable(par, par->lcd_on && !blank);
|
||||
}
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if ((_machine == _MACH_Pmac) && !blank)
|
||||
if (machine_is(powermac) && !blank)
|
||||
set_backlight_enable(1);
|
||||
#endif /* CONFIG_PMAC_BACKLIGHT */
|
||||
return 0;
|
||||
|
|
|
|||
|
|
@ -75,6 +75,7 @@
|
|||
#include "ati_ids.h"
|
||||
|
||||
#ifdef __powerpc__
|
||||
#include <asm/machdep.h>
|
||||
#include <asm/prom.h>
|
||||
#include "../macmodes.h"
|
||||
#endif
|
||||
|
|
@ -2516,7 +2517,7 @@ static int __init aty_init(struct fb_info *info, const char *name)
|
|||
|
||||
memset(&var, 0, sizeof(var));
|
||||
#ifdef CONFIG_PPC
|
||||
if (_machine == _MACH_Pmac) {
|
||||
if (machine_is(powermac)) {
|
||||
/*
|
||||
* FIXME: The NVRAM stuff should be put in a Mac-specific file, as it
|
||||
* applies to all Mac video cards
|
||||
|
|
@ -2671,7 +2672,7 @@ static int atyfb_blank(int blank, struct fb_info *info)
|
|||
return 0;
|
||||
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if ((_machine == _MACH_Pmac) && blank > FB_BLANK_NORMAL)
|
||||
if (machine_is(powermac) && blank > FB_BLANK_NORMAL)
|
||||
set_backlight_enable(0);
|
||||
#elif defined(CONFIG_FB_ATY_GENERIC_LCD)
|
||||
if (par->lcd_table && blank > FB_BLANK_NORMAL &&
|
||||
|
|
@ -2703,7 +2704,7 @@ static int atyfb_blank(int blank, struct fb_info *info)
|
|||
aty_st_le32(CRTC_GEN_CNTL, gen_cntl, par);
|
||||
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if ((_machine == _MACH_Pmac) && blank <= FB_BLANK_NORMAL)
|
||||
if (machine_is(powermac) && blank <= FB_BLANK_NORMAL)
|
||||
set_backlight_enable(1);
|
||||
#elif defined(CONFIG_FB_ATY_GENERIC_LCD)
|
||||
if (par->lcd_table && blank <= FB_BLANK_NORMAL &&
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
#include <linux/agp_backend.h>
|
||||
|
||||
#ifdef CONFIG_PPC_PMAC
|
||||
#include <asm/processor.h>
|
||||
#include <asm/machdep.h>
|
||||
#include <asm/prom.h>
|
||||
#include <asm/pmac_feature.h>
|
||||
#endif
|
||||
|
|
@ -2745,7 +2745,7 @@ void radeonfb_pm_init(struct radeonfb_info *rinfo, int dynclk)
|
|||
rinfo->pm_mode |= radeon_pm_off;
|
||||
}
|
||||
#if defined(CONFIG_PPC_PMAC)
|
||||
if (_machine == _MACH_Pmac && rinfo->of_node) {
|
||||
if (machine_is(powermac) && rinfo->of_node) {
|
||||
if (rinfo->is_mobility && rinfo->pm_reg &&
|
||||
rinfo->family <= CHIP_FAMILY_RV250)
|
||||
rinfo->pm_mode |= radeon_pm_d2;
|
||||
|
|
|
|||
|
|
@ -60,8 +60,8 @@
|
|||
#include <asm/amigahw.h>
|
||||
#endif
|
||||
#ifdef CONFIG_PPC_PREP
|
||||
#include <asm/processor.h>
|
||||
#define isPReP (_machine == _MACH_prep)
|
||||
#include <asm/machdep.h>
|
||||
#define isPReP (machine_is(prep))
|
||||
#else
|
||||
#define isPReP 0
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -115,6 +115,7 @@
|
|||
#include <asm/uaccess.h>
|
||||
|
||||
#ifdef CONFIG_PPC_PMAC
|
||||
#include <asm/machdep.h>
|
||||
unsigned char nvram_read_byte(int);
|
||||
static int default_vmode = VMODE_NVRAM;
|
||||
static int default_cmode = CMODE_NVRAM;
|
||||
|
|
@ -1833,7 +1834,7 @@ static int initMatrox2(WPMINFO struct board* b){
|
|||
/* FIXME: Where to move this?! */
|
||||
#if defined(CONFIG_PPC_PMAC)
|
||||
#ifndef MODULE
|
||||
if (_machine == _MACH_Pmac) {
|
||||
if (machine_is(powermac)) {
|
||||
struct fb_var_screeninfo var;
|
||||
if (default_vmode <= 0 || default_vmode > VMODE_MAX)
|
||||
default_vmode = VMODE_640_480_60;
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
#include <asm/pci-bridge.h>
|
||||
#endif
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
#include <asm/machdep.h>
|
||||
#include <asm/backlight.h>
|
||||
#endif
|
||||
|
||||
|
|
@ -1353,7 +1354,7 @@ static int nvidiafb_blank(int blank, struct fb_info *info)
|
|||
NVWriteCrtc(par, 0x1a, vesa);
|
||||
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if (par->FlatPanel && _machine == _MACH_Pmac) {
|
||||
if (par->FlatPanel && machine_is(powermac)) {
|
||||
set_backlight_enable(!blank);
|
||||
}
|
||||
#endif
|
||||
|
|
@ -1688,7 +1689,7 @@ static int __devinit nvidiafb_probe(struct pci_dev *pd,
|
|||
info->fix.id,
|
||||
par->FbMapSize / (1024 * 1024), info->fix.smem_start);
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if (par->FlatPanel && _machine == _MACH_Pmac)
|
||||
if (par->FlatPanel && machine_is(powermac))
|
||||
register_backlight_controller(&nvidia_backlight_controller,
|
||||
par, "mnca");
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -1596,7 +1596,7 @@ static int radeonfb_blank (int blank, struct fb_info *info)
|
|||
return 0;
|
||||
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if (rinfo->dviDisp_type == MT_LCD && _machine == _MACH_Pmac) {
|
||||
if (rinfo->dviDisp_type == MT_LCD && machine_is(powermac)) {
|
||||
set_backlight_enable(!blank);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -49,6 +49,7 @@
|
|||
#include <asm/pci-bridge.h>
|
||||
#endif
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
#include <asm/machdep.h>
|
||||
#include <asm/backlight.h>
|
||||
#endif
|
||||
|
||||
|
|
@ -1247,7 +1248,7 @@ static int rivafb_blank(int blank, struct fb_info *info)
|
|||
CRTCout(par, 0x1a, vesa);
|
||||
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if ( par->FlatPanel && _machine == _MACH_Pmac) {
|
||||
if ( par->FlatPanel && machine_is(powermac)) {
|
||||
set_backlight_enable(!blank);
|
||||
}
|
||||
#endif
|
||||
|
|
@ -2037,9 +2038,9 @@ static int __devinit rivafb_probe(struct pci_dev *pd,
|
|||
info->fix.smem_len / (1024 * 1024),
|
||||
info->fix.smem_start);
|
||||
#ifdef CONFIG_PMAC_BACKLIGHT
|
||||
if (default_par->FlatPanel && _machine == _MACH_Pmac)
|
||||
register_backlight_controller(&riva_backlight_controller,
|
||||
default_par, "mnca");
|
||||
if (default_par->FlatPanel && machine_is(powermac))
|
||||
register_backlight_controller(&riva_backlight_controller,
|
||||
default_par, "mnca");
|
||||
#endif
|
||||
NVTRACE_LEAVE();
|
||||
return 0;
|
||||
|
|
|
|||
Loading…
Reference in a new issue