[PATCH 00/65] OMAPDSS: manager/apply improvements

2011-11-22 Thread Tomi Valkeinen
I started writing this patch series to get DSS's fifo-merge feature working, but in the end the series grew a bit... The reason why fifo-merge is tricky is that enabling or disabling the fifo-merge affects multiple overlays and overlay managers at the same time. In practice this means we need to

[PATCH 01/65] OMAPDSS: DISPC: add missing prototype

2011-11-22 Thread Tomi Valkeinen
dispc_mgr_is_enabled() was missing a prototype in dss.h Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dss.h |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/drivers/video/omap2/dss/dss.h b/drivers/video/omap2/dss/dss.h index

[PATCH 02/65] OMAPDSS: Remove old fifomerge hacks

2011-11-22 Thread Tomi Valkeinen
Once in a time omapdss had basic support for fifomerge. Fifomerge was removed as the implementation didn't work properly, and a proper implementation is a complex problem. However, some unused fifo-merge related code was left behind. This patch removes those. Signed-off-by: Tomi Valkeinen

[PATCH 03/65] OMAPDSS: remove L4_EXAMPLE code

2011-11-22 Thread Tomi Valkeinen
Some old example code has been left lying around. Remove the example code. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dss.h |3 --- drivers/video/omap2/dss/overlay.c | 36 2 files changed, 0 insertions(+), 39

[PATCH 04/65] OMAPDSS: DISPC: make dispc_ovl_set_channel_out() public

2011-11-22 Thread Tomi Valkeinen
Make dispc_ovl_set_channel_out() public so that later patches can handle changing overlay's manager. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dispc.c |3 +-- drivers/video/omap2/dss/dss.h |2 ++ 2 files changed, 3 insertions(+), 2 deletions(-)

[PATCH 05/65] OMAPDSS: DISPC: make dispc_ovl_set_fifo_threshold() public

2011-11-22 Thread Tomi Valkeinen
Make dispc_ovl_set_fifo_threshold() public so that later patches can handle overlay fifo configuration. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dispc.c |3 +-- drivers/video/omap2/dss/dss.h |1 + 2 files changed, 2 insertions(+), 2 deletions(-)

[PATCH 06/65] OMAPDSS: remove partial update from the overlay manager

2011-11-22 Thread Tomi Valkeinen
Partial update for manual update displays has never worked quite well: * The HW has limitations on the update area, and the x and width need to be even. * Showing a part of a scaled overlay causes artifacts. * Makes the management of dispc very complex Considering the above points and the fact

[PATCH 08/65] OMAPDSS: remove partial update from panel-taal

2011-11-22 Thread Tomi Valkeinen
Partial update for manual update displays has never worked quite well: * The HW has limitations on the update area, and the x and width need to be even. * Showing a part of a scaled overlay causes artifacts. * Makes the management of dispc very complex Considering the above points and the fact

[PATCH 07/65] OMAPDSS: remove partial update from DSI

2011-11-22 Thread Tomi Valkeinen
Partial update for manual update displays has never worked quite well: * The HW has limitations on the update area, and the x and width need to be even. * Showing a part of a scaled overlay causes artifacts. * Makes the management of dispc very complex Considering the above points and the fact

[PATCH 09/65] OMAPDSS: pass ovl manager to dss_start_update

2011-11-22 Thread Tomi Valkeinen
dss_start_update() takes currently the dss device as a parameter. Change the parameter to ovl manager, as that is what the dss_start_update() actually needs. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dsi.c |2 +- drivers/video/omap2/dss/dss.h |

[PATCH 10/65] OMAPDSS: DISPC: handle 0 out_width/out_height in ovl_setup()

2011-11-22 Thread Tomi Valkeinen
Overlay out_width/height are set to 0 when scaling is not used by the users of omapdss. Currently ovl_setup() expects the caller of ovl_setup() to convert those zero values to width or height. This patch makes ovl_setup() accept zero values for out_width/height, making calling ovl_setup() a bit

[PATCH 11/65] OMAPDSS: handle ilace/replication when configuring overlay

2011-11-22 Thread Tomi Valkeinen
Move the configuration of interlace and replication from omap_dss_mgr_apply() to configure_overlay(). This removes the need to store the values into the cache data. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/manager.c | 19 ++- 1 files

[PATCH 12/65] OMAPDSS: separate FIFO threshold setup from ovl_setup

2011-11-22 Thread Tomi Valkeinen
Overlay FIFO thresholds are configured with ovl_setup, with all the other overlay attributes. This patch separates FIFO threshold setup so that we can later configure FIFO thresholds only when needed. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dispc.c |

[PATCH 13/65] OMAPDSS: separate overlay channel from ovl_setup

