Skip to content

Commit 4375382

Browse files
committed
Merge tag 'fbdev-updates-for-3.4' of git://github.com/schandinat/linux-2.6
Pull fbdev updates for 3.4 from Florian Tobias Schandinat: - drivers for Samsung Exynos MIPI DSI and display port - i740fb to support those old Intel chips - large updates to OMAP, viafb and sh_mobile_lcdcfb - some updates to s3c-fb and udlfb, few patches to others Fix up conflicts in drivers/video/udlfb.c due to Key Sievers' fix making it in twice. * tag 'fbdev-updates-for-3.4' of git://github.com/schandinat/linux-2.6: (156 commits) Revert "video:uvesafb: Fix oops that uvesafb try to execute NX-protected page" OMAPDSS: register dss drivers in module init video: pxafb: add clk_prepare/clk_unprepare calls fbdev: bfin_adv7393fb: Drop needless include fbdev: sh_mipi_dsi: add extra phyctrl for sh_mipi_dsi_info fbdev: remove dependency of FB_SH_MOBILE_MERAM from FB_SH_MOBILE_LCDC Revert "MAINTAINERS: add entry for exynos mipi display drivers" fbdev: da8xx: add support for SP10Q010 display fbdev: da8xx:: fix reporting of the display timing info drivers/video/pvr2fb.c: ensure arguments to request_irq and free_irq are compatible OMAPDSS: APPLY: fix clearing shadow dirty flag with manual update fbdev: sh_mobile_meram: Implement system suspend/resume fbdev: sh_mobile_meram: Remove unneeded sanity checks fbdev: sh_mobile_meram: Don't perform update in register operation arm: mach-shmobile: Constify sh_mobile_meram_cfg structures fbdev: sh_mobile_lcdc: Don't store copy of platform data fbdev: sh_mobile_meram: Remove unused sh_mobile_meram_icb_cfg fields arm: mach-shmobile: Don't set MERAM ICB numbers in platform data fbdev: sh_mobile_meram: Allocate ICBs automatically fbdev: sh_mobile_meram: Use genalloc to manage MERAM allocation ...
2 parents 9586c95 + 6bff98b commit 4375382

File tree

146 files changed

+12328
-8209
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

146 files changed

+12328
-8209
lines changed

MAINTAINERS

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2257,6 +2257,15 @@ F: Documentation/filesystems/quota.txt
22572257
F: fs/quota/
22582258
F: include/linux/quota*.h
22592259

2260+
DISPLAYLINK USB 2.0 FRAMEBUFFER DRIVER (UDLFB)
2261+
M: Bernie Thompson <[email protected]>
2262+
2263+
S: Maintained
2264+
W: http://plugable.com/category/projects/udlfb/
2265+
F: drivers/video/udlfb.c
2266+
F: include/video/udlfb.h
2267+
F: Documentation/fb/udlfb.txt
2268+
22602269
DISTRIBUTED LOCK MANAGER (DLM)
22612270
M: Christine Caulfield <[email protected]>
22622271
M: David Teigland <[email protected]>
@@ -2378,15 +2387,6 @@ S: Supported
23782387
F: drivers/gpu/drm/exynos
23792388
F: include/drm/exynos*
23802389

2381-
EXYNOS MIPI DISPLAY DRIVERS
2382-
M: Inki Dae <[email protected]>
2383-
M: Donghwa Lee <[email protected]>
2384-
M: Kyungmin Park <[email protected]>
2385-
2386-
S: Maintained
2387-
F: drivers/video/exynos/exynos_mipi*
2388-
F: include/video/exynos_mipi*
2389-
23902390
DSCC4 DRIVER
23912391
M: Francois Romieu <[email protected]>
23922392
@@ -2667,6 +2667,21 @@ M: Mimi Zohar <[email protected]>
26672667
S: Supported
26682668
F: security/integrity/evm/
26692669

2670+
EXYNOS DP DRIVER
2671+
M: Jingoo Han <[email protected]>
2672+
2673+
S: Maintained
2674+
F: drivers/video/exynos/exynos_dp*
2675+
2676+
EXYNOS MIPI DISPLAY DRIVERS
2677+
M: Inki Dae <[email protected]>
2678+
M: Donghwa Lee <[email protected]>
2679+
M: Kyungmin Park <[email protected]>
2680+
2681+
S: Maintained
2682+
F: drivers/video/exynos/exynos_mipi*
2683+
F: include/video/exynos_mipi*
2684+
26702685
F71805F HARDWARE MONITORING DRIVER
26712686
M: Jean Delvare <[email protected]>
26722687

arch/arm/mach-omap1/board-ams-delta.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
#include <linux/platform_device.h>
2121
#include <linux/serial_8250.h>
2222
#include <linux/export.h>
23+
#include <linux/omapfb.h>
2324

