1. 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: DSI: sync when disabling a display · 15ffa1da
      Tomi Valkeinen 提交于
      When the panel driver calls omapdss_dsi_display_disable() it is possible
      that there are still some unsent packets in the TX fifo.
      
      Add dsi_sync_vc() calls in the beginning of
      omapdss_dsi_display_disable() to make sure the TX fifos are empty.
      
      This allows us to remove the msleep(10) hack from panel-taal.c
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      15ffa1da
    • T
      OMAP: DSS2: Reset LANEx_ULPS_SIG2 bits after use · 8ef0e614
      Tomi 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: NTomi Valkeinen <tomi.valkeinen@ti.com>
      8ef0e614
    • T
      OMAP: DSS2: DSI: Change dummy macros to inline functions · 4a9a5e39
      Tomi Valkeinen 提交于
      Using empty macros for performance measurement functions when DSS DEBUG
      is not enabled causes an unused variable warning.
      
      Change the empty macros to empty inline functions to remove the
      warning.
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      4a9a5e39
  2. 16 5月, 2011 4 次提交
  3. 13 5月, 2011 6 次提交
  4. 11 5月, 2011 24 次提交
  5. 15 4月, 2011 2 次提交
    • T
      OMAP: DSS2: DSI: Fix DSI PLL power bug · 0b41136c
      Tomi Valkeinen 提交于
      OMAP3630 has a HW bug causing DSI PLL power command POWER_ON_DIV (0x3)
      to not work properly. The bug prevents us from enabling DSI PLL power
      only to HS divider block.
      
      This patch adds a dss feature for the bug and converts POWER_ON_DIV
      requests to POWER_ON_ALL (0x2).
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      0b41136c
    • T
      OMAP: DSS2: DSI: fix dsi_dump_clocks() · 4eb68edb
      Tomi Valkeinen 提交于
      On OMAP4, reading DSI_PLL_CONFIGURATION2 register requires the L3 clock
      (CIO_CLK_ICG) to PLL. Currently dsi_dump_clocks() tries to read that
      register without enabling the L3 clock, leading to crash if DSI is not
      in use.
      
      The status of the bit being read from DSI_PLL_CONFIGURATION2 is
      available from dsi_clock_info->use_sys_clk, so we can avoid the whole
      problem by just using that.
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      4eb68edb