2011-11-22 Thread Tomi Valkeinen
Overlay channel is configured with ovl_setup, with all the other overlay attriutes. This patch separates overlay channel setup so that we can later configure the channel only when needed. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dispc.c | 40

[PATCH 14/65] OMAPDSS: setup manager with dispc_mgr_setup()

2011-11-22 Thread Tomi Valkeinen
Change manager configuration to be similar to overlay configuration by creating dispc_mgr_setup() which takes omap_overlay_manager_info as parameter. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dispc.c | 26 --

[PATCH 15/65] OMAPDSS: DISPC: remove unused functions

2011-11-22 Thread Tomi Valkeinen
Remove unused functions: dispc_mgr_get_default_color dispc_mgr_get_trans_key dispc_mgr_trans_key_enabled dispc_mgr_alpha_fixed_zorder_enabled Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dispc.c | 65 ---

[PATCH 16/65] OMAPDSS: remove unneeded dss_ovl_wait_for_go()

2011-11-22 Thread Tomi Valkeinen
There's an unnecessary wrapper function, dss_ovl_wait_for_go(), which does nothing else than call dss_mgr_wait_for_go_ovl(). The dss_ovl_wait_for_go() function can be removed. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/overlay.c |7 +-- 1 files

[PATCH 18/65] OMAPDSS: split omap_dss_mgr_apply() to smaller funcs

2011-11-22 Thread Tomi Valkeinen
Split omap_dss_mgr_apply() into smaller functions for clarity. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/manager.c | 168 + 1 files changed, 94 insertions(+), 74 deletions(-) diff --git

[PATCH 22/65] OMAPDSS: APPLY: track whether a manager is enabled

2011-11-22 Thread Tomi Valkeinen
Add enabled field to struct omap_overlay_manager, which tells if the output is enabled or not. This will be used in apply.c in the following patches. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c |2 ++ include/video/omapdss.h |2 ++ 2

[PATCH 19/65] OMAPDSS: apply affects only one overlay manager

2011-11-22 Thread Tomi Valkeinen
omap_dss_mgr_apply currently applies settings to all overlays and overlay managers. The reason for this was to support cases where configuration changes affecting multiple managers are made. However, the current code doesn't support changing such configurations, so the functionality is not needed.

[PATCH 23/65] OMAPDSS: APPLY: skip isr register and config for manual update displays

2011-11-22 Thread Tomi Valkeinen
The mechanism to cache manager and overlay settings and configure them into the HW registers in VSYNC is meant only for auto-update displays, as it doesn't make sense (and doesn't work) for manual-update displays. This patchs adds a check so that we skip the above for manual update displays.

[PATCH 24/65] OMAPDSS: APPLY: skip isr register and config for disabled displays

2011-11-22 Thread Tomi Valkeinen
There's no need to register the vsync ISR and configure the hardware if the overlay manager is disabled, so this patch adds a check for disabled managers to the omap_dss_mgr_apply() function. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c |2 +- 1

[PATCH 27/65] OMAPDSS: store managers in an array

2011-11-22 Thread Tomi Valkeinen
Overlay managers are stored in a linked list. There's no need for this list, as an array would do just as fine. This patch changes the code to use an array for overlay managers. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/manager.c | 49

[PATCH 28/65] OMAPDSS: store overlays in a list for each manager

2011-11-22 Thread Tomi Valkeinen
Current way of handling overlay-manager links is a bit strange: each manager has a static array, containing pointers to all the overlays (even those used by other managers). The overlays contain a pointer to the manager being used. This patch makes the system a bit saner: each manager has a

[PATCH 30/65] OMAPDSS: DISPC: Add dispc_mgr_get_vsync_irq()

2011-11-22 Thread Tomi Valkeinen
Add dispc_mgr_get_vsync_irq() which returns the irq number for vsync on the given channel. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dispc.c | 14 ++ drivers/video/omap2/dss/dss.h |2 +- 2 files changed, 15 insertions(+), 1 deletions(-)

[PATCH 31/65] OMAPDSS: APPLY: use dispc_mgr_get_vsync_irq()

2011-11-22 Thread Tomi Valkeinen
Use dispc_mgr_get_vsync_irq() to get the interrupt numbers for vsync, instead of hardcoding the values depending on the display type. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 36 1 files changed, 12

[PATCH 33/65] OMAPDSS: APPLY: rename overlay_cache_data

2011-11-22 Thread Tomi Valkeinen
overlay_cache_data is not a suitable name for the struct. It is more of a private data for the overlay. Rename the struct to ovl_priv_data, and add a function, get_ovl_priv(ovl), to get a pointer to the data. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com ---

