cregit-Linux how code gets into the kernel

Release 4.7 arch/powerpc/platforms/embedded6xx/gamecube.c

/*
 * arch/powerpc/platforms/embedded6xx/gamecube.c
 *
 * Nintendo GameCube board-specific support
 * Copyright (C) 2004-2009 The GameCube Linux Team
 * Copyright (C) 2007,2008,2009 Albert Herranz
 *
 * 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/kernel.h>
#include <linux/init.h>
#include <linux/irq.h>
#include <linux/kexec.h>
#include <linux/seq_file.h>
#include <linux/of_platform.h>

#include <asm/io.h>
#include <asm/machdep.h>
#include <asm/prom.h>
#include <asm/time.h>
#include <asm/udbg.h>

#include "flipper-pic.h"
#include "usbgecko_udbg.h"



static void gamecube_spin(void) { /* spin until power button pressed */ for (;;) cpu_relax(); }

Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz17100.00%1100.00%
Total17100.00%1100.00%


static void gamecube_restart(char *cmd) { local_irq_disable(); flipper_platform_reset(); gamecube_spin(); }

Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz19100.00%1100.00%
Total19100.00%1100.00%


static void gamecube_power_off(void) { local_irq_disable(); gamecube_spin(); }

Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz14100.00%1100.00%
Total14100.00%1100.00%


static void gamecube_halt(void) { gamecube_restart(NULL); }

Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz13100.00%1100.00%
Total13100.00%1100.00%


static void __init gamecube_init_early(void) { ug_udbg_init(); }

Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz12100.00%1100.00%
Total12100.00%1100.00%


static int __init gamecube_probe(void) { unsigned long dt_root; dt_root = of_get_flat_dt_root(); if (!of_flat_dt_is_compatible(dt_root, "nintendo,gamecube")) return 0; pm_power_off = gamecube_power_off; return 1; }

Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz3489.47%150.00%
alexander grafalexander graf410.53%150.00%
Total38100.00%2100.00%


static void gamecube_shutdown(void) { flipper_quiesce(); }

Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz11100.00%1100.00%
Total11100.00%1100.00%

define_machine(gamecube) { .name = "gamecube", .probe = gamecube_probe, .init_early = gamecube_init_early, .restart = gamecube_restart, .halt = gamecube_halt, .init_IRQ = flipper_pic_probe, .get_irq = flipper_pic_get_irq, .calibrate_decr = generic_calibrate_decr, .progress = udbg_progress, .machine_shutdown = gamecube_shutdown, }; static const struct of_device_id gamecube_of_bus[] = { { .compatible = "nintendo,flipper", }, { }, };
static int __init gamecube_device_probe(void) { if (!machine_is(gamecube)) return 0; of_platform_bus_probe(NULL, gamecube_of_bus, NULL); return 0; }

Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz32100.00%1100.00%
Total32100.00%1100.00%

device_initcall(gamecube_device_probe);

Overall Contributors

PersonTokensPropCommitsCommitProp
albert herranzalbert herranz27198.19%133.33%
alexander grafalexander graf41.45%133.33%
uwe kleine-koeniguwe kleine-koenig10.36%133.33%
Total276100.00%3100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
{% endraw %}