Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
37b797b2
Commit
37b797b2
authored
Jan 18, 2006
by
Russell King
Committed by
Russell King
Jan 18, 2006
Browse files
Options
Browse Files
Download
Plain Diff
Merge master.kernel.org:/pub/scm/linux/kernel/git/tmlind/linux-omap-upstream
parents
1e74c891
30ff720b
Changes
12
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
152 additions
and
189 deletions
+152
-189
arch/arm/mach-omap1/clock.c
arch/arm/mach-omap1/clock.c
+22
-22
arch/arm/mach-omap1/clock.h
arch/arm/mach-omap1/clock.h
+84
-84
arch/arm/mach-omap1/serial.c
arch/arm/mach-omap1/serial.c
+3
-3
arch/arm/mach-omap2/clock.c
arch/arm/mach-omap2/clock.c
+15
-17
arch/arm/mach-omap2/clock.h
arch/arm/mach-omap2/clock.h
+6
-6
arch/arm/mach-omap2/serial.c
arch/arm/mach-omap2/serial.c
+6
-6
arch/arm/mach-omap2/timer-gp.c
arch/arm/mach-omap2/timer-gp.c
+1
-1
arch/arm/plat-omap/clock.c
arch/arm/plat-omap/clock.c
+4
-37
arch/arm/plat-omap/gpio.c
arch/arm/plat-omap/gpio.c
+3
-3
arch/arm/plat-omap/mcbsp.c
arch/arm/plat-omap/mcbsp.c
+6
-6
arch/arm/plat-omap/ocpi.c
arch/arm/plat-omap/ocpi.c
+2
-2
include/asm-arm/arch-omap/clock.h
include/asm-arm/arch-omap/clock.h
+0
-2
No files found.
arch/arm/mach-omap1/clock.c
View file @
37b797b2
...
...
@@ -50,10 +50,10 @@ static int omap1_clk_enable_dsp_domain(struct clk *clk)
{
int
retval
;
retval
=
omap1_clk_
us
e
(
&
api_ck
.
clk
);
retval
=
omap1_clk_
enabl
e
(
&
api_ck
.
clk
);
if
(
!
retval
)
{
retval
=
omap1_clk_enable
(
clk
);
omap1_clk_
unus
e
(
&
api_ck
.
clk
);
retval
=
omap1_clk_enable
_generic
(
clk
);
omap1_clk_
disabl
e
(
&
api_ck
.
clk
);
}
return
retval
;
...
...
@@ -61,9 +61,9 @@ static int omap1_clk_enable_dsp_domain(struct clk *clk)
static
void
omap1_clk_disable_dsp_domain
(
struct
clk
*
clk
)
{
if
(
omap1_clk_
us
e
(
&
api_ck
.
clk
)
==
0
)
{
omap1_clk_disable
(
clk
);
omap1_clk_
unus
e
(
&
api_ck
.
clk
);
if
(
omap1_clk_
enabl
e
(
&
api_ck
.
clk
)
==
0
)
{
omap1_clk_disable
_generic
(
clk
);
omap1_clk_
disabl
e
(
&
api_ck
.
clk
);
}
}
...
...
@@ -72,7 +72,7 @@ static int omap1_clk_enable_uart_functional(struct clk *clk)
int
ret
;
struct
uart_clk
*
uclk
;
ret
=
omap1_clk_enable
(
clk
);
ret
=
omap1_clk_enable
_generic
(
clk
);
if
(
ret
==
0
)
{
/* Set smart idle acknowledgement mode */
uclk
=
(
struct
uart_clk
*
)
clk
;
...
...
@@ -91,7 +91,7 @@ static void omap1_clk_disable_uart_functional(struct clk *clk)
uclk
=
(
struct
uart_clk
*
)
clk
;
omap_writeb
((
omap_readb
(
uclk
->
sysc_addr
)
&
~
0x18
),
uclk
->
sysc_addr
);
omap1_clk_disable
(
clk
);
omap1_clk_disable
_generic
(
clk
);
}
static
void
omap1_clk_allow_idle
(
struct
clk
*
clk
)
...
...
@@ -230,9 +230,9 @@ static void omap1_ckctl_recalc_dsp_domain(struct clk * clk)
* Note that DSP_CKCTL virt addr = phys addr, so
* we must use __raw_readw() instead of omap_readw().
*/
omap1_clk_
us
e
(
&
api_ck
.
clk
);
omap1_clk_
enabl
e
(
&
api_ck
.
clk
);
dsor
=
1
<<
(
3
&
(
__raw_readw
(
DSP_CKCTL
)
>>
clk
->
rate_offset
));
omap1_clk_
unus
e
(
&
api_ck
.
clk
);
omap1_clk_
disabl
e
(
&
api_ck
.
clk
);
if
(
unlikely
(
clk
->
rate
==
clk
->
parent
->
rate
/
dsor
))
return
;
/* No change, quick exit */
...
...
@@ -412,12 +412,12 @@ static void omap1_init_ext_clk(struct clk * clk)
clk
->
rate
=
96000000
/
dsor
;
}
static
int
omap1_clk_
us
e
(
struct
clk
*
clk
)
static
int
omap1_clk_
enabl
e
(
struct
clk
*
clk
)
{
int
ret
=
0
;
if
(
clk
->
usecount
++
==
0
)
{
if
(
likely
(
clk
->
parent
))
{
ret
=
omap1_clk_
us
e
(
clk
->
parent
);
ret
=
omap1_clk_
enabl
e
(
clk
->
parent
);
if
(
unlikely
(
ret
!=
0
))
{
clk
->
usecount
--
;
...
...
@@ -432,7 +432,7 @@ static int omap1_clk_use(struct clk *clk)
ret
=
clk
->
enable
(
clk
);
if
(
unlikely
(
ret
!=
0
)
&&
clk
->
parent
)
{
omap1_clk_
unus
e
(
clk
->
parent
);
omap1_clk_
disabl
e
(
clk
->
parent
);
clk
->
usecount
--
;
}
}
...
...
@@ -440,12 +440,12 @@ static int omap1_clk_use(struct clk *clk)
return
ret
;
}
static
void
omap1_clk_
unus
e
(
struct
clk
*
clk
)
static
void
omap1_clk_
disabl
e
(
struct
clk
*
clk
)
{
if
(
clk
->
usecount
>
0
&&
!
(
--
clk
->
usecount
))
{
clk
->
disable
(
clk
);
if
(
likely
(
clk
->
parent
))
{
omap1_clk_
unus
e
(
clk
->
parent
);
omap1_clk_
disabl
e
(
clk
->
parent
);
if
(
clk
->
flags
&
CLOCK_NO_IDLE_PARENT
)
if
(
!
cpu_is_omap24xx
())
omap1_clk_allow_idle
(
clk
->
parent
);
...
...
@@ -453,7 +453,7 @@ static void omap1_clk_unuse(struct clk *clk)
}
}
static
int
omap1_clk_enable
(
struct
clk
*
clk
)
static
int
omap1_clk_enable
_generic
(
struct
clk
*
clk
)
{
__u16
regval16
;
__u32
regval32
;
...
...
@@ -492,7 +492,7 @@ static int omap1_clk_enable(struct clk *clk)
return
0
;
}
static
void
omap1_clk_disable
(
struct
clk
*
clk
)
static
void
omap1_clk_disable
_generic
(
struct
clk
*
clk
)
{
__u16
regval16
;
__u32
regval32
;
...
...
@@ -654,8 +654,8 @@ late_initcall(omap1_late_clk_reset);
#endif
static
struct
clk_functions
omap1_clk_functions
=
{
.
clk_
use
=
omap1_clk_us
e
,
.
clk_
unuse
=
omap1_clk_unus
e
,
.
clk_
enable
=
omap1_clk_enabl
e
,
.
clk_
disable
=
omap1_clk_disabl
e
,
.
clk_round_rate
=
omap1_clk_round_rate
,
.
clk_set_rate
=
omap1_clk_set_rate
,
};
...
...
@@ -780,9 +780,9 @@ int __init omap1_clk_init(void)
* Only enable those clocks we will need, let the drivers
* enable other clocks as necessary
*/
clk_
us
e
(
&
armper_ck
.
clk
);
clk_
us
e
(
&
armxor_ck
.
clk
);
clk_
us
e
(
&
armtim_ck
.
clk
);
/* This should be done by timer code */
clk_
enabl
e
(
&
armper_ck
.
clk
);
clk_
enabl
e
(
&
armxor_ck
.
clk
);
clk_
enabl
e
(
&
armtim_ck
.
clk
);
/* This should be done by timer code */
if
(
cpu_is_omap1510
())
clk_enable
(
&
arm_gpio_ck
);
...
...
arch/arm/mach-omap1/clock.h
View file @
37b797b2
This diff is collapsed.
Click to expand it.
arch/arm/mach-omap1/serial.c
View file @
37b797b2
...
...
@@ -146,7 +146,7 @@ void __init omap_serial_init(void)
if
(
IS_ERR
(
uart1_ck
))
printk
(
"Could not get uart1_ck
\n
"
);
else
{
clk_
us
e
(
uart1_ck
);
clk_
enabl
e
(
uart1_ck
);
if
(
cpu_is_omap1510
())
clk_set_rate
(
uart1_ck
,
12000000
);
}
...
...
@@ -166,7 +166,7 @@ void __init omap_serial_init(void)
if
(
IS_ERR
(
uart2_ck
))
printk
(
"Could not get uart2_ck
\n
"
);
else
{
clk_
us
e
(
uart2_ck
);
clk_
enabl
e
(
uart2_ck
);
if
(
cpu_is_omap1510
())
clk_set_rate
(
uart2_ck
,
12000000
);
else
...
...
@@ -188,7 +188,7 @@ void __init omap_serial_init(void)
if
(
IS_ERR
(
uart3_ck
))
printk
(
"Could not get uart3_ck
\n
"
);
else
{
clk_
us
e
(
uart3_ck
);
clk_
enabl
e
(
uart3_ck
);
if
(
cpu_is_omap1510
())
clk_set_rate
(
uart3_ck
,
12000000
);
}
...
...
arch/arm/mach-omap2/clock.c
View file @
37b797b2
...
...
@@ -111,7 +111,7 @@ static void omap2_clk_fixed_enable(struct clk *clk)
/* Enables clock without considering parent dependencies or use count
* REVISIT: Maybe change this to use clk->enable like on omap1?
*/
static
int
omap2_clk_enable
(
struct
clk
*
clk
)
static
int
_
omap2_clk_enable
(
struct
clk
*
clk
)
{
u32
regval32
;
...
...
@@ -150,7 +150,7 @@ static void omap2_clk_fixed_disable(struct clk *clk)
}
/* Disables clock without considering parent dependencies or use count */
static
void
omap2_clk_disable
(
struct
clk
*
clk
)
static
void
_
omap2_clk_disable
(
struct
clk
*
clk
)
{
u32
regval32
;
...
...
@@ -167,23 +167,23 @@ static void omap2_clk_disable(struct clk *clk)
__raw_writel
(
regval32
,
clk
->
enable_reg
);
}
static
int
omap2_clk_
us
e
(
struct
clk
*
clk
)
static
int
omap2_clk_
enabl
e
(
struct
clk
*
clk
)
{
int
ret
=
0
;
if
(
clk
->
usecount
++
==
0
)
{
if
(
likely
((
u32
)
clk
->
parent
))
ret
=
omap2_clk_
us
e
(
clk
->
parent
);
ret
=
omap2_clk_
enabl
e
(
clk
->
parent
);
if
(
unlikely
(
ret
!=
0
))
{
clk
->
usecount
--
;
return
ret
;
}
ret
=
omap2_clk_enable
(
clk
);
ret
=
_
omap2_clk_enable
(
clk
);
if
(
unlikely
(
ret
!=
0
)
&&
clk
->
parent
)
{
omap2_clk_
unus
e
(
clk
->
parent
);
omap2_clk_
disabl
e
(
clk
->
parent
);
clk
->
usecount
--
;
}
}
...
...
@@ -191,12 +191,12 @@ static int omap2_clk_use(struct clk *clk)
return
ret
;
}
static
void
omap2_clk_
unus
e
(
struct
clk
*
clk
)
static
void
omap2_clk_
disabl
e
(
struct
clk
*
clk
)
{
if
(
clk
->
usecount
>
0
&&
!
(
--
clk
->
usecount
))
{
omap2_clk_disable
(
clk
);
_
omap2_clk_disable
(
clk
);
if
(
likely
((
u32
)
clk
->
parent
))
omap2_clk_
unus
e
(
clk
->
parent
);
omap2_clk_
disabl
e
(
clk
->
parent
);
}
}
...
...
@@ -873,7 +873,7 @@ static int omap2_clk_set_parent(struct clk *clk, struct clk *new_parent)
reg
=
(
void
__iomem
*
)
src_sel
;
if
(
clk
->
usecount
>
0
)
omap2_clk_disable
(
clk
);
_
omap2_clk_disable
(
clk
);
/* Set new source value (previous dividers if any in effect) */
reg_val
=
__raw_readl
(
reg
)
&
~
(
field_mask
<<
src_off
);
...
...
@@ -884,7 +884,7 @@ static int omap2_clk_set_parent(struct clk *clk, struct clk *new_parent)
__raw_writel
(
0x1
,
(
void
__iomem
*
)
&
PRCM_CLKCFG_CTRL
);
if
(
clk
->
usecount
>
0
)
omap2_clk_enable
(
clk
);
_
omap2_clk_enable
(
clk
);
clk
->
parent
=
new_parent
;
...
...
@@ -999,8 +999,6 @@ static int omap2_select_table_rate(struct clk * clk, unsigned long rate)
static
struct
clk_functions
omap2_clk_functions
=
{
.
clk_enable
=
omap2_clk_enable
,
.
clk_disable
=
omap2_clk_disable
,
.
clk_use
=
omap2_clk_use
,
.
clk_unuse
=
omap2_clk_unuse
,
.
clk_round_rate
=
omap2_clk_round_rate
,
.
clk_set_rate
=
omap2_clk_set_rate
,
.
clk_set_parent
=
omap2_clk_set_parent
,
...
...
@@ -1045,7 +1043,7 @@ static void __init omap2_disable_unused_clocks(void)
continue
;
printk
(
KERN_INFO
"Disabling unused clock
\"
%s
\"\n
"
,
ck
->
name
);
omap2_clk_disable
(
ck
);
_
omap2_clk_disable
(
ck
);
}
}
late_initcall
(
omap2_disable_unused_clocks
);
...
...
@@ -1120,10 +1118,10 @@ int __init omap2_clk_init(void)
* Only enable those clocks we will need, let the drivers
* enable other clocks as necessary
*/
clk_
us
e
(
&
sync_32k_ick
);
clk_
us
e
(
&
omapctrl_ick
);
clk_
enabl
e
(
&
sync_32k_ick
);
clk_
enabl
e
(
&
omapctrl_ick
);
if
(
cpu_is_omap2430
())
clk_
us
e
(
&
sdrc_ick
);
clk_
enabl
e
(
&
sdrc_ick
);
return
0
;
}
arch/arm/mach-omap2/clock.h
View file @
37b797b2
...
...
@@ -24,7 +24,7 @@ static void omap2_propagate_rate(struct clk * clk);
static
void
omap2_mpu_recalc
(
struct
clk
*
clk
);
static
int
omap2_select_table_rate
(
struct
clk
*
clk
,
unsigned
long
rate
);
static
long
omap2_round_to_table_rate
(
struct
clk
*
clk
,
unsigned
long
rate
);
static
void
omap2_clk_
unus
e
(
struct
clk
*
clk
);
static
void
omap2_clk_
disabl
e
(
struct
clk
*
clk
);
static
void
omap2_sys_clk_recalc
(
struct
clk
*
clk
);
static
u32
omap2_clksel_to_divisor
(
u32
div_sel
,
u32
field_val
);
static
u32
omap2_clksel_get_divisor
(
struct
clk
*
clk
);
...
...
@@ -859,7 +859,7 @@ static struct clk core_l3_ck = { /* Used for ick and fck, interconnect */
static
struct
clk
usb_l4_ick
=
{
/* FS-USB interface clock */
.
name
=
"usb_l4_ick"
,
.
parent
=
&
core_ck
,
.
parent
=
&
core_
l3_
ck
,
.
flags
=
CLOCK_IN_OMAP242X
|
CLOCK_IN_OMAP243X
|
RATE_CKCTL
|
CM_CORE_SEL1
|
DELAYED_APP
|
CONFIG_PARTICIPANT
,
...
...
@@ -1045,7 +1045,7 @@ static struct clk gpt1_ick = {
.
name
=
"gpt1_ick"
,
.
parent
=
&
l4_ck
,
.
flags
=
CLOCK_IN_OMAP242X
|
CLOCK_IN_OMAP243X
,
.
enable_reg
=
(
void
__iomem
*
)
&
CM_ICLKEN_WKUP
,
/* Bit
4
*/
.
enable_reg
=
(
void
__iomem
*
)
&
CM_ICLKEN_WKUP
,
/* Bit
0
*/
.
enable_bit
=
0
,
.
recalc
=
&
omap2_followparent_recalc
,
};
...
...
@@ -1055,7 +1055,7 @@ static struct clk gpt1_fck = {
.
parent
=
&
func_32k_ck
,
.
flags
=
CLOCK_IN_OMAP242X
|
CLOCK_IN_OMAP243X
|
CM_WKUP_SEL1
,
.
enable_reg
=
(
void
__iomem
*
)
&
CM_FCLKEN_WKUP
,
.
enable_reg
=
(
void
__iomem
*
)
&
CM_FCLKEN_WKUP
,
/* Bit0 */
.
enable_bit
=
0
,
.
src_offset
=
0
,
.
recalc
=
&
omap2_followparent_recalc
,
...
...
@@ -1065,7 +1065,7 @@ static struct clk gpt2_ick = {
.
name
=
"gpt2_ick"
,
.
parent
=
&
l4_ck
,
.
flags
=
CLOCK_IN_OMAP242X
|
CLOCK_IN_OMAP243X
,
.
enable_reg
=
(
void
__iomem
*
)
&
CM_ICLKEN1_CORE
,
/*
b
it4 */
.
enable_reg
=
(
void
__iomem
*
)
&
CM_ICLKEN1_CORE
,
/*
B
it4 */
.
enable_bit
=
0
,
.
recalc
=
&
omap2_followparent_recalc
,
};
...
...
@@ -1839,7 +1839,7 @@ static struct clk usb_fck = {
static
struct
clk
usbhs_ick
=
{
.
name
=
"usbhs_ick"
,
.
parent
=
&
l4
_ck
,
.
parent
=
&
core_l3
_ck
,
.
flags
=
CLOCK_IN_OMAP243X
,
.
enable_reg
=
(
void
__iomem
*
)
&
CM_ICLKEN2_CORE
,
.
enable_bit
=
6
,
...
...
arch/arm/mach-omap2/serial.c
View file @
37b797b2
...
...
@@ -119,14 +119,14 @@ void __init omap_serial_init()
if
(
IS_ERR
(
uart1_ick
))
printk
(
"Could not get uart1_ick
\n
"
);
else
{
clk_
us
e
(
uart1_ick
);
clk_
enabl
e
(
uart1_ick
);
}
uart1_fck
=
clk_get
(
NULL
,
"uart1_fck"
);
if
(
IS_ERR
(
uart1_fck
))
printk
(
"Could not get uart1_fck
\n
"
);
else
{
clk_
us
e
(
uart1_fck
);
clk_
enabl
e
(
uart1_fck
);
}
break
;
case
1
:
...
...
@@ -134,14 +134,14 @@ void __init omap_serial_init()
if
(
IS_ERR
(
uart2_ick
))
printk
(
"Could not get uart2_ick
\n
"
);
else
{
clk_
us
e
(
uart2_ick
);
clk_
enabl
e
(
uart2_ick
);
}
uart2_fck
=
clk_get
(
NULL
,
"uart2_fck"
);
if
(
IS_ERR
(
uart2_fck
))
printk
(
"Could not get uart2_fck
\n
"
);
else
{
clk_
us
e
(
uart2_fck
);
clk_
enabl
e
(
uart2_fck
);
}
break
;
case
2
:
...
...
@@ -149,14 +149,14 @@ void __init omap_serial_init()
if
(
IS_ERR
(
uart3_ick
))
printk
(
"Could not get uart3_ick
\n
"
);
else
{
clk_
us
e
(
uart3_ick
);
clk_
enabl
e
(
uart3_ick
);
}
uart3_fck
=
clk_get
(
NULL
,
"uart3_fck"
);
if
(
IS_ERR
(
uart3_fck
))
printk
(
"Could not get uart3_fck
\n
"
);
else
{
clk_
us
e
(
uart3_fck
);
clk_
enabl
e
(
uart3_fck
);
}
break
;
}
...
...
arch/arm/mach-omap2/timer-gp.c
View file @
37b797b2
...
...
@@ -104,7 +104,7 @@ static void __init omap2_gp_timer_init(void)
if
(
IS_ERR
(
sys_ck
))
printk
(
KERN_ERR
"Could not get sys_ck
\n
"
);
else
{
clk_
us
e
(
sys_ck
);
clk_
enabl
e
(
sys_ck
);
tick_period
=
clk_get_rate
(
sys_ck
)
/
100
;
clk_put
(
sys_ck
);
}
...
...
arch/arm/plat-omap/clock.c
View file @
37b797b2
...
...
@@ -34,7 +34,7 @@ DEFINE_SPINLOCK(clockfw_lock);
static
struct
clk_functions
*
arch_clock
;
/*-------------------------------------------------------------------------
* Standard clock functions defined in
asm/hardware/cloc
k.h
* Standard clock functions defined in
include/linux/cl
k.h
*-------------------------------------------------------------------------*/
struct
clk
*
clk_get
(
struct
device
*
dev
,
const
char
*
id
)
...
...
@@ -60,12 +60,8 @@ int clk_enable(struct clk *clk)
int
ret
=
0
;
spin_lock_irqsave
(
&
clockfw_lock
,
flags
);
if
(
clk
->
enable
)
ret
=
clk
->
enable
(
clk
);
else
if
(
arch_clock
->
clk_enable
)
if
(
arch_clock
->
clk_enable
)
ret
=
arch_clock
->
clk_enable
(
clk
);
else
printk
(
KERN_ERR
"Could not enable clock %s
\n
"
,
clk
->
name
);
spin_unlock_irqrestore
(
&
clockfw_lock
,
flags
);
return
ret
;
...
...
@@ -77,41 +73,12 @@ void clk_disable(struct clk *clk)
unsigned
long
flags
;
spin_lock_irqsave
(
&
clockfw_lock
,
flags
);
if
(
clk
->
disable
)
clk
->
disable
(
clk
);
else
if
(
arch_clock
->
clk_disable
)
if
(
arch_clock
->
clk_disable
)
arch_clock
->
clk_disable
(
clk
);
else
printk
(
KERN_ERR
"Could not disable clock %s
\n
"
,
clk
->
name
);
spin_unlock_irqrestore
(
&
clockfw_lock
,
flags
);
}
EXPORT_SYMBOL
(
clk_disable
);
int
clk_use
(
struct
clk
*
clk
)
{
unsigned
long
flags
;
int
ret
=
0
;
spin_lock_irqsave
(
&
clockfw_lock
,
flags
);
if
(
arch_clock
->
clk_use
)
ret
=
arch_clock
->
clk_use
(
clk
);
spin_unlock_irqrestore
(
&
clockfw_lock
,
flags
);
return
ret
;
}
EXPORT_SYMBOL
(
clk_use
);
void
clk_unuse
(
struct
clk
*
clk
)
{
unsigned
long
flags
;
spin_lock_irqsave
(
&
clockfw_lock
,
flags
);
if
(
arch_clock
->
clk_unuse
)
arch_clock
->
clk_unuse
(
clk
);
spin_unlock_irqrestore
(
&
clockfw_lock
,
flags
);
}
EXPORT_SYMBOL
(
clk_unuse
);
int
clk_get_usecount
(
struct
clk
*
clk
)
{
unsigned
long
flags
;
...
...
@@ -146,7 +113,7 @@ void clk_put(struct clk *clk)
EXPORT_SYMBOL
(
clk_put
);
/*-------------------------------------------------------------------------
* Optional clock functions defined in
asm/hardware/cloc
k.h
* Optional clock functions defined in
include/linux/cl
k.h
*-------------------------------------------------------------------------*/
long
clk_round_rate
(
struct
clk
*
clk
,
unsigned
long
rate
)
...
...
arch/arm/plat-omap/gpio.c
View file @
37b797b2
...
...
@@ -853,19 +853,19 @@ static int __init _omap_gpio_init(void)
if
(
IS_ERR
(
gpio_ick
))
printk
(
"Could not get arm_gpio_ck
\n
"
);
else
clk_
us
e
(
gpio_ick
);
clk_
enabl
e
(
gpio_ick
);
}
if
(
cpu_is_omap24xx
())
{
gpio_ick
=
clk_get
(
NULL
,
"gpios_ick"
);
if
(
IS_ERR
(
gpio_ick
))
printk
(
"Could not get gpios_ick
\n
"
);
else
clk_
us
e
(
gpio_ick
);
clk_
enabl
e
(
gpio_ick
);
gpio_fck
=
clk_get
(
NULL
,
"gpios_fck"
);
if
(
IS_ERR
(
gpio_ick
))
printk
(
"Could not get gpios_fck
\n
"
);
else
clk_
us
e
(
gpio_fck
);
clk_
enabl
e
(
gpio_fck
);
}
#ifdef CONFIG_ARCH_OMAP15XX
...
...
arch/arm/plat-omap/mcbsp.c
View file @
37b797b2
...
...
@@ -190,11 +190,11 @@ static int omap_mcbsp_check(unsigned int id)
static
void
omap_mcbsp_dsp_request
(
void
)
{
if
(
cpu_is_omap1510
()
||
cpu_is_omap16xx
())
{
clk_
us
e
(
mcbsp_dsp_ck
);
clk_
us
e
(
mcbsp_api_ck
);
clk_
enabl
e
(
mcbsp_dsp_ck
);
clk_
enabl
e
(
mcbsp_api_ck
);
/* enable 12MHz clock to mcbsp 1 & 3 */
clk_
us
e
(
mcbsp_dspxor_ck
);
clk_
enabl
e
(
mcbsp_dspxor_ck
);
/*
* DSP external peripheral reset
...
...
@@ -208,9 +208,9 @@ static void omap_mcbsp_dsp_request(void)
static
void
omap_mcbsp_dsp_free
(
void
)
{
if
(
cpu_is_omap1510
()
||
cpu_is_omap16xx
())
{
clk_
unus
e
(
mcbsp_dspxor_ck
);
clk_
unus
e
(
mcbsp_dsp_ck
);
clk_
unus
e
(
mcbsp_api_ck
);
clk_
disabl
e
(
mcbsp_dspxor_ck
);
clk_
disabl
e
(
mcbsp_dsp_ck
);
clk_
disabl
e
(
mcbsp_api_ck
);
}
}
...
...
arch/arm/plat-omap/ocpi.c
View file @
37b797b2
...
...
@@ -88,7 +88,7 @@ static int __init omap_ocpi_init(void)
if
(
IS_ERR
(
ocpi_ck
))
return
PTR_ERR
(
ocpi_ck
);
clk_
us
e
(
ocpi_ck
);
clk_
enabl
e
(
ocpi_ck
);
ocpi_enable
();
printk
(
"OMAP OCPI interconnect driver loaded
\n
"
);
...
...
@@ -102,7 +102,7 @@ static void __exit omap_ocpi_exit(void)
if
(
!
cpu_is_omap16xx
())
return
;
clk_
unus
e
(
ocpi_ck
);
clk_
disabl
e
(
ocpi_ck
);
clk_put
(
ocpi_ck
);
}
...
...
include/asm-arm/arch-omap/clock.h
View file @
37b797b2
...
...
@@ -38,8 +38,6 @@ struct clk {
struct
clk_functions
{
int
(
*
clk_enable
)(
struct
clk
*
clk
);
void
(
*
clk_disable
)(
struct
clk
*
clk
);
int
(
*
clk_use
)(
struct
clk
*
clk
);
void
(
*
clk_unuse
)(
struct
clk
*
clk
);
long
(
*
clk_round_rate
)(
struct
clk
*
clk
,
unsigned
long
rate
);
int
(
*
clk_set_rate
)(
struct
clk
*
clk
,
unsigned
long
rate
);
int
(
*
clk_set_parent
)(
struct
clk
*
clk
,
struct
clk
*
parent
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment