libcdio  0.93
mmc_ll_cmds.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2010, 2012 Rocky Bernstein <rocky@gnu.org>
3 
4  This program is free software: you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation, either version 3 of the License, or
7  (at your option) any later version.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17 
35 #ifndef CDIO_MMC_LL_CMDS_H_
36 #define CDIO_MMC_LL_CMDS_H_
37 
38 #include <cdio/mmc.h>
39 
40 #ifdef __cplusplus
41 extern "C" {
42 #endif /* __cplusplus */
43 
68  mmc_get_configuration(const CdIo_t *p_cdio, void *p_buf,
69  unsigned int i_size,
70  unsigned int i_return_type,
71  unsigned int i_starting_feature_number,
72  unsigned int i_timeout_ms);
73 
85  uint8_t out_buf[2]);
86 
87 
106  driver_return_code_t mmc_mode_select_10(CdIo_t *p_cdio, /*out*/ void *p_buf,
107  unsigned int i_size, int page,
108  unsigned int i_timeout_ms);
122  driver_return_code_t mmc_mode_sense_10( CdIo_t *p_cdio, /*out*/ void *p_buf,
123  unsigned int i_size,
124  unsigned int i_page_code);
125 
135  driver_return_code_t mmc_mode_sense_6( CdIo_t *p_cdio, /*out*/ void *p_buf,
136  unsigned int i_size, int page);
137 
155  bool b_persistent, bool b_prevent,
156  unsigned int i_timeout_ms);
157 
262  mmc_read_cd(const CdIo_t *p_cdio, void *p_buf, lsn_t i_lsn,
263  int expected_sector_type, bool b_digital_audio_play,
264  bool b_sync, uint8_t header_codes, bool b_user_data,
265  bool b_edc_ecc, uint8_t c2_error_information,
266  uint8_t subchannel_selection, uint16_t i_blocksize,
267  uint32_t i_blocks);
268 
288  mmc_read_disc_information(const CdIo_t *p_cdio, /*out*/ void *p_buf,
289  unsigned int i_size,
291  unsigned int i_timeout_ms);
292 
319  driver_return_code_t mmc_set_speed( const CdIo_t *p_cdio,
320  int i_Kbs_speed,
321  unsigned int i_timeout_ms);
322 
343  driver_return_code_t mmc_start_stop_unit(const CdIo_t *p_cdio, bool b_eject,
344  bool b_immediate,
345  uint8_t power_condition,
346  unsigned int i_timeout_ms);
347 
360  unsigned int i_timeout_ms);
361 
362 
363 #ifndef DO_NOT_WANT_OLD_MMC_COMPATIBILITY
364 #define mmc_start_stop_media(c, e, i, p, t) \
365  mmc_start_stop_unit(c, e, i, p, t, 0)
366 #endif /*DO_NOT_WANT_PARANOIA_COMPATIBILITY*/
367 
368 #ifdef __cplusplus
369 }
370 #endif /* __cplusplus */
371 
372 #endif /* CDIO_MMC_HL_CMDS_H_ */
373 
374 /*
375  * Local variables:
376  * c-file-style: "gnu"
377  * tab-width: 8
378  * indent-tabs-mode: nil
379  * End:
380  */
driver_return_code_t
Definition: device.h:219
driver_return_code_t mmc_get_event_status(const CdIo_t *p_cdio, uint8_t out_buf[2])
driver_return_code_t mmc_start_stop_unit(const CdIo_t *p_cdio, bool b_eject, bool b_immediate, uint8_t power_condition, unsigned int i_timeout_ms)
int32_t lsn_t
Definition: types.h:265
driver_return_code_t mmc_read_cd(const CdIo_t *p_cdio, void *p_buf, lsn_t i_lsn, int expected_sector_type, bool b_digital_audio_play, bool b_sync, uint8_t header_codes, bool b_user_data, bool b_edc_ecc, uint8_t c2_error_information, uint8_t subchannel_selection, uint16_t i_blocksize, uint32_t i_blocks)
driver_return_code_t mmc_mode_select_10(CdIo_t *p_cdio, void *p_buf, unsigned int i_size, int page, unsigned int i_timeout_ms)
driver_return_code_t mmc_prevent_allow_medium_removal(const CdIo_t *p_cdio, bool b_persistent, bool b_prevent, unsigned int i_timeout_ms)
cdio_mmc_read_disc_info_datatype_t
Definition: mmc.h:330
driver_return_code_t mmc_mode_sense_10(CdIo_t *p_cdio, void *p_buf, unsigned int i_size, unsigned int i_page_code)
driver_return_code_t mmc_set_speed(const CdIo_t *p_cdio, int i_Kbs_speed, unsigned int i_timeout_ms)
driver_return_code_t mmc_mode_sense_6(CdIo_t *p_cdio, void *p_buf, unsigned int i_size, int page)
driver_return_code_t mmc_test_unit_ready(const CdIo_t *p_cdio, unsigned int i_timeout_ms)
struct _CdIo CdIo_t
Definition: cdio.h:47
driver_return_code_t mmc_read_disc_information(const CdIo_t *p_cdio, void *p_buf, unsigned int i_size, cdio_mmc_read_disc_info_datatype_t data_type, unsigned int i_timeout_ms)
Common definitions for MMC (Multimedia Commands). Applications include this for direct MMC access...
driver_return_code_t mmc_get_configuration(const CdIo_t *p_cdio, void *p_buf, unsigned int i_size, unsigned int i_return_type, unsigned int i_starting_feature_number, unsigned int i_timeout_ms)