[PATCH 34/65] OMAPDSS: APPLY: rename manager_cache_data

2011-11-22 Thread Tomi Valkeinen
manager_cache_data is not a suitable name for the struct. It is more of a private data for the manager. Rename the struct to mgr_priv_data, and add a function, get_mgr_priv(mgr), to get a pointer to the data. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com ---

[PATCH 35/65] OMAPDSS: APPLY: move spinlock outside the struct

2011-11-22 Thread Tomi Valkeinen
dss_cache struct contains a spinlock used to protect the struct. A more logical place for the spinlock is outside the struct that it is protecting. So move it there. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 22 -- 1 files

[PATCH 36/65] OMAPDSS: APPLY: rename dss_cache to dss_data

2011-11-22 Thread Tomi Valkeinen
dss_cache struct contains private data used to manage dispc. cache is not a good word for it, so rename it to dss_data. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 16 1 files changed, 8 insertions(+), 8 deletions(-) diff --git

[PATCH 32/65] OMAPDSS: APPLY: configure_* funcs take ovl/manager as args

2011-11-22 Thread Tomi Valkeinen
Make configure_overlay() and configure_manager() take overlay/manager pointer as an argument, instead of the ovl/mgr id. This will be useful with the future patches. Also rename the functions to be a bit more informative: dss_ovl_write_regs, dss_mgr_write_regs, dss_write_regs. Signed-off-by:

[PATCH 29/65] OMAPDSS: APPLY: separate vsync isr register/unregister

2011-11-22 Thread Tomi Valkeinen
Create separate functions for the vsync isr register/unregister code for cleaner code. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 61 +++--- 1 files changed, 37 insertions(+), 24 deletions(-) diff --git

[PATCH 25/65] OMAPDSS: APPLY: cleanup dss_start_update

2011-11-22 Thread Tomi Valkeinen
dss_start_update() has a loop, of which sole purpose is to find the manager used for this update. The whole loop is extra, as we already know the manager. Remove the loop. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 10 ++ 1 files changed,

[PATCH 38/65] OMAPDSS: APPLY: move mgr funcs to apply.c

2011-11-22 Thread Tomi Valkeinen
apply.c will handle the management of dispc in the future patches. This patch moves overlay manager related functions to apply.c so that they will have access to the private data and functions of apply.c. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c |

[PATCH 37/65] OMAPDSS: APPLY: move ovl funcs to apply.c

2011-11-22 Thread Tomi Valkeinen
apply.c will handle the management of dispc in the future patches. This patch moves overlay related functions to apply.c so that they will have access to the private data and functions of apply.c. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 84

[PATCH 26/65] OMAPDSS: store overlays in an array

2011-11-22 Thread Tomi Valkeinen
Overlays are stored in a linked list. There's no need for this list, as an array would do just as fine. This patch changes the code to use an array for overlays. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/overlay.c | 49

[PATCH 43/65] OMAPDSS: APPLY: move mgr-enabled to mgr_priv_data

2011-11-22 Thread Tomi Valkeinen
struct omap_overlay_manager contains enabled-field, used to track if the manager is enabled or not. This field should be internal to apply.c. This patch moves the field to mgr_priv_data, and applies the necessary locking when accessing the field. Signed-off-by: Tomi Valkeinen

[PATCH 44/65] OMAPDSS: APPLY: add busy field to mgr_priv_data

2011-11-22 Thread Tomi Valkeinen
Add a new field to mgr_priv data, busy, which is used to track the status of GO bit with the manager. As manual update displays never use the GO bit, the field is always false for managers used for manual update displays. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com ---

[PATCH 45/65] OMAPDSS: APPLY: rewrite overlay enable/disable

2011-11-22 Thread Tomi Valkeinen
Overlays are currently enabled and disabled with a boolean in the struct omap_overlay_info. The overlay info is set with ovl-set_overlay_info(), and made into use with mgr-apply(). This doesn't work properly, as the enable/disable status may affect also other overlays, for example when using

[PATCH 47/65] OMAPDSS: DISPC: add dispc_mgr_get_framedone_irq

2011-11-22 Thread Tomi Valkeinen
Add dispc_mgr_get_framedone_irq() which returns the irq number for FRAMEDONE for the given channel. Note that the function returns always 0 for DIGIT channel, even if OMAP4 does have FRAMEDONE_TV interrupt. The reason for this is that this function is currently used only to track manual updates,

[PATCH 48/65] OMAPDSS: APPLY: add updating flag

2011-11-22 Thread Tomi Valkeinen
Add updating flag to mgr_priv_data, which is used to track whether the manager is currently actively working, i.e. updating the screen. For auto-update displays updating is always true when the display is enabled, but for manual update displays the flag is true only during frame transfers. The

