package embox.fs.driver

@DefaultImpl(fat_old)
abstract module fat {
	option string log_level="LOG_NONE"
	option number default_fat_version = 32

	option number inode_quantity=16
	option number fat_descriptor_quantity=4
	option number fat_max_sector_size = 512

	option boolean support_long_names = true

	source "fat_common.c"
	source "fatfs_subr.c"
	source "fat_common_mem.c"
	source "fat_fops.c"
	source "fat_inode_ops.c"

	source "fatfs_drv.c"

	depends embox.driver.block_dev
}

module fat_old extends fat {
	source "fat_oldfs.c"

	depends embox.fs.node
	depends embox.fs.driver.devfs
	depends embox.mem.page_api
	depends embox.mem.pool
}

module fat_dvfs extends fat {
	source "fat_dvfs.c"

	depends embox.fs.dvfs.core
}
