summaryrefslogtreecommitdiff
path: root/ubi-utils/inc/libubi.h
diff options
context:
space:
mode:
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2009-03-17 10:14:54 +0200
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2009-03-17 10:16:38 +0200
commit606f38a2221648ca5c5fa292c9f71d2ddd59fa66 (patch)
tree26d11905fda474261433c580c6fb58f4f4a85e59 /ubi-utils/inc/libubi.h
parenta2d010f8fca904fffa3c6e5a5d148cc96a37a08a (diff)
ubi-utils: re-arrange directory layout
Move new-utils to ubi-utils and old ones to ubi-utils/old-utils. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'ubi-utils/inc/libubi.h')
-rw-r--r--ubi-utils/inc/libubi.h268
1 files changed, 0 insertions, 268 deletions
diff --git a/ubi-utils/inc/libubi.h b/ubi-utils/inc/libubi.h
deleted file mode 100644
index 82824bd..0000000
--- a/ubi-utils/inc/libubi.h
+++ /dev/null
@@ -1,268 +0,0 @@
-/*
- * Copyright (c) International Business Machines Corp., 2006
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
- * the GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- * Author: Artem B. Bityutskiy
- *
- * UBI (Unsorted Block Images) library.
- */
-
-#ifndef __LIBUBI_H__
-#define __LIBUBI_H__
-
-#include <stdint.h>
-#include <mtd/ubi-user.h>
-#include <ctype.h>
-#include <mtd/ubi-media.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* UBI version libubi is made for */
-#define LIBUBI_UBI_VERSION 1
-
-/* UBI library descriptor */
-typedef void * libubi_t;
-
-/**
- * struct ubi_mkvol_request - volume creation request.
- * */
-struct ubi_mkvol_request
-{
- int vol_id;
- int alignment;
- long long bytes;
- int vol_type;
- const char *name;
-};
-
-/**
- * struct ubi_info - general UBI information.
- *
- * @dev_count count of UBI devices in system
- * @lowest_dev_num lowest UBI device number
- * @highest_dev_num highest UBI device number
- * @version UBI version
- */
-struct ubi_info
-{
- int dev_count;
- int lowest_dev_num;
- int highest_dev_num;
- int version;
-};
-
-/**
- * struct ubi_dev_info - UBI device information.
- *
- * @vol_count count of volumes on this UBI device
- * @lowest_vol_num lowest volume number
- * @highest_vol_num highest volume number
- * @total_ebs total number of eraseblocks on this UBI device
- * @avail_ebs how many eraseblocks are not used and available for new
- * volumes
- * @total_bytes @total_ebs * @eb_size
- * @avail_bytes @avail_ebs * @eb_size
- * @bad_count count of bad eraseblocks
- * @eb_size size of UBI eraseblock
- * @max_ec current highest erase counter value
- * @bad_rsvd how many physical eraseblocks of the underlying flash
- * device are reserved for bad eraseblocks handling
- * @max_vol_count maximum count of volumes on this UBI device
- * @min_io_size minimum input/output size of the UBI device
- */
-struct ubi_dev_info
-{
- int dev_num;
- int vol_count;
- int lowest_vol_num;
- int highest_vol_num;
- int total_ebs;
- int avail_ebs;
- long long total_bytes;
- long long avail_bytes;
- int bad_count;
- int eb_size;
- long long max_ec;
- int bad_rsvd;
- int max_vol_count;
- int min_io_size;
-};
-
-/**
- * struct ubi_vol_info - UBI volume information.
- *
- * @dev_num UBI device number the volume resides on
- * @vol_id ID of this volume
- * @type volume type (%UBI_DYNAMIC_VOLUME or %UBI_STATIC_VOLUME)
- * @alignment alignemnt of this volume
- * @data_bytes how many data bytes are stored on this volume (equivalent to
- * @rsvd_bytes for dynamic volumes)
- * @rsvd_bytes how many bytes are reserved for this volume
- * @rsvd_ebs how many eraseblocks are reserved for this volume
- * @eb_size logical eraseblock size of this volume (may be less then
- * device's logical eraseblock size due to alignment)
- * @corrupted the volume is corrupted if this flag is not zero
- * @name volume name (null-terminated)
- */
-struct ubi_vol_info
-{
- int dev_num;
- int vol_id;
- int type;
- int alignment;
- long long data_bytes;
- long long rsvd_bytes;
- int rsvd_ebs;
- int eb_size;
- int corrupted;
- char name[UBI_VOL_NAME_MAX + 1];
-};
-
-/**
- * libubi_open - open UBI library.
- *
- * This function initializes and opens the UBI library and returns UBI library
- * descriptor in case of success and %NULL in case of failure.
- */
-libubi_t libubi_open(void);
-
-/**
- * libubi_close - close UBI library
- *
- * @desc UBI library descriptor
- */
-void libubi_close(libubi_t desc);
-
-/**
- * ubi_get_info - get general UBI information.
- *
- * @info pointer to the &struct ubi_info object to fill
- * @desc UBI library descriptor
- *
- * This function fills the passed @info object with general UBI information and
- * returns %0 in case of success and %-1 in case of failure.
- */
-int ubi_get_info(libubi_t desc, struct ubi_info *info);
-
-/**
- * ubi_mkvol - create an UBI volume.
- *
- * @desc UBI library descriptor
- * @node name of the UBI character device to create a volume at
- * @req UBI volume creation request (defined at <mtd/ubi-user.h>)
- *
- * This function creates a UBI volume as described at @req and returns %0 in
- * case of success and %-1 in case of failure. The assigned volume ID is
- * returned in @req->vol_id.
- */
-int ubi_mkvol(libubi_t desc, const char *node, struct ubi_mkvol_request *req);
-
-/**
- * ubi_rmvol - remove a UBI volume.
- *
- * @desc UBI library descriptor
- * @node name of the UBI character device to remove a volume from
- * @vol_id ID of the volume to remove
- *
- * This function removes volume @vol_id from UBI device @node and returns %0 in
- * case of success and %-1 in case of failure.
- */
-int ubi_rmvol(libubi_t desc, const char *node, int vol_id);
-
-/**
- * ubi_rsvol - re-size UBI volume.
- *
- * @desc UBI library descriptor
- * @node name of the UBI character device owning the volume which should be
- * re-sized
- * @vol_id volume ID to re-size
- * @bytes new volume size in bytes
- *
- * This function returns %0 in case of success and %-1 in case of error.
- */
-int ubi_rsvol(libubi_t desc, const char *node, int vol_id, long long bytes);
-
-/**
- * ubi_get_dev_info - get UBI device information.
- *
- * @desc UBI library descriptor
- * @node name of the UBI character device to fetch information about
- * @info pointer to the &struct ubi_dev_info object to fill
- *
- * This function fills the passed @info object with UBI device information and
- * returns %0 in case of success and %-1 in case of failure.
- */
-int ubi_get_dev_info(libubi_t desc, const char *node,
- struct ubi_dev_info *info);
-
-/**
- * ubi_get_dev_info1 - get UBI device information.
- *
- * @desc UBI library descriptor
- * @dev_num UBI device number to fetch information about
- * @info pointer to the &struct ubi_dev_info object to fill
- *
- * This function is identical to 'ubi_get_dev_info()' except that it accepts UBI
- * device number, not UBI character device.
- */
-int ubi_get_dev_info1(libubi_t desc, int dev_num, struct ubi_dev_info *info);
-
-/**
- * ubi_get_vol_info - get UBI volume information.
- *
- * @desc UBI library descriptor
- * @node name of the UBI volume character device to fetch information about
- * @info pointer to the &struct ubi_vol_info object to fill
- *
- * This function fills the passed @info object with UBI volume information and
- * returns %0 in case of success and %-1 in case of failure.
- */
-int ubi_get_vol_info(libubi_t desc, const char *node,
- struct ubi_vol_info *info);
-
-/**
- * ubi_get_vol_info1 - get UBI volume information.
- *
- * @desc UBI library descriptor
- * @dev_num UBI device number
- * @vol_id ID of the UBI volume to fetch information about
- * @info pointer to the &struct ubi_vol_info object to fill
- *
- * This function is identical to 'ubi_get_vol_info()' except that it accepts UBI
- * volume number, not UBI volume character device.
- */
-int ubi_get_vol_info1(libubi_t desc, int dev_num, int vol_id,
- struct ubi_vol_info *info);
-
-/**
- * ubi_update_start - start UBI volume update.
- *
- * @desc UBI library descriptor
- * @fd volume character devie file descriptor
- * @bytes how many bytes will be written to the volume
- *
- * This function initiates UBI volume update and returns %0 in case of success
- * and %-1 in case of error.
- */
-int ubi_update_start(libubi_t desc, int fd, long long bytes);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* !__LIBUBI_H__ */