[PATCH 50/65] OMAPDSS: APPLY: move mgr-info to apply.c

2011-11-22 Thread Tomi Valkeinen
struct omap_overlay_manager contains info and info_dirty fields, both of which should be internal to apply.c. This patch moves those fields into mgr_priv data, and names them user_info and user_info_dirty. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c

[PATCH 49/65] OMAPDSS: APPLY: clean up isr_handler

2011-11-22 Thread Tomi Valkeinen
Add a helper function mgr_clear_shadow_dirty(), which clears the shadow_dirty flags for the given manager and for the overlays on that manager. This lets us simplify the code in the dss_apply_irq_handler(). Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c

[PATCH 53/65] OMAPDSS: APPLY: move fifo thresholds to extra_info set

2011-11-22 Thread Tomi Valkeinen
Setting overlay's fifo thresholds is currently handled at the same time as other overlay attributes. This is not right, as the normal attributes should only affect one overlay and manager, but changing the fifo thresholds are needed in cases like fifo-merge, where multiple managers are affected.

[PATCH 54/65] OMAPDSS: APPLY: rename dirty shadow_dirty

2011-11-22 Thread Tomi Valkeinen
Rename ovl_priv_data's and mgr_priv_data's dirty and shadow_dirty fields to info_dirty and shadow_info_dirty to better reflect what they mean. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 62 +-- 1 files changed,

[PATCH 57/65] OMAPDSS: APPLY: skip enable/disable if already enabled/disabled

2011-11-22 Thread Tomi Valkeinen
Add checks to dss_mgr_enable, dss_mgr_disable, dss_ovl_enable, dss_ovl_disable that check if the state is already the same as given in the parameters, and exit if so. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 18 ++ 1 files

[PATCH 55/65] OMAPDSS: APPLY: remove device_changed field

2011-11-22 Thread Tomi Valkeinen
omap_overlay_manager contains device_changed field, which no longer has any use. So remove the field and the few places where it is touched. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c |7 --- include/video/omapdss.h |2 -- 2 files

[PATCH 56/65] OMAPDSS: APPLY: add dss_apply_ovl_enable()

2011-11-22 Thread Tomi Valkeinen
Add a helper function dss_apply_ovl_enable(), which is similar to the main apply() function: dss_apply_ovl_enable() applies the given overlay enable-status to ovl_priv_data, and sets the dirty flag. The difference between the helper function and the previous direct use of the fields is that the

[PATCH 60/65] OMAPDSS: Add comments about blocking of ovl/mgr functions

2011-11-22 Thread Tomi Valkeinen
Add comments specifying what ovl/mgr functions may block. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- include/video/omapdss.h | 22 ++ 1 files changed, 22 insertions(+), 0 deletions(-) diff --git a/include/video/omapdss.h b/include/video/omapdss.h index

[PATCH 59/65] OMAPDSS: APPLY: remove runtime_get

2011-11-22 Thread Tomi Valkeinen
apply.c no longer touches any registers if an output is not enabled. This means that we don't need to do dispc_runtime_get() anymore, and the calls can be removed. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c |9 + 1 files changed, 1

[PATCH 61/65] OMAPDSS: APPLY: add dss_ovl_simple_check()

2011-11-22 Thread Tomi Valkeinen
Add dss_ovl_simple_check() which is used to check the validity of certain overlay attributes. Only attributes that can be checked independently, without knowing the display being used, is done here (thus simple). We can use this function in dss_ovl_set_info(). Signed-off-by: Tomi Valkeinen

[PATCH 62/65] OMAPDSS: APPLY: add dss_mgr_simple_check()

2011-11-22 Thread Tomi Valkeinen
Add dss_mgr_simple_check() which is used to check the validity of certain manager attributes. Only attributes that can be checked independently, without knowing the display being used, is done here (thus simple). We can use this function in dss_mgr_set_info(). Signed-off-by: Tomi Valkeinen

[PATCH 63/65] OMAPDSS: APPLY: add checking of ovls/mgrs settings

2011-11-22 Thread Tomi Valkeinen
Add checks for overlay and manager settings. The checks are a bit complex, as we need to observe the bigger picture instead of overlays and managers independently. Things like the used display and the zorder of other overlays affect the validity of the settings. Signed-off-by: Tomi Valkeinen

[PATCH 64/65] OMAPDSS: APPLY: add return value to dss_mgr_enable()

2011-11-22 Thread Tomi Valkeinen
Now that dss_mgr_enable() can fail due to checks, make it return the error value. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c | 12 +--- drivers/video/omap2/dss/dss.h |2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git

