From d1ecc92fc71cc4072a76b38ca348e3686e3013ac Mon Sep 17 00:00:00 2001 From: Jinhyung Choi Date: Fri, 7 Aug 2015 22:08:24 +0900 Subject: [PATCH] nfc: changed pthread_mutex to qemu_mutex Change-Id: If84dad8e9c092983cc14fc2c181e1d2bcee87d68 Signed-off-by: Jinhyung Choi --- tizen/src/hw/virtio/maru_virtio_nfc.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/tizen/src/hw/virtio/maru_virtio_nfc.c b/tizen/src/hw/virtio/maru_virtio_nfc.c index e7a68b7..76aa9da 100644 --- a/tizen/src/hw/virtio/maru_virtio_nfc.c +++ b/tizen/src/hw/virtio/maru_virtio_nfc.c @@ -65,7 +65,7 @@ typedef struct NFCBuf { static char nfc_data [NFC_MAX_BUF_SIZE] = {'0',}; -static pthread_mutex_t recv_buf_mutex = PTHREAD_MUTEX_INITIALIZER; +static QemuMutex recv_buf_mutex; static void send_nfc_data_to_ecs(const char* data) { @@ -133,11 +133,11 @@ bool send_to_nfc(unsigned char id, unsigned char type, const char* data, const u _msg->info.client_id = id; _msg->info.client_type = type; - pthread_mutex_lock(&recv_buf_mutex); + qemu_mutex_lock(&recv_buf_mutex); strcpy(nfc_data, data); QTAILQ_INSERT_TAIL(&nfc_recv_msg_queue, _msg, next); - pthread_mutex_unlock(&recv_buf_mutex); + qemu_mutex_unlock(&recv_buf_mutex); qemu_bh_schedule(vio_nfc->bh); @@ -159,7 +159,7 @@ static void flush_nfc_recv_queue(void) } - pthread_mutex_lock(&recv_buf_mutex); + qemu_mutex_lock(&recv_buf_mutex); while (!QTAILQ_EMPTY(&nfc_recv_msg_queue)) { @@ -191,7 +191,7 @@ static void flush_nfc_recv_queue(void) free(msginfo); } - pthread_mutex_unlock(&recv_buf_mutex); + qemu_mutex_unlock(&recv_buf_mutex); } @@ -261,6 +261,8 @@ static void virtio_nfc_realize(DeviceState* dev, Error **errp) vio_nfc->svq = virtio_add_queue(&vio_nfc->vdev, 256, virtio_nfc_send); vio_nfc->bh = qemu_bh_new(maru_nfc_bh, vio_nfc); + + qemu_mutex_init(&recv_buf_mutex); } static void virtio_nfc_unrealize(DeviceState* dev, Error **errp) @@ -269,6 +271,8 @@ static void virtio_nfc_unrealize(DeviceState* dev, Error **errp) INFO("destroy nfc device\n"); + qemu_mutex_destroy(&recv_buf_mutex); + if (vio_nfc->bh) { qemu_bh_delete(vio_nfc->bh); } -- 2.7.4