ARC disk write support.

* grub-core/disk/arc/arcdisk.c (handle_writable): New var.
	(reopen): New argument writable. All users updated.
	Handle required access mode.
	(grub_arcdisk_write): Implement.
	* include/grub/arc/arc.h (grub_arc_file_access): New enum.
	(grub_arc_firmware_vector): Make buffer to write a const buffer.
This commit is contained in:
Vladimir 'phcoder' Serbinenko 2012-01-25 16:13:34 +01:00
parent e06c2e7abc
commit fc36d6038b
3 changed files with 59 additions and 11 deletions

View file

@ -139,6 +139,13 @@ enum
GRUB_ARC_COMPONENT_TYPE_MEMORY_UNIT,
};
enum grub_arc_file_access
{
GRUB_ARC_FILE_ACCESS_OPEN_RO,
GRUB_ARC_FILE_ACCESS_OPEN_WO,
GRUB_ARC_FILE_ACCESS_OPEN_RW,
};
struct grub_arc_fileinfo
{
grub_arc_ularge_t start;
@ -195,7 +202,7 @@ struct grub_arc_firmware_vector
grub_arc_ulong_t n,
grub_arc_ulong_t *count);
grub_arc_err_t (*get_read_status) (grub_arc_fileno_t fileno);
grub_arc_err_t (*write) (grub_arc_fileno_t fileno, void *buf,
grub_arc_err_t (*write) (grub_arc_fileno_t fileno, const void *buf,
grub_arc_ulong_t n,
grub_arc_ulong_t *count);