[PATCH 65/65] OMAPDSS: check the return value of dss_mgr_enable()

2011-11-22 Thread Tomi Valkeinen
Now that dss_mgr_enable returns an error value, check it in all the places dss_mgr_enable is used, and bail out properly. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/dpi.c |5 - drivers/video/omap2/dss/dsi.c | 11 ++-

[PATCH 58/65] OMAPDSS: APPLY: add wait_pending_extra_info_updates()

2011-11-22 Thread Tomi Valkeinen
Add wait_pending_extra_info_updates() function which can be used to wait until any extra_info changes have been taken into use by the hardware. This can be only called when holding the apply mutex, so that other threads cannot insert new extra_info changes. This will be used to handle

[PATCH 52/65] OMAPDSS: APPLY: move channel-field to extra_info set

2011-11-22 Thread Tomi Valkeinen
Setting overlay's output channel is currently handled at the same time as other overlay attributes. This is not right, as the normal attributes should only affect one overlay and manager, but changing the channel affects two managers. This patch moves the channel field into the extra_info set,

[PATCH 51/65] OMAPDSS: APPLY: move ovl-info to apply.c

2011-11-22 Thread Tomi Valkeinen
struct omap_overlayr contains info and info_dirty fields, both of which should be internal to apply.c. This patch moves those fields into ovl_priv data, and names them user_info and user_info_dirty. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/apply.c

[PATCH 46/65] OMAPDSS: APPLY: rewrite register writing

2011-11-22 Thread Tomi Valkeinen
The functions writing to the DISPC registers in apply.c are more complex than needed. This patch cleans things up. Two helper functions are added: need_isr(), which returns if an isr for VSYNC is needed, and need_go(), which tells if there has been a write to the shadow registers and we need to

[PATCH 42/65] OMAPDSS: DSI: call mgr_enable/disable for cmd mode displays

2011-11-22 Thread Tomi Valkeinen
The current code uses dsi_video_mode_enable/disable functions to enable/disable DISPC output for video mode displays. For command mode displays we have no notion in the DISPC side of whether the panel is enabled, except when a dss_start_update() call is made. However, to properly maintain the

[PATCH 41/65] OMAPDSS: APPLY: add missing uses of spinlock

2011-11-22 Thread Tomi Valkeinen
The functions in apply.c, called mostly via function pointers in overlay and overlay_manager structs, will be divided into two groups. The other group will not sleep and can be called from interrupts, and the other group may sleep. The idea is that the non-sleeping functions may only change

[PATCH 39/65] OMAPDSS: remove ovl/mgr check-code temporarily

2011-11-22 Thread Tomi Valkeinen
DSS currently tries to check that the given overlay and overlay manager settings are acceptable, but the code does not work quite properly. Things may change between the check and the actual use of the settings. Furthermore, the following patches will rewrite how settings are configured and

[PATCH 40/65] OMAPDSS: APPLY: add mutex

2011-11-22 Thread Tomi Valkeinen
The functions in apply.c, called mostly via function pointers in overlay and overlay_manager structs, will be divided into two groups. The other group will not sleep and can be called from interrupts, and the other group may sleep. The idea is that the non-sleeping functions may only change

[PATCH 21/65] OMAPDSS: hide manager's enable/disable()

2011-11-22 Thread Tomi Valkeinen
omap_overlay_manager struct contains enable() and disable() functions. However, these are only meant to be used from inside omapdss, and thus it's bad to expose the functions. This patch adds dss_mgr_enable() and dss_mgr_disable() functions to apply.c, which handle enabling and disabling the

[PATCH 20/65] OMAPDSS: create apply.c

2011-11-22 Thread Tomi Valkeinen
Create a new file, apply.c, and move code about handling the apply-mechanism and configuration of the managers and overlays from manager.c to apply.c. Not all related code is moved in this patch, but only the core apply/configure functions. The later patches move rest of the code from overlay.c

[PATCH 17/65] OMAPDSS: add ovl/mgr_manual_update() helpers

2011-11-22 Thread Tomi Valkeinen
Add helper functions ovl_manual_update() and mgr_manual_update() which return whether the overlay or manager is used with a manual update display. Signed-off-by: Tomi Valkeinen tomi.valkei...@ti.com --- drivers/video/omap2/dss/manager.c | 19 +++ 1 files changed, 11

Re: [PATCH V2] omap_dss: add FocalTech ETM070003DH6 display support

2011-11-22 Thread Tomi Valkeinen
On Sun, 2011-11-20 at 19:15 +0100, Ilya Yanok wrote: Add data for the FocalTech ETM070003DH6 display to the generic_dpi_panel display driver. Signed-off-by: Ilya Yanok ya...@emcraft.com --- Changes from V1: - acb, acbi, power_on_delay and power_off_delay fields removed.

