Markus Fröschle
42729fa2ea
PCI memory access working
2016-10-15 21:26:49 +00:00
Markus Fröschle
bc4a45aba4
did some beautifying on the code
2016-07-31 19:13:16 +00:00
Markus Fröschle
5edc91aa9f
general overhaul. Prepare for smaller pagesize
2016-04-17 19:37:19 +00:00
Markus Fröschle
627aa0c2c4
modify 1st page to cache mode PASSTHROUGH
2016-04-02 18:56:20 +00:00
Markus Fröschle
73e0703a13
modified PCI configuration, RADEON card does not configure correctly
...
(MMIO space not accessible)
2015-02-22 19:46:16 +00:00
Markus Fröschle
13209134c3
added setjmp()/longjmp() (used by NetBSD x86 emulator)
...
modified x86pcibios.c to work with NetBSD x86 emulator
2015-02-17 14:43:11 +00:00
Markus Fröschle
e1fce476c0
made m548xLITE board run again
2015-01-24 10:14:39 +00:00
Markus Fröschle
400f28ef2f
reformatted
2015-01-18 21:05:05 +00:00
Markus Fröschle
cc4263ef02
refactored struct naming
2015-01-16 07:35:35 +00:00
Markus Fröschle
d860191121
replaced DMA API routines by fresh download with originals
...
moved more interrupt handlers to generalized handler
cleaned up lowlevel interrupt handling
fixed wrong assignment of interrupt masks
reformatted
2015-01-11 10:27:36 +00:00
Markus Fröschle
ab7371532f
implemented hook_interrupt() in PCI code
...
enabled PCI interrupts
ohci seems to damage something in PCI config -> PCI device enumeration
does not top with latest device
networking in EmuTOS lost (probably a result of PCI interrupt
implementation)
2014-10-05 17:50:15 +00:00
Markus Fröschle
b3d152b705
removed debug output
2014-09-30 19:32:26 +00:00
Markus Fröschle
b857519ea5
fixed wrong stack address offset for "magic number"
2014-09-30 19:29:46 +00:00
Markus Fröschle
ab31128d42
added mmu_report_pagesize()
2014-09-30 15:42:32 +00:00
Markus Fröschle
317d2a3a65
Fixed ACRs for running BaS in flash (hang on MMU enable)
2014-09-29 19:08:38 +00:00
Markus Fröschle
8e2fe53fab
first (untested) version of the modified MMU handling and API
2014-09-29 12:32:19 +00:00
Markus Fröschle
8949a8456e
added function to flush only a portion of the caches
2014-09-24 16:02:20 +00:00
Markus Fröschle
02ab73f2cc
fixed a few MMU quirks
2014-09-17 05:28:16 +00:00
Markus Fröschle
01141f4251
check for supervisor protection fault and issue a bus error
2014-09-07 19:29:11 +00:00
Markus Fröschle
85798de684
rewritten mmu_map_page() and put into production
2014-09-07 19:01:19 +00:00
Markus Fröschle
baa68901b8
moved more functionality from exceptions.S to interrupts.c. Added debug
...
printouts to MMU page fault handler
2014-09-07 10:57:58 +00:00
Markus Fröschle
5fae525781
disabled (unnecessary?) cache flush
2014-09-06 18:37:13 +00:00
Markus Fröschle
5c0ec291d8
fixed dbg() printout macro
2014-08-10 18:22:59 +00:00
David Gálvez
77d134150a
Make PCI memory space uncachable
2014-07-10 16:46:21 +00:00
Markus Fröschle
bc478f0e0a
reverted to last released to make it work again
2014-06-21 06:21:41 +00:00
Markus Fröschle
be773a7d0c
removed (now wrong) comment
2014-06-21 05:50:43 +00:00
Markus Fröschle
2bef4a39a5
completed locked TLB list
2014-06-20 20:24:37 +00:00
Markus Fröschle
291d3ad5bf
added locked TLB entries
2014-06-20 19:50:49 +00:00
Markus Fröschle
4a6987e3bb
started to revert to previous functionality
2014-06-20 18:35:08 +00:00
David Gálvez
4d40bd775a
make PCI memory non-cacheable
2014-05-25 19:13:45 +00:00
David Gálvez
d98727a182
add missing parameter initialization
2014-05-25 17:00:19 +00:00
Markus Fröschle
b0fb7b8df3
fixed wrong MMU mapping of emulated Falcon video memory (phys and virt
...
where the wrong way round)
2014-05-11 06:57:09 +00:00
Markus Fröschle
fb9c4aaa1d
modified project to support Qt Creator inferior debugging through BDM.
2014-05-11 06:40:48 +00:00
Markus Fröschle
2f311aedbf
modified dbg() macro
...
corrected irq6 handler
reimplemented MFP interrupt LED blinker in C
2014-05-10 13:21:11 +00:00
Markus Fröschle
fe5b7d466d
translated more of the assembler code into C
2014-02-02 21:35:46 +00:00
Markus Fröschle
1fb6c756ae
modified to throw errors if an unknown machine type is detected
2014-01-28 15:49:05 +00:00
Markus Fröschle
8a1da417e7
modified ACR settings
2014-01-28 14:11:08 +00:00
Markus Fröschle
6a6e7cf84e
fixed: compare virtual address instead of physical in lookup_mapping()
2014-01-21 12:43:32 +00:00
Markus Fröschle
430f03a8ed
fixed bug in determining if access error hit in TLB (checked bit 0 instead of 1).
2014-01-20 14:23:55 +00:00
Markus Fröschle
d3fb521ad1
modified MMU mapping table to use symbolic constants from include file
2014-01-19 19:26:52 +00:00
Markus Fröschle
bf8cea26ab
simplified MMU code. Still hangs somewhere in EmuTOS
2014-01-19 18:27:05 +00:00
Markus Fröschle
0f5942436a
removed locked MMU pages
2014-01-18 20:59:42 +00:00
Markus Fröschle
8544307830
removed inlining in wait.c, added (simple) map-based MMU handling
2014-01-18 14:03:25 +00:00
Markus Fröschle
386a921f84
modified to map memory dynamically based on a static memory map
2014-01-18 08:04:44 +00:00
Markus Fröschle
58418f2436
moved ACR register handling macros to include file
2014-01-17 06:45:33 +00:00
Markus Fröschle
8025af85dd
modified access_error to do all MMU mappings dynamically
2014-01-16 20:42:04 +00:00
Markus Fröschle
1c316ec11b
extended mmu_map_page() by size and flags args
2014-01-16 16:29:29 +00:00
Markus Fröschle
3779d1cb2e
modified ACRs to cover complete SDRAM
2014-01-16 16:18:43 +00:00
Markus Fröschle
c9c76a4757
test using ACR0 & ACR2 to provide supervisor stack access
2014-01-15 16:03:54 +00:00
Markus Fröschle
4112590363
moved page alignment responsibility to caller
2014-01-14 20:28:13 +00:00