forked from dlink-dir_819/openwrt
The following upstreamed / superseded patches were dropped:
060-01-clk-mediatek-mt7629-fix-parent-clock-of-some-top-clo.patch
060-02-arm-dts-mt7629-fix-sgmii-clock-selection-for-etherne.patch
060-03-net-mediatek-use-correct-register-field-for-SGMII-sp.patch
060-04-net-mediatek-correct-register-name-of-ethsys-syscfg1.patch
060-05-net-mediatek-fix-sgmii-selection-for-mt7622.patch
060-06-net-mediatek-fix-gmac2-usability-for-mt7629.patch
060-07-net-mediatek-add-support-for-10GBASE-R.patch
060-08-net-mediatek-make-sgmii-usxgmii-optional.patch
060-09-net-mediatek-don-t-enable-GDMA-cpu-bridge-unconditio.patch
060-10-net-mediatek-fix-usability-with-wget-command.patch
061-01-net-mediatek-split-ethernet-switch-code-from-mtk_eth.patch
061-02-net-mediatek-add-support-for-MediaTek-MT7987-SoC.patch
061-03-net-mediatek-add-support-for-Airoha-AN8855-ethernet-.patch
070-01-board-mediatek-mt7622-remove-board_late_init.patch
070-02-clk-mediatek-fix-uninitialized-fields-issue-in-INFRA.patch
070-03-configs-mt7629-move-image-load-address-to-0x42000000.patch
070-04-configs-mt7988-move-image-load-address-to-0x44000000.patch
070-05-spi-mtk_spim-add-support-to-use-DT-live-tree.patch
070-06-spi-mtk_spim-check-slave-device-mode-in-spi-mem-s-su.patch
070-07-arm-dts-mediatek-add-quad-mode-capabilities-for-SPI-.patch
070-08-pwm-mediatek-add-pwm3-support-for-mt7981.patch
070-09-pci-mediatek-add-support-for-multiple-ports-in-media.patch
070-10-arm-dts-mediatek-add-pcie-support-for-mt7988.patch
070-11-arm-dts-medaitek-fix-internal-switch-link-speed-of-m.patch
070-12-arm-dts-mediatek-add-support-for-all-three-GMACs-for.patch
070-13-arm-dts-medaitek-add-flash-interface-driving-setting.patch
070-14-arm-dts-mediatek-update-mt7981-mmc-node.patch
070-15-MAINTAINERS-update-file-list-for-MediaTek-ARM-platfo.patch
071-01-pinctrl-mediatek-update-mt7981-pinctrl-driver-based-.patch
100-18-board-mt7629-add-support-for-booting-from-SPI-NAND.patch
290-mt7981-add-USB-nodes.patch
Refreshed all the patches needing it.
Run-tested: GatoNetworks GDSP, Arcadyan Mozart (ynezz),
Zbt WG3526 (dangowrt)
Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [patch refresh, Mozart testing]
Signed-off-by: Daniel Golle <daniel@makrotopia.org> [rebased, tested on MT7621]
72 lines
2.0 KiB
Diff
72 lines
2.0 KiB
Diff
From fc0c70a7c6a088072d0c77e5a59d5e9b7754c6db Mon Sep 17 00:00:00 2001
|
|
From: Weijie Gao <weijie.gao@mediatek.com>
|
|
Date: Mon, 25 Jul 2022 17:01:20 +0800
|
|
Subject: [PATCH 61/71] env: ubi: add support to create environment volume if
|
|
it does not exist
|
|
|
|
Add an option to allow environment volume being auto created if not exist.
|
|
|
|
Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
|
|
---
|
|
env/Kconfig | 6 ++++++
|
|
env/ubi.c | 20 ++++++++++++++++++++
|
|
2 files changed, 26 insertions(+)
|
|
|
|
--- a/env/Kconfig
|
|
+++ b/env/Kconfig
|
|
@@ -701,6 +701,12 @@ config ENV_UBI_VOLUME_REDUND
|
|
help
|
|
Name of the redundant volume that you want to store the environment in.
|
|
|
|
+config ENV_UBI_VOLUME_CREATE
|
|
+ bool "Create UBI volume if not exist"
|
|
+ depends on ENV_IS_IN_UBI
|
|
+ help
|
|
+ Create the UBI volume if it does not exist.
|
|
+
|
|
config ENV_UBI_VID_OFFSET
|
|
int "ubi environment VID offset"
|
|
depends on ENV_IS_IN_UBI
|
|
--- a/env/ubi.c
|
|
+++ b/env/ubi.c
|
|
@@ -105,6 +105,18 @@ static int env_ubi_save(void)
|
|
#endif /* CONFIG_SYS_REDUNDAND_ENVIRONMENT */
|
|
#endif /* CONFIG_CMD_SAVEENV */
|
|
|
|
+int __weak env_ubi_volume_create(const char *volume)
|
|
+{
|
|
+ struct ubi_volume *vol;
|
|
+
|
|
+ vol = ubi_find_volume((char *)volume);
|
|
+ if (vol)
|
|
+ return 0;
|
|
+
|
|
+ return ubi_create_vol((char *)volume, CONFIG_ENV_SIZE, true,
|
|
+ UBI_VOL_NUM_AUTO, false);
|
|
+}
|
|
+
|
|
#ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT
|
|
static int env_ubi_load(void)
|
|
{
|
|
@@ -134,6 +146,10 @@ static int env_ubi_load(void)
|
|
return -EIO;
|
|
}
|
|
|
|
+ if (IS_ENABLED(CONFIG_ENV_UBI_VOLUME_CREATE)) {
|
|
+ env_ubi_volume_create(CONFIG_ENV_UBI_VOLUME);
|
|
+ env_ubi_volume_create(CONFIG_ENV_UBI_VOLUME_REDUND);
|
|
+ }
|
|
read1_fail = ubi_volume_read(CONFIG_ENV_UBI_VOLUME, (void *)tmp_env1, 0,
|
|
CONFIG_ENV_SIZE);
|
|
if (read1_fail)
|
|
@@ -171,6 +187,9 @@ static int env_ubi_load(void)
|
|
return -EIO;
|
|
}
|
|
|
|
+ if (IS_ENABLED(CONFIG_ENV_UBI_VOLUME_CREATE))
|
|
+ env_ubi_volume_create(CONFIG_ENV_UBI_VOLUME);
|
|
+
|
|
if (ubi_volume_read(CONFIG_ENV_UBI_VOLUME, buf, 0, CONFIG_ENV_SIZE)) {
|
|
printf("\n** Unable to read env from %s:%s **\n",
|
|
CONFIG_ENV_UBI_PART, CONFIG_ENV_UBI_VOLUME);
|