Commit graph

4617 commits

Author SHA1 Message Date
aiju 6104ebc9b6 libmach: support disassembling from memory 2017-08-24 13:02:27 +00:00
aiju 721160290f vmx(1): VGA framebuffer should be normal memory 2017-08-24 09:25:23 +00:00
aiju b0997d16c6 vmx(1): fixed code that assumed uintptr==uvlong 2017-08-24 09:01:30 +00:00
aiju 8968426327 vmx(1): memory map improvements, x86 simulator for MMIO 2017-08-24 08:06:41 +00:00
aiju 9616f61872 devvmx: more efficient data structure for memory map; simplified (more reliable) step function 2017-08-24 07:53:10 +00:00
qwx 174d7e52a3 igfx: fix cdclk and dpll settings for dual channel lvds on sandybridge 2017-08-23 00:25:39 +03:00
cinap_lenrek c6359c3090 vt: turn off nl -> nl+cr translation default in raw mode, don't scroll more than screen height 2017-08-22 22:48:01 +02:00
cinap_lenrek c4fd860a56 vt: block selection mode for snarf 2017-08-20 22:18:09 +02:00
cinap_lenrek 797f85f023 merge 2017-08-20 19:23:56 +02:00
cinap_lenrek b28c3db578 vt: implement /dev/cons and /dev/consctl as a fileserver, winch, incremental redraw
we used to bind a pipe to /dev/cons and /dev/consctl with some
shared segment hack to pass tty info arround. now we implement
this as a fileserver.

add support for "winchon"/"winchoff" ctl message to enable interrupt
on window size change. (used by ssh)

keep track of fullscreen scrolls, avoiding redrawing the whole
screen each time.
2017-08-20 19:22:30 +02:00
cinap_lenrek bc54898807 ssh: issue "winchon" ctl request to /dev/consctl to get interrupt on window size change from vt(1) 2017-08-20 19:17:46 +02:00
qwx eeb8007e60 igfx: add did for x220 2017-08-20 13:52:52 +03:00
qwx 8c358c3f97 igfx: fix sandybridge fdi link training bits and ordering
- fix wrong bitfield for txctl (different between snb and ivb),
  and enable tx before rx
- DPLL_CTL_x snb/ivb: don't touch reserved bits
2017-08-20 13:47:01 +03:00
cinap_lenrek faae8eb752 vmx: allocate sticky instead of more expensive fixed segment 2017-08-14 04:18:13 +02:00
cinap_lenrek 6f6df11db7 vmx: pass multiboot framebuffer info to kernel 2017-08-13 19:19:55 +02:00
cinap_lenrek c78d4c4ce7 ether82563: add more pci ids for i210 and i354 from 9atom / openbsd 2017-08-13 15:26:24 +02:00
cinap_lenrek b3d581752b ether82563: support for i211 with iNVM. (thanks mfny and brennan for testing) 2017-08-12 23:36:24 +02:00
cinap_lenrek 9cf3dc9a25 awk: allow string as exit status 2017-08-12 21:34:06 +02:00
cinap_lenrek 3f9d5e4a4f awk: don't get into a infinite loop with eof while in string (thanks BurnZeZ) 2017-08-11 03:38:10 +02:00
cinap_lenrek 6b999263ae kernel: double READSTR buffer size to 8000 bytes for devusb 2017-08-11 01:32:24 +02:00
cinap_lenrek 7dab492324 devusb: superspeed bandwidth allocation handled by controller, skip usbload() calculation
with xhci, bandwidth allocations are handled by the controller
and there are various speed settings possible that currently
not exposed in the Udev. so just keep usbload() as it is for
usb2 and keep ep->load as zero for superspeed.
2017-08-11 01:08:13 +02:00
cinap_lenrek 153793714e nusb/disk: add a 100ms sleep after ums reset, remove unused note handler, cleanup
my pretec usb stick sometimes hangs on the first inquiry request,
waiting for the inquiry response forever. adding a 100ms delay after
the reset command seems to fix it.

