*/
void cache_init(com32sys_t * regs)
{
- struct cache_struct *prev, *cur;
- char *data = core_cache_buf;
- int block_size_shift = regs->eax.l;
- int i;
-
- cache_block_size = 1 << block_size_shift;
- cache_entries = sizeof(core_cache_buf) >> block_size_shift;
- if (cache_entries > MAX_CACHE_ENTRIES)
- cache_entries = MAX_CACHE_ENTRIES;
-
- cache_head.prev = &cache[cache_entries-1];
- cache_head.prev->next = &cache_head;
- prev = &cache_head;
-
- for (i = 0; i < cache_entries; i++) {
- cur = &cache[i];
- cur->block = 0;
- cur->prev = prev;
- prev->next = cur;
- cur->data = data;
- data += cache_block_size;
- prev = cur++;
- }
+ struct cache_struct *prev, *cur;
+ char *data = core_cache_buf;
+ int block_size_shift = regs->eax.l;
+ int i;
+
+ cache_block_size = 1 << block_size_shift;
+ cache_entries = sizeof(core_cache_buf) >> block_size_shift;
+ if (cache_entries > MAX_CACHE_ENTRIES)
+ cache_entries = MAX_CACHE_ENTRIES;
+
+ cache_head.prev = &cache[cache_entries-1];
+ cache_head.prev->next = &cache_head;
+ prev = &cache_head;
+
+ for (i = 0; i < cache_entries; i++) {
+ cur = &cache[i];
+ cur->block = 0;
+ cur->prev = prev;
+ prev->next = cur;
+ cur->data = data;
+ data += cache_block_size;
+ prev = cur++;
+ }
}
void getoneblk(char *buf, uint32_t block, int block_size)
{
- int sec_per_block = block_size >> 9; /* 512==sector size */
+ int sec_per_block = block_size >> 9; /* 512==sector size */
- read_sectors(buf, block * sec_per_block, sec_per_block);
+ read_sectors(buf, block * sec_per_block, sec_per_block);
}
ClustSize = 1 << ClustByteShift;
ClustShift = ClustByteShift - 9;
- //DescPerBlock = blk_size / ( 1 << ext2_group_desc_lg2size);
- //InodePerBlock = blk_size / sb->s_inode_size;
+ //DescPerBlock = ClustSize >> ext2_group_desc_lg2size;
+ //InodePerBlock = ClustSize / sb->s_inode_size;
SecPerClust = ClustSize >> 9;
ClustMask = SecPerClust - 1;