Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
clock.c File Reference
#include <linux/init.h>
#include <linux/module.h>
#include <linux/interrupt.h>
#include <linux/ioport.h>
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/io.h>
#include <mach/hardware.h>
#include <mach/map.h>
#include <mach/regs-sys.h>
#include <mach/regs-clock.h>
#include <plat/cpu.h>
#include <plat/devs.h>
#include <plat/cpu-freq.h>
#include <plat/clock.h>
#include <plat/clock-clksrc.h>
#include <plat/pll.h>

Go to the source code of this file.

Macros

#define clk_fin_apll   clk_ext_xtal_mux
 
#define clk_fin_mpll   clk_ext_xtal_mux
 
#define clk_fin_epll   clk_ext_xtal_mux
 
#define clk_fout_mpll   clk_mpll
 
#define clk_fout_epll   clk_epll
 
#define GET_DIV(clk, field)   ((((clk) & field##_MASK) >> field##_SHIFT) + 1)
 

Functions

int s3c64xx_sclk_ctrl (struct clk *clk, int enable)
 
void __init_or_cpufreq s3c64xx_setup_clocks (void)
 
void __init s3c64xx_register_clocks (unsigned long xtal, unsigned armclk_divlimit)
 

Variables

struct clk clk_h2
 
struct clk clk_27m
 
struct clk clk_48m
 
struct clk clk_xusbxti
 

Macro Definition Documentation

#define clk_fin_apll   clk_ext_xtal_mux

Definition at line 44 of file clock.c.

#define clk_fin_epll   clk_ext_xtal_mux

Definition at line 46 of file clock.c.

#define clk_fin_mpll   clk_ext_xtal_mux

Definition at line 45 of file clock.c.

#define clk_fout_epll   clk_epll

Definition at line 49 of file clock.c.

#define clk_fout_mpll   clk_mpll

Definition at line 48 of file clock.c.

#define GET_DIV (   clk,
  field 
)    ((((clk) & field##_MASK) >> field##_SHIFT) + 1)

Definition at line 867 of file clock.c.

Function Documentation

void __init s3c64xx_register_clocks ( unsigned long  xtal,
unsigned  armclk_divlimit 
)

s3c64xx_register_clocks - register clocks for s3c6400 and s3c6410 : The rate for the clock crystal feeding the PLLs. : Divisor mask for ARMCLK.

Register the clocks for the S3C6400 and S3C6410 SoC range, such as ARMCLK as well as the necessary parent clocks.

This call does not setup the clocks, which is left to the s3c64xx_setup_clocks() call which may be needed by the cpufreq or resume code to re-set the clocks if the bootloader has changed them.

Definition at line 972 of file clock.c.

int s3c64xx_sclk_ctrl ( struct clk clk,
int  enable 
)

Definition at line 120 of file clock.c.

void __init_or_cpufreq s3c64xx_setup_clocks ( void  )

Definition at line 869 of file clock.c.

Variable Documentation

struct clk clk_27m
Initial value:
= {
.name = "clk_27m",
.rate = 27000000,
}

Definition at line 56 of file clock.c.

struct clk clk_48m
Initial value:
= {
.name = "clk_48m",
.rate = 48000000,
.enable = clk_48m_ctrl,
}

Definition at line 81 of file clock.c.

struct clk clk_h2
Initial value:
= {
.name = "hclk2",
.rate = 0,
}

Definition at line 51 of file clock.c.

struct clk clk_xusbxti
Initial value:
= {
.name = "xusbxti",
.rate = 48000000,
}

Definition at line 87 of file clock.c.