summaryrefslogtreecommitdiff
path: root/drivers/video/b2r2
AgeCommit message (Collapse)Author
2012-05-22video: [ANDROID]: b2r2: Add kernel API to b2r2 and moreJorgen Nilsson
Brief: As a preparation for the ICS hardware composer solution a kernel API has been added to the b2r2 driver. Some minor stability fixes are also part of this release. The full support for dual b2r2 configuration should be in place, but has yet to be verified with the apropriate hardware. The change should have minor impact on the single core solution. Details: A new logical device for handling the blitter requests has been added. This is roughly the same device as the old blitter the interfaces are therefore the same. From now there is at least two devices - one blitter device and then for each core one additional device (dual configuration is the current target). As a consequence the maximum number of allowed cores has been raised from 1 to 2. When a dual configuration is active the b2r2 driver seamlessly splits requests over available b2r2 cores. Each request is assigned a core_mask defining which cores are doing part of the job. This helps keep track when waiting for the reports. Also, rectangles are now recalculated (based on intersection of destination rectangle and destination image etc.) before splitting the job in order to maximize throughput. Clock and power source can now be configured from devices-dbxxxx.c or equivalent. Minor bug fixes: - Check the return value from clk_enable - Check if the core is valid before serving a IRQ. - Check if the core is enabled (domain_enabled) before adding a new job. - Return actual job_id used for a request (previously always 0) ST-Ericsson ID: 404691 Original Change-Id: Ic3357c4c1e792a84077c1be4ba4c5acdb19da266 Signed-off-by: Jorgen Nilsson <jorgen.nilsson@stericsson.com>
2012-05-22b2r2: Improve image quality for HDMI cloneJorgen Nilsson
The downscale filter for scale factors from 1 to 1.4 has been modified to reduce ringing effects. Ringing effects occur when the filter is a sinc function and the input is the step function (high contrast, e.g. a black line on a white surface). Destination pixels that were close to high contrast edges could be visibly contaminated by content from the opposite side of the edge. ST-Ericsson ID: 410185 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I789988e6e08cddc91f5364543efcc6287165b1b2 Signed-off-by: Jorgen Nilsson <jorgen.nilsson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50567 Reviewed-by: Robert FEKETE <robert.fekete@stericsson.com>
2012-05-22b2r2: Possible to set YUV rangeJörgen Nilsson
The YUV range can be either full or narrow (601 standard). A flag has been added to be able to choose which YUV range to use for the B2R2 request. The conversion matrices (iVMx) has also been updated to default to narrow range. Narrow range is the preferred range since it is used for video encoding. The full range case is targeted for JPEG encoding. Conversion matrix assignment has been broken out to a separate file. As a consequence of this some functionality in the node splitter has been moved to utilis. ST-Ericsson ID: 407107 ST-Ericsson FOSS-OUT ID: Trivial ST-Ericsson Linux next: NA Change-Id: Id4edb38170b0c398927ad4eddbdecc62e4734cdf Signed-off-by: Jorgen Nilsson <jorgen.nilsson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/46251 Reviewed-by: Jimmy RUBIN <jimmy.rubin@stericsson.com> Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
2012-05-22b2r2: Check return value from debugfs callsJörgen Nilsson
Check for NULL and errors before using return value when building the debugfs nodes for B2R2. ST-Ericsson Linux next: NA ST-Ericsson ID: 406740 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I11f33d9ca794070c540463a69228136fe1b35bae Signed-off-by: Jörgen Nilsson <jorgen.nilsson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/45486 Reviewed-by: QABUILD Reviewed-by: Jimmy RUBIN <jimmy.rubin@stericsson.com> Reviewed-by: Per-Daniel OLSSON <per-daniel.olsson@stericsson.com>
2012-05-22b2r2: Support in driver for multiple b2r2 devicesJörgen Nilsson
The b2r2 driver needs to support dual configuration for 9540. The patch contains multi device support, however the upper bound is capped to one. The cap needs to be raised when the driver has been verified to work with the 9540 HW. ST-Ericsson Linux next: NA ST-Ericsson ID: 355461 ST-Ericsson FOSS-OUT ID: Trivial Signed-off-by: Jörgen Nilsson <jorgen.nilsson@stericsson.com> Change-Id: Ide0f860f70fae3565e161775a6c99fd9214dc5ac Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/37633 Reviewed-by: Maciej SOCHA <maciej.socha@stericsson.com> Reviewed-by: QABUILD Reviewed-by: Jorgen NILSSON <jorgen.nilsson@stericsson.com> Tested-by: Jorgen NILSSON <jorgen.nilsson@stericsson.com> Reviewed-by: Jimmy RUBIN <jimmy.rubin@stericsson.com> Reviewed-by: Robert LIND <robert.lind@stericsson.com>
2012-05-22b2r2: Improve image quality for large zoom blitsMaciej Socha
The bilinear filter kernel is essentially reduced in size so the output is affected by fewer surrounding pixels. Destination pixels that are close to high contrast edges can otherwise be contaminated by content from the opposite side of the edge. ST-Ericsson ID: 367586 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I9cd8b8a7e0e3d36f987ee4fd96abebc42bb94628 Signed-off-by: Maciej Socha <maciej.socha@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/38272 Reviewed-by: Nils CALMSUND <nils.calmsund@stericsson.com> Tested-by: Nils CALMSUND <nils.calmsund@stericsson.com> Reviewed-by: QATOOLS Reviewed-by: QABUILD Reviewed-by: Jorgen NILSSON <jorgen.nilsson@stericsson.com> Reviewed-by: Jimmy RUBIN <jimmy.rubin@stericsson.com>
2012-05-22b2r2: Modify src and dst rect to avoid clippingMaciej Socha
Whenever the destination rectangle is larger than the destination image or extends outside that image, source and destination rectangles are modified to avoid the clipping operation. The background rectangle is also modified if a separate background image is supplied. ST-Ericsson ID: 372917 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: Trivial Change-Id: Ia00f287fd3c344316349e650caaded17725b9ee4 Signed-off-by: Maciej Socha <maciej.socha@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/36792 Reviewed-by: QATOOLS Reviewed-by: QABUILD Reviewed-by: Jorgen NILSSON <jorgen.nilsson@stericsson.com> Reviewed-by: Per-Daniel OLSSON <per-daniel.olsson@stericsson.com> Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
2012-05-22b2r2: Correct scaling to multi-buffer formatMaciej Socha
A scaling operation from raster to a multi-buffer format, requires the raster input to be scaled before luminance information can be extracted. Raster input is scaled by the chroma resizer. Luma resizer only handles luminance data which exists in a separate buffer in source image, as is the case with YUV planar/semi-planar formats. ST-Ericsson ID: 371067 ST-Ericsson Linux next: N/A ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I1bcdd4ead2b6e06bfa62f330d35a177e2890956e Signed-off-by: Maciej Socha <maciej.socha@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/35958 Reviewed-by: QATOOLS Reviewed-by: Robert LIND <robert.lind@stericsson.com> Reviewed-by: Jorgen NILSSON <jorgen.nilsson@stericsson.com> Reviewed-by: QABUILD Reviewed-by: Jimmy RUBIN <jimmy.rubin@stericsson.com>
2012-05-22b2r2: Add support for blending on background imageJörgen Nilsson
Instead of blending only on the destination there is now a possibility to blend on a supplied background using standard blending flags. The background blending option is enabled through setting a flag in the request. When background blending is enabled the destination blending is omitted and the destination buffer is simply overwritten. ST-Ericsson Linux next: NA Depends-On: I85ba9d0006e7480167f72f2a6b5c9d8fff272813, Ia34f98cfb20e2f0486049e82581dcea28b465ed4, I5cbeb4525a98a5b9884c3464154182810ee7449b ST-Ericsson ID: 350337 ST-Ericsson FOSS-OUT ID: Trivial Introduce non-backward compatible changes to exposed interfaces Signed-off-by: Jörgen Nilsson <jorgen.nilsson@stericsson.com> Change-Id: Ifeb8eb66c2fed97c541b09715a17251a81e493ab Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/34023 Tested-by: Jorgen NILSSON <jorgen.nilsson@stericsson.com> Reviewed-by: Maciej SOCHA <maciej.socha@stericsson.com> Reviewed-by: Linus WALLEIJ <linus.walleij@stericsson.com>
2012-05-22b2r2:Add optimized path for VUY(A)888(8) 24/32-bitNaveen Kumar Gaddipati
The most common conversions for these formats are now handled by the node splitter. These include RGB, STE macro-block, and interleaved YUV formats. ST-Ericsson ID: 351482 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: Trivial Signed-off-by: Maciej Socha <maciej.socha@stericsson.com> Change-Id: I56dc8b0e94bfcd925299e00a419e5be6ef31a5ac Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/30128 Reviewed-by: Naveen Kumar GADDIPATI <naveen.gaddipati@stericsson.com> Tested-by: Naveen Kumar GADDIPATI <naveen.gaddipati@stericsson.com>
2012-05-22b2r2: Kernel 3.0 migration changesNaveen Kumar Gaddipati
Migrate the b2r2 folllowing driver patches to kernel 3.0 707a836 b2r2: Prevent access to freed memory ST-Ericsson ID: 352334 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: NA Signed-off-by: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com> Change-Id: I9d8ff2d03073290ad220b322e36c4d519a5f1398 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/30014
2012-05-22b2r2:Migrate driver to kernel 3.0Naveen Kumar Gaddipati
Migrate the following b2r2 driver patches to kernel3.0 dbc424d b2r2: Add optimized path for VUY(A)888(8) 24/32-bit formats 2142b2d b2r2: Add VUY(A)888(8) 24/32-bit formats 797c68c [b2r2] Fix QA tools warning in b2r2_node_split.c ST-Ericsson ID: 352334 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: NA Change-Id: I5f3160a9568ad17eb05eae0b7b8adba146153ea9 Signed-off-by: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/29563
2012-05-22b2r2: Correct support for 24/32bit (A)YUV(8)888Maciej Socha
Order of the color components has been corrected to match the specification of the formats. ST-Ericsson ID: 341178 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I9211ccce6a099b89fe247bc2ed486aa2bc6c6ac8 Signed-off-by: Maciej Socha <maciej.socha@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/25429 Reviewed-by: QATOOLS Reviewed-by: QATEST Reviewed-by: Robert FEKETE <robert.fekete@stericsson.com> Reviewed-by: Linus WALLEIJ <linus.walleij@stericsson.com>
2012-05-22video: B2R2: Remove bluish tone when using yuv422iMaciej Socha
Correction of format checked for in bool is_yvu_fmt. This restores a previous correction (ER328908) that was accidentally removed. ST-Ericsson ID: ER 332631 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10068 Change-Id: Iaa34da64d8b01463912cf4a694ea1747c76e2f35 Signed-off-by: Maciej Socha <maciej.socha@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/19289 Reviewed-by: Robert FEKETE <robert.fekete@stericsson.com>
2012-05-22video: B2R2: Add support for YVU420/2_PACKED_(SEMI)_PLANAR.Maciej Socha
The new formats differ from their YUV counterparts only by the order of chroma samples. In YVU formats red chroma (V-component) comes before blue, whereas in YUV formats it is the other way around. ST-Ericsson ID: ER 325111 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10068 Change-Id: Ib7b2eb8bf36623a88fca87e34aacdff77c0df030 Signed-off-by: Maciej Socha <maciej.socha@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/18952 Reviewed-by: Robert LIND <robert.lind@stericsson.com> Reviewed-by: Magnus SMITH <magnus.xm.smith@stericsson.com> Reviewed-by: QATOOLS Reviewed-by: Robert FEKETE <robert.fekete@stericsson.com> Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
2012-05-22B2R2: Correct output for combined scale and rotation.Maciej Socha
Corrects output on optimized path for scaling operations that use different horizontal and vertical scale factors and combine this with rotation. ST-Ericsson ID: ER 328924 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10068 Change-Id: I1c9e5154fc74141eb7f7f26450b748e21fdab7e1 Signed-off-by: Maciej Socha <maciej.socha@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/18607 Reviewed-by: Nils CALMSUND <nils.calmsund@stericsson.com> Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com> Reviewed-by: Robert FEKETE <robert.fekete@stericsson.com> Tested-by: Robert FEKETE <robert.fekete@stericsson.com>
2012-05-22B2R2: Remove bluish tone when using yuv422iRobert Fekete
Correction of format checked for in bool is_yvu_fmt. ST-Ericsson ID: ER 328908 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10068 Change-Id: I0df2df5ae2226b4828271b9e543c5fd70338a2ca Signed-off-by: Robert Fekete <robert.fekete@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/18474 Reviewed-by: Maciej SOCHA <maciej.socha@stericsson.com> Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
2012-05-22video: HWMEM Update APIPhilippe Langlais
Perform queued hwmem API changes. One commit to ease dependency handling. Depends-On: I13f249cf5f51f9f138171e8d6f59e1d5d2f72de1, I31030bcfda7cf76d15402c2137576da4f3fb2761, I2dc7e6aa5686492550b5164e50c06ed750ac9e16, Ia12bbb9f378c331cfb9b1376dedb3b7b65f56429, Ibc3404df4876971d8b69272c63120e2fe3bb2787 ST-Ericsson ID: AP 327001 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10068 Change-Id: I9a45ad54a0cc8a5cdb1e3b9038ad50aeacb3f9c3 Signed-off-by: Johan Mossberg <johan.xx.mossberg@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/17518 Reviewed-by: Robert FEKETE <robert.fekete@stericsson.com>
2012-05-22b2r2: Warnings fixPhilippe Langlais
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
2012-05-22Adding b2r2_blt_main.c to finish porting b2r2 portion of the video driver ↵Mathieu J. Poirier
from .35 to .38 Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
2012-05-22Porting b2r2 portion of video driver from .35 to .38Philippe Langlais
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>