USB video capture shuts up - 2

2011-11-22 Thread Andrew Pushkin
Hello. I need to use USB Web camera with TI AM3505 and TI AM3517 . I use kernel 2.6.37 from arago. I test it, its work but sometimes I have problems, that other users see in other TI CPU: http://thread.gmane.org/gmane.linux.ports.arm.omap/35912/focus=36095 Sometimes camera do not work after 10-15

Inclusion of ARM perf tree in linux-next

2011-11-22 Thread Will Deacon
Hi Stephen, I maintain the ARM perf backend and would be very grateful if you could please include this branch in linux-next: git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git for-next/perf This request has arisen specifically from some work with the OMAP guys where it would be

Re: [RFC 1/3] pinctrl: add a driver for the OMAP pinmux

2011-11-22 Thread Thomas Abraham
Hi Linus, On 17 November 2011 19:27, Linus Walleij linus.wall...@linaro.org wrote: On Thu, Nov 17, 2011 at 12:26 PM, Thomas Abraham thomas.abra...@linaro.org wrote: For now, the Samsung GPIO, Pinconfig and Pinmux information is represented in device tree as listed below. Does this mean

Re: [PATCH 0/7] Introducing a generic AMP framework

2011-11-22 Thread Ohad Ben-Cohen
On Wed, Oct 26, 2011 at 6:00 AM, Rusty Russell ru...@rustcorp.com.au wrote: On Tue, 25 Oct 2011 11:48:19 +0200, Ohad Ben-Cohen o...@wizery.com wrote: Modern SoCs typically employ a central symmetric multiprocessing (SMP) application processor running Linux, with several other asymmetric

Re: [PATCH 06/65] OMAPDSS: remove partial update from the overlay manager

2011-11-22 Thread Archit Taneja
On Tuesday 22 November 2011 02:51 PM, Tomi Valkeinen wrote: Partial update for manual update displays has never worked quite well: * The HW has limitations on the update area, and the x and width need to be even. There are also some issues with partial update on OMAP4 even when 'x and

Re: [PATCH 08/65] OMAPDSS: remove partial update from panel-taal

2011-11-22 Thread Archit Taneja
On Tuesday 22 November 2011 02:51 PM, Tomi Valkeinen wrote: Partial update for manual update displays has never worked quite well: * The HW has limitations on the update area, and the x and width need to be even. * Showing a part of a scaled overlay causes artifacts. * Makes the management of

Re: [RFC 1/3] pinctrl: add a driver for the OMAP pinmux

2011-11-22 Thread Linus Walleij
On Tue, Nov 22, 2011 at 12:09 PM, Thomas Abraham thomas.abra...@linaro.org wrote: On 17 November 2011 19:27, Linus Walleij linus.wall...@linaro.org wrote: Maybe I'm mistaken about the device tree ambitions, but I was sort of hoping that it would not contain too much custom magic numbers that

Re: [PATCH 08/65] OMAPDSS: remove partial update from panel-taal

