Merge branch 'next-samsung-clkdev-fix' into next-samsung-devel
[pandora-kernel.git] / arch / arm / mach-exynos4 / init.c
1 /* linux/arch/arm/mach-exynos4/init.c
2  *
3  * Copyright (c) 2010 Samsung Electronics Co., Ltd.
4  *              http://www.samsung.com/
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9 */
10
11 #include <linux/serial_core.h>
12
13 #include <plat/cpu.h>
14 #include <plat/devs.h>
15 #include <plat/regs-serial.h>
16
17 static struct s3c24xx_uart_clksrc exynos4_serial_clocks[] = {
18         [0] = {
19                 .name           = "uclk1",
20                 .divisor        = 1,
21                 .min_baud       = 0,
22                 .max_baud       = 0,
23         },
24 };
25
26 /* uart registration process */
27 void __init exynos4_common_init_uarts(struct s3c2410_uartcfg *cfg, int no)
28 {
29         struct s3c2410_uartcfg *tcfg = cfg;
30         u32 ucnt;
31
32         for (ucnt = 0; ucnt < no; ucnt++, tcfg++) {
33                 if (!tcfg->clocks) {
34                         tcfg->has_fracval = 1;
35                         tcfg->clocks = exynos4_serial_clocks;
36                         tcfg->clocks_size = ARRAY_SIZE(exynos4_serial_clocks);
37                 }
38                 tcfg->flags |= NO_NEED_CHECK_CLKSRC;
39         }
40
41         s3c24xx_init_uartdevs("s5pv210-uart", s5p_uart_resources, cfg, no);
42 }