summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-10-14UBUNTU: Ubuntu-3.0.0-1281.0ti-ubuntu-3.0-1281.0Sebastien Jan
Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-14UBUNTU: Config: enable DRM, TAAL, MODVERSIONS, touchscreenSebastien Jan
Uplevel config and enable features for the Blaze board. Statically configure TAAL panel for convenience with kernel debug. Modversions also eases kernel debug. Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-14[Blaze] board-blaze-touch: Add linux friendly namesDan Murphy
Add linux friendly input names. Removing spaces and adding in underscores Signed-off-by: Dan Murphy <dmurphy@ti.com>
2011-10-14[Blaze] Synaptics: Update the TS driver from K35Dan Murphy
Update the touch screen driver to the k35 version. This include adding a controller number and linux friendly input names. Signed-off-by: Dan Murphy <dmurphy@ti.com>
2011-10-14[Blaze] Board 4430 sdp file and kconfigSebastien Jan
Add the blaze touch init to the board file. Add the flag to build the touch screen Add the Makefile object Signed-off-by: Dan Murphy <dmurphy@ti.com> Conflicts: arch/arm/mach-omap2/Kconfig Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-14[Blaze] Add board-blaze-touch.c: Add touch screen board fileDan Murphy
Add specific board file for the touch screen for blaze Signed-off-by: Dan Murphy <dmurphy@ti.com>
2011-10-14syntm12xx: Port synaptics touch screenDan Murphy
Port K35 synaptics touch screen driver from OMAP k35 kernel. Signed-off-by: Dan Murphy <dmurphy@ti.com>
2011-10-14DISPC: hack to support HDMI with multiple displaysSebastien Jan
This frequency verification causes the display configuration to fail. Commenting the error allows the display setup to complete and HDMI output to be functional... Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-14OMAPDSS: DISPC: Get correct pixel clock for TV managerArchit Taneja
dispc_mgr_pclk_rate() is used to calculate minimum required functional clock for scaling in calc_fclk() and calc_fclk_five_taps(). This function returns the correct pixel clock for LCD and LCD2 managers, but not for TV manager. Extend this function so that it gets the correct pixel clock for TV manager. This also prevents the crash we get when we try to scale overlays connected to TV manager. The current code leads to a BUG() being executed if we call dispc_mgr_pclk_rate() for the TV manager. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-14OMAPDSS: DISPC: Create helper function dispc_mgr_is_lcd()Archit Taneja
Create a helper function called dispc_mgr_is_lcd() which returns true if the manager is LCD or LCD2. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-14OMAP: DRM: auto-update modeSebastien Jan
Basic auto update mode ported from omapfb implementation. Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-14Revert "OMAP: DSS2: remove update_mode from omapdss"Sebastien Jan
This reverts commit ccc35d9e65235bad37f7c60dc4510fccc30a80a5.
2011-10-13drm/omap: don't use set_timings if it doesn't existSebastien Jan
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-13OMAP4: SDP4430: remove picodlp device to complete bootSebastien Jan
Clean solution would probably be to make the probe fail at some point rather than crash the platform boot (assuming the issue is caused by no DLP being on the blaze board I use). Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-13OMAP3: fix build issue in board filesSebastien Jan
Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-10-10OMAP4: DSS: Adding a picodlp in OMAP4430 SDP board fileTomi Valkeinen
An on-board projector named picodlp is available for OMAP4430 SDP. Entry for this picodlp as a panel is being added in dss_devices array to the board file. It needs 4 GPIO pins for interfacing with host processor and these are defined and two of them are configured in board file. Two GPIOs power_on and display_select are configured here. picodlp also needs an i2c client over i2c controller-2 at address 0x1b. Signed-off-by: Mayuresh Janorkar <mayur@ti.com> Signed-off-by: Mythri P K <mythripk@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP4430SDP: Board File changes for second LCD panelArchit Taneja
Create omap_dss_device and nokia_dsi_panel_data structs for the secondary lcd panel. The secondary lcd panel's backlight brightness is controlled by the same PWM as of the primary. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP4430SDP: Remove use of GPIO 27Tomi Valkeinen
GPIO 27 doesn't seem to be use according to schematics, and real life tests confirm that it doesn't do anything related to display. So remove it from the board file. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Implement dsi_mux_pads for OMAP4Tomi Valkeinen
Implement dsi_mux_pads for OMAP4. On enable the function enables the DSI pins and disables pull down. On disable the function disables the pins and enables pull down. It is unclear from the TRM whether the pull down is active if the pins are disabled, so this implementation may leave the pins floating when the DSI device is disabled. Also remove the DSI pin muxing code from board-4430sdp.c, as the common code now handles it. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: DSI: Improve dsi_mux_pads parametersTomi Valkeinen
dsi_mux_pads() needs to know about the DSI HW module and the DSI lanes used. Split the function into two, enable and disable, which take necessary arguments, and add empty implementations for both. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS: Move omap_display_init declaration to common-board-devices.hTomi Valkeinen
omap_display_init() resides in arch/arm/mach-omap2/display.c and is used only by the board files. Thus move the declaration to common-board-devices.h. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Change DSI device namingArchit Taneja
Currently, there are 2 differently named platform devices generated for the 2 DSS DSI modules. In order to use the same driver, the dsi devices should be 2 instances of the same platform device. Change the platform device names from "omapdss_dsi1" and "omapdss_dsi2" to omapdss_dsi", and set the device indices to 0 and 1. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: Consolidate DSS regulator suppliesTomi Valkeinen
OMAP DSS needs a bunch of regulator supplies which vary a bit between different OMAP versions, but are mostly the same. Instead of making each board file define the supplies manually, add macros which can be used to add the DSS supplies. This makes it simple to change the DSS supplies when needed. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: DSS: Fix context save/restoreTomi Valkeinen
The current method of saving and restoring the context could cause a restore before saving, effectively "restoring" zero values to registers. Add ctx_valid field to indicate if the saved context is valid and can be restored. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: DISPC: Fix context save/restoreTomi Valkeinen
The current method of saving and restoring the context could cause a restore before saving, effectively "restoring" zero values to registers. Add ctx_valid field to indicate if the saved context is valid and can be restored. Also restructure the code to save the ctx_loss_count in save_context(), which makes more sense than the previous method of storing new ctx_loss_count in dispc_need_ctx_restore. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP4: CLKDEV: Remove omapdss clock aliasesTomi Valkeinen
omapdss driver now gets the clocks via hwmod opt clocks, so clock aliases for omapdss_dss are no longer needed. Cc: Benoit Cousson <b-cousson@ti.com> Cc: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Remove ctx loss count from dss.cTomi Valkeinen
dss.c only saves 1 register (3 in OMAP3) so the extra overhead from need_ctx_restore & co. is probably bigger than the time spent saving and restoring those few registers every time. So remove the code from dss.c and restore context every time dss has been off. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Remove unused code from display.cTomi Valkeinen
oh_core variable is no longer used, so it and its initialization can be removed. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: DISPC: remove finegrained clk enables/disablesTomi Valkeinen
dispc.c enables and disables clocks in almost every function to make sure the clocks are enabled when the function is called. This is rather unoptimal way to handle the problem. With pm_runtime other components have to call dispc_runtime_get() to enable dispc clocks before calling any other dispc functions. Thus the finegrained clk enables/disables can be removed. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Remove unused opt_clock_availableTomi Valkeinen
opt_clock_available() is no longer needed, so remove it. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP4: HWMOD: Remove unneeded DSS opt clocksTomi Valkeinen
Some of the optional clocks for dss_core are not needed. Remove them. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Use PM runtime & HWMOD supportTomi Valkeinen
Use PM runtime and HWMOD support to handle enabling and disabling of DSS modules. Each DSS module will have get and put functions which can be used to enable and disable that module. The functions use pm_runtime and hwmod opt-clocks to enable the hardware. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP4: HWMOD: change DSS main_clk schemeTomi Valkeinen
Currently using pm_runtime with DSS requires the DSS driver to enable the DSS functional clock before calling pm_runtime_get(). That makes it impossible to use pm_runtime in DSS as it is meant to be used, with pm_runtime callbacks. This patch changes the hwmod database for OMAP4 so that enabling the hwmod via pm_runtime will also enable the DSS functional clock, allowing us to use pm_runtime properly in DSS driver. The DSS HWMOD side is not really correct, not before nor after this patch, and getting DSS to retention will probably not work currently. However, it is not supported in the mainline kernel anyway, so this won't break anything. So this patch allows us to write the pm_runtime adaptation for the DSS driver the way it should be done, and the HWMOD/PM side can be fixed later. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP2430: HWMOD: Add DSS opt clocksTomi Valkeinen
Add DSS optional clocks to HWMOD data for OMAP2430. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP2420: HWMOD: Add DSS opt clocksTomi Valkeinen
Add DSS optional clocks to HWMOD data for OMAP2420. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP3: HWMOD: Add DSS opt clocksTomi Valkeinen
Add DSS optional clocks to HWMOD data for OMAP3xxx. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP4: HWMOD: Modify DSS opt clocksTomi Valkeinen
Add missing DSS optional clocks to HWMOD data for OMAP4xxx. Add HWMOD_CONTROL_OPT_CLKS_IN_RESET flag for dispc to fix dispc reset. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Remove CONFIG_OMAP2_DSS_SLEEP_BEFORE_RESETTomi Valkeinen
CONFIG_OMAP2_DSS_SLEEP_BEFORE_RESET is used to avoid an unclear bug at DSS reset time. The pm runtime will handle reset in the future, and this code has to be removed. Hopefully we won't see this error anymore. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Remove core_dump_clocksTomi Valkeinen
Currently dss.c does all the low level clock handling in the DSS, and thus it contains pointers to all the clocks. This allows dss.c to dump the clock information for all the clocks. With pm_runtime this is no longer the case, as each submodule will handle its clocks independently. Thus remove the core_dump_clocks function as it cannot be used with pm_runtime. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Add new FEAT definitions for features missing from OMAP2Tomi Valkeinen
OMAP2 doesn't have CPR, PRELOAD nor FIR_COEF_V registers. Add new feature definitions for those, and check the feature before accessing those registers. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Add FEAT_VENC_REQUIRES_TV_DAC_CLKTomi Valkeinen
OMAP3430 requires an 96MHz clock to VENC's DAC, but no other OMAP needs it. Add a new feature, FEAT_VENC_REQUIRES_TV_DAC_CLK, which tells if the clock is needed on this platform, and use that feature in venc.c to decide if the clock needs enabling. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: DPI: remove unneeded SYSCK enable/disableTomi Valkeinen
DSI PLL requires sys_clk to function, and DPI enables sys_clk when it wants to use DSI PLL. However, DSI PLL code already handles enabling sys_clk, so DPI's sys_clk code is extra. Remove the unneeded sys_clk handling from dpi.c. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Use omap_pm_get_dev_context_loss_count to get ctx loss countTomi Valkeinen
Initialize get_context_loss_count in the DSS board data to omap_pm_get_dev_context_loss_count, so that omapdss driver can use it. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: rewrite use of context_loss_countTomi Valkeinen
The function to get device's context loss count has changed from omap_pm_get_last_off_on_transaction_id() to omap_pm_get_dev_context_loss_count() Change name of the function pointer in omapdss.h accordingly, and use the term "context loss count" instead of "context id" in the code. Restructure the context loss count functions to handle errors properly, and ensure that context is always considered lost if an error happens. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Remove clk optimization at dss initTomi Valkeinen
DSS enables core clocks for the duration of initialization to avoid unnecessary context saves and restores. With PM runtime the clocks cannot be handled in this way, outside the dss module drivers. Thus we need to remove the optimization. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Init dispc first before other componentsTomi Valkeinen
The initialization order of the DSS modules is important when pm_runtime support is implemented. Currently RFBI is initialized before DISPC, which will cause problems with pm_runtime as RFBI uses DISPC. Change the init order so that DISPC is before RFBI. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Clean up probe for DSS & DSITomi Valkeinen
Both dss.c and dsi.c had a probe function, which was almost a dummy one, calling dss_init() and dsi_init(). Remove the init functions by moving the initialization code into probe functions. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Handle dpll4_m4_ck in dss_get/put_clocksTomi Valkeinen
Get and put for dpll4_m4_ck was handled in dss_init/dss_exit. Move the code to dss_get/put_clocks(), which is a better place to handle it. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Reset LANEx_ULPS_SIG2 bits after useTomi Valkeinen
LANEx_ULPS_SIG2 bits are left on after entering ULPS. This doesn't cause any problems currently, as DSI HW is reset when it is enabled. However, if the reset is not done, operation fails if the bits are still set. So reset the bits after entering ULPS to ensure operation even without HW reset. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2011-10-10OMAP: DSS2: Taal: Make driver more fault tolerantTomi Valkeinen
If ULPS exit fails, and the following reset fails also, Taal driver was left in state where it thinks DSI is enabled while it really isn't, leading to crash. This patch checks the return value of taal_panel_reset, and if that fails, ulps_enabled is left true, causing the driver to retry ulps exit later. Also the return value of taal_wake_up is checked at taal_disable, and if wake up fails, we'll skip the power_off. This could leave the panel into a not-quite-valid state, but there's nothing we can do about it in that situation. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>