Skip to content

Commit

Permalink
Merge branch 'fbdev-next' of git://github.com/schandinat/linux-2.6
Browse files Browse the repository at this point in the history
* 'fbdev-next' of git://github.com/schandinat/linux-2.6: (270 commits)
  video: platinumfb: Add __devexit_p at necessary place
  drivers/video: fsl-diu-fb: merge diu_pool into fsl_diu_data
  drivers/video: fsl-diu-fb: merge diu_hw into fsl_diu_data
  drivers/video: fsl-diu-fb: only DIU modes 0 and 1 are supported
  drivers/video: fsl-diu-fb: remove unused panel operating mode support
  drivers/video: fsl-diu-fb: use an enum for the AOI index
  drivers/video: fsl-diu-fb: add several new video modes
  drivers/video: fsl-diu-fb: remove broken screen blanking support
  drivers/video: fsl-diu-fb: move some definitions out of the header file
  drivers/video: fsl-diu-fb: fix some ioctls
  video: da8xx-fb: Increased resolution configuration of revised LCDC IP
  OMAPDSS: picodlp: add missing #include <linux/module.h>
  fb: fix au1100fb bitrot.
  mx3fb: fix NULL pointer dereference in screen blanking.
  video: irq: Remove IRQF_DISABLED
  smscufx: change edid data to u8 instead of char
  OMAPDSS: DISPC: zorder support for DSS overlays
  OMAPDSS: DISPC: VIDEO3 pipeline support
  OMAPDSS/OMAP_VOUT: Fix incorrect OMAP3-alpha compatibility setting
  video/omap: fix build dependencies
  ...

Fix up conflicts in:
 - drivers/staging/xgifb/XGI_main_26.c
	Changes to XGIfb_pan_var()
 - drivers/video/omap/{lcd_apollon.c,lcd_ldp.c,lcd_overo.c}
	Removed (or in the case of apollon.c, merged into the generic
	DSS panel in drivers/video/omap2/displays/panel-generic-dpi.c)
  • Loading branch information
torvalds committed Oct 30, 2011
2 parents ce94971 + b57287b commit acff987
Show file tree
Hide file tree
Showing 163 changed files with 12,023 additions and 7,620 deletions.
39 changes: 27 additions & 12 deletions Documentation/fb/udlfb.txt
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -87,23 +87,38 @@ Special configuration for udlfb is usually unnecessary. There are a few
options, however. options, however.


From the command line, pass options to modprobe From the command line, pass options to modprobe
modprobe udlfb defio=1 console=1 modprobe udlfb fb_defio=0 console=1 shadow=1


Or for permanent option, create file like /etc/modprobe.d/options with text Or modify options on the fly at /sys/module/udlfb/parameters directory via
options udlfb defio=1 console=1 sudo nano fb_defio
change the parameter in place, and save the file.


Accepted options: Unplug/replug USB device to apply with new settings

Or for permanent option, create file like /etc/modprobe.d/udlfb.conf with text
options udlfb fb_defio=0 console=1 shadow=1

Accepted boolean options:


fb_defio Make use of the fb_defio (CONFIG_FB_DEFERRED_IO) kernel fb_defio Make use of the fb_defio (CONFIG_FB_DEFERRED_IO) kernel
module to track changed areas of the framebuffer by page faults. module to track changed areas of the framebuffer by page faults.
Standard fbdev applications that use mmap but that do not Standard fbdev applications that use mmap but that do not
report damage, may be able to work with this enabled. report damage, should be able to work with this enabled.
Disabled by default because of overhead and other issues. Disable when running with X server that supports reporting

changed regions via ioctl, as this method is simpler,
console Allow fbcon to attach to udlfb provided framebuffers. This more stable, and higher performance.
is disabled by default because fbcon will aggressively consume default: fb_defio=1
the first framebuffer it finds, which isn't usually what the
user wants in the case of USB displays. console Allow fbcon to attach to udlfb provided framebuffers.
Can be disabled if fbcon and other clients
(e.g. X with --shared-vt) are in conflict.
default: console=1

