summaryrefslogtreecommitdiff
path: root/usr/src/cmd/cdrw/device.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/cmd/cdrw/device.c')
-rw-r--r--usr/src/cmd/cdrw/device.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/usr/src/cmd/cdrw/device.c b/usr/src/cmd/cdrw/device.c
index 208170f057..f1a582b08f 100644
--- a/usr/src/cmd/cdrw/device.c
+++ b/usr/src/cmd/cdrw/device.c
@@ -864,3 +864,35 @@ get_media_type(int fd)
}
}
}
+
+/* Translate a transfer rate (eg, KB/s) into a Speed (eg, "2X") */
+uint_t
+cdrw_bandwidth_to_x(uint_t rate)
+{
+ switch (device_type) {
+ case DVD_PLUS_W:
+ case DVD_MINUS:
+ case DVD_PLUS:
+ return (DVD_RATE_TO_X(rate));
+
+ default:
+ case CD_RW:
+ return (CD_RATE_TO_X(rate));
+ }
+}
+
+/* Translate a Speed (eg, "2X") into a transfer rate (eg, KB/s) */
+uint_t
+cdrw_x_to_bandwidth(uint_t x)
+{
+ switch (device_type) {
+ case DVD_PLUS_W:
+ case DVD_MINUS:
+ case DVD_PLUS:
+ return (DVD_X_TO_RATE(x));
+
+ default:
+ case CD_RW:
+ return (CD_X_TO_RATE(x));
+ }
+}