Commit | Line | Data |
---|---|---|
5b696a67 MS |
1 | /* linux/arch/arm/plat-s5pv210/setup-fb-24bpp.c |
2 | * | |
3 | * Copyright (c) 2009-2010 Samsung Electronics Co., Ltd. | |
4 | * http://www.samsung.com/ | |
5 | * | |
6 | * Base s5pv210 setup information for 24bpp LCD framebuffer | |
7 | * | |
8 | * This program is free software; you can redistribute it and/or modify | |
9 | * it under the terms of the GNU General Public License version 2 as | |
10 | * published by the Free Software Foundation. | |
11 | */ | |
12 | ||
13 | #include <linux/kernel.h> | |
14 | #include <linux/types.h> | |
15 | #include <linux/fb.h> | |
1c739c7f | 16 | #include <linux/gpio.h> |
5b696a67 | 17 | |
5b696a67 MS |
18 | #include <mach/map.h> |
19 | #include <plat/fb.h> | |
20 | #include <mach/regs-clock.h> | |
21 | #include <plat/gpio-cfg.h> | |
22 | ||
53134a74 | 23 | static void s5pv210_fb_cfg_gpios(unsigned int base, unsigned int nr) |
5b696a67 | 24 | { |
a7aac9d5 | 25 | s3c_gpio_cfgrange_nopull(base, nr, S3C_GPIO_SFN(2)); |
5b696a67 | 26 | |
53134a74 BD |
27 | for (; nr > 0; nr--, base++) |
28 | s5p_gpio_set_drvstr(base, S5P_GPIO_DRVSTR_LV4); | |
29 | } | |
5b696a67 | 30 | |
5b696a67 | 31 | |
53134a74 BD |
32 | void s5pv210_fb_gpio_setup_24bpp(void) |
33 | { | |
34 | s5pv210_fb_cfg_gpios(S5PV210_GPF0(0), 8); | |
35 | s5pv210_fb_cfg_gpios(S5PV210_GPF1(0), 8); | |
36 | s5pv210_fb_cfg_gpios(S5PV210_GPF2(0), 8); | |
37 | s5pv210_fb_cfg_gpios(S5PV210_GPF3(0), 4); | |
5b696a67 MS |
38 | |
39 | /* Set DISPLAY_CONTROL register for Display path selection. | |
40 | * | |
41 | * ouput | RGB | I80 | ITU | |
42 | * ----------------------------------- | |
43 | * 00 | MIE | FIMD | FIMD | |
44 | * 01 | MDNIE | MDNIE | FIMD | |
45 | * 10 | FIMD | FIMD | FIMD | |
46 | * 11 | FIMD | FIMD | FIMD | |
47 | */ | |
48 | writel(0x2, S5P_MDNIE_SEL); | |
49 | } |