shadow Allocate a 2nd framebuffer to shadow what's currently across
the USB bus in device memory. If any pixels are unchanged,
do not transmit. Spends host memory to save USB transfers.
Enabled by default. Only disable on very low memory systems.
default: shadow=1


Sysfs Attributes Sysfs Attributes
================ ================
Expand Down
6 changes: 6 additions & 0 deletions MAINTAINERS
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -5970,6 +5970,12 @@ L: netdev@vger.kernel.org
S: Supported S: Supported
F: drivers/net/ethernet/smsc/smsc9420.* F: drivers/net/ethernet/smsc/smsc9420.*


SMSC UFX6000 and UFX7000 USB to VGA DRIVER
M: Steve Glendinning <steve.glendinning@smsc.com>
L: linux-fbdev@vger.kernel.org
S: Supported
F: drivers/video/smscufx.c

SN-IA64 (Itanium) SUB-PLATFORM SN-IA64 (Itanium) SUB-PLATFORM
M: Jes Sorensen <jes@sgi.com> M: Jes Sorensen <jes@sgi.com>
L: linux-altix@sgi.com L: linux-altix@sgi.com
Expand Down
78 changes: 64 additions & 14 deletions arch/arm/mach-omap2/board-2430sdp.c
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@
#include <plat/usb.h> #include <plat/usb.h>
#include <plat/gpmc-smc91x.h> #include <plat/gpmc-smc91x.h>


#include <video/omapdss.h>
#include <video/omap-panel-generic-dpi.h>

#include "mux.h" #include "mux.h"
#include "hsmmc.h" #include "hsmmc.h"
#include "common-board-devices.h" #include "common-board-devices.h"
Expand Down Expand Up @@ -99,20 +102,72 @@ static struct platform_device sdp2430_flash_device = {
.resource = &sdp2430_flash_resource, .resource = &sdp2430_flash_resource,
}; };


static struct platform_device sdp2430_lcd_device = {
.name = "sdp2430_lcd",
.id = -1,
};

static struct platform_device *sdp2430_devices[] __initdata = { static struct platform_device *sdp2430_devices[] __initdata = {
&sdp2430_flash_device, &sdp2430_flash_device,
};

/* LCD */
#define SDP2430_LCD_PANEL_BACKLIGHT_GPIO 91
#define SDP2430_LCD_PANEL_ENABLE_GPIO 154

static int sdp2430_panel_enable_lcd(struct omap_dss_device *dssdev)
{
gpio_direction_output(SDP2430_LCD_PANEL_ENABLE_GPIO, 1);
gpio_direction_output(SDP2430_LCD_PANEL_BACKLIGHT_GPIO, 1);

return 0;
}

static void sdp2430_panel_disable_lcd(struct omap_dss_device *dssdev)
{
gpio_direction_output(SDP2430_LCD_PANEL_ENABLE_GPIO, 0);
gpio_direction_output(SDP2430_LCD_PANEL_BACKLIGHT_GPIO, 0);
}

static struct panel_generic_dpi_data sdp2430_panel_data = {
.name = "nec_nl2432dr22-11b",
.platform_enable = sdp2430_panel_enable_lcd,
.platform_disable = sdp2430_panel_disable_lcd,
};

static struct omap_dss_device sdp2430_lcd_device = {
.name = "lcd",
.driver_name = "generic_dpi_panel",
.type = OMAP_DISPLAY_TYPE_DPI,
.phy.dpi.data_lines = 16,
.data = &sdp2430_panel_data,
};

static struct omap_dss_device *sdp2430_dss_devices[] = {
&sdp2430_lcd_device, &sdp2430_lcd_device,
}; };


static struct omap_lcd_config sdp2430_lcd_config __initdata = { static struct omap_dss_board_info sdp2430_dss_data = {
.ctrl_name = "internal", .num_devices = ARRAY_SIZE(sdp2430_dss_devices),
.devices = sdp2430_dss_devices,
.default_device = &sdp2430_lcd_device,
}; };


