summaryrefslogtreecommitdiff
path: root/sys/src/9/zynq/main.c
AgeCommit message (Collapse)Author
2016-01-05kernel: change active.machs from bitmap to char array to support up to 64 ↵cinap_lenrek
cpus on pc64
2015-11-30kernel: cleanup exit()/shutdown()/reboot() codecinap_lenrek
introduce cpushutdown() function that does the common operation of initiating shutdown, returning once all cpu's got the message and are about to shutdown. this avoids duplicated code which isnt really machine specific. automatic reboot on panic only when *debug= is not set and the machine is a cpu server or has no display, otherwise just hang.
2015-07-07all kernels: declare _tas() to prevent pulling in libc version (for libmemdraw)cinap_lenrek
2015-06-11zynq: increase kernel memory for graphicscinap_lenrek
2015-04-13zynq: invalidate cache before booting cpu1cinap_lenrek
sometimes, machine would crash on boot because of data cache inconsistency. invalidating the cache before booting cpu1 fixes it.
2015-03-06zynq: do mpinit() early so cpu1 debug prints do not intermixcinap_lenrek
2015-02-14zynq: do fixed mapping for ocm memory on boot and make kaddr() and paddr() ↵cinap_lenrek
work with it map the whole ocm memory on boot so we can translate physical to virtual addresses and back for uncached memory using KADDR() and PADDR(). replace ualloc() with ucalloc() returning virtual address. physical address can be acquired with PADDR() now. as ocm is now always mapped, use KADDR() instead of tmpmap() for mp bootstrap.
2015-02-07kernel: reduce Page structure size by changing Page.cachectl[]cinap_lenrek
there are no kernels currently that do page coloring, so the only use of cachectl[] is flushing the icache (on arm and ppc). on pc64, cachectl consumes 32 bytes in each page resulting in over 200 megabytes of overhead for 32gb of ram with 4K pages. this change removes cachectl[] and adds txtflush ulong that is set to ~0 by pio() to instruct putmmu() to flush the icache.
2014-12-30zynq: enable prefetch hints and drop-prefetchcinap_lenrek
2014-12-29zymq: lilu dallas, multicorecinap_lenrek
implement multiprocessor support.
2014-12-24zynq: active.machs = 1cinap_lenrek
2014-12-24zynq: set mainmem->maxsize so kernel malloc() wont fail after 4MBcinap_lenrek
2014-12-24added zynq kernelaiju