>From 44a774333e81640fd182d17b5485529ec141b85a Mon Sep 17 00:00:00 2001
From: Ronnie Sahlberg <[EMAIL PROTECTED]>
Date: Fri, 2 May 2008 22:38:54 +1000
Subject: [PATCH 5/7] modepage for write parameters

Signed-off-by: Ronnie Sahlberg <[EMAIL PROTECTED]>
---
 usr/mmc.c |   29 ++++++++++++++++++++++++++---
 1 files changed, 26 insertions(+), 3 deletions(-)

diff --git a/usr/mmc.c b/usr/mmc.c
index ce66c7c..d075b23 100644
--- a/usr/mmc.c
+++ b/usr/mmc.c
@@ -119,6 +119,7 @@ static int mmc_rw(int host_no, struct scsi_cmd *cmd)
                set_cmd_mmapio(cmd);
                return SAM_STAT_GOOD;
        }
+
        return 0;
 }

@@ -1454,6 +1455,11 @@ static int mmc_synchronize_cache(int host_no,
struct scsi_cmd *cmd)
                return SAM_STAT_CHECK_CONDITION;
        }

+       if (mmc->current_profile == PROFILE_DVD_PLUS_R) {
+               /* once we close the track it becomes a DVD_ROM */
+               mmc->current_profile = PROFILE_DVD_ROM;
+       }
+
        return SAM_STAT_GOOD;
 }

@@ -2146,6 +2152,21 @@ static int mmc_read_dvd_structure(int host_no,
struct scsi_cmd *cmd)
        return SAM_STAT_CHECK_CONDITION;
 }

+static int mmc_reserve_track(int host_no, struct scsi_cmd *cmd)
+{
+       return SAM_STAT_GOOD;
+}
+
+static int mmc_mode_select(int host_no, struct scsi_cmd *cmd)
+{
+       return SAM_STAT_GOOD;
+}
+
+static int mmc_set_cd_speed(int host_no, struct scsi_cmd *cmd)
+{
+       return SAM_STAT_GOOD;
+}
+
 static int mmc_mode_sense(int host_no, struct scsi_cmd *cmd)
 {
        uint8_t *scb = cmd->scb;
@@ -2214,6 +2235,8 @@ static int mmc_lu_init(struct scsi_lu *lu)
        add_mode_page(lu, "0x1d:0:10:0:0:7:0:0:2:0:2:0:20");
        /* MM capabilities */
        add_mode_page(lu,
"0x2a:0:0x3e:0x3f:0x37:0xf3:0xf3:0x29:0x23:0x10:0x8a:0x01:0x00:0x08:0x00:0x10:0x8a:0x00:0x00:0x10:0x8a:0x10:0x8a:0x00:0x01:0x00:0x00:0x00:0x00:0x10:0x8a:0x00:0x05:0x00:0x00:0x10:0x8a:0x00:0x00:0x0b:0x06:0x00:0x00:0x08:0x45:0x00:0x00:0x05:0x83:0x00:0x00:0x02:0xc2:0x00:0x00:0x00:0x00:0x00:0x00:0x00:0x00:0x00:0x00:0x00:0x00");
+       /* Write parameters */
+       add_mode_page(lu,
"0x05:0:0x32:0x62:5:8:0x10:0:0:0:0:0:0:0:0x10:0:0x96:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0");

        return 0;
 }
@@ -2355,9 +2378,9 @@ static struct device_type_template mmc_template = {
                {spc_illegal_op,},
                {mmc_read_disc_information,},
                {mmc_read_track_information,},
+               {mmc_reserve_track,},
                {spc_illegal_op,},
-               {spc_illegal_op,},
-               {spc_illegal_op,},
+               {mmc_mode_select,},
                {spc_illegal_op,},
                {spc_illegal_op,},

@@ -2404,7 +2427,7 @@ static struct device_type_template mmc_template = {
                {spc_illegal_op,},
                {spc_illegal_op,},
                {spc_illegal_op,},
-               {spc_illegal_op,},
+               {mmc_set_cd_speed,},
                {spc_illegal_op,},
                {spc_illegal_op,},
                {spc_illegal_op,},
-- 
1.5.5
_______________________________________________
Stgt-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/stgt-devel

Reply via email to