cregit-Linux how code gets into the kernel

Release 4.14 arch/metag/include/asm/clock.h

/*
 * arch/metag/include/asm/clock.h
 *
 * Copyright (C) 2012 Imagination Technologies Ltd.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

#ifndef _METAG_CLOCK_H_

#define _METAG_CLOCK_H_

#include <asm/mach/arch.h>

/**
 * struct meta_clock_desc - Meta Core clock callbacks.
 * @get_core_freq:      Get the frequency of the Meta core. If this is NULL, the
 *                      core frequency will be determined like this:
 *                      Meta 1: based on loops_per_jiffy.
 *                      Meta 2: (EXPAND_TIMER_DIV + 1) MHz.
 *                      If a "core" clock is provided by the device tree, it
 *                      will override this function.
 */

struct meta_clock_desc {
	
unsigned long		(*get_core_freq)(void);
};

extern struct meta_clock_desc _meta_clock;

/*
 * Perform platform clock initialisation, reading clocks from device tree etc.
 * Only accessible during boot.
 */
void init_metag_clocks(void);

/*
 * Set up the default clock, ensuring all callbacks are valid - only accessible
 * during boot.
 */
void setup_meta_clocks(struct meta_clock_desc *desc);

/**
 * get_coreclock() - Get the frequency of the Meta core clock.
 *
 * Returns:     The Meta core clock frequency in Hz.
 */

static inline unsigned long get_coreclock(void) { /* * Use the current clock callback. If set correctly this will provide * the most accurate frequency as it can be calculated directly from the * PLL configuration. otherwise a default callback will have been set * instead. */ return _meta_clock.get_core_freq(); }

Contributors

PersonTokensPropCommitsCommitProp
James Hogan17100.00%1100.00%
Total17100.00%1100.00%

#endif /* _METAG_CLOCK_H_ */

Overall Contributors

PersonTokensPropCommitsCommitProp
James Hogan69100.00%2100.00%
Total69100.00%2100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.