--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/open-src/driver/xf86-video-ast/17907916.patch Mon Feb 24 14:00:11 2014 -0800
@@ -0,0 +1,54 @@
+--- src/ast_vgatool.c Wed Feb 12 18:36:02 2014
++++ src/ast_vgatool.c Wed Feb 12 18:33:31 2014
+@@ -650,16 +650,31 @@
+ void vEnableVGA(ScrnInfoPtr pScrn)
+ {
+ ASTRecPtr pAST;
++ UCHAR miscout;
+
+ pAST = ASTPTR(pScrn);
+
+ SetReg(VGA_ENABLE_PORT, 0x01);
+- SetReg(MISC_PORT_WRITE, 0x01);
++
++ /*
++ * Only set the Input/Output Address bit in the Miscellaneous
++ * output register, as clearing others bits and accessing the
++ * frame buffer caused non-resumable errors on sparc.
++ */
++
++ miscout = GetReg(MISC_PORT_READ);
++ SetReg(MISC_PORT_WRITE, miscout | 0x01);
+
+ }
+
++/*
++ * Leave video memory enabled in PCI Control Register #1 (0xa0), as
++ * accessing the frame buffer with it disabled caused non-resumable
++ * errors on sparc.
++ */
++
+ UCHAR ExtRegInfo[] = {
+- 0x0F,
++ 0x7F,
+ 0x04,
+ 0x1C,
+ 0xFF
+@@ -666,7 +681,7 @@
+ };
+
+ UCHAR ExtRegInfo_AST2300A0[] = {
+- 0x0F,
++ 0x7F,
+ 0x04,
+ 0x1C,
+ 0xFF
+@@ -673,7 +688,7 @@
+ };
+
+ UCHAR ExtRegInfo_AST2300[] = {
+- 0x0F,
++ 0x7F,
+ 0x04,
+ 0x1F,
+ 0xFF
--- a/open-src/driver/xf86-video-ast/Makefile Wed Feb 19 10:35:57 2014 -0800
+++ b/open-src/driver/xf86-video-ast/Makefile Mon Feb 24 14:00:11 2014 -0800
@@ -3,7 +3,7 @@
# xf86-video-ast - Xorg driver for ASpeed Technologies graphics devices
# (such as found in some Sun/Oracle server ILOMs)
#
-# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
@@ -42,7 +42,8 @@
16027951.patch,-p1 \
ast.patch,-p1 \
ast_vgatool.patch,-p1 \
- bstore.patch
+ bstore.patch \
+ 17907916.patch
# Link in additional source files from sun-src directory
ADDITIONAL_SOURCE_DIR=sun-src