OpenCores
URL https://opencores.org/ocsvn/c0or1k/c0or1k/trunk

Subversion Repositories c0or1k

[/] [c0or1k/] [trunk/] [src/] [platform/] [beagle/] [cm.c] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 drasko
/*
2
 * Clock mangaer module of the beagleboard.
3
 *
4
 * Copyright (C) 2007 Bahadir Balban
5
 *
6
 */
7
 
8
#include INC_PLAT(cm.h)
9
#include INC_ARCH(io.h)
10
 
11
/*
12
 * Enable Interface clock of device (represented by bit)
13
 * in CM module's(represented by CM_BASE) CM_FCLEN register
14
 */
15
void omap_cm_enable_iclk(unsigned long cm_base, int bit)
16
{
17
        unsigned int val = 0;
18
 
19
        val = read((cm_base + CM_FCLKEN_OFFSET));
20
        val |= (1 << bit);
21
        write(val, (cm_base + CM_FCLKEN_OFFSET));
22
}
23
 
24
/*
25
 * Enable Functional clock of device (represented by bit)
26
 * in CM module's(represented by CM_BASE) CM_FCLEN register
27
 */
28
void omap_cm_enable_fclk(unsigned long cm_base, int bit)
29
{
30
        unsigned int val = 0;
31
 
32
        val = read((cm_base + CM_ICLKEN_OFFSET));
33
        val |= (1 << bit);
34
        write(val, (cm_base + CM_FCLKEN_OFFSET));
35
}
36
 
37
/* Set clock source for device */
38
void omap_cm_clk_select(unsigned long cm_base, int bit, int src)
39
{
40
        unsigned int val = 0;
41
 
42
        val = read((cm_base + CM_CLKSEL_OFFSET));
43
        val |= (src << bit);
44
        write(val, (cm_base + CM_CLKSEL_OFFSET));
45
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.