1. 27 Apr, 2010 1 commit
    • Harald Welte's avatar
      viafb: rework the I2C support in the VIA framebuffer driver · 277d32a3
      Harald Welte authored
      This patch changes the way how the various I2C busses are used internally
      inside the viafb driver:  Previosuly, only a single i2c_adapter was created,
      even though two different hardware I2C busses are accessed: A structure member
      in a global variable was modified to indicate the bus to be used.
      
      Now, all existing hardware busses are registered with the i2c core, and the
      viafb_i2c_{read,write}byte[s]() function take the adapter number as function
      call parameter, rather than referring to the global structure member.
      
      [jc: even more painful merge with mainline changes ->2.6.34]
      [jc: painful merge with OLPC changes]
      
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: ScottFang@viatech.com.cn
      Cc: JosephChan@via.com.tw
      Signed-off-by: default avatarHarald Welte <HaraldWelte@viatech.com>
      Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
      277d32a3
  2. 20 Apr, 2010 8 commits
    • Chris Ball's avatar
      viafb: Add 1200x900 DCON/LCD panel modes for OLPC XO-1.5 · c205d932
      Chris Ball authored
      [jc: extensive merge conflict fixes]
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: ScottFang@viatech.com.cn
      Cc: JosephChan@via.com.tw
      Signed-off-by: default avatarChris Ball <cjb@laptop.org>
      c205d932
    • Jonathan Corbet's avatar
      viafb: complete support for VX800/VX855 accelerated framebuffer · 13178243
      Jonathan Corbet authored
      This patch is a painful merge of change
      a90bab567ece3e915d0ccd55ab00c9bb333fa8c0 (viafb: Add support for 2D
      accelerated framebuffer on VX800/VX855) in the OLPC tree, originally by
      Harald Welte.  Harald's changelog read:
      
      	The VX800/VX820 and the VX855/VX875 chipsets have a different 2D
          	acceleration engine called "M1".  The M1 engine has some subtle
          	(and some not-so-subtle) differences to the previous engines, so
          	support for accelerated framebuffer on those chipsets was disabled
          	so far.
      
      This merge tries to preserve Harald's changes in the framework of the
      much-changed 2.6.34 viafb code.
      
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: ScottFang@viatech.com.cn
      Cc: JosephChan@via.com.tw
      Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
      13178243
    • Harald Welte's avatar
      viafb: Determine type of 2D engine and store it in chip_info · 107ea34d
      Harald Welte authored
      This will help us for the upcoming support for 2D acceleration using
      the M1 engine.
      
      [jc: fixed merge conflicts]
      Signed-off-by: default avatarHarald Welte <HaraldWelte@viatech.com>
      107ea34d
    • Jonathan Corbet's avatar
      viafb: Unify duplicated set_bpp() code · f1b99aa9
      Jonathan Corbet authored
      As suggested by Florian: make both mode-setting paths use the same code.
      
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: ScottFang@viatech.com.cn
      Cc: JosephChan@via.com.tw
      Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
      f1b99aa9
    • Jonathan Corbet's avatar
      viafb: Retain GEMODE reserved bits · 9ca43cf4
      Jonathan Corbet authored
      Commit c3e25673 (viafb: 2D engine rewrite)
      changed the setting of the GEMODE register so that the reserved bits are no
      longer preserved.  Fix that; at the same time, move this code to its own
      function and restore the use of symbolic constants.
      
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: ScottFang@viatech.com.cn
      Cc: JosephChan@via.com.tw
      Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
      9ca43cf4
    • Jonathan Corbet's avatar
      viafb: Unmap the frame buffer on initialization error · 1b1f8cd2
      Jonathan Corbet authored
      This was part of Harald's "make viafb a first-class citizen using
      pci_driver" patch, but somehow got dropped when that patch went into
      mainline.
      
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: ScottFang@viatech.com.cn
      Cc: JosephChan@via.com.tw
      Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
      1b1f8cd2
    • Harald Welte's avatar
      viafb: use proper pci config API · b72a5070
      Harald Welte authored
      This patch alters viafb to use the proper Linux in-kernel API to access
      PCI configuration space, rather than poking at I/O ports by itself.
      
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: ScottFang@viatech.com.cn
      Cc: JosephChan@via.com.tw
      Signed-off-by: default avatarHarald Welte <HaraldWelte@viatech.com>
      b72a5070
    • Harald Welte's avatar
      viafb: Fix various resource leaks during module_init() · 109771a6
      Harald Welte authored
      The current code executed from module_init() in viafb does not have
      proper error checking and [partial] resoure release paths in case
      an error happens half way through driver initialization.
      
      This patch adresses the most obvious of those issues, such as a
      leftover i2c bus if module_init (and thus module load) fails.
      
      [jc: fixed merge conflicts]
      [jc: also restored -ENOMEM return on ioremap() fail]
      
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: ScottFang@viatech.com.cn
      Cc: JosephChan@via.com.tw
      Signed-off-by: default avatarHarald Welte <HaraldWelte@viatech.com>
      109771a6
  3. 30 Mar, 2010 6 commits
  4. 29 Mar, 2010 25 commits