Commit Graph

51 Commits

Author SHA1 Message Date
Masayuki Ishikawa
a8d446851c fs: fat: Use uint16_t instead of wchar_t
Summary:
- Due to the recent changes of wchar_t, ls command always
  causes errors for the fat file system.
- This commit fixes this issue by replacing wchar_t with
  uint16_t under fs/fat

Impact:
- None

Testing:
- Tested with spresense:wifi and stm32f4discovery:wifi

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-12-09 21:29:29 -06:00
Juha Niskanen
cd41ed9b6d fs: fully parenthesize MIN and MAX macros
Signed-off-by: Juha Niskanen <juha.niskanen@haltian.com>
2020-12-08 12:58:40 -06:00
Xiang Xiao
8567637378 fs/fat: Handle the tail '/' correctly
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I72c4d018c174d094d777941d0679ad792a1f5527
2020-09-22 23:05:10 +01:00
Johannes Schock
070f4ed7e9 FAT Filesystem: UTF8 support for long filenames, bugfixes.
New CONFIG_FAT_LFN_UTF8: UTF8 strings are converted to UCS2-LFN
Bugfix in fat_createalias: space is now also converted to underbar.
Change (bugfix) in fat_getlfname: init characters (0xff) and '\0' are rewound as well.
2020-07-31 18:01:02 -03:00
Gregory Nutt
0f7c2d6fbf fs/fat: Run all .c and .h files through nxstyle
Run all .c and .h files through nxstyle and correct all reported issues.
2020-05-31 12:43:55 -04:00
Xiang Xiao
cde88cabcc Run codespell -w with the latest dictonary again
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-02-23 22:27:46 +01:00
Xiang Xiao
bd4e8e19d3 Run codespell -w against all files
and fix the wrong correction
2020-02-22 14:45:07 -06:00
Xiang Xiao
6a3c2aded6 Fix wait loop and void cast (#24)
* Simplify EINTR/ECANCEL error handling

1. Add semaphore uninterruptible wait function
2 .Replace semaphore wait loop with a single uninterruptible wait
3. Replace all sem_xxx to nxsem_xxx

* Unify the void cast usage

1. Remove void cast for function because many place ignore the returned value witout cast
2. Replace void cast for variable with UNUSED macro
2020-01-02 10:54:43 -06:00
Gregory Nutt
d2af57169b tools/nxstyle.c: Fix a rare false alarm that could occur if a variable or function name begins with the sub-string 'union' or 'struct'. misc fixes under fs/ and sched/ from application of current version of nxstyle. 2019-12-01 13:01:16 -06:00
Gregory Nutt
bd3cc792ff fs/: Run all .c files under fs/ through tools/nxstyle. 2019-10-27 11:48:14 -06:00
Juha Niskanen
5c853cd1dc libs/libc/unistd/lib_getcwd.c: remove stray sched_unlock(). Also fixes several typos. 2019-09-20 06:23:48 -06:00
Gregory Nutt
be3dd0bac6 fs/: Fix various coding standard issues found while testing tools/nxstyle.c 2019-03-01 15:01:04 -06:00
Gregory Nutt
31485356b8 Updates based on coding style review of PR 755 2018-11-09 07:51:43 -06:00
Petteri Aimonen
96da659c0b Merged in paimonen/nuttx/pullreq_FAT_improvements (pull request #755)
Pullreq FAT improvements

* NuttX: Add CONFIG_FAT_LFN_ALIAS_HASH to speed up creating long filenames.

    Long filenames on FAT filesystems have associated 8.3 character alias
    short filenames. The traditional form of these is FILENA~1.EXT with
    a running count of the number of similar names. However creating this
    unique count can take several seconds if there are many similarly named
    files in the directory. Enabling FAT_LFN_ALIAS_HASH uses an alternative
    format of FI0123~1.TXT where the four digits are a hash of the original
    filename. This method is similar to what is used by Windows 2000 and
    later.

* NuttX: Add CONFIG_FAT_LFN_ALIAS_TRAILCHARS alternative format for 8.3 filenames.

    Traditional format for long filename 8.3 aliases takes first 6
    characters of long filename. If this option is set to N > 0,
    NuttX will instead take first 6-N and last N characters to form
    the short name. This is useful for filenames like "datafile12.txt"
    where the first characters would always remain the same.

* NuttX: FAT32: Fix file date corruption in fat_truncate().

* NuttX: if SD card wait seems to be a long one, give time for other threads to run.

Approved-by: GregoryN <gnutt@nuttx.org>
2018-11-09 13:46:16 +00:00
Gregory Nutt
1567b82429 Make sure that labeling is used consistently in all function headers (part 2). 2018-02-01 12:03:55 -06:00
Gregory Nutt
7cf88d7dbd Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
Gregory Nutt
9008308b64 Remove some block comments before empty code sections 2016-04-11 18:16:04 -06:00
Gregory Nutt
0fb035f76b Standardize some naming in code section comments 2016-02-21 18:09:04 -06:00
Gregory Nutt
c70987e551 nuttx/fs: Fix some spacing and alignment issues 2015-10-11 11:39:29 -06:00
Gregory Nutt
0b12dbf95d Fix some spacing problems 2015-10-04 15:04:00 -06:00
Gregory Nutt
cb9e27c3b0 Standardize naming used for public data and function groupings 2015-10-02 16:30:35 -06:00
Gregory Nutt
ddb8073ad5 Update TODO list and some comments 2015-03-16 08:49:39 -06:00
Gregory Nutt
b637a0cc3e Costmetic changes name while debugging a filename issue 2015-03-15 12:22:12 -06:00
Gregory Nutt
ae90309b36 Move fs/fs.h to fs/inode/inode.h and some to fs/driver/driver.h 2014-09-29 07:14:38 -06:00
Gregory Nutt
d038133501 Rename fs/fs_internal.h to fs/fs.h 2014-09-28 09:13:56 -06:00
patacongo
bc247a45a0 FAT fixes for extending directory entries with long file names. From RonenV
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5802 42af7a65-404d-4744-a932-0658087f49c3
2013-03-31 13:06:22 +00:00
patacongo
3bf2c1b355 Change prototypes of up_create_stack and up_release_stack to include a task type parameter
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5765 42af7a65-404d-4744-a932-0658087f49c3
2013-03-20 18:22:21 +00:00
patacongo
d5d9fa89ab Fix a FAT error when trying to create file in a non-existent directory. Reported by Andrew Tridgell.
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5764 42af7a65-404d-4744-a932-0658087f49c3
2013-03-20 15:26:50 +00:00
patacongo
7a9457bb07 Email address change in nuttx/
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5145 42af7a65-404d-4744-a932-0658087f49c3
2012-09-13 18:32:24 +00:00
patacongo
2fe4ad52f8 Move file-system header files to include/nuttx/fs
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4499 42af7a65-404d-4744-a932-0658087f49c3
2012-03-21 18:01:07 +00:00
patacongo
15e7a497ca Update ADC header file for the STM32F40xxx
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4105 42af7a65-404d-4744-a932-0658087f49c3
2011-11-20 14:01:44 +00:00
patacongo
acf0e4160b Revised FAT bugfix
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4104 42af7a65-404d-4744-a932-0658087f49c3
2011-11-19 20:30:39 +00:00
patacongo
bdd0e9e973 Fix an error in FAT needed for interoperability with Windows when access first entry in root directory
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4093 42af7a65-404d-4744-a932-0658087f49c3
2011-11-15 22:37:14 +00:00
patacongo
f47d7adcd4 Back out a portion of the last FAT LFN change
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3986 42af7a65-404d-4744-a932-0658087f49c3
2011-09-28 12:32:06 +00:00
patacongo
c4b3e3185f Cosmetic changes to fat and mass storage device
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3985 42af7a65-404d-4744-a932-0658087f49c3
2011-09-28 01:46:31 +00:00
patacongo
be64d255fc Move MSC descriptors to a separate file; File 13 char long file names.
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3983 42af7a65-404d-4744-a932-0658087f49c3
2011-09-27 22:04:03 +00:00
patacongo
48e30073db Fix a stray write into the FAT
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3958 42af7a65-404d-4744-a932-0658087f49c3
2011-09-16 14:07:17 +00:00
patacongo
9e9cbc6b27 Add logic to assure that short FAT names are unique
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3796 42af7a65-404d-4744-a932-0658087f49c3
2011-07-18 18:28:02 +00:00
patacongo
e6918d1821 Documentation update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3795 42af7a65-404d-4744-a932-0658087f49c3
2011-07-18 01:47:48 +00:00
patacongo
0673ba578e Correct FAT long file name padding character
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3794 42af7a65-404d-4744-a932-0658087f49c3
2011-07-18 00:20:58 +00:00
patacongo
80616e345a Make NX and NXTEXT built-ins; extend stm3210e-eval/nsh2 config to run the NX example from the NX command line
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3791 42af7a65-404d-4744-a932-0658087f49c3
2011-07-16 15:52:15 +00:00
patacongo
7a7446a401 FAT long file names are basically functional
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3790 42af7a65-404d-4744-a932-0658087f49c3
2011-07-15 17:38:29 +00:00
patacongo
42249bbbb2 Some FAT long file name fixes
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3789 42af7a65-404d-4744-a932-0658087f49c3
2011-07-15 15:37:29 +00:00
patacongo
1662b66e35 Fix NXTEXT link error
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3787 42af7a65-404d-4744-a932-0658087f49c3
2011-07-14 23:29:43 +00:00
patacongo
4ffef26aa4 Changes to get clean FAT long file name compilation
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3785 42af7a65-404d-4744-a932-0658087f49c3
2011-07-14 21:07:59 +00:00
patacongo
5a05a26d43 Fix NT stype upper/lower case FAT 8.3 filename
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3784 42af7a65-404d-4744-a932-0658087f49c3
2011-07-14 19:47:31 +00:00
patacongo
65d19ae3dc FAT long support is code complete (but untested)
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3783 42af7a65-404d-4744-a932-0658087f49c3
2011-07-14 17:57:59 +00:00
patacongo
718738cb62 More FAT long file name logic
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3782 42af7a65-404d-4744-a932-0658087f49c3
2011-07-13 21:53:06 +00:00
patacongo
fb32eed2ee Add long file name parsing logic
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3781 42af7a65-404d-4744-a932-0658087f49c3
2011-07-13 17:19:31 +00:00
patacongo
95e415d274 Re-architect FAT data structures to support long file names
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3780 42af7a65-404d-4744-a932-0658087f49c3
2011-07-13 13:30:38 +00:00