Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 106996
b: refs/heads/master
c: fdac4e6
h: refs/heads/master
v: v3
  • Loading branch information
Helge Deller authored and Linus Torvalds committed Jul 30, 2008
1 parent 67c214e commit 1bc9153
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9b67c5d48f104aae6118bbb052dd79a15ab9794b
refs/heads/master: fdac4e69a1fc181652b37ce6a32ab8a56b0f3bcf
30 changes: 29 additions & 1 deletion trunk/drivers/video/console/sticore.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
#include <asm/hardware.h>
#include <asm/parisc-device.h>
#include <asm/cacheflush.h>
#include <asm/grfioctl.h>

#include "../sticore.h"

Expand Down Expand Up @@ -725,6 +726,7 @@ static int __devinit sti_read_rom(int wordmode, struct sti_struct *sti,
{
struct sti_cooked_rom *cooked;
struct sti_rom *raw = NULL;
unsigned long revno;

cooked = kmalloc(sizeof *cooked, GFP_KERNEL);
if (!cooked)
Expand Down Expand Up @@ -767,9 +769,35 @@ static int __devinit sti_read_rom(int wordmode, struct sti_struct *sti,
sti->graphics_id[1] = raw->graphics_id[1];

sti_dump_rom(raw);


/* check if the ROM routines in this card are compatible */
if (wordmode || sti->graphics_id[1] != 0x09A02587)
goto ok;

revno = (raw->revno[0] << 8) | raw->revno[1];

switch (sti->graphics_id[0]) {
case S9000_ID_HCRX:
/* HyperA or HyperB ? */
if (revno == 0x8408 || revno == 0x840b)
goto msg_not_supported;
break;
case CRT_ID_THUNDER:
if (revno == 0x8509)
goto msg_not_supported;
break;
case CRT_ID_THUNDER2:
if (revno == 0x850c)
goto msg_not_supported;
}
ok:
return 1;

msg_not_supported:
printk(KERN_ERR "Sorry, this GSC/STI card is not yet supported.\n");
printk(KERN_ERR "Please see http://parisc-linux.org/faq/"
"graphics-howto.html for more info.\n");
/* fall through */
out_err:
kfree(raw);
kfree(cooked);
Expand Down

0 comments on commit 1bc9153

Please sign in to comment.