Home | History | Annotate | Download | only in common
History log of /src/sys/arch/hp300/stand/common/ite.c
RevisionDateAuthorComments
 1.23  30-May-2025  tsutsui Misc cleanup.

- make local variables static
- make read only variable const
- remove a redundant arg
- use uint8_t rather than u_char
- use consistent style
- some KNF
 1.22  29-May-2025  tsutsui Consolidate scroll and cursor drawing ops into common ITE layer.

No functional change, just for readability.
Tested on 380 (topcat) and 382 (sti).
 1.21  26-May-2025  tsutsui Also use sti(4) ROM functions for 362/382 framebuffers on bootloader.

Mostly taken on OpenBSD/hp300.
Tested on 382 with VGA-res EVRX, and no visible regression on
425e (sti EVRX), 425t (sti CRX), and 380 (topcat).
 1.20  21-Apr-2023  tsutsui Remove ancient /* ARGSUSED */ lint comments.
 1.19  05-Jul-2021  tsutsui Get rid of obsolete grfreg.h. From OpenBSD.
 1.18  26-Feb-2016  christos branches: 1.18.34;
PR/50852: David Binderman: make code more readable (although it was correct
anyway)
 1.17  13-Apr-2014  tsutsui branches: 1.17.4;
Add sti(4) at sgc screen console support. From (the late) OpenBSD/hp300.

Tested on HP9000/425e, which was sent from Miod Vallat and
demonstrated at Open Source unConference 2014 Kagawa.
 1.16  12-Feb-2011  tsutsui branches: 1.16.4; 1.16.10; 1.16.14; 1.16.18; 1.16.28;
Add dumb framebuffer (no acceleration, no colormap) support
for HP362 and HP382.

Tested on A1473-69510 (HP362 VGA-res) and A1474-69511 (HP382 mid-res).
 1.15  10-Feb-2011  tsutsui Pull support for Tigershark monochrome framebuffer from OpenBSD.
Untested (no hardware), but doesn't break existing HP425t topcat.
 1.14  10-Feb-2011  tsutsui Pull OpenBSD's standalone ITE driver reorganization:
- merge similar clear, putc, cursor, and scroll ops for all DIO framebuffers
- rename and move hyper_windowmove() to ite_dio_windowmove1bpp()
to use it among all dumb monochrome framebuffers
- ditto hyper_putc() to ite_dio_putc1bpp()
- remove unnecessary flags, macro, function args, and structure members
- remove trailing spaces and tabs

Also misc cosmetics to reduce diffs from OpenBSD,
and some KNF that generates diffs from OpenBSD.

Tested on HP382 and HP425t.
 1.13  10-Feb-2011  tsutsui Remove unused deinit functions. From OpenBSD.
 1.12  10-Feb-2011  tsutsui All framebuffer drivers use common readbyte and writeglyph functions
so no need to put them into per driver function pointers. From OpenBSD.

Tested on HP382 (serial) and HP425t (topcat).
 1.11  08-Feb-2011  rmind Remove clause 3 (UCB advertising clause) from the University of Utah
copyright. Confirmed by Mike Hibler, mike at cs.utah.edu - thanks!
Also, merge UCB and Utah copyright texts back into one, as they
originally were.

Extra verification by snj@.
 1.10  07-Feb-2011  tsutsui Resurrect and move retired ITE files that are still used by bootloaders.
 1.9  07-Mar-2007  he branches: 1.9.66; 1.9.72; 1.9.74;
Fix an instance of "void *v, x;" and cast to char* before doing
pointer arithmetic.
 1.8  04-Mar-2007  christos Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.7  19-Jul-2006  tsutsui branches: 1.7.10;
Adapt stand sources to changes of intio device offset macro.
 1.6  02-Jul-2006  tsutsui Remove sc_table[] decl, which is in device.h.
 1.5  11-Dec-2005  christos branches: 1.5.4; 1.5.8; 1.5.16;
