aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2011-09-11 16:59:04 -0400
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2012-03-12 17:40:49 -0400
commit018882aa66f5110478edc14e6c3fecc2b46ca0c0 (patch)
treeaf28c376103c290cc17f4dab05af92f46365e076
parentaa7b5b0b2db6d33a8104e411cb74c15a4983b286 (diff)
fbdev: sh_mobile_lcdc: Remove board configuration board_data field
The field is unused, remove it. Update board code accordingly. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r--arch/arm/mach-shmobile/board-ag5evm.c14
-rw-r--r--arch/arm/mach-shmobile/board-mackerel.c4
-rw-r--r--arch/sh/boards/mach-ap325rxa/setup.c8
-rw-r--r--arch/sh/boards/mach-ecovec24/setup.c4
-rw-r--r--arch/sh/boards/mach-kfr2r09/lcd_wqvga.c10
-rw-r--r--arch/sh/boards/mach-migor/lcd_qvga.c3
-rw-r--r--arch/sh/boards/mach-se/7724/setup.c2
-rw-r--r--arch/sh/include/mach-kfr2r09/mach/kfr2r09.h16
-rw-r--r--arch/sh/include/mach-migor/mach/migor.h2
-rw-r--r--drivers/video/sh_mobile_lcdcfb.c16
-rw-r--r--include/video/sh_mobile_lcdc.h13
11 files changed, 37 insertions, 55 deletions
diff --git a/arch/arm/mach-shmobile/board-ag5evm.c b/arch/arm/mach-shmobile/board-ag5evm.c
index 068b754bc348..7108c5da6077 100644
--- a/arch/arm/mach-shmobile/board-ag5evm.c
+++ b/arch/arm/mach-shmobile/board-ag5evm.c
@@ -229,16 +229,6 @@ static void lcd_backlight_reset(void)
229 gpio_set_value(GPIO_PORT235, 1); 229 gpio_set_value(GPIO_PORT235, 1);
230} 230}
231 231
232static void lcd_on(void *board_data, struct fb_info *info)
233{
234 lcd_backlight_on();
235}
236
237static void lcd_off(void *board_data)
238{
239 lcd_backlight_reset();
240}
241
242/* LCDC0 */ 232/* LCDC0 */
243static const struct fb_videomode lcdc0_modes[] = { 233static const struct fb_videomode lcdc0_modes[] = {
244 { 234 {
@@ -268,8 +258,8 @@ static struct sh_mobile_lcdc_info lcdc0_info = {
268 .lcd_cfg = lcdc0_modes, 258 .lcd_cfg = lcdc0_modes,
269 .num_cfg = ARRAY_SIZE(lcdc0_modes), 259 .num_cfg = ARRAY_SIZE(lcdc0_modes),
270 .board_cfg = { 260 .board_cfg = {
271 .display_on = lcd_on, 261 .display_on = lcd_backlight_on,
272 .display_off = lcd_off, 262 .display_off = lcd_backlight_reset,
273 }, 263 },
274 } 264 }
275}; 265};
diff --git a/arch/arm/mach-shmobile/board-mackerel.c b/arch/arm/mach-shmobile/board-mackerel.c
index f275a817939c..d366e7873a34 100644
--- a/arch/arm/mach-shmobile/board-mackerel.c
+++ b/arch/arm/mach-shmobile/board-mackerel.c
@@ -351,14 +351,14 @@ static struct fb_videomode mackerel_lcdc_modes[] = {
351 }, 351 },
352}; 352};
353 353
354static int mackerel_set_brightness(void *board_data, int brightness) 354static int mackerel_set_brightness(int brightness)
355{ 355{
356 gpio_set_value(GPIO_PORT31, brightness); 356 gpio_set_value(GPIO_PORT31, brightness);
357 357
358 return 0; 358 return 0;
359} 359}
360 360
361static int mackerel_get_brightness(void *board_data) 361static int mackerel_get_brightness(void)
362{ 362{
363 return gpio_get_value(GPIO_PORT31); 363 return gpio_get_value(GPIO_PORT31);
364} 364}
diff --git a/arch/sh/boards/mach-ap325rxa/setup.c b/arch/sh/boards/mach-ap325rxa/setup.c
index ebd0f818a25f..edc1d1bbfa70 100644
--- a/arch/sh/boards/mach-ap325rxa/setup.c
+++ b/arch/sh/boards/mach-ap325rxa/setup.c
@@ -157,7 +157,7 @@ static struct platform_device nand_flash_device = {
157#define PORT_DRVCRA 0xA405018A 157#define PORT_DRVCRA 0xA405018A
158#define PORT_DRVCRB 0xA405018C 158#define PORT_DRVCRB 0xA405018C
159 159
160static int ap320_wvga_set_brightness(void *board_data, int brightness) 160static int ap320_wvga_set_brightness(int brightness)
161{ 161{
162 if (brightness) { 162 if (brightness) {
163 gpio_set_value(GPIO_PTS3, 0); 163 gpio_set_value(GPIO_PTS3, 0);
@@ -170,12 +170,12 @@ static int ap320_wvga_set_brightness(void *board_data, int brightness)
170 return 0; 170 return 0;
171} 171}
172 172
173static int ap320_wvga_get_brightness(void *board_data) 173static int ap320_wvga_get_brightness(void)
174{ 174{
175 return gpio_get_value(GPIO_PTS3); 175 return gpio_get_value(GPIO_PTS3);
176} 176}
177 177
178static void ap320_wvga_power_on(void *board_data, struct fb_info *info) 178static void ap320_wvga_power_on(void)
179{ 179{
180 msleep(100); 180 msleep(100);
181 181
@@ -183,7 +183,7 @@ static void ap320_wvga_power_on(void *board_data, struct fb_info *info)
183 __raw_writew(FPGA_LCDREG_VAL, FPGA_LCDREG); 183 __raw_writew(FPGA_LCDREG_VAL, FPGA_LCDREG);
184} 184}
185 185
186static void ap320_wvga_power_off(void *board_data) 186static void ap320_wvga_power_off(void)
187{ 187{
188 /* ASD AP-320/325 LCD OFF */ 188 /* ASD AP-320/325 LCD OFF */
189 __raw_writew(0, FPGA_LCDREG); 189 __raw_writew(0, FPGA_LCDREG);
diff --git a/arch/sh/boards/mach-ecovec24/setup.c b/arch/sh/boards/mach-ecovec24/setup.c
index cde7c0085ced..7ed3061e01da 100644
--- a/arch/sh/boards/mach-ecovec24/setup.c
+++ b/arch/sh/boards/mach-ecovec24/setup.c
@@ -310,14 +310,14 @@ static const struct fb_videomode ecovec_dvi_modes[] = {
310 }, 310 },
311}; 311};
312 312
313static int ecovec24_set_brightness(void *board_data, int brightness) 313static int ecovec24_set_brightness(int brightness)
314{ 314{
315 gpio_set_value(GPIO_PTR1, brightness); 315 gpio_set_value(GPIO_PTR1, brightness);
316 316
317 return 0; 317 return 0;
318} 318}
319 319
320static int ecovec24_get_brightness(void *board_data) 320static int ecovec24_get_brightness(void)
321{ 321{
322 return gpio_get_value(GPIO_PTR1); 322 return gpio_get_value(GPIO_PTR1);
323} 323}
diff --git a/arch/sh/boards/mach-kfr2r09/lcd_wqvga.c b/arch/sh/boards/mach-kfr2r09/lcd_wqvga.c
index 25e145fb7087..c148b36ecb65 100644
--- a/arch/sh/boards/mach-kfr2r09/lcd_wqvga.c
+++ b/arch/sh/boards/mach-kfr2r09/lcd_wqvga.c
@@ -251,8 +251,7 @@ static void display_on(void *sohandle,
251 write_memory_start(sohandle, so); 251 write_memory_start(sohandle, so);
252} 252}
253 253
254int kfr2r09_lcd_setup(void *board_data, void *sohandle, 254int kfr2r09_lcd_setup(void *sohandle, struct sh_mobile_lcdc_sys_bus_ops *so)
255 struct sh_mobile_lcdc_sys_bus_ops *so)
256{ 255{
257 /* power on */ 256 /* power on */
258 gpio_set_value(GPIO_PTF4, 0); /* PROTECT/ -> L */ 257 gpio_set_value(GPIO_PTF4, 0); /* PROTECT/ -> L */
@@ -273,8 +272,7 @@ int kfr2r09_lcd_setup(void *board_data, void *sohandle,
273 return 0; 272 return 0;
274} 273}
275 274
276void kfr2r09_lcd_start(void *board_data, void *sohandle, 275void kfr2r09_lcd_start(void *sohandle, struct sh_mobile_lcdc_sys_bus_ops *so)
277 struct sh_mobile_lcdc_sys_bus_ops *so)
278{ 276{
279 write_memory_start(sohandle, so); 277 write_memory_start(sohandle, so);
280} 278}
@@ -327,12 +325,12 @@ static int kfr2r09_lcd_backlight(int on)
327 return 0; 325 return 0;
328} 326}
329 327
330void kfr2r09_lcd_on(void *board_data, struct fb_info *info) 328void kfr2r09_lcd_on(void)
331{ 329{
332 kfr2r09_lcd_backlight(1); 330 kfr2r09_lcd_backlight(1);
333} 331}
334 332
335void kfr2r09_lcd_off(void *board_data) 333void kfr2r09_lcd_off(void)
336{ 334{
337 kfr2r09_lcd_backlight(0); 335 kfr2r09_lcd_backlight(0);
338} 336}
diff --git a/arch/sh/boards/mach-migor/lcd_qvga.c b/arch/sh/boards/mach-migor/lcd_qvga.c
index de9014a8a93e..8bccd345b69c 100644
--- a/arch/sh/boards/mach-migor/lcd_qvga.c
+++ b/arch/sh/boards/mach-migor/lcd_qvga.c
@@ -113,8 +113,7 @@ static const unsigned short magic3_data[] = {
113 0x0010, 0x16B0, 0x0011, 0x0111, 0x0007, 0x0061, 113 0x0010, 0x16B0, 0x0011, 0x0111, 0x0007, 0x0061,
114}; 114};
115 115
116int migor_lcd_qvga_setup(void *board_data, void *sohandle, 116int migor_lcd_qvga_setup(void *sohandle, struct sh_mobile_lcdc_sys_bus_ops *so)
117 struct sh_mobile_lcdc_sys_bus_ops *so)
118{ 117{
119 unsigned long xres = 320; 118 unsigned long xres = 320;
120 unsigned long yres = 240; 119 unsigned long yres = 240;
diff --git a/arch/sh/boards/mach-se/7724/setup.c b/arch/sh/boards/mach-se/7724/setup.c
index 2b07fc016950..5e25dbe726e2 100644
--- a/arch/sh/boards/mach-se/7724/setup.c
+++ b/arch/sh/boards/mach-se/7724/setup.c
@@ -186,8 +186,6 @@ static struct sh_mobile_lcdc_info lcdc_info = {
186 .width = 152, 186 .width = 152,
187 .height = 91, 187 .height = 91,
188 }, 188 },
189 .board_cfg = {
190 },
191 } 189 }
192}; 190};
193 191
diff --git a/arch/sh/include/mach-kfr2r09/mach/kfr2r09.h b/arch/sh/include/mach-kfr2r09/mach/kfr2r09.h
index 07e635b0e04c..ba3d93d333f8 100644
--- a/arch/sh/include/mach-kfr2r09/mach/kfr2r09.h
+++ b/arch/sh/include/mach-kfr2r09/mach/kfr2r09.h
@@ -4,21 +4,21 @@
4#include <video/sh_mobile_lcdc.h> 4#include <video/sh_mobile_lcdc.h>
5 5
6#if defined(CONFIG_FB_SH_MOBILE_LCDC) || defined(CONFIG_FB_SH_MOBILE_LCDC_MODULE) 6#if defined(CONFIG_FB_SH_MOBILE_LCDC) || defined(CONFIG_FB_SH_MOBILE_LCDC_MODULE)
7void kfr2r09_lcd_on(void *board_data, struct fb_info *info); 7void kfr2r09_lcd_on(void);
8void kfr2r09_lcd_off(void *board_data); 8void kfr2r09_lcd_off(void);
9int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle, 9int kfr2r09_lcd_setup(void *sys_ops_handle,
10 struct sh_mobile_lcdc_sys_bus_ops *sys_ops); 10 struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
11void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle, 11void kfr2r09_lcd_start(void *sys_ops_handle,
12 struct sh_mobile_lcdc_sys_bus_ops *sys_ops); 12 struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
13#else 13#else
14static void kfr2r09_lcd_on(void *board_data) {} 14static void kfr2r09_lcd_on(void) {}
15static void kfr2r09_lcd_off(void *board_data) {} 15static void kfr2r09_lcd_off(void) {}
16static int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle, 16static int kfr2r09_lcd_setup(void *sys_ops_handle,
17 struct sh_mobile_lcdc_sys_bus_ops *sys_ops) 17 struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
18{ 18{
19 return -ENODEV; 19 return -ENODEV;
20} 20}
21static void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle, 21static void kfr2r09_lcd_start(void *sys_ops_handle,
22 struct sh_mobile_lcdc_sys_bus_ops *sys_ops) 22 struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
23{ 23{
24} 24}
diff --git a/arch/sh/include/mach-migor/mach/migor.h b/arch/sh/include/mach-migor/mach/migor.h
index 42fccf93412e..7de7bb74c290 100644
--- a/arch/sh/include/mach-migor/mach/migor.h
+++ b/arch/sh/include/mach-migor/mach/migor.h
@@ -9,7 +9,7 @@
9 9
10#include <video/sh_mobile_lcdc.h> 10#include <video/sh_mobile_lcdc.h>
11 11
12int migor_lcd_qvga_setup(void *board_data, void *sys_ops_handle, 12int migor_lcd_qvga_setup(void *sys_ops_handle,
13 struct sh_mobile_lcdc_sys_bus_ops *sys_ops); 13 struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
14 14
15#endif /* __ASM_SH_MIGOR_H */ 15#endif /* __ASM_SH_MIGOR_H */
diff --git a/drivers/video/sh_mobile_lcdcfb.c b/drivers/video/sh_mobile_lcdcfb.c
index a899b6df46cc..c54eb973de28 100644
--- a/drivers/video/sh_mobile_lcdcfb.c
+++ b/drivers/video/sh_mobile_lcdcfb.c
@@ -315,14 +315,12 @@ static void sh_mobile_lcdc_deferred_io(struct fb_info *info,
315 /* trigger panel update */ 315 /* trigger panel update */
316 dma_map_sg(info->dev, ch->sglist, nr_pages, DMA_TO_DEVICE); 316 dma_map_sg(info->dev, ch->sglist, nr_pages, DMA_TO_DEVICE);
317 if (bcfg->start_transfer) 317 if (bcfg->start_transfer)
318 bcfg->start_transfer(bcfg->board_data, ch, 318 bcfg->start_transfer(ch, &sh_mobile_lcdc_sys_bus_ops);
319 &sh_mobile_lcdc_sys_bus_ops);
320 lcdc_write_chan(ch, LDSM2R, LDSM2R_OSTRG); 319 lcdc_write_chan(ch, LDSM2R, LDSM2R_OSTRG);
321 dma_unmap_sg(info->dev, ch->sglist, nr_pages, DMA_TO_DEVICE); 320 dma_unmap_sg(info->dev, ch->sglist, nr_pages, DMA_TO_DEVICE);
322 } else { 321 } else {
323 if (bcfg->start_transfer) 322 if (bcfg->start_transfer)
324 bcfg->start_transfer(bcfg->board_data, ch, 323 bcfg->start_transfer(ch, &sh_mobile_lcdc_sys_bus_ops);
325 &sh_mobile_lcdc_sys_bus_ops);
326 lcdc_write_chan(ch, LDSM2R, LDSM2R_OSTRG); 324 lcdc_write_chan(ch, LDSM2R, LDSM2R_OSTRG);
327 } 325 }
328} 326}
@@ -346,7 +344,7 @@ static void sh_mobile_lcdc_display_on(struct sh_mobile_lcdc_chan *ch)
346 344
347 /* HDMI must be enabled before LCDC configuration */ 345 /* HDMI must be enabled before LCDC configuration */
348 if (board_cfg->display_on) 346 if (board_cfg->display_on)
349 board_cfg->display_on(board_cfg->board_data, ch->info); 347 board_cfg->display_on();
350} 348}
351 349
352static void sh_mobile_lcdc_display_off(struct sh_mobile_lcdc_chan *ch) 350static void sh_mobile_lcdc_display_off(struct sh_mobile_lcdc_chan *ch)
@@ -354,7 +352,7 @@ static void sh_mobile_lcdc_display_off(struct sh_mobile_lcdc_chan *ch)
354 struct sh_mobile_lcdc_board_cfg *board_cfg = &ch->cfg.board_cfg; 352 struct sh_mobile_lcdc_board_cfg *board_cfg = &ch->cfg.board_cfg;
355 353
356 if (board_cfg->display_off) 354 if (board_cfg->display_off)
357 board_cfg->display_off(board_cfg->board_data); 355 board_cfg->display_off();
358 356
359 if (ch->tx_dev) 357 if (ch->tx_dev)
360 ch->tx_dev->ops->display_off(ch->tx_dev); 358 ch->tx_dev->ops->display_off(ch->tx_dev);
@@ -697,7 +695,7 @@ static int sh_mobile_lcdc_start(struct sh_mobile_lcdc_priv *priv)
697 695
698 board_cfg = &ch->cfg.board_cfg; 696 board_cfg = &ch->cfg.board_cfg;
699 if (board_cfg->setup_sys) { 697 if (board_cfg->setup_sys) {
700 ret = board_cfg->setup_sys(board_cfg->board_data, ch, 698 ret = board_cfg->setup_sys(ch,
701 &sh_mobile_lcdc_sys_bus_ops); 699 &sh_mobile_lcdc_sys_bus_ops);
702 if (ret) 700 if (ret)
703 return ret; 701 return ret;
@@ -1326,7 +1324,7 @@ static int sh_mobile_lcdc_update_bl(struct backlight_device *bdev)
1326 bdev->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK)) 1324 bdev->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK))
1327 brightness = 0; 1325 brightness = 0;
1328 1326
1329 return cfg->set_brightness(cfg->board_data, brightness); 1327 return cfg->set_brightness(brightness);
1330} 1328}
1331 1329
1332static int sh_mobile_lcdc_get_brightness(struct backlight_device *bdev) 1330static int sh_mobile_lcdc_get_brightness(struct backlight_device *bdev)
@@ -1334,7 +1332,7 @@ static int sh_mobile_lcdc_get_brightness(struct backlight_device *bdev)
1334 struct sh_mobile_lcdc_chan *ch = bl_get_data(bdev); 1332 struct sh_mobile_lcdc_chan *ch = bl_get_data(bdev);
1335 struct sh_mobile_lcdc_board_cfg *cfg = &ch->cfg.board_cfg; 1333 struct sh_mobile_lcdc_board_cfg *cfg = &ch->cfg.board_cfg;
1336 1334
1337 return cfg->get_brightness(cfg->board_data); 1335 return cfg->get_brightness();
1338} 1336}
1339 1337
1340static int sh_mobile_lcdc_check_fb(struct backlight_device *bdev, 1338static int sh_mobile_lcdc_check_fb(struct backlight_device *bdev,
diff --git a/include/video/sh_mobile_lcdc.h b/include/video/sh_mobile_lcdc.h
index 163f4b704bf9..62be2c933e9f 100644
--- a/include/video/sh_mobile_lcdc.h
+++ b/include/video/sh_mobile_lcdc.h
@@ -148,15 +148,14 @@ struct sh_mobile_lcdc_sys_bus_ops {
148}; 148};
149 149
150struct sh_mobile_lcdc_board_cfg { 150struct sh_mobile_lcdc_board_cfg {
151 void *board_data; 151 int (*setup_sys)(void *sys_ops_handle,
152 int (*setup_sys)(void *board_data, void *sys_ops_handle,
153 struct sh_mobile_lcdc_sys_bus_ops *sys_ops); 152 struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
154 void (*start_transfer)(void *board_data, void *sys_ops_handle, 153 void (*start_transfer)(void *sys_ops_handle,
155 struct sh_mobile_lcdc_sys_bus_ops *sys_ops); 154 struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
156 void (*display_on)(void *board_data, struct fb_info *info); 155 void (*display_on)(void);
157 void (*display_off)(void *board_data); 156 void (*display_off)(void);
158 int (*set_brightness)(void *board_data, int brightness); 157 int (*set_brightness)(int brightness);
159 int (*get_brightness)(void *board_data); 158 int (*get_brightness)(void);
160}; 159};
161 160
162struct sh_mobile_lcdc_lcd_size_cfg { /* width and height of panel in mm */ 161struct sh_mobile_lcdc_lcd_size_cfg { /* width and height of panel in mm */