ichiro
5cbb157eb8
initial commit UDA1341 CODEC
2001-07-15 20:19:31 +00:00
ichiro
e5e13da17f
Mapping the SSP registers
2001-07-15 17:18:53 +00:00
ichiro
5bc60be08a
add handle of sc_ssph
2001-07-15 17:12:11 +00:00
ichiro
fed0a40ba6
add definition I/Opins of UDA1341
2001-07-15 13:29:38 +00:00
ichiro
cf1c37c9aa
UDA1341TS economy audio CODEC for portable applications.
...
This is used for iPAQ CODEC.
2001-07-15 08:34:36 +00:00
ichiro
60f2ec7ec1
enable extended gpio operation
2001-07-15 00:30:17 +00:00
matt
24a2b394aa
Make <sysarch.h> valid for all arm platforms. Adjust/remove port-specific
...
includes as required.
2001-07-14 00:23:09 +00:00
ichiro
2d93d462a3
The definiton which overlapped was erased.
2001-07-13 06:54:35 +00:00
ichiro
073132a7b9
define GPIO alternate functions
...
They become effective by turning on GAFR.
2001-07-13 03:33:38 +00:00
ichiro
6244e7b3a1
add more MCP status register definition
2001-07-12 03:58:35 +00:00
ichiro
4e28fbd762
add SA-1110 MCP(Multimedia communications Port) register definition
2001-07-11 16:02:25 +00:00
ichiro
88874f0037
add MCP control register1
...
this resides within the same address space as PPC
2001-07-11 15:56:00 +00:00
ichiro
b5bb8c348f
add MCP address register
2001-07-11 15:20:23 +00:00
toshii
ae6299f9d3
saip_sc (in struct sapcic_socket) is gone.
2001-07-11 03:54:19 +00:00
ichiro
83030a0348
cosmetic change, add more comment,
...
delete unused include file
2001-07-11 00:10:04 +00:00
ichiro
987e5b28ea
I delete unused include file
2001-07-11 00:05:55 +00:00
ichiro
834543dabc
ipaqlcd attach to ipaqbus
2001-07-10 18:10:46 +00:00
ichiro
034e3a0d6a
moved sa11x0_lcd* to dev/ipaq_lcd*
2001-07-10 18:09:31 +00:00
toshii
124bde736e
oops. two cookies are too much. use pcictag_cookie.
2001-07-10 17:35:15 +00:00
ichiro
f8f0c9040d
I missed to add bus_space_tag_t mapping
2001-07-10 17:24:35 +00:00
ichiro
dcd782fb65
use sapcic_cookie
2001-07-10 17:23:18 +00:00
ichiro
e205409087
sapcic_socket shouldn't use ipaq_softc. use sapcic_cookie
2001-07-10 17:22:04 +00:00
ichiro
6952d8194a
delete Extended-GPIOs mapping
2001-07-10 16:39:33 +00:00
ichiro
0d2e761def
sa11x0_pcic* moved to arch/hpcarm/dev and renamed ipaqpcic*
2001-07-10 16:37:29 +00:00
ichiro
75f2a81776
sa11x0_softc -> ipaq_softc
...
because PCIC of sa11x0 moved to the bottom ipaqbus
2001-07-10 16:35:59 +00:00
ichiro
50ac712dbc
add ipaqbus and ipaqpcic
2001-07-10 16:34:08 +00:00
ichiro
f408349001
add iPAQ virtual bus and PCIC of iPAQ
2001-07-10 16:31:52 +00:00
ichiro
4a84e3e7bd
Separation of SA-11x0 GPIOs and iPAQ specific GPIOs.
2001-07-10 14:58:28 +00:00
toshii
c90ac4b756
Sync with rev. 1.5 of sa11xx_pcicvar.h.
2001-07-09 06:20:31 +00:00
toshii
57755d7760
sapcic_socket shouldn't use sacc_softc, use opaque data type instead.
2001-07-09 05:19:05 +00:00
abs
01b024cd5b
Standardise TCP_COMPAT_42 as commented out, grouped with other COMPAT options,
...
and with the comment '4.2BSD TCP/IP bug compat. Not recommended'
Add commented out 'TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG'
(All hail amiga and atari which make some attempt to automate the
multiplicity of config files...)
2001-07-08 16:32:12 +00:00
ichiro
89ebce9618
comment out: bus_space_write_2
2001-07-08 14:45:36 +00:00
ichiro
ec7a32a628
cosmetic change
2001-07-08 14:45:03 +00:00
ichiro
320adf2df7
comment out: bus_space_write_2
2001-07-08 14:43:52 +00:00
ichiro
0e7c688b67
add definition of EGPIO_LCD_INIT
2001-07-08 14:41:14 +00:00
ichiro
9e80e9aca3
fix and fill Extended-GPIO
2001-07-08 10:36:31 +00:00
ichiro
9c344c76c8
add LCD register definition
2001-07-08 06:38:59 +00:00
ichiro
a8696d3a73
Extended GPIO address is 0x49000000.
2001-07-08 03:33:42 +00:00
ichiro
66a6cc178d
pcmcia support of SA1110
2001-07-07 15:53:24 +00:00
ichiro
f9d2eac504
Initialization of Extended GPIOs
2001-07-07 15:50:37 +00:00
ichiro
975265e67e
add extended GPIOs register
2001-07-07 15:49:41 +00:00
toshii
5455a9ad87
Use platid based mechanism to select PCMCIA socket voltage.
2001-07-07 08:45:43 +00:00
ichiro
2ee26bb302
s/saip_softc/sa11x0_softc
2001-07-07 08:10:15 +00:00
ichiro
b1a5e525b8
mapping extended GPIOs
...
iPAQ: Extended GPIOs appears at address 0x41000000
2001-07-07 07:04:56 +00:00
ichiro
cd3fb67f14
bzero->memset, bcopy->memcpy
2001-07-07 06:29:13 +00:00
ichiro
07a7db71f2
using bus_space_tag for salcd
2001-07-02 13:52:29 +00:00
toshii
56b40cd78a
Fix autoconf related botch: do printf("\n") in attach funcs rather than
...
in cfprint.
2001-06-29 17:22:50 +00:00
toshii
f1e3122487
Fix 3rd arg of config_search().
2001-06-29 16:58:55 +00:00
toshii
5df8e31135
Probe SA1111's ID register. Fix 3rd arg of config_search().
2001-06-29 16:58:17 +00:00
toshii
7b01bb9073
Add ID register location.
2001-06-29 16:54:55 +00:00
toshii
ff7d26d2ed
KASSERT current_intr_depth == 0 before uvm_fault.
2001-06-29 02:43:56 +00:00
toshii
84408cfa2e
Catch up long ago arm32 change: vm_offset_t -> {p,v}addr_t.
2001-06-29 02:40:28 +00:00
toshii
8a0e9b17a0
Use ld -X instead of -x, to keep local symbols for DDB.
...
XXX does other arm ports need this change?
2001-06-29 02:38:32 +00:00
toshii
e5c43d9b98
Fix a nit.
2001-06-23 12:32:20 +00:00
toshii
6adb72bfb8
Speed optimization, inspired by recent sys/arch/arm/arm/blockio.S changes.
...
Among bus_space_{read,write}_multi, only bus_space_read_multi_2 is
optimized. bus_space_write_multi_2 didn't gain speed with ldm.
bus_space_*_multi_{1,4} aren't heavily used anyway.
2001-06-23 10:19:04 +00:00
toshii
446833d1b1
Enable a bunch of PCMCIA network cards. They cannot be tested before
...
enabling.
2001-06-23 10:05:11 +00:00
toshii
c9b6aeb4f9
Add jornada720 keyboard device.
2001-06-23 09:28:59 +00:00
toshii
912e831053
Remove obsolete BOOTINFO_FB_* workaround.
2001-06-23 09:25:17 +00:00
toshii
b57d496dee
Add support for jornada720 keyboard and some LCD parameter controls.
...
The code is somewhat incomplete, but is quite functional.
2001-06-23 09:20:05 +00:00
toshii
e671a13d47
Move sed1356_softc definition to a header file. Setup a backlight
...
power control hook.
2001-06-23 09:13:06 +00:00
toshii
90b62cfa61
Don't include <machine/autoconf.h>, which should not be necessary.
...
Moreover, hpcarm doesn't have such a header file.
2001-06-22 14:38:44 +00:00
toshii
8128f45c37
Remove useless DEBUG code.
2001-06-22 01:29:26 +00:00
toshii
8b8a1cfa73
Define __HAVE_GENERIC_SOFT_INTERRUPTS, and nuke traditional softserial and
...
softclock.
2001-06-20 02:34:26 +00:00
toshii
9663b23e37
Add IPL_SOFT* interrupt levels.
...
XXX These's no point in having two copies of intr masks (spl_masks and
XXX imask). This needs to be fixed.
2001-06-20 02:30:47 +00:00
toshii
9159944a03
Add IPL_SOFT* interrupt levels.
...
Fix type for softintr handlers.
2001-06-20 02:26:30 +00:00
toshii
352aae04a4
Fix type for softintr handlers.
2001-06-20 02:21:58 +00:00
toshii
ccc8a74c00
Map PPC (peripheral pin controller) registers also.
2001-06-20 02:19:55 +00:00
toshii
b0f168f8ce
GC dead codes.
2001-06-20 02:18:06 +00:00
toshii
681b3193ca
Make sacom generic soft interrupts ready.
2001-06-20 02:16:49 +00:00
wiz
ac951736bc
`response', not `responce'
2001-06-19 13:45:52 +00:00
wiz
3f9984fc90
`existent', not `existant'
2001-06-19 13:42:07 +00:00
bjh21
cb36bacea5
Merge arm32/dev/bus_space_notimpl.S and hpcarm/hpcarm/bus_space_notimpl.S
...
into arm/arm/bus_space_notimpl.S. They were identical anyway.
This file has no excuse for being in assembler, but I'll leave that for another
day.
2001-06-18 22:26:15 +00:00
bjh21
80c5d7ab99
Move <arm/arm32/bus.h> to <arm/bus.h>, since it looks like it's going to be
...
necessary on arm26 as well.
2001-06-18 21:37:32 +00:00
toshii
bf923a99b8
Don't set HPCFB_SWAP_BYTE (if little endian).
2001-06-16 12:53:05 +00:00
toshii
d69d2974a4
Sprinkle some volatile keywords around inline asm so that the optimizer
...
doesn't reorder critical section codes.
2001-06-07 02:38:59 +00:00
bjh21
6a32761143
Now that cpu_dataabt_fixup() can fail, print slightly more useful information
...
(address and disassembly of the instruction that aborted) when it does so.
2001-06-02 22:48:40 +00:00
chs
821ec03ed9
replace vm_map{,_entry}_t with struct vm_map{,_entry} *.
2001-06-02 18:09:08 +00:00
toshii
07187f8a43
Nuke FRAMEBUF_HW_BASE. This value is provided by the bootloader.
2001-06-01 14:08:35 +00:00
toshii
6349d0ae81
Nuke FRAMEBUF_{HW_,}BASE. This hack does no good.
2001-06-01 14:06:43 +00:00
toshii
ea77ec5725
Move some low-level code (SVC mode switching and PID address translation
...
disabling) which was written using inlined asm in initarm() to just after
the kernel entry point.
2001-06-01 14:04:29 +00:00
toshii
76b3b49bb8
Add support for jornada720's framebuffer.
...
The functionality is almost same as bivideo, and hardware rasops and
power saving are not yet supported.
2001-06-01 02:51:03 +00:00
lukem
d84d2c6c85
add missing #include "opt_kgdb.h"
2001-05-30 15:24:23 +00:00
toshii
e2c5f5866f
Use sys/arch/arm/arm/blockio.S.
...
Actually, these functions aren't used by hpcarm but is necessary to be
able to link sys/arch/arm/mainbus thing.
2001-05-30 14:39:19 +00:00
mrg
67afbd6270
use _KERNEL_OPT
2001-05-30 11:57:16 +00:00
mrg
3783ca5d30
define _KERNEL_OPT as well as _KERNEL. we will use this in the future to
...
get kernel "opt_foo.h" headers, rather than _KERNEL && !_LKM.
2001-05-29 02:20:20 +00:00
toshii
34691495bb
Add some PCMCIA devices.
2001-05-23 16:52:34 +00:00
toshii
38b2a7b8bf
Optimize softintr_dispatch by replacing SetCPSR calls by inlined asm.
...
Result is ~1% improvement in ping -f rate.
2001-05-23 02:20:47 +00:00
toshii
822c8273de
Instead of scheduling all interrupts at IPL_BIO, use an IPL_SERIAL
...
handler to clear hardware interrupt bit and schedule actual handlers
using soft interrupts registered with desired IPL.
XXX This slows down interrupt handling a bit (up to a few percent with
XXX ping -f or make-over-NFS benchmarks) in some cases.
2001-05-22 17:54:50 +00:00
toshii
3d513c3e7a
Implement generic soft interrupt for hpcarm.
2001-05-22 17:25:15 +00:00
toshii
7073a10bbd
Nuke current_mask.
2001-05-22 17:01:16 +00:00
toshii
128d6fc64b
Check RBB and REB bits in the console getc function and go to DDB
...
when a break signal is detected.
2001-05-21 16:50:35 +00:00
toshii
6e435a5783
Use platid_search to get the GPIO pin number.
2001-05-19 05:07:02 +00:00
toshii
a90c8b6620
ANSIify and minor KNF.
2001-05-18 14:51:40 +00:00
toshii
fd61423f9b
Change _ARM32_*_H_ to _HPCARM_*_H_.
2001-05-15 16:15:22 +00:00
toshii
c939f00e98
Abandon disabled_mask and spl_mask, and use only current_spl_level to
...
manage interrupt masking.
This change is necessary for straightforward implementation of coming IPL
support for cascaded intrs, and it should not impair performance.
2001-05-14 16:19:30 +00:00
bjh21
e2b24925d1
Use get_bootconf_option() to find boot options, rather than home-grown
...
strstr()-based hacks.
2001-05-13 13:53:08 +00:00
bjh21
61044be691
Move get_bootconf_option() into a new file, sys/arch/arm/arm/bootconfig.c,
...
since it's in no way machine-dependent. It's not really ARM-specific either,
but I don't think it's useful enough to be made part of the MI kernel.
2001-05-13 13:44:33 +00:00
bjh21
6d4648fa03
Move "defopt PMAP_DEBUG" into files.arm, since it's used by code in arch/arm.
2001-05-06 18:31:14 +00:00
bjh21
f9087c439b
Move cpufunc stuff from arm32/arm32 to arm/arm. The only change involved is
...
to add recognition of the SA-1100 and SA-1110 for compatibility with hpcarm
(which is now using this code as well).
2001-05-06 18:01:42 +00:00
scw
2963ff5c58
Add `l_poll' to `struct linesw' and provide an xxxpoll() entry point
...
in each tty driver to indirect through it.
This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
toshii
c7df9e68f9
Fix device matching in saip.
...
ca_match functions should return positive value when matched.
2001-05-01 12:36:54 +00:00
thorpej
cf67ac7122
Per discussion w/ chuck and chuck, restructure the md page stuff
...
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
2001-05-01 02:19:13 +00:00
toshii
fbdeb188a5
setsoftast is a macro now.
2001-04-30 15:54:28 +00:00
toshii
87593b8b06
Pull in <machine/psl.h> for spl* definitions.
...
(same as arm32/include/intr.h rev 1.5)
2001-04-30 15:20:07 +00:00
thorpej
2b27ac7a99
Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
...
each vm_page structure. Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM. These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.
This deprecates struct pmap_physseg. As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.
Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now). Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
thorpej
1c3a62e066
Sprinkle pmap_update() calls after calls to:
...
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).
These calls are relatively conservative. It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
toshii
58165a53a2
Make masked interrupts don't bring CPU out of idle mode.
2001-04-17 17:12:40 +00:00
toshii
cfa894dce0
Use idle mode in process waiting idle loop.
2001-04-17 16:14:57 +00:00
toshii
de8e20334a
Map a page needed for entering idle mode.
...
Also, use zero memory at physaddr 0xe0000000 to clean D cache.
2001-04-17 16:10:47 +00:00
toshii
ffe7f4da8a
Fix a bug crept in the previous revision. Call dosoftints() after
...
reenabling interrupts.
2001-04-17 16:07:13 +00:00
toshii
a78b59337f
Overhaul interrupt handlers.
...
- Set the match register before calling hardclock() to prevent
clockintr lossage.
- Better handling of match register overrun case.
2001-04-17 15:58:51 +00:00
toshii
0c1210c6b3
Make the debugging hack needed for DEBUG_BEFOREMMU functional again.
2001-04-17 15:53:04 +00:00
toshii
5373b5ab86
Special care must be taken in order to run statclock at 128Hz.
...
For now, change statclock rate to 64Hz for simplicity.
Thanks to Ross Harvey for pointing out this issue.
2001-04-17 15:49:02 +00:00
toshii
af9740eeee
Initialize platid in hpc_machdep().
2001-04-17 15:33:39 +00:00
toshii
9e3772786d
Add header files for PPC and SSP register definitions.
2001-04-15 17:27:26 +00:00
toshii
1875326646
Use the second channel to generate 128Hz statclock interrupts.
...
top(1) reports more accurate CPU times (user/sys/intr/idle) now.
2001-04-15 17:19:32 +00:00
kleink
f06533a1ee
Add definitions of C99 integer format conversion macros.
...
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink
739cb75837
Add definitions of C99 specified-width integer type limits.
...
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00
kleink
cdcf9f46c5
Add definitions of C99 integer constant macros.
...
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink
a7c20e5788
Add definitions of C99 integer constant macros.
2001-04-14 22:38:33 +00:00
kleink
7affdab52e
Add definitions of C99 minimum-width and greatest-width integer types.
...
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
toshii
ff71a021ca
There is no /usr/include/hpcarm/disklabel_acorn.h.
2001-04-06 11:10:57 +00:00
toshii
3180bc6ac6
Fix a couple of bugs including kernel_pt_table[] range overflow.
...
I thought some incompatiblity with gcc-2.95.3 prevented booting,
but the actual reason was this silly overflow.
2001-04-06 05:38:01 +00:00
toshii
fe9328ad71
Reorder so that basic devices attach first.
2001-03-31 13:49:44 +00:00
toshii
2303009aeb
Add SA11[01]0 DMA controller register definitions.
...
(I forgot to commit this a week ago.)
2001-03-31 13:13:22 +00:00
toshii
4f12f94c95
Protect spl changing functions from interrupts.
2001-03-31 12:53:59 +00:00
toshii
c1244a5828
Remove cons_init(com), which prevents compiling in com_pcmcia.c.
2001-03-31 12:52:31 +00:00
toshii
02811d05f2
Fix a bug which caused interrupt loss.
2001-03-31 12:49:21 +00:00
toshii
2efdaff40e
Set hardware interrupt masks in sa11x0_intr_{establish,disestablish}.
2001-03-31 12:48:10 +00:00
toshii
129f529148
Back out most of rev 1.4 so that it compiles again.
2001-03-31 12:36:53 +00:00
toshii
dfddb1e107
Increase spl_masks[] size by one and set the extra element to 0.
...
irq_entry accesses here.
2001-03-31 12:22:37 +00:00
toshii
221f247a25
Add some missing functionality.
...
- wait READY signal in enable function
- use tsleep for large delays
- implement disable function
2001-03-27 18:06:39 +00:00
lukem
20ba07f2fe
- add dev_noimpl(xxx,yyy) macro to replace "(dev_type_xxx((*))) yyy",
...
and use appropriately
- create more helper macros:
. cdev__xyz_init(c,n), such as cdev__ocri_init() for
/* open, close, read, ioctl */, etc.
. cdev__xRy_init(c,n), where nullop is used instead of enodev to dummy out
method `R' and the comments now read /* xxx (read) yyy */ instead
. cdev__xyz_t_init(c,n,t) - as per cdev__xyz_init, but sets d_type = t
as well
- use seltrue instead of dev_noimpl(poll,*), as (IIRC) cdevsw.d_poll should
always DTRT WRT returning a valid result. (a few devices previously
incorrectly returned ENODEV)
- use dev_noimpl(stop,enodev) instead of dev_noimpl(stop,nullop) if tty
== 0, because it doesn't matter if dev_type_stop isn't implemented in that
case, and it allows the use of the cdev__xyz_init macros. certain ports
(sparc,sparc64,x68k) used the nullop method for dev_type_stop in a few
drivers, whereas everything else uses enodev
- ensure that the comments are accurate WRT the behaviour of a given entry
2001-03-26 12:33:22 +00:00
toshii
d2f3ad2de2
Support machdep.booted_kernel sysctl.
2001-03-23 11:10:10 +00:00
toshii
7ed6dadd10
Handle bootargs passed by hpcboot.
...
Change stack pointer initialization.
2001-03-23 08:58:14 +00:00
toshii
2d6322c3be
Handle ELF symbol table.
2001-03-22 03:45:39 +00:00
lukem
9f60674a47
now that duplicated stuff has been moved to sys/conf.h, remove unnecessary
...
defs for: lpt, joy, pc
2001-03-21 23:42:14 +00:00
toshii
7e9512010c
Oops. I forgot this line.
2001-03-21 17:43:39 +00:00
toshii
4b32677535
Map DMA controller and disable its DMA channels.
2001-03-21 17:42:37 +00:00
toshii
f8dab8e69a
Make card insertion/removal work.
...
XXX powerdown and {io,mem}_unmap are still missing.
2001-03-21 16:16:35 +00:00
toshii
7c429e90c2
Handle interrupt polarity.
2001-03-21 16:08:34 +00:00
toshii
f1b9737b90
Fix nit.
2001-03-21 14:48:30 +00:00
toshii
d16849a006
Make this compile again.
2001-03-21 14:40:00 +00:00
toshii
1f21d8b280
hpcarm kernel is ELF.
2001-03-20 18:01:49 +00:00
chs
ac3bc537bd
eliminate the KERN_* error codes in favor of the traditional E* codes.
...
the mapping is:
KERN_SUCCESS 0
KERN_INVALID_ADDRESS EFAULT
KERN_PROTECTION_FAILURE EACCES
KERN_NO_SPACE ENOMEM
KERN_INVALID_ARGUMENT EINVAL
KERN_FAILURE various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE ENOMEM
KERN_NOT_RECEIVER <unused>
KERN_NO_ACCESS <unused>
KERN_PAGES_LOCKED <unused>
2001-03-15 06:10:32 +00:00
toshii
c08eec9f47
Use hpc/hpc/disksubr.c.
2001-03-14 14:47:40 +00:00
bjh21
aebf9049d4
Update to use install_coproc_handler_static(), since install_coproc_handler()
...
isn't safe this early.
XXX hpcarm should use db_machine_init() to do this.
2001-03-13 20:52:48 +00:00
toshii
1bb261e173
Fix interrupt handling somewhat so that break signal gets DDB.
2001-03-12 03:27:18 +00:00
toshii
ffe630e7c3
Sync with sa11x0_reg.h rev 1.4.
2001-03-11 14:37:03 +00:00
ichiro
ea4611b0cd
add ExtendedGPIO desc of iPAQ H3600
2001-03-11 07:27:36 +00:00