cregit-Linux how code gets into the kernel

Release 4.14 arch/sh/kernel/idle.c

Directory: arch/sh/kernel
/*
 * The idle loop for all SuperH platforms.
 *
 *  Copyright (C) 2002 - 2009  Paul Mundt
 *
 * This file is subject to the terms and conditions of the GNU General Public
 * License.  See the file "COPYING" in the main directory of this archive
 * for more details.
 */
#include <linux/module.h>
#include <linux/init.h>
#include <linux/mm.h>
#include <linux/pm.h>
#include <linux/tick.h>
#include <linux/preempt.h>
#include <linux/thread_info.h>
#include <linux/irqflags.h>
#include <linux/smp.h>
#include <linux/atomic.h>
#include <asm/pgalloc.h>
#include <asm/smp.h>
#include <asm/bl_bit.h>


static void (*sh_idle)(void);


void default_idle(void) { set_bl_bit(); local_irq_enable(); /* Isn't this racy ? */ cpu_sleep(); clear_bl_bit(); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Mundt1995.00%375.00%
Thomas Gleixner15.00%125.00%
Total20100.00%4100.00%


void arch_cpu_idle_dead(void) { play_dead(); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Mundt880.00%266.67%
Thomas Gleixner220.00%133.33%
Total10100.00%3100.00%


void arch_cpu_idle(void) { sh_idle(); }

Contributors

PersonTokensPropCommitsCommitProp
Thomas Gleixner660.00%125.00%
Paul Mundt330.00%250.00%
Len Brown110.00%125.00%
Total10100.00%4100.00%


void __init select_idle_routine(void) { /* * If a platform has set its own idle routine, leave it alone. */ if (!sh_idle) sh_idle = default_idle; }

Contributors

PersonTokensPropCommitsCommitProp
Paul Mundt1583.33%250.00%
Len Brown211.11%125.00%
Thomas Gleixner15.56%125.00%
Total18100.00%4100.00%


void stop_this_cpu(void *unused) { local_irq_disable(); set_cpu_online(smp_processor_id(), false); for (;;) cpu_sleep(); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Mundt28100.00%2100.00%
Total28100.00%2100.00%


Overall Contributors

PersonTokensPropCommitsCommitProp
Paul Mundt11987.50%975.00%
Thomas Gleixner107.35%18.33%
Len Brown53.68%18.33%
David Howells21.47%18.33%
Total136100.00%12100.00%
Directory: arch/sh/kernel
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.