summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/src/Storage/ATADeviceInterface.cc
diff options
context:
space:
mode:
Diffstat (limited to 'dev/kernel/src/Storage/ATADeviceInterface.cc')
-rw-r--r--dev/kernel/src/Storage/ATADeviceInterface.cc19
1 files changed, 11 insertions, 8 deletions
diff --git a/dev/kernel/src/Storage/ATADeviceInterface.cc b/dev/kernel/src/Storage/ATADeviceInterface.cc
index 615e82db..118a6d0a 100644
--- a/dev/kernel/src/Storage/ATADeviceInterface.cc
+++ b/dev/kernel/src/Storage/ATADeviceInterface.cc
@@ -36,8 +36,8 @@ const Char* ATADeviceInterface::Name() const
}
/// @brief Output operator.
-/// @param Data
-/// @return
+/// @param Data the disk mountpoint.
+/// @return the class itself after operation.
ATADeviceInterface& ATADeviceInterface::operator<<(MountpointInterface* Data)
{
if (!Data)
@@ -46,12 +46,13 @@ ATADeviceInterface& ATADeviceInterface::operator<<(MountpointInterface* Data)
for (SizeT driveCount = 0; driveCount < kDriveMaxCount; ++driveCount)
{
auto interface = Data->GetAddressOf(driveCount);
- if ((interface) && rt_string_cmp((interface)->fDriveKind(), "ATA-", 5) == 0)
+
+ if ((interface) && rt_string_cmp((interface)->fProtocol(), "ATA-", rt_string_len("ATA-")) == 0)
{
continue;
}
else if ((interface) &&
- rt_string_cmp((interface)->fDriveKind(), "ATA-", 5) != 0)
+ rt_string_cmp((interface)->fProtocol(), "ATA-", rt_string_len("ATA-")) != 0)
{
return *this;
}
@@ -62,8 +63,8 @@ ATADeviceInterface& ATADeviceInterface::operator<<(MountpointInterface* Data)
}
/// @brief Input operator.
-/// @param Data
-/// @return
+/// @param Data the disk mountpoint.
+/// @return the class itself after operation.
ATADeviceInterface& ATADeviceInterface::operator>>(MountpointInterface* Data)
{
if (!Data)
@@ -72,12 +73,14 @@ ATADeviceInterface& ATADeviceInterface::operator>>(MountpointInterface* Data)
for (SizeT driveCount = 0; driveCount < kDriveMaxCount; ++driveCount)
{
auto interface = Data->GetAddressOf(driveCount);
- if ((interface) && rt_string_cmp((interface)->fDriveKind(), "ATA-", 5) == 0)
+
+ // really check if it's ATA.
+ if ((interface) && rt_string_cmp((interface)->fProtocol(), "ATA-", rt_string_len("ATA-")) == 0)
{
continue;
}
else if ((interface) &&
- rt_string_cmp((interface)->fDriveKind(), "ATA-", 5) != 0)
+ rt_string_cmp((interface)->fProtocol(), "ATA-", rt_string_len("ATA-")) != 0)
{
return *this;
}