2425
#include <media/soc_camera.h>
2526

@@ -169,10 +170,6 @@ static struct omap_usb_config ams_delta_usb_config __initdata = {
169170
.pins[0] = 2,
170171
};
171172

172-
static struct omap_board_config_kernel ams_delta_config[] __initdata = {
173-
{ OMAP_TAG_LCD, &ams_delta_lcd_config },
174-
};
175-
176173
static struct resource ams_delta_nand_resources[] = {
177174
[0] = {
178175
.start = OMAP1_MPUIO_BASE,
@@ -302,8 +299,6 @@ static void __init ams_delta_init(void)
302299
omap_cfg_reg(J19_1610_CAM_D6);
303300
omap_cfg_reg(J18_1610_CAM_D7);
304301

305-
omap_board_config = ams_delta_config;
306-
omap_board_config_size = ARRAY_SIZE(ams_delta_config);
307302
omap_serial_init();
308303
omap_register_i2c_bus(1, 100, NULL, 0);
309304

@@ -321,6 +316,8 @@ static void __init ams_delta_init(void)
321316
ams_delta_init_fiq();
322317

323318
omap_writew(omap_readw(ARM_RSTCT1) | 0x0004, ARM_RSTCT1);
319+
320+
omapfb_set_lcd_config(&ams_delta_lcd_config);
324321
}
325322

326323
static struct plat_serial8250_port ams_delta_modem_ports[] = {

arch/arm/mach-omap1/board-fsample.c

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
#include <linux/mtd/physmap.h>
2222
#include <linux/input.h>
2323
#include <linux/smc91x.h>
24+
#include <linux/omapfb.h>
2425

2526
#include <mach/hardware.h>
2627
#include <asm/mach-types.h>
@@ -273,27 +274,17 @@ static struct platform_device kp_device = {
273274
.resource = kp_resources,
274275
};
275276

276-
static struct platform_device lcd_device = {
277-
.name = "lcd_p2",
278-
.id = -1,
279-
};
280-
281277
static struct platform_device *devices[] __initdata = {
282278
&nor_device,
283279
&nand_device,
284280
&smc91x_device,
285281
&kp_device,
286-
&lcd_device,
287282
};
288283

289284
static struct omap_lcd_config fsample_lcd_config = {
290285
.ctrl_name = "internal",
291286
};
292287

293-
static struct omap_board_config_kernel fsample_config[] __initdata = {
294-
{ OMAP_TAG_LCD, &fsample_lcd_config },
295-
};
296-
297288
static void __init omap_fsample_init(void)
298289
{
299290
/* Early, board-dependent init */
@@ -352,10 +343,10 @@ static void __init omap_fsample_init(void)
352343

353344
platform_add_devices(devices, ARRAY_SIZE(devices));
354345

355-
omap_board_config = fsample_config;
356-
omap_board_config_size = ARRAY_SIZE(fsample_config);
357346
omap_serial_init();
358347
omap_register_i2c_bus(1, 100, NULL, 0);
348+
349+
omapfb_set_lcd_config(&fsample_lcd_config);
359350
}
360351

361352
/* Only FPGA needs to be mapped here. All others are done with ioremap */

arch/arm/mach-omap1/board-h2.c

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
#include <linux/input.h>
3131
#include <linux/i2c/tps65010.h>
3232
#include <linux/smc91x.h>
33+
#include <linux/omapfb.h>
3334

3435
#include <mach/hardware.h>
3536

@@ -325,18 +326,12 @@ static struct platform_device h2_irda_device = {
325326
.resource = h2_irda_resources,
326327
};
327328

328-
static struct platform_device h2_lcd_device = {
329-
.name = "lcd_h2",
330-
.id = -1,
331-
};
332-
333329
static struct platform_device *h2_devices[] __initdata = {
334330
&h2_nor_device,
335331
&h2_nand_device,
336332
&h2_smc91x_device,
337333
&h2_irda_device,
338334
&h2_kp_device,
339-
&h2_lcd_device,
340335
};
341336

342337
static void __init h2_init_smc91x(void)
@@ -391,10 +386,6 @@ static struct omap_lcd_config h2_lcd_config __initdata = {
391386
.ctrl_name = "internal",
392387
};
393388

394-
static struct omap_board_config_kernel h2_config[] __initdata = {
395-
{ OMAP_TAG_LCD, &h2_lcd_config },
396-
};
397-
398389
static void __init h2_init(void)
399390
{
400391
h2_init_smc91x();
@@ -438,13 +429,13 @@ static void __init h2_init(void)
438429
omap_cfg_reg(N19_1610_KBR5);
439430

440431
platform_add_devices(h2_devices, ARRAY_SIZE(h2_devices));
441-
omap_board_config = h2_config;
442-
omap_board_config_size = ARRAY_SIZE(h2_config);
443432
omap_serial_init();
444433
omap_register_i2c_bus(1, 100, h2_i2c_board_info,
445434
ARRAY_SIZE(h2_i2c_board_info));
446435
omap1_usb_init(&h2_usb_config);
447436
h2_mmc_init();
437+
438+
omapfb_set_lcd_config(&h2_lcd_config);
448439
}
449440

450441
MACHINE_START(OMAP_H2, "TI-H2")

arch/arm/mach-omap1/board-h3.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
#include <linux/spi/spi.h>
3131
#include <linux/i2c/tps65010.h>
3232
#include <linux/smc91x.h>
33+
#include <linux/omapfb.h>
3334

3435
#include <asm/setup.h>
3536
#include <asm/page.h>
@@ -370,10 +371,6 @@ static struct omap_lcd_config h3_lcd_config __initdata = {
370371
.ctrl_name = "internal",
371372
};
372373

373-
static struct omap_board_config_kernel h3_config[] __initdata = {
374-
{ OMAP_TAG_LCD, &h3_lcd_config },
375-
};
376-
377374
static struct i2c_board_info __initdata h3_i2c_board_info[] = {
378375
{
379376
I2C_BOARD_INFO("tps65013", 0x48),
@@ -426,13 +423,13 @@ static void __init h3_init(void)
426423
platform_add_devices(devices, ARRAY_SIZE(devices));
427424
spi_register_board_info(h3_spi_board_info,
428425
ARRAY_SIZE(h3_spi_board_info));
429-
omap_board_config = h3_config;
430-
omap_board_config_size = ARRAY_SIZE(h3_config);
431426
omap_serial_init();
432427
omap_register_i2c_bus(1, 100, h3_i2c_board_info,
433428
ARRAY_SIZE(h3_i2c_board_info));
434429
omap1_usb_init(&h3_usb_config);
435430
h3_mmc_init();
431+
432+
omapfb_set_lcd_config(&h3_lcd_config);
436433
}
437434

438435
MACHINE_START(OMAP_H3, "TI OMAP1710 H3 board")

arch/arm/mach-omap1/board-htcherald.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
#include <linux/leds.h>
3737
#include <linux/spi/spi.h>
3838
#include <linux/spi/ads7846.h>
39+
#include <linux/omapfb.h>
3940

4041
#include <asm/mach-types.h>
4142
#include <asm/mach/arch.h>
@@ -398,10 +399,6 @@ static struct omap_lcd_config htcherald_lcd_config __initdata = {
398399
.ctrl_name = "internal",
399400
};
400401

401-
static struct omap_board_config_kernel htcherald_config[] __initdata = {
402-
{ OMAP_TAG_LCD, &htcherald_lcd_config },
403-
};
404-
405402
static struct platform_device lcd_device = {
406403
.name = "lcd_htcherald",
407404
.id = -1,
@@ -580,8 +577,6 @@ static void __init htcherald_init(void)
580577
printk(KERN_INFO "HTC Herald init.\n");
581578

582579
/* Do board initialization before we register all the devices */
583-
omap_board_config = htcherald_config;
584-
omap_board_config_size = ARRAY_SIZE(htcherald_config);
585580
platform_add_devices(devices, ARRAY_SIZE(devices));
586581

587582
htcherald_disable_watchdog();
@@ -598,6 +593,8 @@ static void __init htcherald_init(void)
598593
htc_mmc_data[0] = &htc_mmc1_data;
599594
omap1_init_mmc(htc_mmc_data, 1);
600595
#endif
596+
597+
omapfb_set_lcd_config(&htcherald_lcd_config);
601598
}
602599

603600
MACHINE_START(HERALD, "HTC Herald")

arch/arm/mach-omap1/board-innovator.c

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
#include <linux/mtd/physmap.h>
2626
#include <linux/input.h>
2727
#include <linux/smc91x.h>
28+
#include <linux/omapfb.h>
2829

2930
#include <mach/hardware.h>
3031
#include <asm/mach-types.h>
@@ -370,10 +371,6 @@ static inline void innovator_mmc_init(void)
370371
}
371372
#endif
372373

373-
static struct omap_board_config_kernel innovator_config[] = {
374-
{ OMAP_TAG_LCD, NULL },
375-
};
376-
377374
static void __init innovator_init(void)
378375
{
379376
if (cpu_is_omap1510())
@@ -416,17 +413,15 @@ static void __init innovator_init(void)
416413
#ifdef CONFIG_ARCH_OMAP15XX
417414
if (cpu_is_omap1510()) {
418415
omap1_usb_init(&innovator1510_usb_config);
419-
innovator_config[0].data = &innovator1510_lcd_config;
416+
omapfb_set_lcd_config(&innovator1510_lcd_config);
420417
}
421418
#endif
422419
#ifdef CONFIG_ARCH_OMAP16XX
423420
if (cpu_is_omap1610()) {
424421
omap1_usb_init(&h2_usb_config);
425-
innovator_config[0].data = &innovator1610_lcd_config;
422+
omapfb_set_lcd_config(&innovator1610_lcd_config);
426423
}
427424
#endif
428-
omap_board_config = innovator_config;
429-
omap_board_config_size = ARRAY_SIZE(innovator_config);
430425
omap_serial_init();
431426
omap_register_i2c_bus(1, 100, NULL, 0);
432427
innovator_mmc_init();

arch/arm/mach-omap1/board-nokia770.c

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
#include <plat/board.h>
3232
#include <plat/keypad.h>
3333
#include "common.h"
34-
#include <plat/hwa742.h>
3534
#include <plat/lcd_mipid.h>
3635
#include <plat/mmc.h>
3736
#include <plat/clock.h>
@@ -99,15 +98,16 @@ static struct mipid_platform_data nokia770_mipid_platform_data = {
9998
.shutdown = mipid_shutdown,
10099
};
101100

101+
static struct omap_lcd_config nokia770_lcd_config __initdata = {
102+
.ctrl_name = "hwa742",
103+
};
104+
102105
static void __init mipid_dev_init(void)
103106
{
104-
const struct omap_lcd_config *conf;
107+
nokia770_mipid_platform_data.nreset_gpio = 13;
108+
nokia770_mipid_platform_data.data_lines = 16;
105109

106-
conf = omap_get_config(OMAP_TAG_LCD, struct omap_lcd_config);
107-
if (conf != NULL) {
108-
nokia770_mipid_platform_data.nreset_gpio = conf->nreset_gpio;
109-
nokia770_mipid_platform_data.data_lines = conf->data_lines;
110-
}
110+
omapfb_set_lcd_config(&nokia770_lcd_config);
111111
}
112112

113113
static void __init ads7846_dev_init(void)
@@ -150,14 +150,9 @@ static struct spi_board_info nokia770_spi_board_info[] __initdata = {
150150
},
151151
};
152152

153-
static struct hwa742_platform_data nokia770_hwa742_platform_data = {
154-
.te_connected = 1,
155-
};
156-
157153
static void __init hwa742_dev_init(void)
158154
{
159155
clk_add_alias("hwa_sys_ck", NULL, "bclk", NULL);
160-
omapfb_set_ctrl_platform_data(&nokia770_hwa742_platform_data);
161156
}
162157

163158
/* assume no Mini-AB port */

arch/arm/mach-omap1/board-osk.c

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
#include <linux/i2c.h>
3535
#include <linux/leds.h>
3636
#include <linux/smc91x.h>
37+
#include <linux/omapfb.h>
3738

3839
#include <linux/mtd/mtd.h>
3940
#include <linux/mtd/partitions.h>
@@ -300,12 +301,6 @@ static struct omap_lcd_config osk_lcd_config __initdata = {
300301
};
301302
#endif
302303

303-
static struct omap_board_config_kernel osk_config[] __initdata = {
304-
#ifdef CONFIG_OMAP_OSK_MISTRAL
305-
{ OMAP_TAG_LCD, &osk_lcd_config },
306-
#endif
307-
};
308-
309304
#ifdef CONFIG_OMAP_OSK_MISTRAL
310305

311306
#include <linux/input.h>
@@ -549,8 +544,6 @@ static void __init osk_init(void)
549544
osk_flash_resource.end = osk_flash_resource.start = omap_cs3_phys();
550545
osk_flash_resource.end += SZ_32M - 1;
551546
platform_add_devices(osk5912_devices, ARRAY_SIZE(osk5912_devices));
552-
omap_board_config = osk_config;
553-
omap_board_config_size = ARRAY_SIZE(osk_config);
554547

555548
l = omap_readl(USB_TRANSCEIVER_CTRL);
556549
l |= (3 << 1);
@@ -567,6 +560,11 @@ static void __init osk_init(void)
567560
omap_register_i2c_bus(1, 400, osk_i2c_board_info,
568561
ARRAY_SIZE(osk_i2c_board_info));
569562
osk_mistral_init();
563+
564+
#ifdef CONFIG_OMAP_OSK_MISTRAL
565+
omapfb_set_lcd_config(&osk_lcd_config);
566+
#endif
567+
570568
}
571569

572570
MACHINE_START(OMAP_OSK, "TI-OSK")

0 commit comments

Comments
 (0)