mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
bitkeeper revision 1.1159.241.1 (4202bb72zRYg-QWeXrkKfXwmuL5I3A)
Add checking ISA DMA flag in cpu_loop. Also need to do bios_init manually for now. With this change, floppy is functional. Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com> Signed-off-by: Arun Sharma <arun.sharma@intel.com> Signed-off-by: ian.pratt@cl.cam.ac.uk
This commit is contained in:
1 parent
0e0c5e7aef
commit
d78b499535
3 files changed
+14
No files matched your search
@@ -213,6 +213,10 @@ bx_cpu_c::cpu_loop(int max_instr_count)
|
||||
#endif
|
||||
interrupt(vector);
|
||||
}
|
||||
/* we check DMA after interrupt check*/
|
||||
while(BX_HRQ){
|
||||
DEV_dma_raise_hlda();
|
||||
}
|
||||
|
||||
if (send_event) {
|
||||
int ret;
|
||||
|
||||
@@ -182,6 +182,14 @@ bx_dma_c::init(void)
|
||||
}
|
||||
BX_DMA_THIS s[1].chan[0].used = 1; // cascade channel in use
|
||||
BX_INFO(("channel 4 used by cascade"));
|
||||
bios_init();
|
||||
}
|
||||
|
||||
/* Remove it when guest fw ready*/
|
||||
void
|
||||
bx_dma_c::bios_init(void){
|
||||
BX_DMA_THIS s[1].mask[0] = 0; // unmask cascade channel
|
||||
BX_DMA_THIS s[1].chan[0].mode.mode_type = 3; // cascade mode for channel 4
|
||||
}
|
||||
|
||||
void
|
||||
@@ -189,6 +197,7 @@ bx_dma_c::reset(unsigned type)
|
||||
{
|
||||
reset_controller(0);
|
||||
reset_controller(1);
|
||||
bios_init();
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -46,6 +46,7 @@ public:
|
||||
~bx_dma_c(void);
|
||||
|
||||
virtual void init(void);
|
||||
virtual void bios_init(void);
|
||||
virtual void reset(unsigned type);
|
||||
virtual void raise_HLDA(void);
|
||||
virtual void set_DRQ(unsigned channel, bx_bool val);
|
||||
|
||||