annotate packages/io/disk/current/ChangeLog @ 2300:654c837cc618

* include/disk.h (DISK_CHANNEL): No need for extra _part_dev slot intended for entire disk's own devtab. * src/disk.c (disk_lookup): Just access pdevs_dev directly with no adjusted offset. (disk_init): No longer set entry 0 from device devtab. It's unnecessary. * include/disk.h: Merge eCosCentric CVS with public eCos CVS. This merges (and therefore changes) the API. ChangeLog entries have been incorporated in the correct places below. * include/diskio.h: Also merged. * cdl/io_disk.cdl: Also merged. * src/disk.c: Also merged. * src/disk.c (read_partition): Switched to favour LBA partition information in partition tables. This also means we don't now rely on the driver reporting a correct CHS size for the disk. (disk_bread, disk_bwrite): API changed to take length in sectors rather than bytes. Also call hardware driver to transfer in (up to) max_transfer sized chunks, rather than a sector at a time. Call in to driver now made with DSR lock claimed, to avoid a race condition between the DSR and the calling thread. (disk_get_config): Added phys_block_size to channel info. * include/diskio.h (struct cyg_disk_identify_t): Added phys_block_size and max_transfer fields. These must be filled in by the driver. * include/disk.h (DISK_CHANNEL_INIT): New macro. Allows a DISK_CHANNEL to be defined dynamically. * src/disk.c (disk_bread, disk_bwrite): Made calls to cyg_thread_yield() dependent on presence ok kernel. * src/disk.c (disk_bwrite): Uncomment the cyg_thread_yield() at the end to prevent thread starvation between threads at the same priority. (disk_bread): Ditto. * src/disk.c (read_partition): Changed to account for very large disks which report bogus CHS geometry. We can only use the LBA partition parameters in such disks. (disk_set_config): Added some extra debug output. * src/disk.c: Various changes to support disconnect/reconnect of changeable media. * include/diskio.h: Added mount counter to disk_info structure. * include/disk.h: Changed disk_disconnected() function to take a pointer to a struct disk_channel rather than a struct cyg_devtab_entry. Added mount count to disk_channel structure. Moved include of diskio.h to end to fix declaration problems. * src/disk.c: Fixed bug in write routine where controller result field was not being initialized. Added signals on controller queue condition variable after setting controller busy flag to false. * include/disk.h: Made controller result and busy fields volatile. Just in case. * include/disk.h: * src/disk.c: Many changes. Added additional disk_controller data structure to better reflect hardware structure. Added support for serialization of multithreaded accesses to a single controller. Added support for asynchronous, interrupt driven, IO operations. Various tidies.
author jlarmour
date Thu, 21 Sep 2006 16:38:38 +0000
parents 16ea61a1d5d4
children 21a641579915
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2300
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
1 2006-09-21 Jonathan Larmour <jifl@eCosCentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
2
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
3 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
4 slot intended for entire disk's own devtab.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
5
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
6 * src/disk.c (disk_lookup): Just access pdevs_dev directly
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
7 with no adjusted offset.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
8 (disk_init): No longer set entry 0 from device devtab.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
9 It's unnecessary.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
10
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
11 2006-09-20 Jonathan Larmour <jifl@eCosCentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
12
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
13 * include/disk.h: Merge eCosCentric CVS with public eCos CVS.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
14 This merges (and therefore changes) the API. ChangeLog
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
15 entries have been incorporated in the correct places below.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
16 * include/diskio.h: Also merged.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
17 * cdl/io_disk.cdl: Also merged.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
18 * src/disk.c: Also merged.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
19
2274
16ea61a1d5d4 * cdl/io_disk.cdl: Made debugging CDL controlled.
asl
parents: 2111
diff changeset
20 2006-08-18 Andy Jackson <andy@xylanta.com>
16ea61a1d5d4 * cdl/io_disk.cdl: Made debugging CDL controlled.
asl
parents: 2111
diff changeset
21
16ea61a1d5d4 * cdl/io_disk.cdl: Made debugging CDL controlled.
asl
parents: 2111
diff changeset
22 * cdl/io_disk.cdl: Made debugging CDL controlled.
16ea61a1d5d4 * cdl/io_disk.cdl: Made debugging CDL controlled.
asl
parents: 2111
diff changeset
23 * src/disk.c: Added support to allow non-CHS disk devices to
16ea61a1d5d4 * cdl/io_disk.cdl: Made debugging CDL controlled.
asl
parents: 2111
diff changeset
24 use LBA information in MBR.
16ea61a1d5d4 * cdl/io_disk.cdl: Made debugging CDL controlled.
asl
parents: 2111
diff changeset
25
2300
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
26 2006-02-03 Nick Garnett <nickg@ecoscentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
27
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
28 * src/disk.c (read_partition): Switched to favour LBA partition
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
29 information in partition tables. This also means we don't now rely
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
30 on the driver reporting a correct CHS size for the disk.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
31 (disk_bread, disk_bwrite): API changed to take length in sectors
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
32 rather than bytes. Also call hardware driver to transfer in
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
33 (up to) max_transfer sized chunks, rather than a sector at a
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
34 time. Call in to driver now made with DSR lock claimed, to avoid a
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
35 race condition between the DSR and the calling thread.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
36 (disk_get_config): Added phys_block_size to channel info.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
37
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
38 * include/diskio.h (struct cyg_disk_identify_t): Added
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
39 phys_block_size and max_transfer fields. These must be filled in
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
40 by the driver.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
41
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
42 2005-12-12 Jonathan Larmour <jifl@eCosCentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
43
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
44 * include/disk.h (DISK_CHANNEL_INIT): New macro. Allows a
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
45 DISK_CHANNEL to be defined dynamically.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
46
2111
0ad51d0b250b * src/disk.c: Add comments that bread/bwrite take the position and
asl
parents: 1685
diff changeset
47 2005-12-02 Andrew Lunn <andrew.lunn@ascom.ch>
0ad51d0b250b * src/disk.c: Add comments that bread/bwrite take the position and
asl
parents: 1685
diff changeset
48
0ad51d0b250b * src/disk.c: Add comments that bread/bwrite take the position and
asl
parents: 1685
diff changeset
49 * src/disk.c: Add comments that bread/bwrite take the position and
0ad51d0b250b * src/disk.c: Add comments that bread/bwrite take the position and
asl
parents: 1685
diff changeset
50 len in terms of blocks, not bytes.
0ad51d0b250b * src/disk.c: Add comments that bread/bwrite take the position and
asl
parents: 1685
diff changeset
51
2300
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
52 2005-10-11 Nick Garnett <nickg@ecoscentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
53
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
54 * src/disk.c (disk_bread, disk_bwrite): Made calls to
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
55 cyg_thread_yield() dependent on presence ok kernel.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
56
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
57 2005-06-01 Jonathan Larmour <jifl@eCosCentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
58
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
59 * src/disk.c (disk_bwrite): Uncomment the cyg_thread_yield() at
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
60 the end to prevent thread starvation between threads at the same
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
61 priority.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
62 (disk_bread): Ditto.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
63
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
64 2004-07-21 Nick Garnett <nickg@ecoscentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
65
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
66 * src/disk.c (read_partition): Changed to account for very large
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
67 disks which report bogus CHS geometry. We can only use the LBA
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
68 partition parameters in such disks.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
69 (disk_set_config): Added some extra debug output.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
70
1685
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
71 2004-07-01 Savin Zlobec <savin@elatec.si>
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
72
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
73 * src/disk.c:
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
74 * include/disk.h:
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
75 * include/diskio.h:
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
76 Use predefined arrays for partition devices and info
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
77 radher than malloc. Extended DISK_CHANNEL macro to
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
78 support defining maximum number of partitions.
b1d2762b2eec * src/disk.c:
asl
parents: 1476
diff changeset
79
2300
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
80 2004-04-15 Nick Garnett <nickg@ecoscentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
81
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
82 * src/disk.c:
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
83 Various changes to support disconnect/reconnect of changeable
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
84 media.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
85
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
86 * include/diskio.h: Added mount counter to disk_info structure.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
87
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
88 * include/disk.h: Changed disk_disconnected() function to take a
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
89 pointer to a struct disk_channel rather than a struct
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
90 cyg_devtab_entry. Added mount count to disk_channel structure.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
91 Moved include of diskio.h to end to fix declaration problems.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
92
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
93 2004-02-04 Nick Garnett <nickg@ecoscentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
94
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
95 * src/disk.c: Fixed bug in write routine where controller result
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
96 field was not being initialized. Added signals on controller queue
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
97 condition variable after setting controller busy flag to false.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
98
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
99 * include/disk.h: Made controller result and busy fields
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
100 volatile. Just in case.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
101
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
102 2004-01-23 Nick Garnett <nickg@ecoscentric.com>
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
103
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
104 * include/disk.h:
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
105 * src/disk.c:
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
106 Many changes. Added additional disk_controller data structure to
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
107 better reflect hardware structure. Added support for serialization
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
108 of multithreaded accesses to a single controller. Added support
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
109 for asynchronous, interrupt driven, IO operations. Various
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
110 tidies.
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
111
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
112 2004-01-15 Nick Garnett <nickg@ecoscentric.com>
1476
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
113
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
114 * src/disk.c:
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
115 * include/disk.h: Removed block_pos arguments from
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
116 hardware driver read and write calls: it is not necessary.
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
117
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
118 * src/disk.c (read_mbr): Modified to read a complete sector from
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
119 the disk rather than pieces. Drivers should only ever see
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
120 reads/writes in multiples of 512 bytes.
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
121
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
122 2003-10-16 Savin Zlobec <savin@elatec.si>
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
123
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
124 * src/disk.c:
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
125 Check return code from MBR scan and set
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
126 connected flag only if there was no error.
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
127
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
128 2003-09-01 Savin Zlobec <savin@elatec.si>
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
129
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
130 * cdl/io_disk.cdl:
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
131 * inc/disk.h:
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
132 * inc/diskio.h:
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
133 * src/disk.c:
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
134 A block device IO implementation
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
135
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
136
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
137
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
138 //===========================================================================
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
139 //####ECOSGPLCOPYRIGHTBEGIN####
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
140 // -------------------------------------------
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
141 // This file is part of eCos, the Embedded Configurable Operating System.
2300
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
142 // Copyright (C) 2003 Savin Zlobec
654c837cc618 * include/disk.h (DISK_CHANNEL): No need for extra _part_dev
jlarmour
parents: 2274
diff changeset
143 // Copyright (C) 2004, 2005, 2006 eCosCentric Limited
1476
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
144 //
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
145 // eCos is free software; you can redistribute it and/or modify it under
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
146 // the terms of the GNU General Public License as published by the Free
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
147 // Software Foundation; either version 2 or (at your option) any later version.
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
148 //
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
149 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
150 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
151 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
152 // for more details.
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
153 //
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
154 // You should have received a copy of the GNU General Public License along
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
155 // with eCos; if not, write to the Free Software Foundation, Inc.,
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
156 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
157 //
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
158 // As a special exception, if other files instantiate templates or use macros
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
159 // or inline functions from this file, or you compile this file and link it
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
160 // with other works to produce a work based on this file, this file does not
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
161 // by itself cause the resulting work to be covered by the GNU General Public
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
162 // License. However the source code for this file must still be made available
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
163 // in accordance with section (3) of the GNU General Public License.
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
164 //
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
165 // This exception does not invalidate any other reasons why a work based on
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
166 // this file might be covered by the GNU General Public License.
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
167 //
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
168 // -------------------------------------------
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
169 //####ECOSGPLCOPYRIGHTEND####
f2453fae08d4 Added support for FAT filesystem. Several packages, see the individual
nickg
parents:
diff changeset
170 //===========================================================================