serenity/Kernel/API/DeviceEvent.h
Liav A b1ca39411b Kernel/Devices: Introduce the Device Control Device
This device will assist userspace to manage hotplug events.
A userspace application reads a DeviceEvent entry until the return value
is zero which indicates no events that are queued and waiting for
processing.
Trying to read with a buffer smaller than sizeof(DeviceEvent) results in
EOVERFLOW.
For now, there's no ioctl mechanism for this device but in the future an
acknowledgement mechanism can be implemented via ioctl(2) interface.
2022-01-23 00:38:02 +00:00

24 lines
389 B
C

/*
* Copyright (c) 2021, Liav A. <liavalb@hotmail.co.il>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <AK/Types.h>
struct DeviceEvent {
int state;
int is_block_device;
unsigned major_number;
unsigned minor_number;
enum State {
Removed = 0x01,
Inserted = 0x02,
Recovered = 0x03,
FatalError = 0x04,
};
};