Commit Graph

78 Commits

Author SHA1 Message Date
tsarna
f53a32e6c9 Refactor tpcalib and hpc* ports to make tpcalib MI, as discussed on tech-kern. 2004-05-28 17:52:06 +00:00
uwe
e548ab355a Correct the comment about contrast control in HD64461 GPIO port B:
6th bit is the least significant, 3rd is the most significant.
2004-04-04 17:49:38 +00:00
uwe
fad92c3ca3 When we attach a channel, set a high level to DRV control pin of the
external buffer for the PC card connected to the channel.  This hack
makes pcmcia cards "being used" at the boot time (by WinCE or NetBSD)
correctly detected.  A machine running with root on NFS can now be
properly rebooted.
2004-03-27 02:53:12 +00:00
uwe
8dd212dad7 Add option HD64461PCMCIA_REORDER_ATTACH that attaches channels in
reversed order.

When you boot with two CF cards inserted, this options makes the one
in the "memory only" slot (channel 1), which is almost always the card
with the NetBSD install, attached as wd0.

Unlike using fixed unit numbers in the kernel config, if you boot with
only a single CF card, that single card will still be wd0 regardless
of which slot it is inserted in.

http://mail-index.netbsd.org/port-hpcsh/2003/10/23/0000.html provides
a more verbose description of why this option is convenient for most
usage patterns.
2004-03-27 02:24:01 +00:00
uwe
9d8bb20eb3 Use CONFIG_HOOK_POWERCONTROL_LCD to control turning the LCD on/off
(the _LCDLIGHT hook is apparently meant to control the LCD backlight).
2004-03-15 23:38:16 +00:00
uwe
ef7c82009e Driver that controls power, brightness and contrast of the Jornada 680 LCD. 2004-03-15 03:45:50 +00:00
uwe
9071e10a46 Support for WSDISPLAYIO_PARAM_CONTRAST. 2004-03-15 03:38:39 +00:00
uwe
3fcefe2a85 Use callout_schedule instead of callout_reset to re-establish keyboard
callouts.

While here, #if 0 the code in pfckbd_callout_hp to read (and ignore)
PFC registers G and H.
2003-12-14 04:03:16 +00:00
uwe
85a134f3c1 Use CONFIG_HOOK_BRIGHTNESS* to support WSDISPLAYIO_PARAM_BRIGHTNESS.
Use CONFIG_HOOK_POWERCONTROL_LCDLIGHT to turn on/off the LCD in
response to WSDISPLAYIO_SVIDEO.

Implementation of these hooks for Jornada 680 is to follow shortly.
2003-12-14 02:52:15 +00:00
chs
e07f0b9362 eliminate uvm_useracc() in favor of checking the return value of
copyin() or copyout().

uvm_useracc() tells us whether the mapping permissions allow access to
the desired part of an address space, and many callers assume that
this is the same as knowing whether an attempt to access that part of
the address space will succeed.  however, access to user space can
fail for reasons other than insufficient permission, most notably that
paging in any non-resident data can fail due to i/o errors.  most of
the callers of uvm_useracc() make the above incorrect assumption.  the
rest are all misguided optimizations, which optimize for the case
where an operation will fail.  we'd rather optimize for operations
succeeding, in which case we should just attempt the access and handle
failures due to insufficient permissions the same way we handle i/o
errors.  since there appear to be no good uses of uvm_useracc(), we'll
just remove it.
2003-11-13 03:09:28 +00:00
uwe
9df7e01734 Implement trivial WSDISPLAYIO_SVIDEO that flips DON bit in LCDLDR1.
This only turns off the display in the LCD controller.

TODO: Need to add a platform specific way to turn the screen on and
off as well (e.g. on Jornada 680 this is bit 0 in hd64461 GPIO port B).
2003-11-09 02:05:42 +00:00
uwe
758b6ed7d7 ispell comments. 2003-11-05 00:28:34 +00:00
uwe
0af2a03977 Provide wskbd* at j6x0tp? attachment that maps taps on the "HP hard
icons" (along the right edge of the screen) to key presses.
2003-11-04 03:43:12 +00:00
jdolecek
ed1e458331 vaddr_t is not a pointer 2003-11-03 20:32:17 +00:00
uwe
72b8dfe22a In hd64461video_update_videochip_status init depth to supress bogus
-Wuninitialized.
2003-11-01 03:45:52 +00:00
uwe
94a688bcbc In hd64461pcmcia_chip_io_map set *windowp to 0.
This driver ignores i/o window handle, but most 'at pcmcia'
attachments init their sc_io_window to -1 and then check at detach
time if it was changed from the "bad" value.  Keep them happy, so that
they can correctly clean up when card is detached.
2003-10-23 02:34:07 +00:00
uwe
49fd54d39a Use adcvar.h. 2003-10-22 23:52:46 +00:00
uwe
437e63c180 __KERNEL_RCSID. 2003-10-19 02:22:56 +00:00
uwe
e4bd58b011 Driver for Jornada 680 touch screen. 2003-10-19 02:20:25 +00:00
uwe
8b50c662e8 Jornada 680/690 power &c. Doesn't do much useful at the moment, but
provides RTFS documentation on how things are wired in Jornada.