merge ktrace-lwp.
 1.4  20-Feb-2005  tsutsui branches: 1.4.4;
Use ANSI function decls.
 1.3  14-Nov-2003  tsutsui branches: 1.3.8; 1.3.10;
Misc cleanup:
- KNF
- WARNSfy
- remove __P()
- remove register declarations
- const'ify some variables
- make some local functions/variables static
- bcopy -> memcpy
- bcmp -> memcmp
- bzero -> memset
- space/TAB fix
etc.
 1.2  07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.1  04-Feb-1997  thorpej branches: 1.1.60;
Complete and total reorganization of the hp300 boot code, modeled
closely after the build process used by NetBSD/alpha's boot code.
 1.1.60.4  04-Mar-2005  skrll Sync with HEAD.

Hi Perry!
 1.1.60.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.60.2  18-Sep-2004  skrll Sync with HEAD.
 1.1.60.1  03-Aug-2004  skrll Sync with HEAD
 1.3.10.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.3.8.1  29-Apr-2005  kent sync with -current
 1.4.4.2  03-Sep-2007  yamt sync with head.
 1.4.4.1  30-Dec-2006  yamt sync with head.
 1.5.16.1  13-Jul-2006  gdamore Merge from HEAD.
 1.5.8.1  11-Aug-2006  yamt sync with head
 1.5.4.1  09-Sep-2006  rpaulo sync with head
 1.7.10.1  12-Mar-2007  rmind Sync with HEAD.
 1.9.74.2  17-Feb-2011  bouyer Sync with HEAD
 1.9.74.1  08-Feb-2011  bouyer Sync with HEAD
 1.9.72.1  06-Jun-2011  jruoho Sync with HEAD.
 1.9.66.1  05-Mar-2011  rmind sync with head
 1.16.28.1  10-Aug-2014  tls Rebase.
 1.16.18.1  18-May-2014  rmind sync with head
 1.16.14.2  03-Dec-2017  jdolecek update from HEAD
 1.16.14.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.16.10.1  21-May-2014  bouyer Pull up following revision(s) (requested by tsutsui in ticket #1058):
sys/arch/hp300/conf/files.hp300: revision 1.88
sys/arch/hp300/include/autoconf.h: revision 1.13
sys/dev/ic/sti.c: revision 1.17
sys/arch/hp300/dev/frodo.c: revision 1.31
sys/arch/hp300/conf/GENERIC: revision 1.173
sys/arch/hp300/hp300/machdep.c: revision 1.229
sys/arch/hp300/dev/frodo.c: revision 1.32
sys/arch/hp300/hp300/autoconf.c: revision 1.102
sys/arch/hp300/dev/frodoreg.h: revision 1.5
sys/arch/hp300/stand/common/ite_sti.c: revision 1.1
sys/arch/hp300/stand/common/itevar.h: revision 1.16
sys/arch/hp300/hp300/autoconf.c: revision 1.105
sys/arch/hp300/dev/sti_sgcvar.h: revision 1.1
sys/arch/hp300/stand/common/apci.c: revision 1.12
sys/arch/hp300/stand/common/apci.c: revision 1.13
sys/arch/hp300/dev/dnkbd.c: revision 1.6
sys/arch/hp300/dev/dnkbd.c: revision 1.7
sys/arch/hp300/stand/inst/version: revision 1.12
sys/arch/hp300/dev/com_frodo.c: revision 1.9
sys/arch/hp300/stand/common/ite.c: revision 1.17
sys/arch/hp300/conf/GENERIC: revision 1.181
sys/arch/hp300/dev/sti_sgc.c: revision 1.1
sys/arch/hp300/stand/common/dnkbd.c: revision 1.13
sys/arch/hp300/dev/sti_sgc.c: revision 1.2
sys/dev/ic/stivar.h: revision 1.8
sys/arch/hp300/dev/rtc.c: revision 1.21
sys/arch/hp300/conf/INSTALL: revision 1.56
sys/arch/hp300/conf/INSTALL: revision 1.58
sys/arch/hp300/stand/uboot/version: revision 1.19
sys/arch/hp300/stand/common/samachdep.h: revision 1.17
sys/arch/hp300/stand/common/clock.c: revision 1.12
sys/arch/hp300/dev/mcclock_frodo.c: revision 1.1
sys/arch/hp300/stand/Makefile.buildboot: revision 1.34
sys/arch/hp300/conf/files.hp300: revision 1.87
Add sti at sgc framebuffer.
Ported from OpenBSD by kiyohara@.
Fix a botch on switching from apci (and dca) to MI com(4) 10 years ago.
I.e. fix apci device address per FRODO_BASE macro change
in frodoreg.h rev 1.2. Now bootloader works with serial console
on HP425e (which has only com at frodo).
Thanks to miod@openbsd for providing his 425e.
Add sti(4) at sgc screen console support. From (the late) OpenBSD/hp300.
Tested on HP9000/425e, which was sent from Miod Vallat and
demonstrated at Open Source unConference 2014 Kagawa.
Check the service switch on 425e to select apci serial console.
Taken from OpenBSD/hp300. See the following comment for details:
> * Check the service switch. On the 425e, this is a physical
> * switch, unlike other frodo-based machines, so we can use it
> * as a serial vs internal video selector, since the PROM can not
> * be configured for serial console.
Add proper RealTime Clock support for HP9000/425e.
As the OpenBSD/hp300 page says 425e doesn't have the traditional
RTC at intio (as it also lacks DCA 16550 serial at intio?),
but after a few hour investigation it turns out that
425e uses mc146818 compatible calendar clock in
the Apollo "frodo" utility chip and the frodo chip on
425e actually has the 32kHz OSC and is actually backed up
by the onboard lithium battery.
Tested on HP425e (with mcclock) and HP362 (with old rtc).
Add RTC support for HP9000/425e to bootloader too.
Also put several cleanup:
- make local functions and variables static
- use proper variable types
- some KNF
Note it turns out that extreme slowness of netboot on hp300 is
caused by the too slow access of the traditional RTC chip at intio
(i.e. netboot on 425e is so much faster than others). Oh well.
Add proper consinit(9) support for sti(4) at sgc framebuffer on hp300.
The cnattach functions for sti(4) and service switch check method
for 425e in com_frodo.c are taken from OpenBSD.
The strategy how to choose the console device in hp300_cninit() is
quite diverged from 4.4BSD and OpenBSD so it's tweaked by me.
Also put several changes in sti_sgc.c to reduce diffs from OpenBSD/hp300.
Tested on 425e and 362 (which still uses gendiofb(4), not sti(4)).
XXX: sti(4) requires uvm_km_alloc(9) and uvm_map_protect(9)
to copy and call ROM functions on the executable memory region, so
it can be called before UVM and related initializations are complete.
Probably it's time to consider about MI "deferred consinit()" API
in init_main.c (or elsewhere) for modern complicated VM system...
Also fix the apci device address in dnkbd.c as apci.c rev 1.12:
http://mail-index.netbsd.org/source-changes/2014/04/10/msg053940.html
Finally dnkbd(4) is confirmed working at least on bootloader.
Thanks again to Miod Vallat.
Make the Apollo Domain keyboard actually work.
Tested on HP9000/425e and the keyboard model A1630-82001 R2 (RX-60857-HW)
provided by Miod Vallat. Mouse support needs more work.
Pull random notes on the Apollo Domain keyboard from ancient PR/3528.
Bump versions to denote recent 425e related changes.
Probe mcclock only on 425e to avoid an extra "not configured" message.
Add and enable sti(4) at sgc in install kernels for 425e.
Tested on both serial console and framebuffer console.
(switched by the service switch on the back panel)
 1.16.4.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.17.4.1  19-Mar-2016  skrll Sync with HEAD
 1.18.34.1  01-Aug-2021  thorpej Sync with HEAD.

RSS XML Feed