summaryrefslogtreecommitdiff
path: root/sys/arch/mac68k
AgeCommit message (Collapse)Author
2023-03-26s/diplay/display/ and s/DIPPLAY/DISPLAY/ in comments.andvar
2023-02-18Introduce a flag to disable PDMA when writing.nat
The use of pdma when writing would always cause a panic on my Powerbook 160, possibly others as well. As posted to tech-kern.
2023-02-18Honor the XS_CTL_POLL flag and fallback to polled io instead of PDMA.nat
As posted to tech-kern.
2023-02-12Add optoion GENERIC.local include to the end of ~all GENERIC configsabs
This excludes atari, sgimips, evbmips, evbppc, evbsh3, and hpcarm all of which have somewhat specific kernel config file layouts
2023-01-05Disable (comment out) options DIAGNOSTIC in INSTALL kernels.tsutsui
It has been there since the initial revision 1.1 while it was disabled in GENERIC in revision 1.121 back in 2002: http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/mac68k/conf/GENERIC#rev1.121 Briefly discussed in PR/57107, and maybe should be pulled up to netbsd-9 and netbsd-10.
2022-12-26Sanity check and set the framebuffer length if necessary.nat
Addresses PR 57126.
2022-12-22Driver for DaynaPORT SCSI/Link (dse.4).nat
Written by Hiroshi Noguchi, of which an updated version was posted to port-mac68k in 2001. Attachments were added to kernel configs for platforms that already had the Cabletron (se.4) driver added, although other platorms may benefit. Reviewed on tech-net by Izumi Tsutsui.
2022-10-31s/interrut/interrupt/ and s/accelelerator/accelerator/ in comments.andvar
2022-09-18Eliminate use of IFF_OACTIVE.thorpej
2022-09-18Eliminate use of IFF_OACTIVE.thorpej
2022-08-20Unmap resources and print error messages properly in error paths.tsutsui
2022-08-20KNF and misc style fixes.tsutsui
2022-08-15Rework avdma to fix PR port-mac68k/56131 as well as add synchronousrin
transfer support. According to analysis by Michael Zucca, PSC (DMAC for Quadra/Centris AV) seems to require that DMA buffer is (1) aligned to 16-byte boundaries, and (2) multiple of 16 bytes in size. If the buffer does not satisfy these constraints, esp.c rev 1.63 and prior carry out partial PIO to align or shave off it. However, partial PIO does not always work correctly for combination of NCR53C94 and PSC, which results in failures observed as port-mac68k/56131. Also, PIO spoils synchronous transfer, which is timing critical. Therefore, for buffers that do not satisfy the boundary conditions, completely stop using PIO and use DMA with ``bounce'' buffers. This fixes port-mac68k/56131 and enables sync transfer as a big bonus. Note that bounce DMA does not hurt performance at all. For filesystem and swap I/O, buffers always satisfy the constraints above, and bounce DMA is necessary only (a) when disk is attached, or (b) for special utilities like fsck(8) or fdisk(8), as far as I can tell. Also: - Stop providing ``DMA-friendly'' sc_imess and sc_omess; transfer for MSGIN or MSGOUT does not almost certainly satisfy boundary condition (2). Again, this does not affect performance at all. - SCSI bus frequency is 20MHz (i.e., 5MB/s for sync transfer) for AV models, according to ``Quadra 840AV Service Source''.
2022-08-15Remove stray newline. No binary changes.rin
2022-08-15For avdma, bus_dmamap_create(9) with nsegments = 1, as PSC supportsrin
only one physically contiguous segment in a single DMA transaction. Slightly improves performance.
2022-08-15Minor cosmetic changes. NFC.rin
- Use switch instead of if-else-if chain. - Dedup codes a bit.
2022-08-09Switch from ``(1 << depth) color'' to ``(depth)-bpp color'' inrin
attach message. For depth == 32, fix ``0 color'', and prevent ambiguous ``16Mi color''. I don't know whether there is 24-bpp graphic card for mac68k or not, although.
2022-08-07UFS/LFS dirhash:simonb
- Enable UFS_DIRHASH if the architecture or kernel model specific config file can use 128MB of RAM or more. - Remove experimental tag from UFS_DIRHASH; it's been with RUMP kernel and by a number of NetBSD developers for years. - Add LFS_DIRHASH if LFS was enabled. - Be somewhat consistent with FS options order.
2022-07-30Fix WSMOUSEIO_GTYPE so that X does not fail to initialize wsmouse(4).rin
2022-05-30s/identifing/identifying/ and s/multipler/multiplier/ in comments.andvar
2022-05-23s/boundries/boundaries/, s/itterate/iterate/ and few more typos.andvar
2022-04-07fix various typos in comments.andvar
2021-10-09Call cnpollc(9) before cngetc(9) as the cons(9) man page says.tsutsui
Currently most ports do nothing in cnpollc(9), but this is required to handle wskbd(9) .set_leds op in cngetc(9) properly, at least on luna68k.
2021-09-26Driver "kqfilter" entry points return an error code, so if an invalidthorpej
filter is requested, return EINVAL rather than 1.
2021-09-26Use seltrue_filtops rather than rolling our own with filt_seltrue.thorpej
2021-09-26Change the kqueue filterops::f_isfd field to filterops::f_flags, andthorpej
define a flag FILTEROP_ISFD that has the meaning of the prior f_isfd. Field and flag name aligned with OpenBSD. This does not constitute a functional or ABI change, as the field location and size, and the value placed in that field, are the same as the previous code, but we're bumping __NetBSD_Version__ so 3rd-party module source code can adapt, as needed. NetBSD 9.99.89
2021-09-25Call cnpollc(9) before cngetc(9) as the cons(9) man page says.tsutsui
Affects only inside #ifdef DEBUG part on "trap during panic" in trap.c derived from hp300.
2021-09-18Remove unnecessary (and unimplemented) WSKBD_*BELL ioctls in kbd drivers.tsutsui
It looks the only ioctl(4) to be implemented for WSKBDIO_*BELL in the backend keyboard driver is WSKBDIO_COMPLEXBELL. All other BELL ioctls (WSKBDIO_BELL, WSKBDIO_SETBELL, WSKBDIO_GETBELL, WSKBDIO_SETDEFAULTBELL, and WSKBDIO_GETDEFAULTBELL) are handled in the MI wskbd driver (in wskbd_displayioctl() in src/sys/dev/wscons/wskbd.c).
2021-09-11Add missing double p and d for stopped and overriden accordingly.andvar
Fix few more typos along the way, mainly in copy-pasted comments.
2021-08-21fix some more typos in comments/log messages, improve wording as well.andvar
2021-08-07Merge thorpej-cfargs2.thorpej
2021-07-24Fix all remaining typos, mainly in comments but also in few definitions and ↵andvar
log messages, reported by me in PR kern/54889. Also fixed some additional typos in comments, found on review of same files or typos.
2021-05-13We do not match machines whose SWIM does not support the IWM registerhauke
set used by this driver (SWIM II/III, SWIM behind IOP, AV models' DMA based controllers). Unfortunately, this distinction does not run cleanly along MACH_CLASS* lines, and we have to look at MACH_MAC{model} tags.
2021-04-28Change sccA address for Quadra 800 from base + 0xc000 to 0xc020.rin
The H/W partially decodes its address, and sccA is available at offsets 0xc000, 0xc020, .... The functionality is same, but Mac toolbox ROM routines use 0xc020, and QEMU for Quadra 800 only supports this address. Thanks Mark Cave-Ayland for discussion, who is working on NetBSD support to QEMU for Quadra 800!
2021-04-28Make mac68k_set_io_offsets() a little bit cleaner:rin
- Via1Base is always ``base'' for all supported models. - Set sccA and SCSIBase for each model of MACH_CLASSQ class. - Some style fixes. No functional changes intended.
2021-04-24Merge thorpej-cfargs branch:thorpej
Simplify and make extensible the config_search() / config_found() / config_attach() interfaces: rather than having different variants for which arguments you want pass along, just have a single call that takes a variadic list of tag-value arguments. Adjust all call sites: - Simplify wherever possible; don't pass along arguments that aren't actually needed. - Don't be explicit about what interface attribute is attaching if the device only has one. (More simplification.) - Add a config_probe() function to be used in indirect configuiration situations, making is visibly easier to see when indirect config is in play, and allowing for future change in semantics. (As of now, this is just a wrapper around config_match(), but that is an implementation detail.) Remove unnecessary or redundant interface attributes where they're not needed. There are currently 5 "cfargs" defined: - CFARG_SUBMATCH (submatch function for direct config) - CFARG_SEARCH (search function for indirect config) - CFARG_IATTR (interface attribte) - CFARG_LOCATORS (locators array) - CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles) ...and a sentinel value CFARG_EOL. Add some extra sanity checking to ensure that interface attributes aren't ambiguous. Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark ports to associate those device handles with device_t instance. This will trickle trough to more places over time (need back-end for pre-OFW Sun OBP; any others?).
2021-04-02For ports with __HAVE_LEGACY_INTRCNT, turn intrcnt[] and derivedrin
variables into u_int, to match with kern/subr_evcnt.c.
2021-04-01Define __HAVE_LEGACY_INTRCNT to indicate this port uses legacy intrcntsimonb
interrupt accounting.
2021-03-14Fix DJMEMCMAX option for Quadra/Centris 650/800.rin
- Use jeq instead of jra for conditional branch. - Use cmpl instead of cmp (= cmpw) for int variables. Now, my Quadra 800 recognizes full 520MB memory!
2021-02-26Add MAC68K_MEMSIZE option to hard-code memory size in MB, instead ofrin
that given by Booter. Work around Booter bug by which max memory is restricted to 255MB.
2021-02-26Sort opt_*.h. No binary changes.rin
2021-02-22Elucidate why synchronous transfer is disabled for AV Macs.rin
Sync negotiation times out when drive advertises that capability: ---- sd1 at scsibus0 target 1 lun 0: <codesrc, SCSI2SD, 6.0> disk fixed sd1: 16384 MB, 2088 cyl, 255 head, 63 sec, 512 bytes/sect x 33554432 sectors sd1: sync (160.00ns offset 15), 8-bit (6.250MB/s) transfers ... sd1(esp0:0:1:0): esp0: timed out [ecb 0x9f7fc4 (flags 0x1, dleft 8, stat 0)], <state 5, nexus 0x9f7fc4, phase(l 1, c 1, p 1), resid 8, msg(q 0,o 80) DMA active> sd1(esp0:0:1:0): sync negotiation disabled sd1(esp0:0:1:0): esp0: timed out [ecb 0x9f7fc4 (flags 0x41, dleft 8, stat 0)], <state 5, nexus 0x9f7fc4, phase(l 1, c 1, p 1), resid 8, msg(q 20,o 80) DMA active> AGAIN sd1: async, 8-bit transfers ---- This is observed for real SCSI drives as well as SCSI2SD (rev 6.0). Note that this is not a fallout from DMA patch for AV Macs; timeout takes place even if ``avdma'' code is forcibly disabled. No binary changes.
2021-02-22- Add missing \n's to printf(9).rin
- Whitespace fixes.
2021-02-20sn(4): Add rnd(9) support.rin
2021-01-24Add rnd(9) support.rin
2021-01-23Remove cargo-culted '#if 0' code that was designed to produce achristos
compile-time error if any of the bus_space_*_8 functions was used, but was documented that it produces a link-time error.
2021-01-21add a commented out compat_ossaudio wherever there's compat_linuxnia
requested by mrg
2020-12-19malloc(9) -> kmem(9)thorpej
2020-12-19Use sel{record,remove}_knote().thorpej
2020-12-02comparision -> comparisonwiz