From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chee, Tien Fong Date: Fri, 18 Jan 2019 04:21:21 +0000 Subject: [U-Boot] [PATCH] spl: fat/fs: Add option to include/exclude FAT write build in SPL In-Reply-To: <20190117122518.GQ27429@bill-the-cat> References: <1547709016-11642-1-git-send-email-tien.fong.chee@intel.com> <20190117122518.GQ27429@bill-the-cat> Message-ID: <1547785278.9980.0.camel@intel.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit To: u-boot@lists.denx.de On Thu, 2019-01-17 at 07:25 -0500, Tom Rini wrote: > On Thu, Jan 17, 2019 at 08:54:48AM +0100, Simon Goldschmidt wrote: > > > > On Thu, Jan 17, 2019 at 8:10 AM wrote: > > > > > > > > > From: Tien Fong Chee > > > > > > Most of the time SPL only needs very simple FAT reading, so > > > having > > > CONFIG_SPL_FAT_WRITE to exclude or undefined would help to save > > > 64KiB > > > default max clustersize from memory. > > > > > > Signed-off-by: Tien Fong Chee > > > --- > > >  common/spl/Kconfig |    7 +++++++ > > >  fs/fat/Makefile    |    7 ++++++- > > >  fs/fat/fat.c       |    4 +++- > > >  fs/fs.c            |    3 ++- > > >  4 files changed, 18 insertions(+), 3 deletions(-) > > > > > > diff --git a/common/spl/Kconfig b/common/spl/Kconfig > > > index 0ddbffc..dad4c11 100644 > > > --- a/common/spl/Kconfig > > > +++ b/common/spl/Kconfig > > > @@ -403,6 +403,13 @@ config SPL_FAT_SUPPORT > > >           filesystem from within SPL. Support for the underlying > > > block > > >           device (e.g. MMC or USB) must be enabled separately. > > > > > > +config SPL_FAT_WRITE > > > +       bool "Support write for FAT filesystems" > > > +       help > > > +         Enable write support for FAT and VFAT filesystems with > > > SPL. > > > +         Support for the underlying block device (e.g. MMC or > > > USB) must be > > > +         enabled separately. > > > + > > >  config SPL_FPGA_SUPPORT > > >         bool "Support FPGAs" > > >         help > > > diff --git a/fs/fat/Makefile b/fs/fat/Makefile > > > index e64b61a..654b8c3 100644 > > > --- a/fs/fat/Makefile > > > +++ b/fs/fat/Makefile > > > @@ -1,5 +1,10 @@ > > >  # SPDX-License-Identifier: GPL-2.0+ > > >  # > > > > > > +ifdef CONFIG_SPL_BUILD > > >  obj-$(CONFIG_FS_FAT)   := fat.o > > > -obj-$(CONFIG_FAT_WRITE):= fat_write.o > > > +obj-$(CONFIG_SPL_FAT_WRITE) = fat_write.o > > > +else > > > +obj-$(CONFIG_FS_FAT)   := fat.o > > > +obj-$(CONFIG_FAT_WRITE) = fat_write.o > Like the ext4 one, we need a patch to rename SPL_FAT_SUPPORT to > SPL_FS_FAT and then: > > obj-$(CONFIG_$(SPL_)FS_FAT) += fat.o > obj-$(CONFIG_$(SPL_)FAT_WRITE) += fat_write.o Okay. > > > > > > > > > +endif > > > diff --git a/fs/fat/fat.c b/fs/fat/fat.c > > > index ac8913e..8803fb4 100644 > > > --- a/fs/fat/fat.c > > > +++ b/fs/fat/fat.c > > > @@ -145,7 +145,9 @@ static void get_name(dir_entry *dirent, char > > > *s_name) > > >  } > > > > > >  static int flush_dirty_fat_buffer(fsdata *mydata); > > > -#if !defined(CONFIG_FAT_WRITE) > > > + > > > +#if (!defined(CONFIG_SPL_BUILD) && !defined(CONFIG_FAT_WRITE)) > > > || \ > > > +       (defined(CONFIG_SPL_BUILD) && > > > !defined(CONFIG_SPL_FAT_WRITE)) > > What about 'CONFIG_IS_ENABLED(FAT_WRITE)' ? > Yes, CONFIG_IS_ENABLED(FAT_WRITE) please. Okay. >