Listens to "switch off" interrupt generated when On/Off button is
pressed, or the lid is closed.

Polls the status of main and backup batteries and warns if main
battery is low.
2003-10-18 01:38:39 +00:00
uwe
2b2ae88a13 Move the definition of enum hd64461video_display_mode out of the
definition of struct hd64461video_chip.  Makes gcc3 happy.
2003-08-02 22:39:13 +00:00
lukem
0c82163c78 __KERNEL_RCSID() 2003-07-15 02:29:24 +00:00
thorpej
0eff671820 Also pass a type argument to comcnattach() and com_kgdb_attach().
comspeed() (and thus cominit()) may need this information.
2003-06-14 17:01:06 +00:00
uwe
3d2f28b075 When doing bit blit, set the flow direction based on the condition_a flag. 2003-04-27 04:11:32 +00:00
thorpej
d071d9a8d0 Use PAGE_SIZE rather than NBPG. 2003-04-01 15:02:05 +00:00
thorpej
72a2c87923 Use aprint_normal() for cfprint routines. 2003-01-01 01:34:45 +00:00
uwe
580c60b346 When scanning HP keyboard, disable output on all scan lines except the
one we are currently scanning.  This is what Hitachi's sample WinCE
code does.  Thanks to YAEGASHI Takeshi for pointing this out!
This makes same row chords work properly, most importantly
Ctrl-@, Ctrl-W, Ctrl-S, Ctrl-Alt-F1 (ctrl row), Ctrl-Alt-F3 (alt row).
2002-12-24 11:49:03 +00:00
uch
7e96d57199 make this compile again. 2002-10-21 17:07:36 +00:00
thorpej
bd5bb4652b Add trailing ; to CFATTACH_DECL 2002-10-02 15:45:10 +00:00
thorpej
c5e91d447d Use CFATTACH_DECL(). 2002-10-02 04:55:47 +00:00
thorpej
c4cbfcf060 Use CFATTACH_DECL(). 2002-10-01 02:54:11 +00:00
thorpej
f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
provos
0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
thorpej
6c88de3b53 Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller.  Use it
rather than invoking cfattach->ca_match directly.
2002-09-27 03:17:40 +00:00
thorpej
d1ad2ac4f2 Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver.  The cfdriver is then looked
up in a list which is built at run-time.
2002-09-27 02:24:06 +00:00
gehenna
77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
lukem
06de426449 SIMPLEQ rototill:
- implement SIMPLEQ_REMOVE(head, elm, type, field).  whilst it's O(n),
  this mirrors the functionality of SLIST_REMOVE() (the other
  singly-linked list type) and FreeBSD's STAILQ_REMOVE()
- remove the unnecessary elm arg from SIMPLEQ_REMOVE_HEAD().
  this mirrors the functionality of SLIST_REMOVE_HEAD() (the other
  singly-linked list type) and FreeBSD's STAILQ_REMOVE_HEAD()
- remove notes about SIMPLEQ not supporting arbitrary element removal
- use SIMPLEQ_FOREACH() instead of home-grown for loops
- use SIMPLEQ_EMPTY() appropriately
- use SIMPLEQ_*() instead of accessing sqh_first,sqh_last,sqe_next directly
- reorder manual page; be consistent about how the types are listed
- other minor cleanups
2002-06-01 23:50:52 +00:00
uch
aade7a10ce cosmetic changes 2002-05-09 12:41:09 +00:00
uch
1cbf8597ef adapt to new pmap code. 2002-05-09 12:37:58 +00:00
takemura
f8cb4c37a0 Fixed debug print. 2002-05-03 07:31:23 +00:00
takemura
090be59325 Fixed dev/hpc/hpcfb.c to set RI_BSWAP flag in 8bpp for rasops8.c
and backout changes 'fix LCD byte-order setting':
        arch/hpcsh/dev/hd64461/hd64461video.c   Rev. 1.7 to 1.8
        arch/hpcmips/dev/plumvideo.c            Rev. 1.23 to 1.24
        arch/hpcmips/tx/tx3912video.c           Rev. 1.24 to 1.25
2002-04-13 09:29:53 +00:00
uch
260c29f029 rework HD64461, HD64465 interrupt handling. 2002-03-28 15:26:59 +00:00
uch
e8300f3659 adapted to new interrupt code and shb changes. 2002-03-24 18:21:08 +00:00
atatat
31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
uch
7592c6aa95 don't initialize twice 2002-03-03 14:34:36 +00:00
uch
7166e5033d platform dependent HD64461 PCMCIA module (power supply). 2002-03-03 14:34:00 +00:00
uch
6042c0a3fc Initial support for KGDB on the sh3. 2002-03-02 22:26:25 +00:00
uch
bbc655c4fb Cleanup register definition 2002-02-28 01:56:57 +00:00
uch
a3757d3ba3 fix LCD byte-order setting. 2002-02-19 14:21:47 +00:00
uch
000bb38949 SH3/SH4 common kernel support. 2002-02-17 21:01:15 +00:00