From d73f33d2369d73304e6124ba4ff7c1983e248ac1 Mon Sep 17 00:00:00 2001 From: sago35 Date: Fri, 14 May 2021 09:41:36 +0900 Subject: [PATCH 1/2] replace import path --- examples/console/example.go | 2 +- examples/console/fatfs/qspi/main.go | 4 ++-- examples/console/fatfs/spi/main.go | 4 ++-- examples/console/littlefs/qspi/main.go | 4 ++-- examples/console/littlefs/spi/main.go | 4 ++-- fatfs/examples/flash/example.go | 4 ++-- fatfs/examples/flash/qspi/main.go | 2 +- fatfs/examples/flash/spi/main.go | 2 +- fatfs/examples/simple/main.go | 4 ++-- fatfs/go_fatfs.go | 6 +++--- fatfs/go_fatfs_callbacks.go | 4 ++-- fatfs/go_fatfs_test.go | 2 +- littlefs/go_lfs.go | 6 +++--- littlefs/go_lfs_callbacks.go | 4 ++-- littlefs/go_lfs_test.go | 2 +- 15 files changed, 27 insertions(+), 27 deletions(-) diff --git a/examples/console/example.go b/examples/console/example.go index 032fd18..6a78101 100644 --- a/examples/console/example.go +++ b/examples/console/example.go @@ -11,7 +11,7 @@ import ( "strings" "time" - "github.com/bgould/tinyfs" + "github.com/tinygo-org/tinyfs" "tinygo.org/x/drivers/flash" ) diff --git a/examples/console/fatfs/qspi/main.go b/examples/console/fatfs/qspi/main.go index 27da2c4..753331a 100644 --- a/examples/console/fatfs/qspi/main.go +++ b/examples/console/fatfs/qspi/main.go @@ -6,8 +6,8 @@ import ( "machine" "time" - "github.com/bgould/tinyfs/examples/console" - "github.com/bgould/tinyfs/fatfs" + "github.com/tinygo-org/tinyfs/examples/console" + "github.com/tinygo-org/tinyfs/fatfs" "tinygo.org/x/drivers/flash" ) diff --git a/examples/console/fatfs/spi/main.go b/examples/console/fatfs/spi/main.go index dc4e70b..f259b35 100644 --- a/examples/console/fatfs/spi/main.go +++ b/examples/console/fatfs/spi/main.go @@ -6,8 +6,8 @@ import ( "machine" "time" - "github.com/bgould/tinyfs/examples/console" - "github.com/bgould/tinyfs/fatfs" + "github.com/tinygo-org/tinyfs/examples/console" + "github.com/tinygo-org/tinyfs/fatfs" "tinygo.org/x/drivers/flash" ) diff --git a/examples/console/littlefs/qspi/main.go b/examples/console/littlefs/qspi/main.go index daac670..ea282a9 100644 --- a/examples/console/littlefs/qspi/main.go +++ b/examples/console/littlefs/qspi/main.go @@ -6,8 +6,8 @@ import ( "machine" "time" - "github.com/bgould/tinyfs/examples/console" - "github.com/bgould/tinyfs/littlefs" + "github.com/tinygo-org/tinyfs/examples/console" + "github.com/tinygo-org/tinyfs/littlefs" "tinygo.org/x/drivers/flash" ) diff --git a/examples/console/littlefs/spi/main.go b/examples/console/littlefs/spi/main.go index 0a95fec..35cf873 100644 --- a/examples/console/littlefs/spi/main.go +++ b/examples/console/littlefs/spi/main.go @@ -6,8 +6,8 @@ import ( "machine" "time" - "github.com/bgould/tinyfs/examples/console" - "github.com/bgould/tinyfs/littlefs" + "github.com/tinygo-org/tinyfs/examples/console" + "github.com/tinygo-org/tinyfs/littlefs" "tinygo.org/x/drivers/flash" ) diff --git a/fatfs/examples/flash/example.go b/fatfs/examples/flash/example.go index 865d9d1..b933efd 100644 --- a/fatfs/examples/flash/example.go +++ b/fatfs/examples/flash/example.go @@ -11,8 +11,8 @@ import ( "strings" "time" - "github.com/bgould/tinyfs" - "github.com/bgould/tinyfs/fatfs" + "github.com/tinygo-org/tinyfs" + "github.com/tinygo-org/tinyfs/fatfs" "tinygo.org/x/drivers/flash" ) diff --git a/fatfs/examples/flash/qspi/main.go b/fatfs/examples/flash/qspi/main.go index 3e1db0e..d1f3261 100644 --- a/fatfs/examples/flash/qspi/main.go +++ b/fatfs/examples/flash/qspi/main.go @@ -5,7 +5,7 @@ package main import ( "machine" - example "github.com/bgould/tinyfs/examples/flash" + example "github.com/tinygo-org/tinyfs/examples/flash" "tinygo.org/x/drivers/flash" ) diff --git a/fatfs/examples/flash/spi/main.go b/fatfs/examples/flash/spi/main.go index e0476aa..4a9b2cf 100644 --- a/fatfs/examples/flash/spi/main.go +++ b/fatfs/examples/flash/spi/main.go @@ -5,7 +5,7 @@ package main import ( "machine" - example "github.com/bgould/tinyfs/examples/flash" + example "github.com/tinygo-org/tinyfs/examples/flash" "tinygo.org/x/drivers/flash" ) diff --git a/fatfs/examples/simple/main.go b/fatfs/examples/simple/main.go index 368bfd7..b9cba7a 100644 --- a/fatfs/examples/simple/main.go +++ b/fatfs/examples/simple/main.go @@ -5,8 +5,8 @@ import ( "io" "os" - "github.com/bgould/tinyfs" - "github.com/bgould/tinyfs/fatfs" + "github.com/tinygo-org/tinyfs" + "github.com/tinygo-org/tinyfs/fatfs" ) func main() { diff --git a/fatfs/go_fatfs.go b/fatfs/go_fatfs.go index e73743c..eb9ef88 100644 --- a/fatfs/go_fatfs.go +++ b/fatfs/go_fatfs.go @@ -11,9 +11,9 @@ import ( "time" "unsafe" - "github.com/bgould/tinyfs" - "github.com/bgould/tinyfs/internal/gopointer" - "github.com/bgould/tinyfs/internal/util" + "github.com/tinygo-org/tinyfs" + "github.com/tinygo-org/tinyfs/internal/gopointer" + "github.com/tinygo-org/tinyfs/internal/util" ) const ( diff --git a/fatfs/go_fatfs_callbacks.go b/fatfs/go_fatfs_callbacks.go index f9c27d4..692150a 100644 --- a/fatfs/go_fatfs_callbacks.go +++ b/fatfs/go_fatfs_callbacks.go @@ -8,8 +8,8 @@ import ( "time" "unsafe" - "github.com/bgould/tinyfs" - "github.com/bgould/tinyfs/internal/gopointer" + "github.com/tinygo-org/tinyfs" + "github.com/tinygo-org/tinyfs/internal/gopointer" ) import "C" diff --git a/fatfs/go_fatfs_test.go b/fatfs/go_fatfs_test.go index 9f5cde5..070e048 100644 --- a/fatfs/go_fatfs_test.go +++ b/fatfs/go_fatfs_test.go @@ -3,7 +3,7 @@ package fatfs import ( "testing" - "github.com/bgould/tinyfs" + "github.com/tinygo-org/tinyfs" ) const ( diff --git a/littlefs/go_lfs.go b/littlefs/go_lfs.go index ebbbe67..a5b4aae 100644 --- a/littlefs/go_lfs.go +++ b/littlefs/go_lfs.go @@ -12,9 +12,9 @@ import ( "time" "unsafe" - "github.com/bgould/tinyfs" - "github.com/bgould/tinyfs/internal/gopointer" - "github.com/bgould/tinyfs/internal/util" + "github.com/tinygo-org/tinyfs" + "github.com/tinygo-org/tinyfs/internal/gopointer" + "github.com/tinygo-org/tinyfs/internal/util" ) const ( diff --git a/littlefs/go_lfs_callbacks.go b/littlefs/go_lfs_callbacks.go index c480451..d1bc660 100644 --- a/littlefs/go_lfs_callbacks.go +++ b/littlefs/go_lfs_callbacks.go @@ -4,8 +4,8 @@ import ( "fmt" "unsafe" - "github.com/bgould/tinyfs" - "github.com/bgould/tinyfs/internal/gopointer" + "github.com/tinygo-org/tinyfs" + "github.com/tinygo-org/tinyfs/internal/gopointer" ) import "C" diff --git a/littlefs/go_lfs_test.go b/littlefs/go_lfs_test.go index 2a087cd..face3d7 100644 --- a/littlefs/go_lfs_test.go +++ b/littlefs/go_lfs_test.go @@ -6,7 +6,7 @@ import ( "os" "testing" - "github.com/bgould/tinyfs" + "github.com/tinygo-org/tinyfs" ) const ( From b02c062d12c9be7a2b563ee626ccbc89687f1b5a Mon Sep 17 00:00:00 2001 From: sago35 Date: Fri, 14 May 2021 09:08:29 +0900 Subject: [PATCH 2/2] fatfs: translate osFlags into fatfs flags --- fatfs/go_fatfs.go | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/fatfs/go_fatfs.go b/fatfs/go_fatfs.go index eb9ef88..4b563d5 100644 --- a/fatfs/go_fatfs.go +++ b/fatfs/go_fatfs.go @@ -274,7 +274,7 @@ func (l *FATFS) OpenFile(path string, flags int) (tinyfs.File, error) { // file file.typ = 0 file.hndl = unsafe.Pointer(C.go_fatfs_new_fil()) - errno = C.f_open(l.fs, (*C.FIL)(file.hndl), cs, C.BYTE(flags)) + errno = C.f_open(l.fs, (*C.FIL)(file.hndl), cs, translateFlags(flags)) } // check to make sure f_open/f_opendir didn't produce an error @@ -290,6 +290,34 @@ func (l *FATFS) OpenFile(path string, flags int) (tinyfs.File, error) { return file, nil } +// translateFlags translates osFlags such as os.O_RDONLY into fatfs flags. +// http://elm-chan.org/fsw/ff/doc/open.html +func translateFlags(osFlags int) C.BYTE { + var result C.BYTE + result = C.FA_READ + switch osFlags { + case os.O_RDONLY: + // r + result = C.FA_READ + case os.O_WRONLY | os.O_CREATE | os.O_TRUNC: + // w + result = C.FA_CREATE_ALWAYS | C.FA_WRITE + case os.O_WRONLY | os.O_CREATE | os.O_APPEND: + // a + result = C.FA_OPEN_APPEND | C.FA_WRITE + case os.O_RDWR: + // r+ + result = C.FA_READ | C.FA_WRITE + case os.O_RDWR | os.O_CREATE | os.O_TRUNC: + // w+ + result = C.FA_CREATE_ALWAYS | C.FA_WRITE | C.FA_READ + case os.O_RDWR | os.O_CREATE | os.O_APPEND: + // a+ + default: + } + return result +} + type File struct { fs *FATFS typ uint8