1. 14 9月, 2011 4 次提交
  2. 25 7月, 2011 3 次提交
  3. 01 7月, 2011 4 次提交
    • T
      OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 · 5ed8cf5b
      Tomi Valkeinen 提交于
      The DMA FIFO threshold registers and burst size registers have changed
      for OMAP4.  The current code only handles OMAP2/3 case, and so the
      values are a bit off for OMAP4.  A summary of the differences between
      OMAP2/3 and OMAP4:
      
      Burst size:
      OMAP2/3: 4 x 32 bits / 8 x 32 bits / 16 x 32 bits
      OMAP4: 2 x 128 bits / 4 x 128 bits / 8 x 128 bits
      
      Threshold size:
      OMAP2/3: in bytes (8 bit units)
      OMAP4: in 128bit units
      
      This patch fixes the issue by creating two new helper functions in
      dss_features: dss_feat_get_buffer_size_unit() and
      dss_feat_get_burst_size_unit(). These return (in bytes) the unit size
      for threshold registers and unit size for burst size register,
      respectively, and are used to calculate correct values.
      
      For the threshold size the usage is straightforward. However, the burst
      size register has different multipliers for OMAP2/3 and OMAP4. This
      patch solves the problem by defining the multipliers for the burst size
      as 2x, 4x and 8x, which fit fine for the OMAP4 burst size definition
      (i.e. burst size unit for OMAP4 is 128bits), but requires a slight twist
      on OMAP2/3 by defining the burst size unit as 64bit.
      
      As the driver in practice always uses the maximum burst size, and no use
      case currently exists where we would want to use a smaller burst size,
      this patch changes the driver to hardcode the burst size when
      initializing DISPC. This makes the threshold configuration code somewhat
      simpler.
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      5ed8cf5b
    • T
      OMAP: DSS2: Add Color Phase Rotation support · 3c07cae2
      Tomi Valkeinen 提交于
      Add Color Phase Rotation (CPR) support and sysfs files to enable CPR and
      to set the CPR coefficient matrix.
      
      CPR is enabled via manager?/cpr_enable file, and the coefficient matrix
      is set via manager?/cpr_coef file. The values in cpr_coef are in the
      following order:
      
      RR RG RB GR GG GB BR BG BB
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      3c07cae2
    • T
      OMAP: DSS2: Add new FEAT definitions for features missing from OMAP2 · 332e9d70
      Tomi 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: NTomi Valkeinen <tomi.valkeinen@ti.com>
      332e9d70
    • T
      OMAP: DSS2: remove extra includes from include/video/omapdss.h · 24e6289c
      Tomi Valkeinen 提交于
      omapdss.h included platform_device.h and atomic.h, neither of which is
      needed by omapdss.h. Remove those includes from omapdss.h, and fix the
      affected .c files which did not include platform_device.h even though
      they should.
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      24e6289c
  4. 23 5月, 2011 5 次提交
    • A
      OMAP: DSS2: Add support for NV12 format · 0d66cbb5
      Amber Jain 提交于
      Add the support for NV12 color format.
      Configure base address for UV component of NV12 color format.
      Change the way chroma scaling is handled for YUV formats on OMAP4 by enabling
      chroma-resampling for video pipeline and hence using FIR2 register set for
      scaling UV.
      Changes to _dispc_set_scaling(), because of the reason above, are:
      - call _dispc_set_scaling_common() to handle scaling for all color formats
        except for OMAP4 where it only handles scaling for RGB or Y-component
      - call _dispc_set_scaling_uv() for special handling required for UV
        component on OMAP4.
      - dispc_set_scaling_uv() also resets chroma-resampling bit for RGB color modes.
      
      Contains chroma scaling (_dispc_set_scaling_uv) design and implemented by
      Lajos Molnar <molnar@ti.com>
      Signed-off-by: NAmber Jain <amber@ti.com>
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      0d66cbb5
    • A
      OMAP: DSS2: Add new registers for NV12 support · ab5ca071
      Amber Jain 提交于
      Add new registers specific to UV color component that are introduced in OMAP4.
      Add simple helper functions to configure the newly added registers.
      These new registers are mainly:
      - UV base address registers used specifically for NV12 color-format
      - FIR registers used for UV-color-component scaling on OMAP4
      - Accumulator registers used for UV-color-component scaling
      Add these new registers to save/restore and DUMPREG functions.
      Also add two new features for OMAP4:
      - FEAT_HANDLE_UV_SEPARATE - this is used on OMAP4 as UV color-component requires
        separate handling.
      - FEAT_ATTR2 - this is used on OMAP4 to configure new ATTRIBUTES2 register.
      Signed-off-by: NAmber Jain <amber@ti.com>
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      ab5ca071
    • A
      OMAP: DSS2: Use for loop where ever possible in SR(), RR() · 5719d35c
      Amber Jain 提交于
      Use for loop instead of individual entries for OVL_FIR_COEF_H, OVL_FIR_COEF_HV,
      OVL_FIR_COEF_V and OVL_CONV_COEF in SR() and  RR().
      Signed-off-by: NAmber Jain <amber@ti.com>
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      5719d35c
    • A
      OMAP: DSS2: Ensure non-zero FIR values are configured · ed14a3ce
      Amber Jain 提交于
      FIR values can never be zero as per TRM, and the current code writes zero
      when scaling is not used. It was not causing any problem as scaling was
      disabled when zero was written. Its still safer to not write zero to
      it in any case.
      Now we configure correct FIR values even when scaling is not used (i.e. set FIR
      to 1024 when scaling is not used), but the scaling enable bits are still kept
      off if the scaling is not needed.
      Signed-off-by: NAmber Jain <amber@ti.com>
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      ed14a3ce
    • A
      OMAP: DSS2: Add new color formats for OMAP4 · f20e4220
      Amber Jain 提交于
      Add new color formats supported by OMAP4: NV12, RGBA16, RGBX16,
      ARGB16_1555, XRGB16_1555.
      NV12 color format is defined here, its support in DSS will be added separately.
      Signed-off-by: NAmber Jain <amber@ti.com>
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      f20e4220
  5. 13 5月, 2011 2 次提交
    • A
      OMAP4: DSS2: DSI: Changes for DSI2 on OMAP4 · 5a8b572d
      Archit Taneja 提交于
      Introduce DSI2 PLL clock sources needed by LCD2 channel and DSI2 Protocol
      engine and DISPC Functional clock. Do the following:
      
      - Modify dss_get_dsi_clk_source() and dss_select_dsi_clk_source() to take the
        dsi module number as an argument.
      - Create debugfs files for dsi2, split the corresponding debugfs functions.
      - Allow DPI to use these new clock sources.
      Signed-off-by: NArchit Taneja <archit@ti.com>
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      5a8b572d
    • A
      OMAP: DSS2: Pass platform_device as an argument in dsi functions · a72b64b9
      Archit Taneja 提交于
      The DSI interface is represented as a platform device, using the DSI platform
      driver(dsi.c). The current DSI driver design is capable of running only one
      instance of a DSI device. On OMAP4, there are 2 very similar DSI modules which
      can be represented as instances of "omapdss_dsi" platform device.
      
      Add member "module" in "dssdev.phy.dsi" that tells us which DSI module's lanes
      the panel is connected to. Modify dsi.c functions to take the device's
      platform_device struct pointer, provide functions dsi_get_dsidev_from_dssdev()
      and dsi_get_dsidev_from_id() take the panel's omap_dss_device and module number
      respectively, and return the platform_device pointer. Currently, the dsi struct
      is declared globally and is accessed when dsi data is needed. The new pdev
      argument will be used later to provide the platform device's dsi related data.
      Signed-off-by: NArchit Taneja <archit@ti.com>
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      a72b64b9
  6. 11 5月, 2011 5 次提交
  7. 16 3月, 2011 1 次提交
  8. 11 3月, 2011 14 次提交
  9. 10 1月, 2011 2 次提交