diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-20 12:13:34 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-20 12:13:34 -0400 |
commit | ed402af3c23a4804b3f8899263e8d0f97c62ab49 (patch) | |
tree | 3aa971aea57f900a3060cc0545b199ef611f4dcf /drivers/video | |
parent | 096e6f673dc02a6394dc9a7d8f8735c6978f5b91 (diff) | |
parent | 40e24c403f325715f9c43b9fed2068641201ee0b (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (112 commits)
sh: Move SH-4 CPU headers down one more level.
sh: Only build in gpio.o when CONFIG_GENERIC_GPIO is selected.
sh: Migrate common board headers to mach-common/.
sh: Move the CPU definition headers from asm/ to cpu/.
serial: sh-sci: Add support SCIF of SH7723
video: add sh_mobile_lcdc platform flags
video: remove unused sh_mobile_lcdc platform data
sh: remove consistent alloc cruft
sh: add dynamic crash base address support
sh: reduce Migo-R smc91x overruns
sh: Fix up some merge damage.
Fix debugfs_create_file's error checking method for arch/sh/mm/
Fix debugfs_create_dir's error checking method for arch/sh/kernel/
sh: ap325rxa: Add support RTC RX-8564LC in AP325RXA board
sh: Use sh7720 GPIO on magicpanelr2 board
sh: Add sh7720 pinmux code
sh: Use sh7203 GPIO on rsk7203 board
sh: Add sh7203 pinmux code
sh: Use sh7723 GPIO on AP325RXA board
sh: Add sh7723 pinmux code
...
Diffstat (limited to 'drivers/video')
-rw-r--r-- | drivers/video/backlight/hp680_bl.c | 2 | ||||
-rw-r--r-- | drivers/video/sh_mobile_lcdcfb.c | 14 |
2 files changed, 13 insertions, 3 deletions
diff --git a/drivers/video/backlight/hp680_bl.c b/drivers/video/backlight/hp680_bl.c index 6fa0b9d5559a..d4cfed0b26d5 100644 --- a/drivers/video/backlight/hp680_bl.c +++ b/drivers/video/backlight/hp680_bl.c | |||
@@ -19,7 +19,7 @@ | |||
19 | #include <linux/backlight.h> | 19 | #include <linux/backlight.h> |
20 | 20 | ||
21 | #include <cpu/dac.h> | 21 | #include <cpu/dac.h> |
22 | #include <asm/hp6xx.h> | 22 | #include <mach/hp6xx.h> |
23 | #include <asm/hd64461.h> | 23 | #include <asm/hd64461.h> |
24 | 24 | ||
25 | #define HP680_MAX_INTENSITY 255 | 25 | #define HP680_MAX_INTENSITY 255 |
diff --git a/drivers/video/sh_mobile_lcdcfb.c b/drivers/video/sh_mobile_lcdcfb.c index 4c32c06579a0..efff672fd7b8 100644 --- a/drivers/video/sh_mobile_lcdcfb.c +++ b/drivers/video/sh_mobile_lcdcfb.c | |||
@@ -16,7 +16,7 @@ | |||
16 | #include <linux/clk.h> | 16 | #include <linux/clk.h> |
17 | #include <linux/platform_device.h> | 17 | #include <linux/platform_device.h> |
18 | #include <linux/dma-mapping.h> | 18 | #include <linux/dma-mapping.h> |
19 | #include <asm/sh_mobile_lcdc.h> | 19 | #include <video/sh_mobile_lcdc.h> |
20 | 20 | ||
21 | #define PALETTE_NR 16 | 21 | #define PALETTE_NR 16 |
22 | 22 | ||
@@ -34,7 +34,9 @@ struct sh_mobile_lcdc_chan { | |||
34 | 34 | ||
35 | struct sh_mobile_lcdc_priv { | 35 | struct sh_mobile_lcdc_priv { |
36 | void __iomem *base; | 36 | void __iomem *base; |
37 | #ifdef CONFIG_HAVE_CLK | ||
37 | struct clk *clk; | 38 | struct clk *clk; |
39 | #endif | ||
38 | unsigned long lddckr; | 40 | unsigned long lddckr; |
39 | struct sh_mobile_lcdc_chan ch[2]; | 41 | struct sh_mobile_lcdc_chan ch[2]; |
40 | }; | 42 | }; |
@@ -260,6 +262,11 @@ static int sh_mobile_lcdc_start(struct sh_mobile_lcdc_priv *priv) | |||
260 | tmp = ch->ldmt1r_value; | 262 | tmp = ch->ldmt1r_value; |
261 | tmp |= (lcd_cfg->sync & FB_SYNC_VERT_HIGH_ACT) ? 0 : 1 << 28; | 263 | tmp |= (lcd_cfg->sync & FB_SYNC_VERT_HIGH_ACT) ? 0 : 1 << 28; |
262 | tmp |= (lcd_cfg->sync & FB_SYNC_HOR_HIGH_ACT) ? 0 : 1 << 27; | 264 | tmp |= (lcd_cfg->sync & FB_SYNC_HOR_HIGH_ACT) ? 0 : 1 << 27; |
265 | tmp |= (ch->cfg.flags & LCDC_FLAGS_DWPOL) ? 1 << 26 : 0; | ||
266 | tmp |= (ch->cfg.flags & LCDC_FLAGS_DIPOL) ? 1 << 25 : 0; | ||
267 | tmp |= (ch->cfg.flags & LCDC_FLAGS_DAPOL) ? 1 << 24 : 0; | ||
268 | tmp |= (ch->cfg.flags & LCDC_FLAGS_HSCNT) ? 1 << 17 : 0; | ||
269 | tmp |= (ch->cfg.flags & LCDC_FLAGS_DWCNT) ? 1 << 16 : 0; | ||
263 | lcdc_write_chan(ch, LDMT1R, tmp); | 270 | lcdc_write_chan(ch, LDMT1R, tmp); |
264 | 271 | ||
265 | /* setup SYS bus */ | 272 | /* setup SYS bus */ |
@@ -422,6 +429,7 @@ static int sh_mobile_lcdc_setup_clocks(struct device *dev, int clock_source, | |||
422 | 429 | ||
423 | priv->lddckr = icksel << 16; | 430 | priv->lddckr = icksel << 16; |
424 | 431 | ||
432 | #ifdef CONFIG_HAVE_CLK | ||
425 | if (str) { | 433 | if (str) { |
426 | priv->clk = clk_get(dev, str); | 434 | priv->clk = clk_get(dev, str); |
427 | if (IS_ERR(priv->clk)) { | 435 | if (IS_ERR(priv->clk)) { |
@@ -431,6 +439,7 @@ static int sh_mobile_lcdc_setup_clocks(struct device *dev, int clock_source, | |||
431 | 439 | ||
432 | clk_enable(priv->clk); | 440 | clk_enable(priv->clk); |
433 | } | 441 | } |
442 | #endif | ||
434 | 443 | ||
435 | return 0; | 444 | return 0; |
436 | } | 445 | } |
@@ -585,7 +594,6 @@ static int __init sh_mobile_lcdc_probe(struct platform_device *pdev) | |||
585 | goto err1; | 594 | goto err1; |
586 | } | 595 | } |
587 | 596 | ||
588 | priv->lddckr = pdata->lddckr; | ||
589 | priv->base = ioremap_nocache(res->start, (res->end - res->start) + 1); | 597 | priv->base = ioremap_nocache(res->start, (res->end - res->start) + 1); |
590 | 598 | ||
591 | for (i = 0; i < j; i++) { | 599 | for (i = 0; i < j; i++) { |
@@ -688,10 +696,12 @@ static int sh_mobile_lcdc_remove(struct platform_device *pdev) | |||
688 | fb_dealloc_cmap(&info->cmap); | 696 | fb_dealloc_cmap(&info->cmap); |
689 | } | 697 | } |
690 | 698 | ||
699 | #ifdef CONFIG_HAVE_CLK | ||
691 | if (priv->clk) { | 700 | if (priv->clk) { |
692 | clk_disable(priv->clk); | 701 | clk_disable(priv->clk); |
693 | clk_put(priv->clk); | 702 | clk_put(priv->clk); |
694 | } | 703 | } |
704 | #endif | ||
695 | 705 | ||
696 | if (priv->base) | 706 | if (priv->base) |
697 | iounmap(priv->base); | 707 | iounmap(priv->base); |