summaryrefslogtreecommitdiffhomepage
path: root/src/kernel/KernelKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2026-01-07 09:51:21 +0100
committerAmlal El Mahrouss <amlal@nekernel.org>2026-01-07 09:51:21 +0100
commitbd1598a2b97277e527240f721df14911602cbf11 (patch)
tree49d894db69461698d13aa7c1ce79bd6ef9d444e1 /src/kernel/KernelKit
parent3ce1536af0519e5a7b0b34df4f85cd0cace51f8b (diff)
chore: kernel: Internal API fixes and improvements.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'src/kernel/KernelKit')
-rw-r--r--src/kernel/KernelKit/DeviceMgr.h12
-rw-r--r--src/kernel/KernelKit/FileMgr.h9
2 files changed, 12 insertions, 9 deletions
diff --git a/src/kernel/KernelKit/DeviceMgr.h b/src/kernel/KernelKit/DeviceMgr.h
index 12f24970..bea5908c 100644
--- a/src/kernel/KernelKit/DeviceMgr.h
+++ b/src/kernel/KernelKit/DeviceMgr.h
@@ -19,6 +19,7 @@
// Last Rev: Wed, May 27, 2025 6:22 PM
namespace Kernel {
+
template <typename T>
class IDevice;
@@ -33,8 +34,7 @@ class IDevice {
public:
IDevice() = default;
- explicit IDevice(void (*Out)(IDevice<T>*, T), void (*In)(IDevice<T>*, T)) : fOut(Out), fIn(In) {}
-
+ IDevice(void (*Out)(IDevice<T>*, T), void (*In)(IDevice<T>*, T)) : fOut(Out), fIn(In) {}
virtual ~IDevice() = default;
public:
@@ -43,8 +43,7 @@ class IDevice {
using ConstType = const T&;
using TypePtr = T*;
- IDevice& operator=(const IDevice<T>&) = default;
- IDevice(const IDevice<T>&) = default;
+ NE_COPY_DEFAULT(IDevice)
public:
virtual IDevice<T>& operator<<(T Data) {
@@ -118,8 +117,11 @@ enum {
kDeviceTypePCI,
kDeviceTypeVGA,
kDeviceTypeGPU,
- kDeviceTypeCount,
+ kDeviceTypeRandom,
+ kDeviceTypeIPC,
+ kDeviceTypeCount = kDeviceTypeIPC - kDeviceTypeIDE + 1,
};
+
} // namespace Kernel
#endif
diff --git a/src/kernel/KernelKit/FileMgr.h b/src/kernel/KernelKit/FileMgr.h
index 5e3f0a50..3b6cabe2 100644
--- a/src/kernel/KernelKit/FileMgr.h
+++ b/src/kernel/KernelKit/FileMgr.h
@@ -107,7 +107,7 @@ class IFilesystemMgr {
_Input SizeT sz) = 0;
public:
- virtual bool Seek(_Input NodePtr node, _Input SizeT off) = 0;
+ virtual bool Seek(_Input NodePtr node, _Input UIntPtr off) = 0;
public:
virtual SizeT Tell(_Input NodePtr node) = 0;
@@ -269,7 +269,7 @@ class FileStream final {
FileStream(const FileStream&);
public:
- ErrorOr<Int64> Write(SizeT offset, const VoidPtr data, SizeT len) {
+ ErrorOr<Int64> Write(UIntPtr offset, const VoidPtr data, SizeT len) {
if (this->fFileRestrict != kFileMgrRestrictReadWrite &&
this->fFileRestrict != kFileMgrRestrictReadWriteBinary &&
this->fFileRestrict != kFileMgrRestrictWrite &&
@@ -281,7 +281,8 @@ class FileStream final {
auto man = FSClass::GetMounted();
if (man) {
- man->Write(offset, fFile, data, len);
+ man->Seek(fFile, offset);
+ man->Write(fFile, data, 0, len);
return ErrorOr<Int64>(kErrorSuccess);
}
@@ -324,7 +325,7 @@ class FileStream final {
return nullptr;
}
- VoidPtr Read(SizeT offset, SizeT sz) {
+ VoidPtr Read(UIntPtr offset, SizeT sz) {
if (this->fFileRestrict != kFileMgrRestrictReadWrite &&
this->fFileRestrict != kFileMgrRestrictReadWriteBinary &&
this->fFileRestrict != kFileMgrRestrictRead &&