@@ -516,49 +516,6 @@ struct buf_cache_t {
516
516
struct buffer_head * buf_bh ;
517
517
};
518
518
519
- struct fs_func {
520
- s32 (* alloc_cluster )(struct super_block * sb , s32 num_alloc ,
521
- struct chain_t * p_chain );
522
- void (* free_cluster )(struct super_block * sb , struct chain_t * p_chain ,
523
- s32 do_relse );
524
- s32 (* count_used_clusters )(struct super_block * sb );
525
-
526
- s32 (* init_dir_entry )(struct super_block * sb , struct chain_t * p_dir ,
527
- s32 entry , u32 type , u32 start_clu , u64 size );
528
- s32 (* init_ext_entry )(struct super_block * sb , struct chain_t * p_dir ,
529
- s32 entry , s32 num_entries ,
530
- struct uni_name_t * p_uniname ,
531
- struct dos_name_t * p_dosname );
532
- s32 (* find_dir_entry )(struct super_block * sb , struct chain_t * p_dir ,
533
- struct uni_name_t * p_uniname , s32 num_entries ,
534
- struct dos_name_t * p_dosname , u32 type );
535
- void (* delete_dir_entry )(struct super_block * sb ,
536
- struct chain_t * p_dir , s32 entry ,
537
- s32 offset , s32 num_entries );
538
- void (* get_uni_name_from_ext_entry )(struct super_block * sb ,
539
- struct chain_t * p_dir , s32 entry ,
540
- u16 * uniname );
541
- s32 (* count_ext_entries )(struct super_block * sb ,
542
- struct chain_t * p_dir , s32 entry ,
543
- struct dentry_t * p_entry );
544
- s32 (* calc_num_entries )(struct uni_name_t * p_uniname );
545
-
546
- u32 (* get_entry_type )(struct dentry_t * p_entry );
547
- void (* set_entry_type )(struct dentry_t * p_entry , u32 type );
548
- u32 (* get_entry_attr )(struct dentry_t * p_entry );
549
- void (* set_entry_attr )(struct dentry_t * p_entry , u32 attr );
550
- u8 (* get_entry_flag )(struct dentry_t * p_entry );
551
- void (* set_entry_flag )(struct dentry_t * p_entry , u8 flag );
552
- u32 (* get_entry_clu0 )(struct dentry_t * p_entry );
553
- void (* set_entry_clu0 )(struct dentry_t * p_entry , u32 clu0 );
554
- u64 (* get_entry_size )(struct dentry_t * p_entry );
555
- void (* set_entry_size )(struct dentry_t * p_entry , u64 size );
556
- void (* get_entry_time )(struct dentry_t * p_entry ,
557
- struct timestamp_t * tp , u8 mode );
558
- void (* set_entry_time )(struct dentry_t * p_entry ,
559
- struct timestamp_t * tp , u8 mode );
560
- };
561
-
562
519
struct fs_info_t {
563
520
u32 drv ; /* drive ID */
564
521
u32 vol_type ; /* volume FAT type */
@@ -597,7 +554,6 @@ struct fs_info_t {
597
554
598
555
u32 dev_ejected ; /* block device operation error flag */
599
556
600
- struct fs_func * fs_func ;
601
557
struct mutex v_mutex ;
602
558
603
559
/* FAT cache */
@@ -829,5 +785,40 @@ int exfat_bdev_write(struct super_block *sb, sector_t secno,
829
785
struct buffer_head * bh , u32 num_secs , bool sync );
830
786
int exfat_bdev_sync (struct super_block * sb );
831
787
788
+ /* cluster operation functions */
789
+ s32 exfat_alloc_cluster (struct super_block * sb , s32 num_alloc ,
790
+ struct chain_t * p_chain );
791
+ void exfat_free_cluster (struct super_block * sb , struct chain_t * p_chain ,
792
+ s32 do_relse );
793
+ s32 exfat_count_used_clusters (struct super_block * sb );
794
+
795
+ /* dir operation functions */
796
+ s32 exfat_find_dir_entry (struct super_block * sb , struct chain_t * p_dir ,
797
+ struct uni_name_t * p_uniname , s32 num_entries ,
798
+ struct dos_name_t * p_dosname , u32 type );
799
+ void exfat_delete_dir_entry (struct super_block * sb , struct chain_t * p_dir ,
800
+ s32 entry , s32 order , s32 num_entries );
801
+ void exfat_get_uni_name_from_ext_entry (struct super_block * sb ,
802
+ struct chain_t * p_dir , s32 entry ,
803
+ u16 * uniname );
804
+ s32 exfat_count_ext_entries (struct super_block * sb , struct chain_t * p_dir ,
805
+ s32 entry , struct dentry_t * p_entry );
806
+ s32 exfat_calc_num_entries (struct uni_name_t * p_uniname );
807
+
808
+ /* dir entry getter/setter */
809
+ u32 exfat_get_entry_type (struct dentry_t * p_entry );
810
+ u32 exfat_get_entry_attr (struct dentry_t * p_entry );
811
+ void exfat_set_entry_attr (struct dentry_t * p_entry , u32 attr );
812
+ u8 exfat_get_entry_flag (struct dentry_t * p_entry );
813
+ void exfat_set_entry_flag (struct dentry_t * p_entry , u8 flags );
814
+ u32 exfat_get_entry_clu0 (struct dentry_t * p_entry );
815
+ void exfat_set_entry_clu0 (struct dentry_t * p_entry , u32 start_clu );
816
+ u64 exfat_get_entry_size (struct dentry_t * p_entry );
817
+ void exfat_set_entry_size (struct dentry_t * p_entry , u64 size );
818
+ void exfat_get_entry_time (struct dentry_t * p_entry , struct timestamp_t * tp ,
819
+ u8 mode );
820
+ void exfat_set_entry_time (struct dentry_t * p_entry , struct timestamp_t * tp ,
821
+ u8 mode );
822
+
832
823
extern const u8 uni_upcase [];
833
824
#endif /* _EXFAT_H */
0 commit comments