diff options
author | Rafał Miłecki <zajec5@gmail.com> | 2014-12-10 18:29:26 +0000 |
---|---|---|
committer | Rafał Miłecki <zajec5@gmail.com> | 2014-12-10 18:29:26 +0000 |
commit | 960130e99c8ecc6a914c815d303bf00a7e0731f1 (patch) | |
tree | 7923f17b65afdc52387f126517daa8eabdade93d /target/linux/bcm53xx | |
parent | fa5f896cb7eedd142e2a1916a4b664f7d2f43d04 (diff) | |
download | mtk-20170518-960130e99c8ecc6a914c815d303bf00a7e0731f1.zip mtk-20170518-960130e99c8ecc6a914c815d303bf00a7e0731f1.tar.gz mtk-20170518-960130e99c8ecc6a914c815d303bf00a7e0731f1.tar.bz2 |
bcm53xx: clean up nvram header
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 43606
Diffstat (limited to 'target/linux/bcm53xx')
5 files changed, 57 insertions, 61 deletions
diff --git a/target/linux/bcm53xx/files/drivers/misc/bcm47xx-nvram.c b/target/linux/bcm53xx/files/drivers/misc/bcm47xx-nvram.c index 6ea715c..5537479 100644 --- a/target/linux/bcm53xx/files/drivers/misc/bcm47xx-nvram.c +++ b/target/linux/bcm53xx/files/drivers/misc/bcm47xx-nvram.c @@ -21,6 +21,19 @@ #include <linux/io.h> #include <linux/bcm47xx_nvram.h> +#define NVRAM_HEADER 0x48534C46 /* 'FLSH' */ +#define NVRAM_SPACE 0x8000 + +#define FLASH_MIN 0x00020000 /* Minimum flash size */ + +struct nvram_header { + u32 magic; + u32 len; + u32 crc_ver_init; /* 0:7 crc, 8:15 ver, 16:31 sdram_init */ + u32 config_refresh; /* 0:15 sdram_config, 16:31 sdram_refresh */ + u32 config_ncdl; /* ncdl values for memc */ +}; + struct bcm47xx_nvram { size_t nvram_len; char *nvram_buf; diff --git a/target/linux/bcm53xx/files/drivers/misc/bcm47xx-sprom.c b/target/linux/bcm53xx/files/drivers/misc/bcm47xx-sprom.c index 3221b12..4e56208 100644 --- a/target/linux/bcm53xx/files/drivers/misc/bcm47xx-sprom.c +++ b/target/linux/bcm53xx/files/drivers/misc/bcm47xx-sprom.c @@ -141,6 +141,20 @@ static void nvram_read_leddc(const struct bcm47xx_sprom_fill *fill, *leddc_off_time = (val >> 16) & 0xff; } +static void bcm47xx_nvram_parse_macaddr(char *buf, u8 macaddr[6]) +{ + if (strchr(buf, ':')) + sscanf(buf, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", &macaddr[0], + &macaddr[1], &macaddr[2], &macaddr[3], &macaddr[4], + &macaddr[5]); + else if (strchr(buf, '-')) + sscanf(buf, "%hhx-%hhx-%hhx-%hhx-%hhx-%hhx", &macaddr[0], + &macaddr[1], &macaddr[2], &macaddr[3], &macaddr[4], + &macaddr[5]); + else + pr_warn("Can not parse mac address: %s\n", buf); +} + static void nvram_read_macaddr(const struct bcm47xx_sprom_fill *fill, const char *name, u8 val[6]) { diff --git a/target/linux/bcm53xx/files/include/linux/bcm47xx_nvram.h b/target/linux/bcm53xx/files/include/linux/bcm47xx_nvram.h index 333d32c..82890be 100644 --- a/target/linux/bcm53xx/files/include/linux/bcm47xx_nvram.h +++ b/target/linux/bcm53xx/files/include/linux/bcm47xx_nvram.h @@ -15,24 +15,6 @@ #include <linux/types.h> #include <linux/kernel.h> -struct nvram_header { - u32 magic; - u32 len; - u32 crc_ver_init; /* 0:7 crc, 8:15 ver, 16:31 sdram_init */ - u32 config_refresh; /* 0:15 sdram_config, 16:31 sdram_refresh */ - u32 config_ncdl; /* ncdl values for memc */ -}; - -#define NVRAM_HEADER 0x48534C46 /* 'FLSH' */ -#define NVRAM_VERSION 1 -#define NVRAM_HEADER_SIZE 20 -#define NVRAM_SPACE 0x8000 - -#define FLASH_MIN 0x00020000 /* Minimum flash size */ - -#define NVRAM_MAX_VALUE_LEN 255 -#define NVRAM_MAX_PARAM_LEN 64 - #ifdef CONFIG_BCM47XX int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len); @@ -49,18 +31,4 @@ static inline int bcm47xx_nvram_gpio_pin(const char *name) return -ENXIO; } #endif - -static inline void bcm47xx_nvram_parse_macaddr(char *buf, u8 macaddr[6]) -{ - if (strchr(buf, ':')) - sscanf(buf, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", &macaddr[0], - &macaddr[1], &macaddr[2], &macaddr[3], &macaddr[4], - &macaddr[5]); - else if (strchr(buf, '-')) - sscanf(buf, "%hhx-%hhx-%hhx-%hhx-%hhx-%hhx", &macaddr[0], - &macaddr[1], &macaddr[2], &macaddr[3], &macaddr[4], - &macaddr[5]); - else - pr_warn("Can not parse mac address: %s\n", buf); -} #endif /* __BCM47XX_NVRAM_H */ diff --git a/target/linux/bcm53xx/patches-3.14/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch b/target/linux/bcm53xx/patches-3.14/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch index 5e70fa1..35cbc73 100644 --- a/target/linux/bcm53xx/patches-3.14/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch +++ b/target/linux/bcm53xx/patches-3.14/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch @@ -304,30 +304,19 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> --- a/include/linux/bcm47xx_nvram.h +++ b/include/linux/bcm47xx_nvram.h -@@ -15,9 +15,11 @@ +@@ -15,18 +15,23 @@ #include <linux/types.h> #include <linux/kernel.h> -+struct device; -+ - struct nvram_header { - u32 magic; -- u32 len; -+ __le32 len; - u32 crc_ver_init; /* 0:7 crc, 8:15 ver, 16:31 sdram_init */ - u32 config_refresh; /* 0:15 sdram_config, 16:31 sdram_refresh */ - u32 config_ncdl; /* ncdl values for memc */ -@@ -33,18 +35,21 @@ struct nvram_header { - #define NVRAM_MAX_VALUE_LEN 255 - #define NVRAM_MAX_PARAM_LEN 64 - -#ifdef CONFIG_BCM47XX -int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len); ++struct device; + +-int bcm47xx_nvram_gpio_pin(const char *name); +#if defined(CONFIG_BCM47XX) || defined(CONFIG_BCM47XX_NVRAM) +int bcm47xx_nvram_getenv(const struct device *dev, const char *name, char *val, + size_t val_len); - --int bcm47xx_nvram_gpio_pin(const char *name); ++ +int bcm47xx_nvram_gpio_pin(const struct device *dev, const char *name); #else -static inline int bcm47xx_nvram_getenv(const char *name, char *val, @@ -344,3 +333,14 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> { return -ENXIO; } +--- a/drivers/misc/bcm47xx-nvram.c ++++ b/drivers/misc/bcm47xx-nvram.c +@@ -28,7 +28,7 @@ + + struct nvram_header { + u32 magic; +- u32 len; ++ __le32 len; + u32 crc_ver_init; /* 0:7 crc, 8:15 ver, 16:31 sdram_init */ + u32 config_refresh; /* 0:15 sdram_config, 16:31 sdram_refresh */ + u32 config_ncdl; /* ncdl values for memc */ diff --git a/target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch b/target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch index 38925cf..410ea26 100644 --- a/target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch +++ b/target/linux/bcm53xx/patches-3.18/111-bcm47xx-nvram-add-new-nvram-driver-with-dt-support.patch @@ -328,22 +328,12 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> --- a/include/linux/bcm47xx_nvram.h +++ b/include/linux/bcm47xx_nvram.h -@@ -15,9 +15,11 @@ +@@ -14,19 +14,24 @@ + #include <linux/types.h> #include <linux/kernel.h> - ++ +struct device; -+ - struct nvram_header { - u32 magic; -- u32 len; -+ __le32 len; - u32 crc_ver_init; /* 0:7 crc, 8:15 ver, 16:31 sdram_init */ - u32 config_refresh; /* 0:15 sdram_config, 16:31 sdram_refresh */ - u32 config_ncdl; /* ncdl values for memc */ -@@ -33,18 +35,21 @@ struct nvram_header { - #define NVRAM_MAX_VALUE_LEN 255 - #define NVRAM_MAX_PARAM_LEN 64 -#ifdef CONFIG_BCM47XX -int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len); @@ -368,3 +358,14 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> { return -ENXIO; } +--- a/drivers/misc/bcm47xx-nvram.c ++++ b/drivers/misc/bcm47xx-nvram.c +@@ -28,7 +28,7 @@ + + struct nvram_header { + u32 magic; +- u32 len; ++ __le32 len; + u32 crc_ver_init; /* 0:7 crc, 8:15 ver, 16:31 sdram_init */ + u32 config_refresh; /* 0:15 sdram_config, 16:31 sdram_refresh */ + u32 config_ncdl; /* ncdl values for memc */ |