aboutsummaryrefslogtreecommitdiff
path: root/kernel/include
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/include')
-rw-r--r--kernel/include/kernel/devices/block_device_utils.hpp17
-rw-r--r--kernel/include/kernel/filesystem/device_inode.hpp5
2 files changed, 17 insertions, 5 deletions
diff --git a/kernel/include/kernel/devices/block_device_utils.hpp b/kernel/include/kernel/devices/block_device_utils.hpp
new file mode 100644
index 0000000..5ec69d1
--- /dev/null
+++ b/kernel/include/kernel/devices/block_device_utils.hpp
@@ -0,0 +1,17 @@
+#ifndef TEACH_OS_KERNEL_DEVICES_BLOCK_DEVICE_UTILS_HPP
+#define TEACH_OS_KERNEL_DEVICES_BLOCK_DEVICE_UTILS_HPP
+
+#include "kernel/devices/device.hpp"
+
+#include <kstd/memory>
+
+#include <cstddef>
+
+namespace devices::block_device_utils
+{
+ auto read(kstd::shared_ptr<devices::device> const & device, void * buffer, size_t offset, size_t size) -> size_t;
+ auto write(kstd::shared_ptr<devices::device> const & device, void const * buffer, size_t offset, size_t size)
+ -> size_t;
+} // namespace devices::block_device_utils
+
+#endif \ No newline at end of file
diff --git a/kernel/include/kernel/filesystem/device_inode.hpp b/kernel/include/kernel/filesystem/device_inode.hpp
index 1cf08d4..0477969 100644
--- a/kernel/include/kernel/filesystem/device_inode.hpp
+++ b/kernel/include/kernel/filesystem/device_inode.hpp
@@ -1,7 +1,6 @@
#ifndef TEACH_OS_KERNEL_FILESYSTEM_DEVICE_INODE_HPP
#define TEACH_OS_KERNEL_FILESYSTEM_DEVICE_INODE_HPP
-#include "kernel/devices/block_device.hpp"
#include "kernel/devices/device.hpp"
#include "kernel/filesystem/inode.hpp"
@@ -21,10 +20,6 @@ namespace filesystem
[[nodiscard]] auto device() const -> kstd::shared_ptr<devices::device> const &;
private:
- using block_op = void (*)(size_t idx, size_t off, size_t len, size_t done, devices::block_device * device,
- std::byte * scratch, void * buffer);
- auto process_blocks(size_t offset, size_t size, void * buffer, block_op op) const -> size_t;
-
kstd::shared_ptr<devices::device> m_device;
};
} // namespace filesystem