2011-11-22 Thread Tomi Valkeinen
On Tue, 2011-11-22 at 17:23 +0530, Archit Taneja wrote: - r = taal_set_update_window(td, x, y, w, h); + /* XXX no need to send this every frame, but dsi break if not done */ + r = taal_set_update_window(td, 0, 0, + td-panel_config-timings.x_res, +

Re: [PATCH v3 5/5] clk: export tree topology and clk data via sysfs

2011-11-22 Thread Arnd Bergmann
On Tuesday 22 November 2011, Mike Turquette wrote: Introduces kobject support for the common struct clk, exports per-clk data via read-only callbacks and models the clk tree topology in sysfs. Also adds support for generating the clk tree in clk_init and migrating nodes when input sources

Re: [PATCH v3 2/2] OMAPDSS: HDMI: Disable DDC internal pull up

2011-11-22 Thread K, Mythri P
Hi, On Fri, Nov 18, 2011 at 1:00 PM, Tomi Valkeinen tomi.valkei...@ti.com wrote: On Tue, 2011-11-15 at 19:20 +0530, mythr...@ti.com wrote: From: Mythri P K mythr...@ti.com Disables the internal pull resistor for SDA and SCL which are enabled by default, as there are expernal pull up's in

Re: [PATCH 3/4] OMAPDSS: HDMI: change the timing match logic

2011-11-22 Thread K, Mythri P
Hi Tomi, On Fri, Nov 18, 2011 at 12:46 PM, Tomi Valkeinen tomi.valkei...@ti.com wrote: On Wed, 2011-11-16 at 11:01 +0530, K, Mythri P wrote: On Mon, Nov 14, 2011 at 1:03 PM, Tomi Valkeinen tomi.valkei...@ti.com wrote: On Fri, 2011-11-11 at 18:39 +0530, mythr...@ti.com wrote: -static int

Re: [PATCH v3 4/5] clk: basic gateable and fixed-rate clks

2011-11-22 Thread Arnd Bergmann
On Tuesday 22 November 2011, Mike Turquette wrote: +static void clk_hw_gate_set_bit(struct clk *clk) +{ + struct clk_hw_gate *gate = to_clk_hw_gate(clk); + u32 reg; + + reg = __raw_readl(gate-reg); + reg |= BIT(gate-bit_idx); + __raw_writel(reg, gate-reg); +}

Re: [PATCH v3 2/2] OMAPDSS: HDMI: Disable DDC internal pull up

2011-11-22 Thread Tomi Valkeinen
On Tue, 2011-11-22 at 18:37 +0530, K, Mythri P wrote: + if (cpu_is_omap446x() || (omap_rev() OMAP4430_REV_ES2_2)) If you compare omap_rev() you should also use cpu_is_omap at the same time. In this case (cpu_is_omap443x() omap_rev() OMAP4430_REV_ES2_2). Otherwise the omap_rev

[PATCH v2 2/4] omap-serial: Use default clock speed (48Mhz) if not specified

2011-11-22 Thread Rajendra Nayak
Use a default clock speed of 48Mhz, instead of ending up with 0, if platforms fail to specify a valid clock speed. Signed-off-by: Rajendra Nayak rna...@ti.com --- drivers/tty/serial/omap-serial.c |7 +++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git

[PATCH v2 0/4] OMAP serial device tree support

2011-11-22 Thread Rajendra Nayak
v2 is based on the latest omap-serial runtime patches, which can be found here[1] The series passes minimal data that allows serial console boot, with UART's initialised from device tree. However some of low power support for UART and remote wakeup needs more work. Boot tested on OMAP4 panda and

[PATCH v2 3/4] omap-serial: Add minimal device tree support

2011-11-22 Thread Rajendra Nayak
Adapt the driver to device tree and pass minimal platform data from device tree needed for console boot. No power management features will be suppported for now since it requires more tweaks around OCP settings to toggle forceidle/noidle/smaridle bits and handling remote wakeup and dynamic muxing.

[PATCH v2 1/4] omap-serial: Get rid of all pdev-id usage

2011-11-22 Thread Rajendra Nayak
With Device tree, pdev-id would no longer be Valid. Hence get rid of all instances of its usage in the driver. Device tree support for the driver is added in subsequent patches. Signed-off-by: Rajendra Nayak rna...@ti.com --- drivers/tty/serial/omap-serial.c | 30 +++---

[PATCH v2 4/4] ARM: omap: pass minimal SoC/board data for UART from dt

2011-11-22 Thread Rajendra Nayak
Pass minimal data needed for console boot, from dt, for OMAP4 panda/sdp and OMAP3 beagle boards, and get rid of the static initialization from generic board file. Signed-off-by: Rajendra Nayak rna...@ti.com --- arch/arm/boot/dts/omap3.dtsi| 31 +++

[PATCH 1/3] omap_hsmmc: consider MMC_PM_KEEP_POWER on suspend/resume

2011-11-22 Thread Eliad Peller
When an mmc card has the MMC_PM_KEEP_POWER flag, it shouldn't be powered off on suspend (and thus doesn't have to be powered-on on resume) While on it, change the suspend flow a bit, to make it a bit easier to follow. Signed-off-by: Eliad Peller el...@wizery.com ---

[PATCH 2/3] omap_hsmmc: add pm_caps field

2011-11-22 Thread Eliad Peller
Add pm_caps field to omap2_hsmmc_info and omap_mmc_slot_data structs, so we will be able to indicate mmc pm capabilities in the board file. Signed-off-by: Eliad Peller el...@wizery.com --- arch/arm/mach-omap2/hsmmc.c |1 + arch/arm/mach-omap2/hsmmc.h |1 +

[PATCH 3/3] omap: board-sdp4430: declare support for MMC_PM_KEEP_POWER

2011-11-22 Thread Eliad Peller
Declare support for keeping the power of the wlan chip while suspended. this is needed for Wakeup-On-Wireless. Signed-off-by: Eliad Peller el...@wizery.com --- arch/arm/mach-omap2/board-4430sdp.c |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git

[PATCH 0/5] Support for OMAP4 Digital Microphone interface

