[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 05/13] cuda.c: fix CUDA_PACKET response packet fo
From: |
Mark Cave-Ayland |
Subject: |
[Qemu-devel] [PATCH v2 05/13] cuda.c: fix CUDA_PACKET response packet format |
Date: |
Wed, 11 Nov 2015 22:49:43 +0000 |
According to comments in MOL, the response to a CUDA_PACKET should be one of
the following:
Reply: (CUDA_PACKET, status, cmd)
Error: (ERROR_PACKET, status, CUDA_PACKET, cmd)
Update cuda_receive_packet() accordingly to reflect this in order to make
MacOS 9 happy.
Signed-off-by: Mark Cave-Ayland <address@hidden>
---
hw/misc/macio/cuda.c | 24 +++++-------------------
1 file changed, 5 insertions(+), 19 deletions(-)
diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c
index bfcdcae..89ec51e 100644
--- a/hw/misc/macio/cuda.c
+++ b/hw/misc/macio/cuda.c
@@ -480,7 +480,7 @@ static void cuda_adb_poll(void *opaque)
static void cuda_receive_packet(CUDAState *s,
const uint8_t *data, int len)
{
- uint8_t obuf[16];
+ uint8_t obuf[16] = { CUDA_PACKET, 0, data[0] };
int autopoll;
uint32_t ti;
@@ -497,23 +497,15 @@ static void cuda_receive_packet(CUDAState *s,
timer_del(s->adb_poll_timer);
}
}
- obuf[0] = CUDA_PACKET;
- obuf[1] = data[1];
- cuda_send_packet_to_host(s, obuf, 2);
+ cuda_send_packet_to_host(s, obuf, 3);
break;
case CUDA_SET_TIME:
ti = (((uint32_t)data[1]) << 24) + (((uint32_t)data[2]) << 16) +
(((uint32_t)data[3]) << 8) + data[4];
s->tick_offset = ti - (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) /
get_ticks_per_sec());
- obuf[0] = CUDA_PACKET;
- obuf[1] = 0;
- obuf[2] = 0;
cuda_send_packet_to_host(s, obuf, 3);
break;
case CUDA_GET_TIME:
ti = s->tick_offset + (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) /
get_ticks_per_sec());
- obuf[0] = CUDA_PACKET;
- obuf[1] = 0;
- obuf[2] = 0;
obuf[3] = ti >> 24;
obuf[4] = ti >> 16;
obuf[5] = ti >> 8;
@@ -524,20 +516,14 @@ static void cuda_receive_packet(CUDAState *s,
case CUDA_SET_DEVICE_LIST:
case CUDA_SET_AUTO_RATE:
case CUDA_SET_POWER_MESSAGES:
- obuf[0] = CUDA_PACKET;
- obuf[1] = 0;
- cuda_send_packet_to_host(s, obuf, 2);
+ cuda_send_packet_to_host(s, obuf, 3);
break;
case CUDA_POWERDOWN:
- obuf[0] = CUDA_PACKET;
- obuf[1] = 0;
- cuda_send_packet_to_host(s, obuf, 2);
+ cuda_send_packet_to_host(s, obuf, 3);
qemu_system_shutdown_request();
break;
case CUDA_RESET_SYSTEM:
- obuf[0] = CUDA_PACKET;
- obuf[1] = 0;
- cuda_send_packet_to_host(s, obuf, 2);
+ cuda_send_packet_to_host(s, obuf, 3);
qemu_system_reset_request();
break;
default:
--
1.7.10.4
- [Qemu-devel] [PATCH v2 00/13] Mac OS 9 compatibility improvements (upstream rework), Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 01/13] PPC: Allow Rc bit to be set on mtspr, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 02/13] PPC: Fix lswx bounds checks, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 03/13] PPC: mac99: Always add USB controller, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 04/13] cuda.c: fix CUDA ADB error packet format, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 05/13] cuda.c: fix CUDA_PACKET response packet format,
Mark Cave-Ayland <=
- [Qemu-devel] [PATCH v2 06/13] cuda.c: implement simple CUDA_GET_6805_ADDR command, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 07/13] cuda.c: implement dummy IIC access commands, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 08/13] cuda.c: fix CUDA SR interrupt clearing, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 09/13] cuda.c: add defines for CUDA registers, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 13/13] cuda.c: add delay to setting of SR_INT bit, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 10/13] cuda.c: refactor get_tb() so that the time can be passed in, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 11/13] cuda.c: rename get_counter() state variable from s to ti for consistency, Mark Cave-Ayland, 2015/11/11
- [Qemu-devel] [PATCH v2 12/13] cuda.c: fix T2 timer and enable its interrupt, Mark Cave-Ayland, 2015/11/11
- Re: [Qemu-devel] [PATCH v2 00/13] Mac OS 9 compatibility improvements (upstream rework), David Gibson, 2015/11/11