1. 12 4月, 2019 18 次提交
  2. 10 4月, 2019 22 次提交
    • T
      Merge branch '2019-04-09-master-imports-fs' · 48ff1bc4
      Tom Rini 提交于
      - test.py tests for mmc
      - ext4 symlink support and other fixes
      - ext4 block group descriptor sizing
      48ff1bc4
    • T
      test.py: Disable fsck for FAT tests for now · 0a840660
      Tom Rini 提交于
      Currently enabling fsck on FAT16/FAT32 exposes that we have problems
      with:
      TestFsBasic.test_fs13[fat16]
      TestFsBasic.test_fs11[fat32]
      TestFsBasic.test_fs12[fat32]
      TestFsBasic.test_fs13[fat32]
      TestFsExt.test_fs_ext1[fat32]
      TestFsExt.test_fs_ext2[fat32]
      TestFsExt.test_fs_ext3[fat32]
      TestFsExt.test_fs_ext4[fat32]
      TestFsExt.test_fs_ext5[fat32]
      TestFsExt.test_fs_ext6[fat32]
      TestFsExt.test_fs_ext7[fat32]
      TestFsExt.test_fs_ext8[fat32]
      TestFsExt.test_fs_ext9[fat32]
      TestMkdir.test_mkdir6[fat16]
      TestMkdir.test_mkdir1[fat32]
      TestMkdir.test_mkdir2[fat32]
      TestMkdir.test_mkdir3[fat32]
      TestMkdir.test_mkdir4[fat32]
      TestMkdir.test_mkdir5[fat32]
      TestMkdir.test_mkdir6[fat32]
      TestUnlink.test_unlink1[fat16]
      TestUnlink.test_unlink2[fat16]
      TestUnlink.test_unlink3[fat16]
      TestUnlink.test_unlink4[fat16]
      TestUnlink.test_unlink5[fat16]
      TestUnlink.test_unlink6[fat16]
      TestUnlink.test_unlink7[fat16]
      TestUnlink.test_unlink1[fat32]
      TestUnlink.test_unlink2[fat32]
      TestUnlink.test_unlink3[fat32]
      TestUnlink.test_unlink4[fat32]
      TestUnlink.test_unlink5[fat32]
      TestUnlink.test_unlink6[fat32]
      TestUnlink.test_unlink7[fat32]
      
      This is because we don't update the "information sector" on FAT32.
      While in the future we should resolve this problem and include that
      feature, we should enable fsck for ext4 to ensure that things remain in
      good shape there.
      Signed-off-by: NTom Rini <trini@konsulko.com>
      0a840660
    • B
      Fix ext4 block group descriptor sizing · febbc583
      Benjamin Lim 提交于
      Ext4 allows for arbitrarily sized block group descriptors when 64-bit
      addressing is enabled, which was previously not properly supported. This
      patch dynamically allocates a chunk of memory of the correct size.
      Signed-off-by: NBenjamin Lim <jarsp.ctf@gmail.com>
      febbc583
    • M
      test/py: mmc: Add 'mmc read' performance check · e5519797
      Marek Vasut 提交于
      Add option to the mmc rd test to check the duration of the
      execution of the mmc read command. This allows intercepting
      read performance regressions.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Tom Rini <trini@konsulko.com>
      Cc: Simon Glass <sjg@chromium.org>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      e5519797
    • M
      test/py: mmc: Add 'mmc info' test · 4ffec8cd
      Marek Vasut 提交于
      Add test for 'mmc info' subcommand. This tests whether the card
      information is obtained correctly and verifies the device, bus
      speed, bus mode and bus width.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Tom Rini <trini@konsulko.com>
      Cc: Simon Glass <sjg@chromium.org>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      4ffec8cd
    • M
      test/py: mmc: Add 'mmc rescan' test · ce4b2caf
      Marek Vasut 提交于
      Add test for 'mmc rescan' subcommand. This tests whether the
      system can switch to a specific card and then rescan the card.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Tom Rini <trini@konsulko.com>
      Cc: Simon Glass <sjg@chromium.org>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      ce4b2caf
    • M
      test/py: mmc: Add 'mmc dev' test · 86dfd152
      Marek Vasut 提交于
      Add separate test for 'mmc dev' subcommand. This tests whether
      the system can switch to a specific card.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Tom Rini <trini@konsulko.com>
      Cc: Simon Glass <sjg@chromium.org>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      86dfd152
    • M
      test/py: mmc: Factor out device selection · d22f7ad8
      Marek Vasut 提交于
      Factor out the 'mmc dev' call so it can be recycled by other tests.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Tom Rini <trini@konsulko.com>
      Cc: Simon Glass <sjg@chromium.org>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      d22f7ad8
    • A
      fs: fat: fix reading non-cluster-aligned root directory · 9b18358d
      Anssi Hannula 提交于
      A FAT12/FAT16 root directory location is specified by a sector offset and
      it might not start at a cluster boundary. It also resides before the
      data area (before cluster 2).
      
      However, the current code assumes that the root directory is located at
      a beginning of a cluster, causing no files to be found if that is not
      the case.
      
      Since the FAT12/FAT16 root directory is located before the data area
      and is not aligned to clusters, using unsigned cluster numbers to refer
      to the root directory does not work well (the "cluster number" may be
      negative, and even allowing it be signed would not make it properly
      aligned).
      
      Modify the code to not use the normal cluster numbering when referring to
      the root directory of FAT12/FAT16 and instead use a cluster-sized
      offsets counted from the root directory start sector.
      
      This is a relatively common case as at least the filesystem formatter on
      Win7 seems to create such filesystems by default on 2GB USB sticks when
      "FAT" is selected (cluster size 64 sectors, rootdir size 32 sectors,
      rootdir starts at half a cluster before cluster 2).
      
      dosfstools mkfs.vfat does not seem to create affected filesystems.
      Signed-off-by: NAnssi Hannula <anssi.hannula@bitwise.fi>
      Reviewed-by: NBernhard Messerklinger <bernhard.messerklinger@br-automation.com>
      Tested-by: NBernhard Messerklinger <bernhard.messerklinger@br-automation.com>
      9b18358d
    • G
      fs: ext4: Problem with ext4load and sparse files · 1c48fda3
      Gero Schumacher 提交于
      Hi,
      
      when I try to load a sparse file via ext4load, I am getting the error message
      'invalid extent'
      
      After a deeper look in the code, it seems to be an issue in the function ext4fs_get_extent_block in fs/ext4/ext4_common.c:
      
      The file starts with 1k of zeros. The blocksize is 1024. So the first extend block contains the following information:
      
      eh_entries: 1
      eh_depth: 1
      ei_block 1
      
      When the upper layer (ext4fs_read_file) asks for fileblock 0, we are running in the 'invalid extent' error message.
      For me it seems, that the code is not prepared for handling a sparse block at the beginning of the file. The following change, solved my problem:
      
      I am really not an expert in ext4 filesystems. Can somebody please have a look at this issue and give me a feedback, if I am totally wrong or not?
      1c48fda3
    • J
      test: fs: Added tests for symlinks · ef79284e
      Jean-Jacques Hiblot 提交于
      Test cases are:
      1) basic link creation, verify it can be followed
      2) chained links, verify it can be followed
      3) replace exiting file a with a link, and a link with a link. verify it
         can be followed
      4) create a broken link, verify it can't be followed
      Signed-off-by: NJean-Jacques Hiblot <jjhiblot@ti.com>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      ef79284e
    • J
      fs: Add a new command to create symbolic links · aaa12157
      Jean-Jacques Hiblot 提交于
      The command line is:
      ln <interface> <dev[:part]> target linkname
      
      Currently symbolic links are supported only in ext4 and only if the option
      CMD_EXT4_WRITE is enabled.
      Signed-off-by: NJean-Jacques Hiblot <jjhiblot@ti.com>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      aaa12157
    • J
      fs: ext4: Add support for the creation of symbolic links · 5efc0686
      Jean-Jacques Hiblot 提交于
      Re-use the functions used to write/create a file, to support creation of a
      symbolic link.
      The difference with a regular file are small:
      - The inode mode is flagged with S_IFLNK instead of S_IFREG
      - The ext2_dirent's filetype is FILETYPE_SYMLINK instead of FILETYPE_REG
      - Instead of storing the content of a file in allocated blocks, the path
      to the target is stored. And if the target's path is short enough, no block
      is allocated and the target's path is stored in ext2_inode.b.symlink
      
      As with regulars files, if a file/symlink with the same name exits, it is
      unlinked first and then re-created.
      Signed-off-by: NJean-Jacques Hiblot <jjhiblot@ti.com>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      [trini: Fix ext4 env code]
      Signed-off-by: NTom Rini <trini@konsulko.com>
      5efc0686
    • J
      fs: ext4: constify the buffer passed to write functions · b000180b
      Jean-Jacques Hiblot 提交于
      There is no need to modify the buffer passed to ext4fs_write_file().
      The memset() call is not required here and was likely copied from the
      equivalent part of the ext4fs_read_file() function where we do need it.
      Signed-off-by: NJean-Jacques Hiblot <jjhiblot@ti.com>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      b000180b
    • J
      test: fs: Add filesystem integrity checks · 29010058
      Jean-Jacques Hiblot 提交于
      We need to make sure that file writes,file creation, etc. are properly
      performed and do not corrupt the filesystem.
      To help with this, introduce the assert_fs_integrity() function that
      executes the appropriate fsck tool. It should be called at the end of any
      test that modify the content/organization of the filesystem.
      Currently only supports FATs and EXT4.
      Signed-off-by: NJean-Jacques Hiblot <jjhiblot@ti.com>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      29010058
    • J
      test: fs: disable the metadata checksums on ext4 filesystems · 5cfc73e6
      Jean-Jacques Hiblot 提交于
      If the metadata checksums are enabled, all write operations will fail.
      Signed-off-by: NJean-Jacques Hiblot <jjhiblot@ti.com>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      5cfc73e6
    • S
      fs: ext4: cache extent data · d5aee659
      Stephen Warren 提交于
      When a file contains extents, U-Boot currently reads extent-related data
      for each block in the file, even if that data is located in the same
      block each time. This significantly slows down loading of files that use
      extents. Implement a very dumb cache to prevent repeatedly reading the
      same block. Files with extents now load as fast as files without.
      
      Note: There are many cases where read_allocated_block() is called. This
      patch only addresses one of those places; all others still read redundant
      data in any case they did before. This is a minimal patch to fix the
      load command; other cases aren't fixed.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      d5aee659
    • E
      ARM: rmobile: rcar-common: Zap arch_preboot_os() · c8630bb0
      Eugeniu Rosca 提交于
      v2018.01 commit e23eb942 ("ARM: rmobile: Stop using
      rcar-common/common.c on Gen3") removed
      board/renesas/rcar-common/common.c from the build chain with the
      reasoning that calling arch_preboot_os() is no longer needed.
      
      However, it left the arch_preboot_os() in place. Get rid of it.
      This is done in preparation of resurrecting rcar-common/common.c.
      
      NOTE: The three removed header includes (io.h, sys_proto.h, rcar-mstp.h)
      are in direct relationship with the dropped arch_preboot_os() hook. The
      other headers (common.h, rmobile.h) are going to be needed by pretty
      much anything that is going to appear in the rcar common code. So, keep
      the two in place.
      Signed-off-by: NEugeniu Rosca <erosca@de.adit-jv.com>
      c8630bb0
    • M
      ARM: dts: rmobile: Enable USB on E2 Alt · 81abfa68
      Marek Vasut 提交于
      The E2 Alt board has two USB ports, add missing DT nodes to make the
      USB available.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
      81abfa68
    • M
      ARM: rmobile: alt: Increase USB power-good delay · 8c563501
      Marek Vasut 提交于
      Increase the USB power good delay on Alt, this is required with
      certain USB sticks, otherwise they might not be detected.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
      8c563501
    • M
      net: sh_eth: Initialize PHY in probe() once · 4a45e93f
      Marek Vasut 提交于
      Reset and initialize the PHY once in the probe() function rather than
      doing it over and over again is start() function. This requires us to
      keep the clock enabled while the driver is in use. This significantly
      reduces the time between transfers as the PHY doesn't have to restart
      autonegotiation between transfers, which takes forever.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Joe Hershberger <joe.hershberger@ni.com>
      4a45e93f
    • M
      ARM: dts: rmobile: Synchronize Gen3 DTs with Linux 5.0 · 317d13ac
      Marek Vasut 提交于
      Synchronize R-Car Gen3 device trees with Linux 5.0,
      commit 1c163f4c7b3f621efff9b28a47abb36f7378d783 .
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
      317d13ac