static void __init sdp2430_display_init(void)
{
int r;

static struct gpio gpios[] __initdata = {
{ SDP2430_LCD_PANEL_ENABLE_GPIO, GPIOF_OUT_INIT_LOW,
"LCD reset" },
{ SDP2430_LCD_PANEL_BACKLIGHT_GPIO, GPIOF_OUT_INIT_LOW,
"LCD Backlight" },
};

r = gpio_request_array(gpios, ARRAY_SIZE(gpios));
if (r) {
pr_err("Cannot request LCD GPIOs, error %d\n", r);
return;
}

omap_display_init(&sdp2430_dss_data);
}

#if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91x_MODULE) #if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91x_MODULE)


static struct omap_smc91x_platform_data board_smc91x_data = { static struct omap_smc91x_platform_data board_smc91x_data = {
Expand All @@ -137,10 +192,6 @@ static inline void board_smc91x_init(void)


#endif #endif


static struct omap_board_config_kernel sdp2430_config[] __initdata = {
{OMAP_TAG_LCD, &sdp2430_lcd_config},
};

static void __init omap_2430sdp_init_early(void) static void __init omap_2430sdp_init_early(void)
{ {
omap2_init_common_infrastructure(); omap2_init_common_infrastructure();
Expand Down Expand Up @@ -229,9 +280,6 @@ static void __init omap_2430sdp_init(void)
{ {
omap2430_mux_init(board_mux, OMAP_PACKAGE_ZAC); omap2430_mux_init(board_mux, OMAP_PACKAGE_ZAC);


omap_board_config = sdp2430_config;
omap_board_config_size = ARRAY_SIZE(sdp2430_config);

omap2430_i2c_init(); omap2430_i2c_init();


platform_add_devices(sdp2430_devices, ARRAY_SIZE(sdp2430_devices)); platform_add_devices(sdp2430_devices, ARRAY_SIZE(sdp2430_devices));
Expand All @@ -247,6 +295,8 @@ static void __init omap_2430sdp_init(void)
/* Turn off secondary LCD backlight */ /* Turn off secondary LCD backlight */
gpio_request_one(SECONDARY_LCD_GPIO, GPIOF_OUT_INIT_LOW, gpio_request_one(SECONDARY_LCD_GPIO, GPIOF_OUT_INIT_LOW,
"Secondary LCD backlight"); "Secondary LCD backlight");

sdp2430_display_init();
} }


static void __init omap_2430sdp_map_io(void) static void __init omap_2430sdp_map_io(void)
Expand Down
7 changes: 3 additions & 4 deletions arch/arm/mach-omap2/board-3430sdp.c
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
#include <plat/dma.h> #include <plat/dma.h>
#include <plat/gpmc.h> #include <plat/gpmc.h>
#include <video/omapdss.h> #include <video/omapdss.h>
#include <video/omap-panel-generic-dpi.h> #include <video/omap-panel-dvi.h>


#include <plat/gpmc-smc91x.h> #include <plat/gpmc-smc91x.h>


Expand Down Expand Up @@ -186,16 +186,15 @@ static struct omap_dss_device sdp3430_lcd_device = {
.platform_disable = sdp3430_panel_disable_lcd, .platform_disable = sdp3430_panel_disable_lcd,
}; };


static struct panel_generic_dpi_data dvi_panel = { static struct panel_dvi_platform_data dvi_panel = {
.name = "generic",
.platform_enable = sdp3430_panel_enable_dvi, .platform_enable = sdp3430_panel_enable_dvi,
.platform_disable = sdp3430_panel_disable_dvi, .platform_disable = sdp3430_panel_disable_dvi,
}; };


static struct omap_dss_device sdp3430_dvi_device = { static struct omap_dss_device sdp3430_dvi_device = {
.name = "dvi", .name = "dvi",
.type = OMAP_DISPLAY_TYPE_DPI, .type = OMAP_DISPLAY_TYPE_DPI,
.driver_name = "generic_dpi_panel", .driver_name = "dvi",
.data = &dvi_panel, .data = &dvi_panel,
.phy.dpi.data_lines = 24, .phy.dpi.data_lines = 24,
}; };
Expand Down
Loading

0 comments on commit acff987

Please sign in to comment.