diff options
author | Mark Kettenis <kettenis@cvs.openbsd.org> | 2007-08-23 19:13:29 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@cvs.openbsd.org> | 2007-08-23 19:13:29 +0000 |
commit | 0884b0924bca66712fe538c331856fbdb956d311 (patch) | |
tree | ad2bf0b4907a761a249b687840f9487e28d701cd /sys/arch/hppa/dev/sti_sgc.c | |
parent | 551f0dbe88009339f608ed931e0257456bd53c10 (diff) |
Look for STI firmware at the additional address given by the firmware. This
removes the need for the hardcoded address for the internal Visualize EG on the
B180L, and makes it work on the C180. Tested on a handful of other models too.
ok miod@
Diffstat (limited to 'sys/arch/hppa/dev/sti_sgc.c')
-rw-r--r-- | sys/arch/hppa/dev/sti_sgc.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/sys/arch/hppa/dev/sti_sgc.c b/sys/arch/hppa/dev/sti_sgc.c index 49dccc79a62..b6de6c152cd 100644 --- a/sys/arch/hppa/dev/sti_sgc.c +++ b/sys/arch/hppa/dev/sti_sgc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sti_sgc.c,v 1.35 2007/01/11 21:58:05 miod Exp $ */ +/* $OpenBSD: sti_sgc.c,v 1.36 2007/08/23 19:13:28 kettenis Exp $ */ /* * Copyright (c) 2000-2003 Michael Shalayeff @@ -57,10 +57,6 @@ /* gecko optional graphics (these share the onboard's prom) */ char sti_sgc_opt[] = { 0x17, 0x20, 0x30, 0x40, 0x70, 0xc0, 0xd0 }; -/* internal EG */ -#define STI_INEG_REV 0x60 -#define STI_INEG_PROM 0xf0011000 - extern struct cfdriver sti_cd; int sti_sgc_probe(struct device *, void *, void *); @@ -92,10 +88,8 @@ sti_sgc_getrom(int unit, struct confargs *ca) } if (rom < HPPA_IOBEGIN) { - if (unit == 0 && - ca->ca_type.iodc_sv_model == HPPA_FIO_GSGC && - ca->ca_type.iodc_revision == STI_INEG_REV) - rom = STI_INEG_PROM; + if (ca->ca_naddrs > 0) + rom = ca->ca_addrs[0].addr; else rom = ca->ca_hpa; } |