newfs_udf.h revision 1.6 1 /* $NetBSD: newfs_udf.h,v 1.6 2019/06/30 11:38:16 sevan Exp $ */
2
3 /*
4 * Copyright (c) 2006, 2008, 2013 Reinoud Zandijk
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 *
27 */
28
29 #ifndef _FS_UDF_NEWFS_UDF_H_
30 #define _FS_UDF_NEWFS_UDF_H_
31
32 /* general settings */
33 #define UDF_512_TRACK 0 /* NOT recommended */
34 #define UDF_META_PERC 20 /* picked */
35
36 /* Identifying myself */
37 #define APP_VERSION_MAIN 0
38 #define APP_VERSION_SUB 5
39 #define IMPL_NAME "*NetBSD userland UDF"
40
41
42 /* global variables describing disc and format requests */
43 extern int fd; /* device: file descriptor */
44 extern char *dev; /* device: name */
45 extern struct mmc_discinfo mmc_discinfo;/* device: disc info */
46
47 extern char *format_str; /* format: string representation */
48 extern int format_flags; /* format: attribute flags */
49 extern int media_accesstype; /* derived from current mmc cap */
50 extern int check_surface; /* for rewritables */
51
52 extern int wrtrack_skew;
53 extern int meta_perc;
54 extern float meta_fract;
55
56
57 /* shared structure between udf_create.c users */
58 struct udf_create_context context;
59 struct udf_disclayout layout;
60
61 /* prototypes */
62 int udf_write_sector(void *sector, uint64_t location);
63 int udf_update_trackinfo(struct mmc_discinfo *di, struct mmc_trackinfo *ti);
64
65 /* tmp */
66 int writeout_write_queue(void);
67 int udf_surface_check(void);
68
69 #endif /* _FS_UDF_UDF_WRITE_H_ */
70