getting rid of unused "ding()" note handler and simplify umsrequest()
incomplete read handling.
2017-08-11 01:00:09 +02:00
qwx 0daed9edea doom: clean up temporary mus files 2017-08-10 17:09:49 +02:00
qwx 16ef6e5596 add games/wadfs 2017-08-10 11:39:18 +02:00
cinap_lenrek 4be612946f vt: fix silly bug causing characters be drawn one at a time 2017-08-09 18:53:48 +02:00
cinap_lenrek ef3af6eaa3 sysinfo: run aux/icanhasvmx with verbose flag 2017-08-08 19:02:42 +02:00
cinap_lenrek ddf977d25c vmx: fix hlt idle problem 2017-08-07 19:10:32 +02:00
cinap_lenrek e0474599dd usbxhci: implement recovery from host controller errors 2017-08-07 01:59:54 +02:00
cinap_lenrek 8fce6cb18b cwfs: -n always overrides postservice() name, no matter if config mode changes service 2017-08-04 14:12:02 +02:00
cinap_lenrek bb625cebfc etheriwl: add pci id for Intel Centrino Advanced-N 6200 on x201 tablet (thanks arpunk) 2017-08-03 23:15:58 +02:00
cinap_lenrek 83b87729d9 usbxhci: handle out of memory in controller initialization 2017-08-02 21:17:50 +02:00
cinap_lenrek 1ea109345b usbxhci: abandon multiple requests per endpoint, cleanup
more conservative approach: only one transaction in flight
per endpoint (except iso). also serialize controller commands.
no driver currently uses this and i doubt it is usefull.

