If SCSI is enabled, U-Boot should try to boot also from SCSI device on
Turris Omnia.
Signed-off-by: Marek Behún
Reviewed-by: Stefan Roese
---
include/configs/turris_omnia.h | 7 +++
1 file changed, 7 insertions(+)
diff --git a/include/configs/turris_omnia.h b/include/configs
Refactor code which accesses the microcontroller and EEPROM via I2C.
Signed-off-by: Marek Behún
Reviewed-by: Stefan Roese
---
board/CZ.NIC/turris_omnia/turris_omnia.c | 205 ---
1 file changed, 109 insertions(+), 96 deletions(-)
diff --git a/board/CZ.NIC/turris_omnia
Since board watchdog is now unified and not handled in board files,
remove the unnecessary includes.
Signed-off-by: Marek Behún
Reviewed-by: Stefan Roese
---
board/CZ.NIC/turris_mox/turris_mox.c | 4
board/CZ.NIC/turris_omnia/turris_omnia.c | 4
2 files changed, 8 deletions
Other filesystem drivers don't do this.
Signed-off-by: Marek Behún
---
fs/btrfs/super.c | 11 +--
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index 7aaf8f9b0d..2dc4a6fcd7 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
Stefan,
thanks for this. My workaround for this was to increase
CONFIG_SPL_SIZE from 140 KiB to 160 KiB, in
include/configs/turris_omnia.h.
But yours works as well. Perhaps we should do both if the image
increases in the future...
Reviewed-by: Marek Behún
On Thu, 25 Apr 2019 07:32:12 +0200
o the bind function reads from bad memory place, which causes a fault.
Move the i2c slave disabling code into the probe method of mvtwsi, by
that time dm_set_translation_offset is already called.
Signed-off-by: Marek Behún
Cc: Baruch Siach
Cc: Heiko Schocher
Cc: Chris Packham
Cc: Stefan Roese
--
because
I do not know if it would not break other devices.
Signed-off-by: Marek Behún
Cc: Mario Six
Cc: Stefan Roese
---
drivers/i2c/mvtwsi.c | 4
1 file changed, 4 insertions(+)
diff --git a/drivers/i2c/mvtwsi.c b/drivers/i2c/mvtwsi.c
index b0f7c3e057..ef269f3b0c 100644
--- a/drivers/i2
Hi Stefan, could you please review and apply these patches for Turris Omnia?
Marek
Marek Behún (3):
i2c: mvtwsi: fix disabling i2c slave on Armada 38x
mvebu: turris_omnia: remove redundant code
arm: mvebu: turris_omnia: add XHCI to defconfig
Pierre Bourdon (1):
mvebu: turris_omnia: fix
From: Pierre Bourdon
Commit c4bd12a7dad4 ("i2c: mux: Generate longer i2c mux name") changed
the naming scheme of i2c devices within a mux. This broke references to
i2c@0 in the Turris Omnia board initialization code.
Signed-off-by: Pierre Bourdon
Reviewed-by: Marek Behún
---
bo
Add XHCI_HOST and XHCI_MVEBU to defconfig, so that user's can by default
boot from USB on Turris Omnia.
Signed-off-by: Marek Behún
---
configs/turris_omnia_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configs/turris_omnia_defconfig b/configs/turris_omnia_defconfig
index
The i2c slave disabling is done by mvtwsi driver and is not needed here.
Signed-off-by: Marek Behún
Cc: Baruch Siach
---
board/CZ.NIC/turris_omnia/turris_omnia.c | 11 ---
1 file changed, 11 deletions(-)
diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c
b/board/CZ.NIC
:) I did not know about that, thanks.
On Thu, 25 Apr 2019 15:35:10 +0200
Pierre Bourdon wrote:
> On Thu, Apr 25, 2019 at 3:30 PM Marek Behún
> wrote:
> >
> > Commit 173ec351 ("i2c: mvtwsi: disable i2c slave on Armada 38x")
> > adds slave disabling code on
Hi,
zstd has been enabled in kernel btrfs driver for over a year, it is time
we support this also in U-Boot.
This xxhash and zstd library are imported from kernel with minimal changes.
This was tested on ARM target (Turris Omnia).
Marek
Marek Behún (3):
lib: Add xxhash support
lib: add
This adds the xxhash support from Linux. Files are almost identical to
those added to Linux in commit 5d240522 ("lib: Add xxhash module") (they
haven't been touched since in Linux). The only difference is to add some
includes to be compatible with U-Boot.
Signed-off-by: Marek Behún
--
This adds decompression support for Zstandard, which has been included
in Linux btrfs driver for some time.
Signed-off-by: Marek Behún
---
fs/btrfs/Kconfig | 1 +
fs/btrfs/btrfs_tree.h | 5 ++--
fs/btrfs/compression.c | 59 ++
3 files changed, 63
,
but for some strange reason it does and this seems to be the simplest
solution. Fix it since it caused regressions on Omnia.
Signed-off-by: Marek Behún
Cc: Stefan Roese
Cc: Dirk Eibach
Cc: Mario Six
Cc: Chris Packham
Cc: Phil Sutter
Cc: VlaoMao
---
drivers/pci/pci_mvebu.c | 8
1 file changed
value.
Signed-off-by: Marek Behún
---
drivers/spi/mvebu_a3700_spi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/spi/mvebu_a3700_spi.c b/drivers/spi/mvebu_a3700_spi.c
index feeafdceaa..cc73ff3fee 100644
--- a/drivers/spi/mvebu_a3700_spi.c
+++ b/drivers/spi
Add Macronis SPI flash support - some Omnia routers are shipped with
this SPI flash chip.
Also add the memtest command to defconfig.
Signed-off-by: Marek Behún
---
configs/turris_omnia_defconfig | 3 +++
1 file changed, 3 insertions(+)
diff --git a/configs/turris_omnia_defconfig b/configs
:) probably yes
On Wed, 17 Jul 2019 18:21:35 +0200
Stefan Roese wrote:
> On 17.07.19 16:58, Marek Behún wrote:
> > The prescaler value computation can yield wrong result if given
> > 0x1f at the beginning: the value is computed to be 0x20, but the
> > maximum value the r
Linux's documentation (Documentation/devicetree/bindings/mmc/mmc.txt)
says the property should be named cd-gpios, not cd-gpio. All the dts
files use cd-gpios.
Signed-off-by: Marek Behún
Cc: T Karthik Reddy
Cc: Michal Simek
Cc: Peng Fan
---
drivers/mmc/sdhci.c | 2 +-
1 file changed, 1
macro.
Signed-off-by: Marek Behún
---
drivers/spi/mvebu_a3700_spi.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/spi/mvebu_a3700_spi.c b/drivers/spi/mvebu_a3700_spi.c
index feeafdceaa..99ad505f24 100644
--- a/drivers/spi/mvebu_a3700_spi.c
+++ b/drivers/spi
Move Armada-8k specific DRAM init code into armada-8k specific
directory.
Signed-off-by: Marek Behún
---
arch/arm/mach-mvebu/arm64-common.c | 46 +--
arch/arm/mach-mvebu/armada8k/Makefile | 3 +-
arch/arm/mach-mvebu/armada8k/dram.c| 52
igned-off-by: Marek Behún
---
arch/arm/mach-mvebu/arm64-common.c | 5 +
arch/arm/mach-mvebu/armada3700/cpu.c | 252 ++---
arch/arm/mach-mvebu/include/mach/cpu.h | 4 +
3 files changed, 235 insertions(+), 26 deletions(-)
diff --git a/arch/arm/mach-mvebu/arm64-common.c
b
accordingly.
Signed-off-by: Marek Behún
---
arch/arm/mach-mvebu/armada3700/cpu.c | 52 ++
arch/arm/mach-mvebu/include/mach/cpu.h | 3 ++
2 files changed, 55 insertions(+)
diff --git a/arch/arm/mach-mvebu/armada3700/cpu.c
b/arch/arm/mach-mvebu/armada3700/cpu.c
index
if someone tested these on other A3700 boards, like
EspressoBIN.
Marek
Marek Behún (5):
arm64: mvebu: armada-8k: move dram init code
arm64: mvebu: a37xx: improve code determining memory info structures
arm: mvebu: turris_mox: support devices with RAM > 1 GB
arm64: mvebu: a37xx: add dev
it is needed to increase
CONFIG_NR_DRAM_BANKS to 2 in turris_mox_defconfig.
Signed-off-by: Marek Behún
---
board/CZ.NIC/turris_mox/turris_mox.c | 16
configs/turris_mox_defconfig | 2 +-
2 files changed, 1 insertion(+), 17 deletions(-)
diff --git a/board/CZ.NIC/turris_mox
Use the new a3700_fdt_fix_pcie_regions function in turris_mox.c so that
MOX boards with 4 GB RAM are fully supported.
Signed-off-by: Marek Behún
---
board/CZ.NIC/turris_mox/turris_mox.c | 11 +++
1 file changed, 11 insertions(+)
diff --git a/board/CZ.NIC/turris_mox/turris_mox.c
b
clock rate differently from Linux.
Signed-off-by: Marek Behún
---
drivers/clk/mvebu/armada-37xx-periph.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/clk/mvebu/armada-37xx-periph.c
b/drivers/clk/mvebu/armada-37xx-periph.c
index 068e48ea04..855f979b4f 100644
This driver is no longer needed since A37xx was ported to generic-phy.
The only thing not covered by those drivers is eMMC PHY init code, but
even this is already done in different driver (xenon_sdhci).
Signed-off-by: Marek Behún
---
drivers/phy/marvell/Makefile |1 -
drivers/phy
This patch converts device trees and defconfigs of Armada 37xx boards
(EspressoBIN, A37xx DB, uDPU and Turris MOX) to use the newly ported
comphy and utmi generic-phy drivers.
For Turris Mox also remove the comphy_update_map implementation, since
it is no longer needed.
Signed-off-by: Marek
Use generic-phy API to power on PCIe PHY.
Since the new comphy drivers only does a SMC call into ARM Trusted
Firmware and the comphy driver in ATF does not do TX Enabling (step 7 in
PCIe PHY power on algorithm), add TX enabling into this driver.
Signed-off-by: Marek Behún
---
drivers/pci/pci
Use generic-phy API to power on SATA PHY.
Signed-off-by: Marek Behún
---
drivers/ata/ahci_mvebu.c | 35 +++
1 file changed, 35 insertions(+)
diff --git a/drivers/ata/ahci_mvebu.c b/drivers/ata/ahci_mvebu.c
index 48a9d00d14..d229ab84ed 100644
--- a/drivers/ata
Use generic-phy API to power on comphy in mvneta driver.
Signed-off-by: Marek Behún
---
drivers/net/mvneta.c | 23 +++
1 file changed, 23 insertions(+)
diff --git a/drivers/net/mvneta.c b/drivers/net/mvneta.c
index d737400a20..31548445d7 100644
--- a/drivers/net/mvneta.c
Use the new usb_phys_setup and usb_phys_shutdown to initialize
potential generic-phys in the ehci-marvell driver.
Signed-off-by: Marek Behún
---
drivers/usb/host/ehci-marvell.c | 33 ++---
1 file changed, 30 insertions(+), 3 deletions(-)
diff --git a/drivers/usb
This patch ports the A3700 UTMI PHY driver from Linux.
Signed-off-by: Marek Behún
---
drivers/phy/Kconfig| 8 +
drivers/phy/Makefile | 1 +
drivers/phy/phy-mvebu-a3700-utmi.c | 235 +
3 files changed, 244 insertions(+)
create mode
Since XHCI may also want to use the generic-phy functions from
ehci-hcd.c, move them into separate phy.c.
Change these functions so that they enumerate end power on all
generic-phys defined in device tree for a given USB controller.
Signed-off-by: Marek Behún
---
drivers/usb/host/Makefile
driver to work, you have to use
current ARM Trusted Firmware (such that it supports PHY powering on/off
via SMC calls).
It would be nice if people tested this series.
Marek
Marek Behún (11):
phy: add support for setting phy mode
phy: port Armada 37xx UTMI PHY from Linux
phy: port Armada
Import enum phy_mode from Linux and add .set_mode method to generic-phy
operations structure.
Signed-off-by: Marek Behún
---
drivers/phy/phy-uclass.c | 11 +
include/generic-phy.h| 51
2 files changed, 62 insertions(+)
diff --git a/drivers
This patch converts device trees and defconfigs of Armada 37xx boards
(EspressoBIN, A37xx DB, uDPU and Turris MOX) to use the newly ported
comphy and utmi generic-phy drivers.
For Turris Mox also remove the comphy_update_map implementation, since
it is no longer needed.
Signed-off-by: Marek
This patch ports the A3700 COMPHY driver from Linux.
Signed-off-by: Marek Behún
---
drivers/phy/Kconfig | 8 +
drivers/phy/Makefile | 1 +
drivers/phy/phy-mvebu-a3700-comphy.c | 315 +++
3 files changed, 324 insertions(+)
create mode
Use the new usb_phys_setup and usb_phys_shutdown to initialize
potential generic-phys in the xhci-mvebu driver.
Signed-off-by: Marek Behún
---
drivers/usb/host/xhci-mvebu.c | 19 ++-
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/host/xhci-mvebu.c b
Commit e8e9715df2d4 requires the USB3 regulator node to have the
enable-active-high property for the regulator to work properly. The
GPIO_ACTIVE_HIGH constant is not enough anymore.
Signed-off-by: Marek Behún
Fixes: e8e9715df2d4 ("regulator: fixed: Modify enable-active-high..."
Use macro MVEBU_REGISTER to access register addresses instead of
hardcoded addresses.
Signed-off-by: Marek Behún
---
board/CZ.NIC/turris_mox/mox_sp.c | 14 --
board/CZ.NIC/turris_mox/turris_mox.c | 11 ++-
2 files changed, 14 insertions(+), 11 deletions(-)
diff --git
Sort #includes alphabetically, the only exception is common.h, which is
included first in most parts of U-Boot.
Signed-off-by: Marek Behún
---
board/CZ.NIC/turris_mox/turris_mox.c | 16
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/board/CZ.NIC/turris_mox
) are present, the code
enables corresponding ethernet and swtich nodes and DSA connections.
For the SFP cage the SFP GPIO controller node and SFP node are also
enabled.
Signed-off-by: Marek Behún
Reviewed-by: Stefan Roese
---
board/CZ.NIC/turris_mox/turris_mox.c | 295
Marek
Marek Behún (6):
arm: mvebu: turris_mox: Fix early SPI communication
arm: mvebu: dts: turris_mox: update sdhci properties
arm: mvebu: turris_mox: Setup Linux's device tree before boot
arm: mvebu: dts: turris_mox: fix USB3 regulator
arm: mvebu: turris_mox: don't use hardcoded addresses
that writing the SPI configuration register.
Signed-off-by: Marek Behún
Reviewed-by: Stefan Roese
---
board/CZ.NIC/turris_mox/turris_mox.c | 9 ++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/board/CZ.NIC/turris_mox/turris_mox.c
b/board/CZ.NIC/turris_mox/turris_mox.c
index
With recent changes to the mmc subsystem (chip detect code etc) update
the sdhci node of the Turris Mox device tree.
Signed-off-by: Marek Behún
Reviewed-by: Stefan Roese
---
arch/arm/dts/armada-3720-turris-mox.dts | 18 ++
1 file changed, 18 insertions(+)
diff --git a/arch/arm
that writing the SPI configuration register.
Signed-off-by: Marek Behún
---
board/CZ.NIC/turris_mox/turris_mox.c | 9 ++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/board/CZ.NIC/turris_mox/turris_mox.c
b/board/CZ.NIC/turris_mox/turris_mox.c
index 377191baef..0b13d1d190 100644
Commit e8e9715df2d4 requires the USB3 regulator node to have the
enable-active-high property for the regulator to work properly. The
GPIO_ACTIVE_HIGH constant is not enough anymore.
Signed-off-by: Marek Behún
Fixes: e8e9715df2d4 ("regulator: fixed: Modify enable-active-high..."
With recent changes to the mmc subsystem (chip detect code etc) update
the sdhci node of the Turris Mox device tree.
Signed-off-by: Marek Behún
Reviewed-by: Stefan Roese
---
arch/arm/dts/armada-3720-turris-mox.dts | 18 ++
1 file changed, 18 insertions(+)
diff --git a/arch/arm
) are present, the code
enables corresponding ethernet and swtich nodes and DSA connections.
For the SFP cage the SFP GPIO controller node and SFP node are also
enabled.
Signed-off-by: Marek Behún
---
board/CZ.NIC/turris_mox/turris_mox.c | 263 +++
configs/turris_mox_defconfig
When logical address of a regular extent is 0, the extent is sparse and
consists of all zeros.
Without this when sparse extents are used in a file reading fails with
Cannot map logical address 0 to physical
Signed-off-by: Marek Behún
---
fs/btrfs/extent-io.c | 6 ++
1 file changed, 6
.
Signed-off-by: Marek Behún
---
board/CZ.NIC/turris_mox/turris_mox.c | 247 +++
configs/turris_mox_defconfig | 1 +
2 files changed, 248 insertions(+)
diff --git a/board/CZ.NIC/turris_mox/turris_mox.c
b/board/CZ.NIC/turris_mox/turris_mox.c
index 7118096f32..5137ed9d00
Commit e8e9715df2d4 requires the USB3 regulator node to have the
enable-active-high property for the regulator to work properly. The
GPIO_ACTIVE_HIGH constant is not enough anymore.
Signed-off-by: Marek Behún
Fixes: e8e9715df2d4 ("regulator: fixed: Modify enable-active-high...")
---
When logical address of a regular extent is 0, the extent is sparse and
consists of all zeros.
Without this when sparse extents are used in a file reading fails with
Cannot map logical address 0 to physical
Signed-off-by: Marek Behún
---
fs/btrfs/extent-io.c | 6 ++
1 file changed, 6
With recent changes to the mmc subsystem (chip detect code etc) update
the sdhci node of the Turris Mox device tree.
Signed-off-by: Marek Behún
---
arch/arm/dts/armada-3720-turris-mox.dts | 18 ++
1 file changed, 18 insertions(+)
diff --git a/arch/arm/dts/armada-3720-turris
that writing the SPI configuration register.
Signed-off-by: Marek Behún
---
board/CZ.NIC/turris_mox/turris_mox.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/board/CZ.NIC/turris_mox/turris_mox.c
b/board/CZ.NIC/turris_mox/turris_mox.c
index 377191baef..7118096f32 100644
Signed-off-by: Marek Behún
---
MAINTAINERS | 7 +++
1 file changed, 7 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 92dda40a85..213e2f4bad 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -527,6 +527,13 @@ M: Simon Glass
S: Maintained
F: tools/binman/
+BTRFS
+M
On Wed, 2 Sep 2020 09:11:52 +0200
Andre Heider wrote:
> On 31/08/2020 09:52, Pali Rohár wrote:
> > On Monday 31 August 2020 05:25:38 Andre Heider wrote:
> >> From: Grzegorz Jaszczyk
> >>
> >> The settings of reference clock is done via pcie address space and
> >> not comphy address space -
On Fri, 11 Sep 2020 10:37:42 +0200
Andre Heider wrote:
> On 11/09/2020 08:43, Stefan Roese wrote:
> > Hi Pali, Andre and others,
> >
> > On 10.09.20 21:04, Pali Rohár wrote:
> >> On Thursday 10 September 2020 19:53:40 Andre Heider wrote:
> >>> Use mmc_of_parse() to set the common host
; - case 4:
> - host->host_caps |= MMC_MODE_4BIT;
> - break;
> - case 1:
> - break;
> - default:
> - printf("Invalid \"bus-width\" value\n");
> - return -EINVAL;
> - }
> +
> + ret = mmc_of_parse(dev, >cfg);
> + if (ret)
> + return ret;
>
> host->ops = _sdhci_ops;
>
Tested-by: Marek Behún
On Wed, 9 Sep 2020 00:38:31 +0200
Pali Rohár wrote:
> On Tuesday 08 September 2020 08:52:56 Tom Rini wrote:
> > On Tue, Sep 08, 2020 at 10:14:15AM +0200, Andre Heider wrote:
> > > On 08/09/2020 09:42, Pali Rohár wrote:
> > > > On Tuesday 08 September 2020 08:35:00 Andre Heider wrote:
> > >
On Fri, 11 Sep 2020 14:21:46 +0200
Stefan Roese wrote:
> Thanks. Unfortunately this is taking a bit too long for me, as I
> have to leave in about an hour. I will take care of these patches
> in a bit over a week.
>
> Thanks,
> Stefan
Happy vacation, Stefan :)
On Fri, 11 Sep 2020 17:52:26 +0200
Andre Heider wrote:
> Hi Marek,
>
> On 11/09/2020 13:55, Marek Behún wrote:
> > On Wed, 9 Sep 2020 00:38:31 +0200 Pali Rohár
> > wrote:
> >> On Tuesday 08 September 2020 08:52:56 Tom Rini wrote:
> >>> Note that
Reviewed-by: Marek Behún
e, we need this patch.
Signed-off-by: Marek Behún
Tested-by: Pali Rohár
Cc: Stefan Roese
---
arch/arm/dts/armada-3720-espressobin.dts | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm/dts/armada-3720-espressobin.dts
b/arch/arm/dts/armada-3720-espressobin.dts
index
Hi Qu,
when applying whole series, there are several warning spewed by git:
trailing whitespaces, new lines at EOF, spaces before tab in indent.
It is possible that this is because the code is copypasted from
btrfs-progs and this issues come from there.
Also patches 26 and 27 have almost same
to register one btrfs device to the list.
This is the main part of the multi-device btrfs assembling process.
Although we're not going to support multiple devices until U-Boot
allows us to scan one device without actually opening it.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs
From: Qu Wenruo
To avoid name conflicting between the extent buffer based btrfs_path
from btrfs-progs, rename struct btrfs_path to struct __btrfs_path.
Also rename btrfs_free_path() to __btrfs_free_path() to avoid conflicts.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs
-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/compat.h | 14 +
fs/btrfs/ctree.h | 1136
fs/btrfs/disk-io.h |9 -
3 files changed, 1064 insertions(+), 95 deletions(-)
diff --git a/fs/btrfs/compat.h b/fs/btrfs/compat.h
index e7d7dc9f6e
in kernel. Remove it completely.
With the core function in place, btrfs developers should feel at home now.
This also crossports supporting code like btrfs_previous_item() to
ctree.[ch].
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/ctree.c | 537
From: Qu Wenruo
Rename btrfs_file_read() and its callees to avoid name conflicts with
the incoming new code.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/btrfs.c | 2 +-
fs/btrfs/btrfs.h | 6 +++---
fs/btrfs/extent-io.c | 4 ++--
fs/btrfs/inode.c | 6 +++---
4
root.
- Output the unknown type
If the DIR_ITEM is corrupted, at least don't try to access the memory
out of boundary.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/btrfs.c| 157 +++-
fs/btrfs/btrfs.h| 5 --
fs/btrfs/ctree.h
Reviewed-by: Marek Behún
---
fs/btrfs/btrfs.c | 2 +-
fs/btrfs/btrfs.h | 2 +-
fs/btrfs/chunk-map.c | 2 +-
fs/btrfs/volumes.c | 301 +++
fs/btrfs/volumes.h | 2 +
5 files changed, 306 insertions(+), 3 deletions(-)
diff --git a/fs/btrfs
-by: Marek Behún
---
fs/btrfs/Makefile| 2 +-
fs/btrfs/btrfs.c | 15 +-
fs/btrfs/btrfs.h | 1 +
fs/btrfs/compat.h| 2 +
fs/btrfs/ctree.h | 4 +
fs/btrfs/disk-io.c | 509 +--
fs/btrfs/disk-io.h | 19 ++
fs/btrfs/root-tree.c | 47
is a orphan at read time, there is no need to
check root backref, this makes the code a little easier to read.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/ctree.h| 4 +
fs/btrfs/dir-item.c | 106 +++
fs/btrfs/inode.c| 250
From: Qu Wenruo
This implements lookup_data_extent() function for the incoming
new implementation of btrfs_file_read().
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/inode.c | 101 +++
1 file changed, 101 insertions(+)
diff --git
From: Qu Wenruo
These two functions are used to do sector aligned read, which will be
later used to implement btrfs_file_read().
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/ctree.h | 5 ++
fs/btrfs/disk-io.c | 36 ++
fs/btrfs/disk-io.h | 2 +
fs/btrfs
From: Qu Wenruo
The existing __btrfs_readlink() can be easily re-implemented using the
extent buffer based btrfs_readlink().
This is the first step to re-implement U-Boot's btrfs code.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/btrfs.h | 1 +
fs/btrfs/inode.c | 101
extent, then
decompress the whole extent, and only then copy the requested part.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/btrfs.c | 48 +---
fs/btrfs/btrfs.h | 2 +
fs/btrfs/inode.c | 146 +++
3 files changed, 176
From: Qu Wenruo
Since the old code is using __btrfs_path/__btrfs_root which is different
from the regular extent buffer based one, we add "__" prefix for the old
implementation to avoid name conflicts for the incoming crossport.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
From: Qu Wenruo
After this the only remaining function that still utilizes
__btrfs_lookup_path() is btrfs_read().
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/btrfs.c | 65 +++-
1 file changed, 48 insertions(+), 17 deletions
I shall compile for different platforms with and without these patches
to see how much these patches increase the size of the resulting U-Boot
binary.
Maybe it will show us that it is finally time to look into LTO for
U-Boot.
From: Qu Wenruo
Reimplement btrfs_list_subvols() to use new code.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/subvolume.c | 78 +---
1 file changed, 73 insertions(+), 5 deletions(-)
diff --git a/fs/btrfs/subvolume.c b/fs/btrfs
From: Qu Wenruo
This cleans up the now unneeded code from the old btrfs implementation.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/Makefile | 4 +-
fs/btrfs/btrfs.c | 31
fs/btrfs/btrfs.h | 47 --
fs/btrfs/chunk-map.c | 178
From: Qu Wenruo
Since the current code base is mostly from btrfs-progs, anyone
contributing to U-Boot btrfs code could also help us to improve
btrfs-progs and btrfs kernel module.
Also add myself as designated reviewer.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
MAINTAINERS | 2
ond BTRFS_NAME_LEN.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/inode.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index 007cf32c16..da2a5e90a1 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -217,8 +217,12 @@ sta
From: Qu Wenruo
This patch introduces a new function, get_path_in_subvolume(), which
resolves inode number into path inside a subvolume.
This function will be later used for btrfs subvolume list functionality.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/compat.h| 1
From: Qu Wenruo
This patch introduces a new function, list_one_subvol(), which will
resolve the path to FS_TREE of one subvolume.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/subvolume.c | 81
1 file changed, 81 insertions
From: Qu Wenruo
Crossport struct btrfs_root to ctree.h from btrfs-progs, with write
related members deleted.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/ctree.h | 17 +
1 file changed, 17 insertions(+)
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
index
From: Qu Wenruo
This is to avoid naming conflicts between extent buffer based
btrfs_root.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/btrfs.c | 10 +-
fs/btrfs/btrfs.h | 26 +-
fs/btrfs/ctree.c | 2 +-
fs/btrfs/ctree.h | 6
before
proper crossport.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/btrfs.c|3 +-
fs/btrfs/btrfs_tree.h | 766 ---
fs/btrfs/ctree.h| 214 +
fs/btrfs/inode.c|5 +-
fs/btrfs/kernel
created
on the device but old superblocks are not rewritten.
Just like kernel, we only check the primary super block.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/Makefile | 2 +-
fs/btrfs/btrfs.c | 1 +
fs/btrfs/compat.h | 63 +++
fs/btrfs/ctree.c | 32
From: Qu Wenruo
This patch implements an infrastructure to insert/search/merge an extent
range (with variable length).
This provides the basis for later extent buffer cache used in btrfs.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/extent-cache.c | 318
From: Qu Wenruo
This is needed for incoming extent-cache infrastructure.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/Makefile | 3 +-
fs/btrfs/common/rbtree-utils.c | 83 ++
fs/btrfs/common/rbtree-utils.h | 53
From: Qu Wenruo
This brings the extent_io_tree infrastructure, with which we can finally
bring in proper btrfs_fs_info structure to ctree.h.
With read/write_extent_buffer() implemented we also backport
read/write_eb_member() to ctree.h.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
From: Qu Wenruo
This is the one of the basic stone function for btrfs, which:
- Resolves the chunk mappings
- Reads data from disk
- Does various sanity check
With read_tree_block(), we can finally crossport needed btrfs btree
operations to U-Boot.
Signed-off-by: Qu Wenruo
Reviewed-by: Marek
Hello,
this is a cleaned up version of Qu's patches that reimplements U-Boot's
btrfs driver with code from btrfs-progs.
I have tested this series, found and corrected one bug (failure when
accesing files via symlinks), and it looks it is working now, but I
would like more people to do some
the support for the following csums:
- SHA256
- XXHASH
Signed-off-by: Qu Wenruo
Reviewed-by: Marek Behún
---
fs/btrfs/Makefile | 2 +-
fs/btrfs/btrfs.c | 3 ++-
fs/btrfs/btrfs.h | 11 -
fs/btrfs/crypto/hash.c | 55 ++
fs/btrfs/crypto
201 - 300 of 1644 matches
Mail list logo