2011-11-22 Thread Peter Ujfalusi
Hello, The following series will add support for OMAP4 DMIC interface, and enable them on sdp4430/Blaze boards. Mark: The Panda support will be based on this series with the conversion of the sdp4430 ASoC machine driver to platform device/driver to prepare it for DT. The DT bindings for the dmic

[PATCH 1/5] OMAP4: hwmod: Add names for DMIC memory address space

2011-11-22 Thread Peter Ujfalusi
To be able to get the memory resources by name from the DMIC driver (for MPU and for DMA). Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com --- arch/arm/mach-omap2/omap_hwmod_44xx_data.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git

[PATCH 2/5] ASoC: OMAP4: omap-dmic: Initial support for OMAP DMIC

2011-11-22 Thread Peter Ujfalusi
Add support for OMAP4 Digital Microphone interface. Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com --- sound/soc/omap/Kconfig |3 + sound/soc/omap/Makefile|2 + sound/soc/omap/omap-dmic.c | 494 sound/soc/omap/omap-dmic.h | 73

[PATCH 4/5] OMAP4: board-4430sdp: Register platform device for digimic codec

2011-11-22 Thread Peter Ujfalusi
OMAP4 SDP/Blaze boards have onboard digital microphones. Register the platform device for the dmic-codec to be able to use the microphones. Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com --- arch/arm/mach-omap2/board-4430sdp.c |6 ++ 1 files changed, 6 insertions(+), 0 deletions(-)

[PATCH 3/5] OMAP4: devices: Register OMAP4 DMIC platform device

2011-11-22 Thread Peter Ujfalusi
Add platform device registration for OMAP4 DMIC. Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com --- arch/arm/mach-omap2/devices.c | 22 ++ 1 files changed, 22 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c

[PATCH 5/5] ASoC: sdp4430: Add support for digital microphones

2011-11-22 Thread Peter Ujfalusi
OMAP4 SDP/Blaze boards have digital microphones. Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com --- sound/soc/omap/Kconfig |2 + sound/soc/omap/sdp4430.c | 84 -- 2 files changed, 75 insertions(+), 11 deletions(-) diff --git

Re: Inclusion of ARM perf tree in linux-next

2011-11-22 Thread Stephen Rothwell
Hi Will, On Tue, 22 Nov 2011 10:04:35 + Will Deacon will.dea...@arm.com wrote: I maintain the ARM perf backend and would be very grateful if you could please include this branch in linux-next: git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git for-next/perf This request has

Re: [PATCH v3 4/5] clk: basic gateable and fixed-rate clks

2011-11-22 Thread Mark Salter
On Tue, 2011-11-22 at 13:11 +, Arnd Bergmann wrote: On Tuesday 22 November 2011, Mike Turquette wrote: +static void clk_hw_gate_set_bit(struct clk *clk) +{ + struct clk_hw_gate *gate = to_clk_hw_gate(clk); + u32 reg; + + reg = __raw_readl(gate-reg); + reg

omap3isp hangs with 3.2-rc2

2011-11-22 Thread Ohad Ben-Cohen
Hi Laurent, With 3.2-rc2, omap3isp seems to silently hang in my setup (sensor-less OMAP3). Turning on lockdep yields the below messages, care to take a quick look ? Thanks! Ohad. root@zoom3:~# media-ctl -r -l 'OMAP3 ISP CCP2 input:0-OMAP3 ISP CCP2:0[1], OMAP3 ISP CCP 2:1-OMAP3 ISP CCDC:0[1],

[RFC/PATCH 00/26] PM: Create the AVS class of drivers

2011-11-22 Thread jean . pihet
From: Jean Pihet j-pi...@ti.com The following patches are in RFC state; the code is still WIP and has been compile tested only. Feedback on the code organization is welcome! AVS is a power management technique which controls the operating voltage of a device in order to optimize (i.e. reduce)

[PATCH 01/26] OMAP2+: smartreflex: use sane default values

2011-11-22 Thread jean . pihet
From: Paul Walmsley p...@pwsan.com Use sane values for the smartreflex data from the e-fuses. Signed-off-by: Paul Walmsley p...@pwsan.com Signed-off-by: Jean Pihet j-pi...@ti.com --- arch/arm/mach-omap2/sr_device.c |7 +++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git

[PATCH 03/26] OMAP3/4: SmartReflex: API should use struct omap_sr *, not struct voltagedomain *

2011-11-22 Thread jean . pihet
From: Jean Pihet j-pi...@ti.com The SmartReflex API should take pointers to a SmartReflex instance-specific structure record, not pointers to a OMAP subarchitecture-specific struct voltagedomain *. The SmartReflex drivers should not be tightly coupled to the SoC subarchitecture; these IP blocks

  1   2   >