diff options
| author | marcel.braun <marcel.braun@ost.ch> | 2026-03-29 20:49:03 +0200 |
|---|---|---|
| committer | marcel.braun <marcel.braun@ost.ch> | 2026-03-29 20:49:03 +0200 |
| commit | 9c602f2cf8fd87f55adc31c085e469e72b7cbbfa (patch) | |
| tree | e867cc99df6e2530b0c4a0ec5723c8fe607ab442 /kernel/include | |
| parent | 3888a9f90301003780fc02ce317fde29e1c20c1f (diff) | |
| download | teachos-9c602f2cf8fd87f55adc31c085e469e72b7cbbfa.tar.xz teachos-9c602f2cf8fd87f55adc31c085e469e72b7cbbfa.zip | |
Move block device offset and size-to-blocks calculation to block_device_utils
Diffstat (limited to 'kernel/include')
| -rw-r--r-- | kernel/include/kernel/devices/block_device_utils.hpp | 17 | ||||
| -rw-r--r-- | kernel/include/kernel/filesystem/device_inode.hpp | 5 |
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 |