create constants for common TRB flags and remove bogus 1<<16
flag on TR_NORMAL.
2017-08-02 20:25:19 +02:00
cinap_lenrek 8ed13fe664 usbxhci: have to serialize and set read pointer for endpoint stop command 2017-08-02 01:45:30 +02:00
cinap_lenrek f001ddfdb5 disk/edisk: add some headroom in the type table for dynamic entries 2017-08-01 02:22:01 +02:00
cinap_lenrek 3c7eaa9d6b disk/edisk: add more partition type uuid's from wikipedia (thanks qeed) 2017-08-01 02:08:58 +02:00
cinap_lenrek 5f23d78f06 usbohci, usbehci, usbxhci: save mmio base address in ctlr, cant PADDR() on 386... 2017-07-31 17:36:56 +02:00
cinap_lenrek 48352be825 usbxhci: provide shutdown function to halt the controller 2017-07-31 16:05:58 +02:00
cinap_lenrek 56ac6ea29e nusb/*: cleanup 2017-07-31 15:29:08 +02:00
cinap_lenrek b1d4e86064 nusb/usbd: support for usb3 hubs 2017-07-31 14:38:39 +02:00
cinap_lenrek b4c1cf2ea1 libregexp: fix lexer so it doesnt move past the string when it gets a \ escape 2017-07-31 06:56:22 +02:00
cinap_lenrek 6e65596827 xhci: experimental usb3 support 2017-07-31 03:22:23 +02:00
cinap_lenrek 215b67ff3d nusb/usbd: create endpoint files for conf #1, usb3 preparation 2017-07-31 03:19:24 +02:00
cinap_lenrek d46099e3af usbehci: fix crash in cancelisoio() for highspeed device due to wrong pollival 2017-07-31 03:07:14 +02:00
cinap_lenrek adfb0e9371 pc, pc64: enable usbxhci in the configuration 2017-07-29 01:15:05 +02:00
cinap_lenrek cd108e2f0b usbxhci: simplify xecp() 2017-07-29 01:12:32 +02:00
cinap_lenrek c74538a67e usbxhci: implement controller handoff, ignore usb3.0 ports, honor pollival for isochronous endpoints 2017-07-29 01:02:23 +02:00
cinap_lenrek aaf6d7c558 usbxhci: basic iso write support (usb soundcard playback) 2017-07-24 23:48:50 +02:00
cinap_lenrek a397bfd48c usb: fix wrong pollival calculation in setmaxpkt() 2017-07-24 23:47:55 +02:00
cinap_lenrek 0b4ace02c4 usbxhci: handle changing maxpkt on control endpoint by reevaluating endpoint context
while endpoints != 0 are opend after the device descriptor has been
parsed and the endpoint properties like maxpkt have been set, the
control endpoint is opend with a guessed maxpkt value. once the first
8 bytes of the descriptor have been read by usbd, maxpkt gets set and
we need to reevaluate the control endpoint 0 context to update the value.
2017-07-22 19:35:32 +02:00
cinap_lenrek f72bcce2c7 usbxhci: use physical register addresses for matcing controllers and printing. simplify endpoint slot initialization. 2017-07-22 16:37:05 +02:00
cinap_lenrek f0217d2c3f usbohci, usbuhci, usbehci: use physical address of registers for matching controllers and printing 2017-07-22 16:35:13 +02:00
cinap_lenrek ffb28698bf kernel: fix bounds check in screenputc() 2017-07-20 21:03:00 +02:00
cinap_lenrek 4fd68773e2 usbxhci: implement command timeouts and aborts, serialize unstall 2017-07-20 19:57:14 +02:00
cinap_lenrek 40dc39bf7d usbxhci: better approach to unstalling endpoint and fixup td ring
instead of guessing where the controllers dequeue pointer went,
stop the endpoint and then explicitely set te dequeue pointer to
the next write td position. that way we do not need to fix the cycle
bit in the td's and dont need to rely on if the controller
advanced the dequeue pointer after a stall or not.

add ctx and slot back pointers to ring.
2017-07-17 21:10:25 +02:00
cinap_lenrek e7e18aac7f pc kernel: mkfile target usbehcipc.$O needs ../port/usb.h, add usbxhci.$O 2017-07-16 22:33:24 +02:00
cinap_lenrek 5e6f1b5769 usbxhci: commit work in progress xhci driver, no config yet 2017-07-16 22:29:29 +02:00
cinap_lenrek f58706f2cf zynq: simplify initcode stack setup (just do it in init0 when the stack is mapped) 2017-06-28 18:57:13 +02:00
cinap_lenrek befdd7d755 kernel: pass bootargs also in multiboot command line, retire the bootline mechanism to pass arguments to /boot/boot 2017-06-28 18:56:16 +02:00
aiju c4b02ff9e6 change icanhasvmx to report extra info only with -v 2017-06-27 09:29:37 +00:00
aiju dffbc1e45d vmx(1): I/O string instructions, incomplete support for IDE disks, misc fixes 2017-06-27 09:21:30 +00:00
aiju b5a6dc7849 vmx: fix build on non-x86 architectures (switch vlong) 2017-06-26 22:24:00 +00:00
aiju a9dd55c2ff libfis: fix inverted CHS bit 2017-06-25 23:23:56 +00:00
cinap_lenrek 63b8965b42 devvmx: add support for SG_STICKY segments 2017-06-25 22:57:47 +02:00
cinap_lenrek aab4e32ce0 pc, pc64: support for multiboot framebuffer, common bootargs and multiboot code 2017-06-25 22:22:58 +02:00
cinap_lenrek ffde0eda46 aux/vga: simplify vesa by adding rgbmask2chan() function 2017-06-25 22:14:52 +02:00
cinap_lenrek e2ca58cb3e merge 2017-06-22 20:48:14 +02:00
cinap_lenrek 81274ea0cf upas/fs: handle plumbing for new messages for concurrent index updates
when multiple upas/fs instances are running on the same index,
another upas/fs could have written the index, but we still want
to plumb the message.

so we introduce another cstate flag "Cnew" that is set when a
message that we havnt seen before by rdidx().
2017-06-22 20:46:04 +02:00
aiju 5883986336 vmx(1): fix translateflat on 64-bit 2017-06-22 07:31:35 +00:00
aiju cabfa4e916 devvmx: add support for extrap command to configure halting on exceptions 2017-06-21 22:19:14 +00:00
aiju 5c0bff4ba2 vmx(1): add support for (so far) crude 9p debugging fs; add gdb stub; clean up linux gdt code 2017-06-21 22:18:26 +00:00
aiju 37b9ab5a04 devvmx: error handling in clearmeminfo 2017-06-21 09:59:32 +00:00
aiju 779f6cb3b8 devvmx: remember segment names and free segments properly 2017-06-21 09:16:43 +00:00
cinap_lenrek 2723c9fc77 kernel: add support for sticky segments (cached, preallocated, never paged) 2017-06-20 21:53:45 +02:00
aiju fb165d6a54 vmx(1): obsdfb: check if curmode is nil 2017-06-20 18:21:47 +00:00
aiju da6e5efe39 vmx(1): round up frame buffer size to whole pages, ignore vga access in linear framebuffer, tell openbsd about framebuffer 2017-06-20 18:20:25 +00:00
aiju 164588e3e2 vmx(1): clean up region handling code; changes to support amd64 2017-06-20 15:15:53 +00:00
aiju becb89bae5 pc, pc64: adapt devvmx to work on pc64 2017-06-20 15:10:08 +00:00
cinap_lenrek 9fb2001658 merge 2017-06-19 20:58:44 +02:00
cinap_lenrek f109558b0c 8l, 6l: get .frame offset right undoing $-4 hack 2017-06-19 20:56:47 +02:00
aiju a83ce26b41 ktrace(1): handle amd64 stacktraces correctly 2017-06-19 17:22:41 +00:00
aiju f1cc75b547 vmx(1): i8042: translation changes reported keyboard id 2017-06-19 11:06:26 +00:00
aiju 2806a34ec0 vmx(1): linux kernel loading; PIT fixes to support linux; support VGA 0x3D4 word writes; support sending virtio ethernet packets to a file and prepending snoopy headers 2017-06-18 22:17:35 +00:00
aiju ed040d676a devvmx: fix CR0/CR4 readout; also don't exit on PAUSE instruction 2017-06-18 22:13:20 +00:00
cinap_lenrek 3fc29c6984 auth/factotum: complete p9any v.2 server protocol, but don't enable it. 2017-06-18 21:59:16 +02:00
cinap_lenrek a1c1e00973 upas/fs: work in progress...
get plumbing logic out of mailbox drivers, all handled from
syncmbox() now. avoid reentrancy in syncmbox().

store attachment filename in index, so that we can return it
in mail info without fetching headers. (used to return blank
filename when read out of the index messing up attachments in
nedmail).

maintain Message.size for attachments.

get rid of string "refs" and just have a simple string intern
table (only used for Message.type and Message.charset).

Message.replyto and Message.filename are owned by the index,
so don't free in delmessage().
2017-06-18 18:52:54 +02:00
aiju c3d372c3da vmx(1): fix '-v text' 2017-06-18 01:51:28 +00:00
aiju 98b1a59547 vmx(1): don't zero all memory, don't abandon uart on eof, sleep before transmitting uart data 2017-06-17 23:30:23 +00:00
aiju 21669c4c97 vmx(1): fix non-vesa framebuffer mode 2017-06-17 22:52:13 +00:00
aiju 52a3502927 vmx(1): support debug instructions 2017-06-17 22:50:03 +00:00
aiju 2bb65c40ab devvmx: support debug registers; simplify assembly 2017-06-17 22:38:16 +00:00
aiju cbcd9b1d71 vmx: VESA support and other misc I/O improvements 2017-06-17 19:47:04 +00:00
aiju 439ab7cb0e vmx: complete cmos 2017-06-15 15:59:02 +00:00
aiju bd12cb47ce vmx: implement virtio reset 2017-06-15 15:58:52 +00:00
aiju 2fe3b28f86 vmx: obsd: load kernel symbol table and allow setting root device 2017-06-15 15:58:25 +00:00
aiju 1c4fa7b000 vmx: fix pic 'specific eoi' bug, fix kbd bug, add fake IDE and floppy controller 2017-06-15 07:42:57 +00:00
aiju 7e2771e238 vmx: openbsd support: parse more options 2017-06-15 07:41:51 +00:00
aiju 5542062dc8 vmx: fix virtio bugs 2017-06-15 07:41:26 +00:00
aiju b7a778917d vmx: remove debugging print 2017-06-14 18:18:44 +00:00
aiju 4dad8ffb6e vmx: support EFER and PAT access 2017-06-14 17:42:25 +00:00
aiju 49261dcb40 vmx: slightly more vga support 2017-06-14 17:41:51 +00:00