aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/via/accel.c
diff options
context:
space:
mode:
authorFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>2010-10-24 00:02:14 -0400
committerFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>2010-10-24 09:04:55 -0400
commit51f4332bb5fef869e8a89895a7bac6b4c03b4946 (patch)
treeeb505244dcfa4a20f30cf1da47c04f9bc4efcdd7 /drivers/video/via/accel.c
parentadac8d65f399b02e8a2222fc75c658e4b8d24f65 (diff)
viafb: add initial VX900 support
This patch adds basic support for the new VX900 IGP. Almost everything that was implemented for other IGPs is expected to work also on VX900 after this patch. The only known issue is that on the CRT output mode setting does not always work. It is clear that the possibility for regressions is zero. A big thanks to VIA Technologies for making this possible and supporting this work. Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Cc: Joseph Chan <JosephChan@via.com.tw> Cc: Jonathan Corbet <corbet@lwn.net>
Diffstat (limited to 'drivers/video/via/accel.c')
-rw-r--r--drivers/video/via/accel.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/video/via/accel.c b/drivers/video/via/accel.c
index bc4905366726..3c969cdef0af 100644
--- a/drivers/video/via/accel.c
+++ b/drivers/video/via/accel.c
@@ -343,6 +343,7 @@ int viafb_setup_engine(struct fb_info *info)
343 break; 343 break;
344 case UNICHROME_VX800: 344 case UNICHROME_VX800:
345 case UNICHROME_VX855: 345 case UNICHROME_VX855:
346 case UNICHROME_VX900:
346 viapar->shared->hw_bitblt = hw_bitblt_2; 347 viapar->shared->hw_bitblt = hw_bitblt_2;
347 break; 348 break;
348 default: 349 default:
@@ -402,6 +403,7 @@ void viafb_reset_engine(struct viafb_par *viapar)
402 case UNICHROME_P4M900: 403 case UNICHROME_P4M900:
403 case UNICHROME_VX800: 404 case UNICHROME_VX800:
404 case UNICHROME_VX855: 405 case UNICHROME_VX855:
406 case UNICHROME_VX900:
405 writel(0x00100000, engine + VIA_REG_CR_TRANSET); 407 writel(0x00100000, engine + VIA_REG_CR_TRANSET);
406 writel(0x680A0000, engine + VIA_REG_CR_TRANSPACE); 408 writel(0x680A0000, engine + VIA_REG_CR_TRANSPACE);
407 writel(0x02000000, engine + VIA_REG_CR_TRANSPACE); 409 writel(0x02000000, engine + VIA_REG_CR_TRANSPACE);
@@ -438,6 +440,7 @@ void viafb_reset_engine(struct viafb_par *viapar)
438 case UNICHROME_P4M900: 440 case UNICHROME_P4M900:
439 case UNICHROME_VX800: 441 case UNICHROME_VX800:
440 case UNICHROME_VX855: 442 case UNICHROME_VX855:
443 case UNICHROME_VX900:
441 vq_start_low |= 0x20000000; 444 vq_start_low |= 0x20000000;
442 vq_end_low |= 0x20000000; 445 vq_end_low |= 0x20000000;
443 vq_high |= 0x20000000; 446 vq_high |= 0x20000000;