The NetBSD Project

CVS log for src/sys/arch/hp300/dev/topcat.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / arch / hp300 / dev

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.6.2.1: download - view: text, markup, annotated - select for diffs
Thu May 16 12:27:50 2024 UTC (6 months, 3 weeks ago) by martin
Branches: netbsd-10
Diff to: previous 1.6: preferred, colored; next MAIN 1.7: preferred, colored
Changes since revision 1.6: +152 -8 lines
Pull up following revision(s) (requested by tsutsui in ticket #690):

	sys/arch/hp300/dev/topcat.c: revision 1.7
	sys/arch/hp300/dev/topcat.c: revision 1.8
	sys/arch/hp300/dev/topcat.c: revision 1.9
	sys/arch/hp300/dev/diofb.c: revision 1.8
	sys/arch/hp300/dev/diofb.c: revision 1.9
	sys/arch/hp300/dev/diofb.c: revision 1.10
	sys/arch/hp300/dev/topcat.c: revision 1.10
	sys/arch/hp300/dev/topcat.c: revision 1.11
	sys/arch/hp300/dev/topcat.c: revision 1.12
	sys/arch/hp300/dev/topcatreg.h: revision 1.5
	distrib/notes/hp300/hardware: revision 1.28
	sys/arch/hp300/dev/diofbvar.h: revision 1.5
	share/man/man4/man4.hp300/topcat.4: revision 1.8

Increase DELAY() for waitbusy macroes as pre-wscons and 4.4BSD did.

It looks necessary for sane palette ops at least on HP98543 topcat
on 68030 HP 9000/360.

Move a check of topcat(4) specific fb width quirks to topcat.c.

We need to check fb->planes but it's propbed in topcat.c after
common diofb_fbinquire() is called.

Also add a comment that it looks these 1 bpp and 4 bpp boards have
VRAM with sparse address layout and we have to handle
512 pixels per line with 1024 bytes per line.

Fix MD allocattr to return proper attributes what MI rasops(9) expects.
Use proper planemask per a vaild number of planes.

Check tc_waitbusy() before writing palette registers in topcat_setcolor().
This seems to make palette operations more stable on my HP360 with HP98543.

Add DELAY(9) to make palette register settings stable on 98543 in HP360.
Note 98547 (6 bpp variant) on HP370 (68030 33MHz) doesn't need these
DELAYs so maybe only some old variants (98543 and 98545?) on 020/030
have such restriction (actually only one nop seems enough.)

Fix topcat(4) problems on some models that cause garbages on screen.
- Make sure that windowmove (hardware BITBLT) ops complete by checking
  tc_busywait() before calling putchar functions by MI rasops(9).
  It looks CPU accesses against VRAM during windowmove (copy, erase,
  and cursor) ops causes unexpected garbages at least on 98543 on HP360,
  98547 on HP370, and also on 98543 on 040 HP380 (but not on 98549).
- Handle 'sparse VRAM' on 98543 (and probably 98542) properly:
 - Prepare and use own topcat_putchar1_4() function for sparse VRAM.
 - Pass proper 'VRAM width' rather than actuall font width to all
   windowmove (copycols, erasecols, copyrows, eraserows, and do_cursor)
   operation functions.
Now all topcat(4) consoles on 98543 on HP360/HP380 and 98547 on HP370
work fine, and no visible regression on 98549 on HP380 and 98544 on HP360.

Note that 98542 and 98543 variants are also supported by topcat(4).

Add 98542 and 98543 framebuffers to supported "Graphics Devices" section.
I hope someone will sync a list of supported devices in port wiki pages
with one in this installation notes.

Add comments about quirks of 98542/98543 framebuffers with 1024x400 pixels.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Sat May 4 16:06:57 2024 UTC (7 months ago) by tsutsui
Branches: MAIN
CVS tags: perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs, HEAD
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +22 -8 lines
Add comments about quirks of 98542/98543 framebuffers with 1024x400 pixels.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Wed May 1 19:28:33 2024 UTC (7 months, 1 week ago) by tsutsui
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +115 -1 lines
Fix topcat(4) problems on some models that cause garbages on screen.

- Make sure that windowmove (hardware BITBLT) ops complete by checking
  tc_busywait() before calling putchar functions by MI rasops(9).
  It looks CPU accesses against VRAM during windowmove (copy, erase,
  and cursor) ops causes unexpected garbages at least on 98543 on HP360,
  98547 on HP370, and also on 98543 on 040 HP380 (but not on 98549).

- Handle 'sparse VRAM' on 98543 (and probably 98542) properly:
 - Prepare and use own topcat_putchar1_4() function for sparse VRAM.
 - Pass proper 'VRAM width' rather than actuall font width to all
   windowmove (copycols, erasecols, copyrows, eraserows, and do_cursor)
   operation functions.

Now all topcat(4) consoles on 98543 on HP360/HP380 and 98547 on HP370
work fine, and no visible regression on 98549 on HP380 and 98544 on HP360.

Worth to pullup netbsd-10.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Wed May 1 08:58:34 2024 UTC (7 months, 1 week ago) by tsutsui
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +3 -1 lines
Add DELAY(9) to make palette register settings stable on 98543 in HP360.

Note 98547 (6 bpp variant) on HP370 (68030 33MHz) doesn't need these
DELAYs so maybe only some old variants (98543 and 98545?) on 020/030
have such restriction (actually only one nop seems enough.)

Revision 1.9: download - view: text, markup, annotated - select for diffs
Mon Apr 29 17:47:27 2024 UTC (7 months, 1 week ago) by tsutsui
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +3 -3 lines
Check tc_waitbusy() before writing palette registers in topcat_setcolor().

This seems to make palette operations more stable on my HP360 with HP98543.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Mon Apr 29 17:39:59 2024 UTC (7 months, 1 week ago) by tsutsui
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +7 -6 lines
Use proper planemask per a vaild number of planes.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Mon Apr 29 15:34:57 2024 UTC (7 months, 1 week ago) by tsutsui
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +14 -1 lines
Move a check of topcat(4) specific fb width quirks to topcat.c.

We need to check fb->planes but it's propbed in topcat.c after
common diofb_fbinquire() is called.

Also add a comment that it looks these 1 bpp and 4 bpp boards have
VRAM with sparse address layout and we have to handle
512 pixels per line with 1024 bytes per line.

Revision 1.4.64.2: download - view: text, markup, annotated - select for diffs
Tue Dec 6 19:19:26 2022 UTC (2 years ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-4-RELEASE
Diff to: previous 1.4.64.1: preferred, colored; branchpoint 1.4: preferred, colored; next MAIN 1.5: preferred, colored
Changes since revision 1.4.64.1: +5 -1 lines
Pull up following revision(s) (requested by tsutsui in ticket #1551):

	sys/arch/hp300/dev/topcat.c: revision 1.6

Fix silent bus error panic on 98543A topcat framebuffer on HP320 and HP360.

It looks DELAY(100)s before checking cmap_busy in old pre-wscons grf_tc.c
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/hp300/dev/Attic/grf_tc.c?rev=1.42
are actually necessary on 68020 (HP320) and 68030 (HP360) machines,
while it works without them on 68040 (HP380).

Should be pulled up to netbsd-9.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Wed Nov 30 11:36:50 2022 UTC (2 years ago) by tsutsui
Branches: MAIN
CVS tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Branch point for: netbsd-10
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +5 -1 lines
Fix silent bus error panic on 98543A topcat framebuffer on HP320 and HP360.

It looks DELAY(100)s before checking cmap_busy in old pre-wscons grf_tc.c
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/hp300/dev/Attic/grf_tc.c?rev=1.42
are actually necessary on 68020 (HP320) and 68030 (HP360) machines,
while it works without them on 68040 (HP380).

Should be pulled up to netbsd-9.

Revision 1.4.64.1: download - view: text, markup, annotated - select for diffs
Wed Apr 21 17:59:47 2021 UTC (3 years, 7 months ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-3-RELEASE, netbsd-9-2-RELEASE
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +13 -2 lines
Pull up following revision(s) (requested by tsutsui in ticket #1248):

	sys/arch/hp300/dev/topcat.c: revision 1.5
	sys/arch/hp300/dev/diofb.c: revision 1.5

Fix two problems on old topcat(4) framebuffers found on HP332/340.

- Fix panic on monochrome framebuffers. They don't have palette registers.
  The problem was reported from Anders Gustafsson and also Andrew Gillham
  back in 2013:
   https://mail-index.netbsd.org/port-hp300/2013/09/27/msg000086.html
   https://mail-index.netbsd.org/port-hp300/2013/09/28/msg000087.html

- Fix incorrect framebuffer width of 98542/98544 framebuffers on HP332.
  Reported from Andrew Gillham (98542) as above and Chris Hanson (98543):
   https://mail-index.netbsd.org/port-hp300/2013/09/27/msg000083.html
   https://mail-index.netbsd.org/port-hp300/2020/05/01/msg000164.html

Worth to pullup to netbsd-9.

Revision 1.4.74.1: download - view: text, markup, annotated - select for diffs
Sat Apr 17 17:26:13 2021 UTC (3 years, 7 months ago) by thorpej
Branches: thorpej-cfargs
Diff to: previous 1.4: preferred, colored; next MAIN 1.5: preferred, colored
Changes since revision 1.4: +13 -2 lines
Sync with HEAD.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Thu Apr 15 14:43:19 2021 UTC (3 years, 7 months ago) by tsutsui
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +13 -2 lines
Fix two problems on old topcat(4) framebuffers found on HP332/340.

- Fix panic on monochrome framebuffers. They don't have palette registers.
  The problem was reported from Anders Gustafsson and also Andrew Gillham
  back in 2013:
   https://mail-index.netbsd.org/port-hp300/2013/09/27/msg000086.html
   https://mail-index.netbsd.org/port-hp300/2013/09/28/msg000087.html
- Fix incorrect framebuffer width of 98542/98544 framebuffers on HP332.
  Reported from Andrew Gillham (98542) as above and Chris Hanson (98543):
   https://mail-index.netbsd.org/port-hp300/2013/09/27/msg000083.html
   https://mail-index.netbsd.org/port-hp300/2020/05/01/msg000164.html

Worth to pullup to netbsd-9.

Revision 1.4.6.2: download - view: text, markup, annotated - select for diffs
Mon Jun 6 09:05:36 2011 UTC (13 years, 6 months ago) by jruoho
Branches: jruoho-x86intr
Diff to: previous 1.4.6.1: preferred, colored; branchpoint 1.4: preferred, colored; next MAIN 1.5: preferred, colored
Changes since revision 1.4.6.1: +576 -0 lines
Sync with HEAD.

Revision 1.4.2.2: download - view: text, markup, annotated - select for diffs
Sat Mar 5 20:50:23 2011 UTC (13 years, 9 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.4.2.1: preferred, colored; branchpoint 1.4: preferred, colored; next MAIN 1.5: preferred, colored
Changes since revision 1.4.2.1: +576 -0 lines
sync with head

Revision 1.1.2.4: download - view: text, markup, annotated - select for diffs
Sat Mar 5 15:09:40 2011 UTC (13 years, 9 months ago) by bouyer
Branches: bouyer-quota2
Diff to: previous 1.1.2.3: preferred, colored; next MAIN 1.2: preferred, colored
Changes since revision 1.1.2.3: +15 -15 lines
Sync with HEAD

Revision 1.4.6.1
Fri Feb 18 19:15:43 2011 UTC (13 years, 9 months ago) by jruoho
Branches: jruoho-x86intr
FILE REMOVED
Changes since revision 1.4: +0 -576 lines
file topcat.c was added on branch jruoho-x86intr on 2011-06-06 09:05:36 +0000

Revision 1.4.2.1
Fri Feb 18 19:15:43 2011 UTC (13 years, 9 months ago) by rmind
Branches: rmind-uvmplock
FILE REMOVED
Changes since revision 1.4: +0 -576 lines
file topcat.c was added on branch rmind-uvmplock on 2011-03-05 20:50:23 +0000

Revision 1.4: download - view: text, markup, annotated - select for diffs
Fri Feb 18 19:15:43 2011 UTC (13 years, 9 months ago) by tsutsui
Branches: MAIN
CVS tags: yamt-pagecache-tag8, yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-pagecache, tls-maxphys-base-20171202, tls-maxphys-base, tls-maxphys, tls-earlyentropy-base, tls-earlyentropy, thorpej-futex-base, thorpej-futex, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, phil-wifi-20190609, phil-wifi, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, nick-nhusb, netbsd-9-base, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-8-base, netbsd-8-3-RELEASE, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb8-mediatek-base, matt-nb8-mediatek, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, localcount-20160914, khorben-n900, jym-xensuspend-nbase, jym-xensuspend-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10, jmcneill-usbmp-base, jmcneill-usbmp, jmcneill-audiomp3-base, jmcneill-audiomp3, jdolecek-ncq-base, jdolecek-ncq, isaki-audio2-base, isaki-audio2, is-mlppp-base, is-mlppp, cherry-xenmp-base, cherry-xenmp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, bouyer-quota2-nbase, agc-symver-base, agc-symver, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Branch point for: thorpej-cfargs, rmind-uvmplock, netbsd-9, jruoho-x86intr
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +2 -2 lines
Use aprint_normal(9) and variants.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Fri Feb 18 16:02:48 2011 UTC (13 years, 9 months ago) by tsutsui
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +14 -14 lines
Make local functions and variables static.

Revision 1.1.2.3: download - view: text, markup, annotated - select for diffs
Thu Feb 17 11:59:39 2011 UTC (13 years, 9 months ago) by bouyer
Branches: bouyer-quota2
Diff to: previous 1.1.2.2: preferred, colored
Changes since revision 1.1.2.2: +26 -26 lines
Sync with HEAD

Revision 1.2: download - view: text, markup, annotated - select for diffs
Sat Feb 12 16:40:29 2011 UTC (13 years, 10 months ago) by tsutsui
Branches: MAIN
CVS tags: uebayasi-xip-base7, bouyer-quota2-base
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +26 -26 lines
- make local functions static
- some KNF

Revision 1.1.2.2: download - view: text, markup, annotated - select for diffs
Tue Feb 8 16:19:21 2011 UTC (13 years, 10 months ago) by bouyer
Branches: bouyer-quota2
Diff to: previous 1.1.2.1: preferred, colored
Changes since revision 1.1.2.1: +576 -0 lines
Sync with HEAD

Revision 1.1.2.1
Sun Feb 6 18:26:51 2011 UTC (13 years, 10 months ago) by bouyer
Branches: bouyer-quota2
FILE REMOVED
Changes since revision 1.1: +0 -576 lines
file topcat.c was added on branch bouyer-quota2 on 2011-02-08 16:19:21 +0000

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Feb 6 18:26:51 2011 UTC (13 years, 10 months ago) by tsutsui
Branches: MAIN
Branch point for: bouyer-quota2
Switch NetBSD/hp300 to wscons with rasops. Simply ported from OpenBSD/hp300.

- Only A1416 Kathmandu (topcat) framebuffer on 425t is tested, but
  all other variants (TigerShark, Hyperion, DaVinci, GatorBox, Renaissance)
  should also work if they are working on OpenBSD/hp300.
- sti(4) and SGC bus support are not pulled because I don't have 425e
  and I can't confirm that 362 and 382 actually have SGC bus.
  (I'll commit a DIO based dumb driver for 362 and 382 framebuffers later)
- Xorg server with wsfb driver will also be integrated soon
  once after keycode with NoSymbol problem is addressed.
  (We have to re-think what code should be used on WSDISPLAY_COMPAT_RAWKBD)
- MI HIL keyboard and mouse drivers are working fine though
  cngetc via hilkbd has some problem (still we can input commands).
- No old HP-UX like HIL ioctl compatibility (we removed COMPAT_HPUX anyway).
  grfinfo(8) and hilinfo(8) will be removed shortly.

Demonstrated on NetBSD booth at Open Source Conference 2011 Kagawa.

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>