mirror of
https://github.com/apache/nuttx.git
synced 2026-05-29 04:19:37 +08:00
drivers: Fix goldfish events x64 unresponsive interrupt issue
Signed-off-by: liuhongchao <liuhongchao@xiaomi.com>
This commit is contained in:
@@ -244,6 +244,8 @@ static void goldfish_events_worker(FAR void *arg)
|
|||||||
FAR struct goldfish_events_s *events = (FAR struct goldfish_events_s *)arg;
|
FAR struct goldfish_events_s *events = (FAR struct goldfish_events_s *)arg;
|
||||||
struct goldfish_input_event evt;
|
struct goldfish_input_event evt;
|
||||||
|
|
||||||
|
up_enable_irq(events->irq);
|
||||||
|
|
||||||
evt.type = getreg32(events->base + GOLDFISH_EVENTS_READ);
|
evt.type = getreg32(events->base + GOLDFISH_EVENTS_READ);
|
||||||
putreg32(GOLDFISH_EVENTS_PAGE_ABSDATA,
|
putreg32(GOLDFISH_EVENTS_PAGE_ABSDATA,
|
||||||
events->base + GOLDFISH_EVENTS_SET_PAGE);
|
events->base + GOLDFISH_EVENTS_SET_PAGE);
|
||||||
@@ -259,18 +261,15 @@ static void goldfish_events_worker(FAR void *arg)
|
|||||||
|
|
||||||
if (goldfish_events_send_touch_event(events, &evt))
|
if (goldfish_events_send_touch_event(events, &evt))
|
||||||
{
|
{
|
||||||
goto out;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (goldfish_events_send_mouse_event(events, &evt))
|
if (goldfish_events_send_mouse_event(events, &evt))
|
||||||
{
|
{
|
||||||
goto out;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
goldfish_events_send_keyboard_event(events, &evt);
|
goldfish_events_send_keyboard_event(events, &evt);
|
||||||
|
|
||||||
out:
|
|
||||||
up_enable_irq(events->irq);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
|||||||
Reference in New Issue
Block a user