[OpenWrt-Devel] [PATCH] base-files: calling stop_service before procd_kill.

2014-05-16 Thread Yousong Zhou
Before this patch, doing `/e/c/network restart' will emit the folloing
error by `ubus network.wireless down {}' because netifd already quit
by that time.

Command failed: not found

Signed-off-by: Yousong Zhou yszhou4t...@gmail.com
---
 package/base-files/Makefile|2 +-
 package/base-files/files/etc/rc.common |2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/base-files/Makefile b/package/base-files/Makefile
index 207af35..eea9ecb 100644
--- a/package/base-files/Makefile
+++ b/package/base-files/Makefile
@@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/version.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=base-files
-PKG_RELEASE:=152
+PKG_RELEASE:=153
 
 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
 PKG_BUILD_DEPENDS:=opkg/host
diff --git a/package/base-files/files/etc/rc.common 
b/package/base-files/files/etc/rc.common
index 829ec76..8701312 100755
--- a/package/base-files/files/etc/rc.common
+++ b/package/base-files/files/etc/rc.common
@@ -112,8 +112,8 @@ ${INIT_TRACE:+set -x}
}
 
stop() {
-   procd_kill $(basename ${basescript:-$initscript}) $1
stop_service $@
+   procd_kill $(basename ${basescript:-$initscript}) $1
}
 
reload() {
-- 
1.7.2.5
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH] ubus: be verbose when printing command failed message.

2014-05-16 Thread Yousong Zhou
The original Command failed: Not found message tends to make people
think it's from shell.  Make it clear and verbose for the ease of debug.

Signed-off-by: Yousong Zhou yszhou4t...@gmail.com
---
 cli.c |9 +++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/cli.c b/cli.c
index e4eb504..760eb47 100644
--- a/cli.c
+++ b/cli.c
@@ -371,8 +371,13 @@ int main(int argc, char **argv)
break;
}
 
-   if (ret  0  !simple_output)
-   fprintf(stderr, Command failed: %s\n, ubus_strerror(ret));
+   if (ret  0  !simple_output) {
+   fprintf(stderr, Ubus command failed: %s:, ubus_strerror(ret));
+   for (i = 0; i  argc; i++) {
+   fprintf(stderr,  %s, argv[i]);
+   }
+   fprintf(stderr, \n);
+   }
else if (ret == -2)
usage(progname);
 
-- 
1.7.2.5
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] d-link dir-615 h1 without wifi on trunk !

2014-05-16 Thread Daniel Petre

Hello,
anyone has any idea about the fix for the wireless of d-link dir-615 h1 ?

https://dev.openwrt.org/ticket/16406

I just tried r40772 after a make clean and still no wireless:

rt2800_wmac 1018.wmac: failed to load eeprom property
ieee80211 phy0: rt2x00lib_request_eeprom_file: Info - Loading EEPROM 
data from 'soc_wmac.eeprom'.

ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 3352, rev 0200 detected
ieee80211 phy0: rt2800_init_eeprom: Error - Invalid RF chipset 0x3352 
detected

ieee80211 phy0: rt2x00lib_probe_dev: Error - Failed to allocate device

thanks!
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] Dual-Flash Driver support on openwrt

2014-05-16 Thread Tymon
Hi, all:
My board is a Dual-flash device, and I want to make openwrt support on it. 
The chip is compatible with M25P80, detail model is MX25L12845EMI-10G. The 1st 
flash GPIO pin is GPIO5, and the 2nd is GPIO-13.
I had refer to the arch/mips/ath79/dev-m25p80.c and dev-spi.c , etc, but 
failed with many try.


So, my question is how can I modified the relevant code to make it support 
my dual-flah, any hints will be appreciated.If you interested in this case or 
had done a similar case with it, please let me know, thansk






--
Regards,

banglang huang
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] Dual-Flash Driver support on openwrt

2014-05-16 Thread Tymon
I already know it is same driver with 12805d, but the 
ath79_register_m25p80_multi() function does not seem to work.






--
Regards,

banglang huang
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel 


 




-- Original --
From:  Tymon;banglang.hu...@foxmail.com;
Date:  Fri, May 16, 2014 09:36 PM
To:  openwrt-developenwrt-devel@lists.openwrt.org; 

Subject:  [OpenWrt-Devel] Dual-Flash Driver support on openwrt



Hi, all:
My board is a Dual-flash device, and I want to make openwrt support on it. 
The chip is compatible with M25P80, detail model is MX25L12845EMI-10G. The 1st 
flash GPIO pin is GPIO5, and the 2nd is GPIO-13.
I had refer to the arch/mips/ath79/dev-m25p80.c and dev-spi.c , etc, but 
failed with many try.


So, my question is how can I modified the relevant code to make it support 
my dual-flah, any hints will be appreciated.If you interested in this case or 
had done a similar case with it, please let me know, thansk






--
Regards,

banglang huang
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH] [lantiq] [2/2] DTS updates for the ARV4518PW and ARV7518PW.

2014-05-16 Thread José Vázquez Fernández
DTS updates for the ARV4518PW and ARV7518PW.

These additions make the previous patch work in these boards, and adds
switch reset gpio and removes vmmc relay gpio in the ARV4518PW because
it is not present.
Also changes phy-mode to mii, which is the right configuration.

Signed off by: David Fernández papijunkm...@yahoo.com
Signed off by: Bruno Rodríguez bruno.rodriguez.1...@gmail.com
Signed off by: José Vázquez Fernández ppvazquez...@gmail.com


Index: target/linux/lantiq/dts/ARV4518PWR01.dts
===
--- target/linux/lantiq/dts/ARV4518PWR01.dts(revisión: 40772)
+++ target/linux/lantiq/dts/ARV4518PWR01.dts(copia de trabajo)
@@ -75,6 +75,7 @@
0 0x3f0016 0x6;
ath,mac-increment = 1;
ath,eep-swap;
+   ath,arv-ath5k-fix;
};
};
 
@@ -100,11 +101,31 @@
lantiq,pull = 0;
lantiq,output = 1;
};
+   pci_rst {
+   lantiq,pins = io21;
+   lantiq,pull = 2;
+   lantiq,output = 1;
+   };
+   leds {
+   lantiq,pins = io3, io4, io5, 
io6, io7, io8, io19;
+   lantiq,output = 1;
+   };
+   keys {
+   lantiq,pins = io28, io30;
+   lantiq,output = 0;
+   lantiq,pull = 2;
+   lantiq,open-drain = 1;
+   };
+   switch_rst {
+   lantiq,pins = io13;
+   lantiq,pull = 2;
+   lantiq,output = 1;
+   };
};
};
 
etop@E18 {
-   phy-mode = rmii;
+   phy-mode = mii;
};
 
ifxhcd@E101000 {
@@ -121,9 +142,6 @@
 
};
 
-/*
-#define ARV4518PW_SWITCH_RESET  13
-*/
gpio-keys-polled {
compatible = gpio-keys-polled;
#address-cells = 1;
@@ -146,7 +164,7 @@
compatible = gpio-leds;
power {
label = power;
-   gpios = gpio 3 0;
+   gpios = gpio 3 1;
};
dsl {
label = dsl;
@@ -189,4 +207,15 @@
gpios = gpiomm 3 1;
};
};
+
+   gpio_export {
+   compatible = gpio-export;
+   #size-cells = 0;
+
+   switch {
+   gpio-export,name = switch;
+   gpio-export,output = 1;
+   gpios = gpio 13 0;
+   };
+   };
 };
Index: target/linux/lantiq/dts/ARV4518PWR01A.dts
===
--- target/linux/lantiq/dts/ARV4518PWR01A.dts   (revisión: 40772)
+++ target/linux/lantiq/dts/ARV4518PWR01A.dts   (copia de trabajo)
@@ -75,6 +75,7 @@
0 0x3f0016 0x6;
ath,mac-increment = 1;
ath,eep-swap;
+   ath,arv-ath5k-fix;
};
};
 
@@ -100,11 +101,31 @@
lantiq,pull = 0;
lantiq,output = 1;
};
+   pci_rst {
+   lantiq,pins = io21;
+   lantiq,pull = 2;
+   lantiq,output = 1;
+   };
+   leds {
+   lantiq,pins = io3, io4, io5, 
io6, io7, io8, io19;
+   lantiq,output = 1;
+   };
+   keys {
+   lantiq,pins = io28, io30;
+   lantiq,output = 0;
+   lantiq,pull = 2;
+   lantiq,open-drain = 1;
+   };
+   switch_rst {
+   lantiq,pins = io13;
+   lantiq,pull = 2;
+   

[OpenWrt-Devel] [PATCH] [lantiq] [1/2] EEPROM fix for Astoria/Arcadyan boards.

2014-05-16 Thread José Vázquez Fernández
EEPROM fix for Astoria/Arcadyan boards.

This patch fixes a problem in some Astoria/Arcadyan routers with Atheros
based wireless. In these boards the flash partition that contains the
MAC and calibration data is not read properly, causing the driver to not
initialize the wireless.

[   13.772000] PCI: Enabling device :00:0e.0 ( - 0002)
[   13.776000] ath5k :00:0e.0: registered as 'phy0'
[   15.024000] ath5k: phy0: unable to init EEPROM
[   15.024000] ath5k: probe of :00:0e.0 failed with error -5

This patch covers both ath5k and ath9k drivers.

Signed off by: David Fernández papijunkm...@yahoo.com
Signed off by: Bruno Rodríguez bruno.rodriguez.1...@gmail.com
Signed off by: Álvaro Fernández nolt...@gmail.com
Tested by: José Vázquez Fernández ppvazquez...@gmail.com


--- a/arch/mips/lantiq/xway/ath_eep.c
+++ b/arch/mips/lantiq/xway/ath_eep.c
@@ -41,94 +41,182 @@ int __init of_ath9k_eeprom_probe(struct
 {
struct device_node *np = pdev-dev.of_node, *mtd_np;
int mac_offset, led_pin;
+   struct resource *eep_res, *mac_res;
+   void __iomem *eep, *mac;
+   int mac_offset;
u32 mac_inc = 0, pci_slot = 0;
int i;
+   u16 *eepdata, sum, el;
struct mtd_info *the_mtd;
size_t flash_readlen;
const __be32 *list;
const char *part;
phandle phandle;
 
-   list = of_get_property(np, ath,eep-flash, i);
-   if (!list || (i !=  (2 * sizeof(*list {
-   dev_err(pdev-dev, failed to find ath,eep-flash\n);
-   return -ENODEV;
-   }
+   if (!of_find_property(np,ath,arv-ath9k-fix,NULL))
+   {
+   list = of_get_property(np, ath,eep-flash, i);
+   if (!list || (i !=  (2 * sizeof(*list {
+   dev_err(pdev-dev, failed to find ath,eep-flash\n);
+   return -ENODEV;
+   }
 
-   phandle = be32_to_cpup(list++);
-   if (!phandle) {
-   dev_err(pdev-dev, failed to find phandle\n);
-   return -ENODEV;
-   }
+   phandle = be32_to_cpup(list++);
+   if (!phandle) {
+   dev_err(pdev-dev, failed to find phandle\n);
+   return -ENODEV;
+   }
 
-   mtd_np = of_find_node_by_phandle(phandle);
-   if (!mtd_np) {
-   dev_err(pdev-dev, failed to find mtd node\n);
-   return -ENODEV;
-   }
+   mtd_np = of_find_node_by_phandle(phandle);
+   if (!mtd_np) {
+   dev_err(pdev-dev, failed to find mtd node\n);
+   return -ENODEV;
+   }
 
-   part = of_get_property(mtd_np, label, NULL);
-   if (!part)
-   part = mtd_np-name;
-
-   the_mtd = get_mtd_device_nm(part);
-   if (the_mtd == ERR_PTR(-ENODEV)) {
-   dev_err(pdev-dev, failed to find mtd device\n);
-   return -ENODEV;
-   }
+   part = of_get_property(mtd_np, label, NULL);
+   if (!part)
+   part = mtd_np-name;
+
+   the_mtd = get_mtd_device_nm(part);
+   if (the_mtd == ERR_PTR(-ENODEV)){
+   dev_err(pdev-dev, failed to find mtd device\n);
+   return -ENODEV;
+   }
 
-   i = mtd_read(the_mtd, be32_to_cpup(list),
+   i = mtd_read(the_mtd, be32_to_cpup(list),
ATH9K_PLAT_EEP_MAX_WORDS  1, flash_readlen,
(void *) ath9k_pdata.eeprom_data);
-   put_mtd_device(the_mtd);
-   if ((sizeof(ath9k_pdata.eeprom_data) != flash_readlen) || i) {
-   dev_err(pdev-dev, failed to load eeprom from mtd\n);
-   return -ENODEV;
-   }
+   put_mtd_device(the_mtd);
+   if ((sizeof(ath9k_pdata.eeprom_data) != flash_readlen) || i) {
+   dev_err(pdev-dev, failed to load eeprom from mtd\n);
+   return -ENODEV;
+   }
 
-   if (of_find_property(np, ath,eep-swap, NULL))
-   for (i = 0; i  ATH9K_PLAT_EEP_MAX_WORDS; i++)
-   ath9k_pdata.eeprom_data[i] = 
swab16(ath9k_pdata.eeprom_data[i]);
+   if (of_find_property(np, ath,eep-swap, NULL))
+   for (i = 0; i  ATH9K_PLAT_EEP_MAX_WORDS; i++)
+   ath9k_pdata.eeprom_data[i] = 
swab16(ath9k_pdata.eeprom_data[i]);
+
+   if (of_find_property(np, ath,eep-endian, NULL)) {
+   ath9k_pdata.endian_check = true;
+   dev_info(pdev-dev, endian check enabled.\n);
+   }
 
-   if (of_find_property(np, ath,eep-endian, NULL)) {
-   ath9k_pdata.endian_check = true;
+   if (!of_property_read_u32(np, ath,mac-offset, mac_offset)) {
+   memcpy_fromio(athxk_eeprom_mac, (void*) 
ath9k_pdata.eeprom_data +
mac_offset, 6);
+   

[OpenWrt-Devel] [PATCH] [lantiq] [1/2] EEPROM fix for Astoria/Arcadyan boards.

2014-05-16 Thread José Vázquez Fernández
- Mensaje reenviado 
De: José Vázquez Fernández ppvazquez...@gmail.com
Para: openwrt-devel openwrt-devel@lists.openwrt.org
Asunto: [OpenWrt-Devel] [PATCH] [lantiq] [1/2] EEPROM fix for
Astoria/Arcadyan boards.
Fecha: Fri, 16 May 2014 19:47:03 +0200

EEPROM fix for Astoria/Arcadyan boards.

This patch fixes a problem in some Astoria/Arcadyan routers with Atheros
based wireless. In these boards the flash partition that contains the
MAC and calibration data is not read properly, causing the driver to not
initialize the wireless.

[   13.772000] PCI: Enabling device :00:0e.0 ( - 0002)
[   13.776000] ath5k :00:0e.0: registered as 'phy0'
[   15.024000] ath5k: phy0: unable to init EEPROM
[   15.024000] ath5k: probe of :00:0e.0 failed with error -5

This patch covers both ath5k and ath9k drivers.

Signed off by: David Fernández papijunkm...@yahoo.com
Signed off by: Bruno Rodríguez bruno.rodriguez.1...@gmail.com
Signed off by: Álvaro Fernández nolt...@gmail.com
Tested by: José Vázquez Fernández ppvazquez...@gmail.com


Index: target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
===
--- target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
(revisión: 0)
+++ target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
(revisión: 0)
@@ -0,0 +1,447 @@
+--- a/arch/mips/lantiq/xway/ath_eep.c
 b/arch/mips/lantiq/xway/ath_eep.c
+@@ -41,94 +41,182 @@ int __init of_ath9k_eeprom_probe(struct
+ {
+   struct device_node *np = pdev-dev.of_node, *mtd_np;
+   int mac_offset, led_pin;
++  struct resource *eep_res, *mac_res;
++  void __iomem *eep, *mac;
++  int mac_offset;
+   u32 mac_inc = 0, pci_slot = 0;
+   int i;
++  u16 *eepdata, sum, el;
+   struct mtd_info *the_mtd;
+   size_t flash_readlen;
+   const __be32 *list;
+   const char *part;
+   phandle phandle;
+ 
+-  list = of_get_property(np, ath,eep-flash, i);
+-  if (!list || (i !=  (2 * sizeof(*list {
+-  dev_err(pdev-dev, failed to find ath,eep-flash\n);
+-  return -ENODEV;
+-  }
++  if (!of_find_property(np,ath,arv-ath9k-fix,NULL))
++  {
++  list = of_get_property(np, ath,eep-flash, i);
++  if (!list || (i !=  (2 * sizeof(*list {
++  dev_err(pdev-dev, failed to find ath,eep-flash\n);
++  return -ENODEV;
++  }
+ 
+-  phandle = be32_to_cpup(list++);
+-  if (!phandle) {
+-  dev_err(pdev-dev, failed to find phandle\n);
+-  return -ENODEV;
+-  }
++  phandle = be32_to_cpup(list++);
++  if (!phandle) {
++  dev_err(pdev-dev, failed to find phandle\n);
++  return -ENODEV;
++  }
+ 
+-  mtd_np = of_find_node_by_phandle(phandle);
+-  if (!mtd_np) {
+-  dev_err(pdev-dev, failed to find mtd node\n);
+-  return -ENODEV;
+-  }
++  mtd_np = of_find_node_by_phandle(phandle);
++  if (!mtd_np) {
++  dev_err(pdev-dev, failed to find mtd node\n);
++  return -ENODEV;
++  }
+ 
+-  part = of_get_property(mtd_np, label, NULL);
+-  if (!part)
+-  part = mtd_np-name;
+-
+-  the_mtd = get_mtd_device_nm(part);
+-  if (the_mtd == ERR_PTR(-ENODEV)) {
+-  dev_err(pdev-dev, failed to find mtd device\n);
+-  return -ENODEV;
+-  }
++  part = of_get_property(mtd_np, label, NULL);
++  if (!part)
++  part = mtd_np-name;
++
++  the_mtd = get_mtd_device_nm(part);
++  if (the_mtd == ERR_PTR(-ENODEV)){
++  dev_err(pdev-dev, failed to find mtd device\n);
++  return -ENODEV;
++  }
+ 
+-  i = mtd_read(the_mtd, be32_to_cpup(list),
++  i = mtd_read(the_mtd, be32_to_cpup(list),
+   ATH9K_PLAT_EEP_MAX_WORDS  1, flash_readlen,
+   (void *) ath9k_pdata.eeprom_data);
+-  put_mtd_device(the_mtd);
+-  if ((sizeof(ath9k_pdata.eeprom_data) != flash_readlen) || i) {
+-  dev_err(pdev-dev, failed to load eeprom from mtd\n);
+-  return -ENODEV;
+-  }
++  put_mtd_device(the_mtd);
++  if ((sizeof(ath9k_pdata.eeprom_data) != flash_readlen) || i) {
++  dev_err(pdev-dev, failed to load eeprom from mtd\n);
++  return -ENODEV;
++  }
+ 
+-  if (of_find_property(np, ath,eep-swap, NULL))
+-  for (i = 0; i  ATH9K_PLAT_EEP_MAX_WORDS; i++)
+-  ath9k_pdata.eeprom_data[i] = 
swab16(ath9k_pdata.eeprom_data[i]);
++  if (of_find_property(np, ath,eep-swap, NULL))
++  for (i = 0; i  ATH9K_PLAT_EEP_MAX_WORDS; i++)
++  

[OpenWrt-Devel] [PATCH] [lantiq] [1/2] [V2] EEPROM fix for Astoria/Arcadyan boards.

2014-05-16 Thread José Vázquez Fernández
EEPROM fix for Astoria/Arcadyan boards.

This patch fixes a problem in some Astoria/Arcadyan routers with Atheros
based wireless. In these boards the flash partition that contains the
MAC and calibration data is not read properly, causing the driver to not
initialize the wireless.

[   13.772000] PCI: Enabling device :00:0e.0 ( - 0002)
[   13.776000] ath5k :00:0e.0: registered as 'phy0'
[   15.024000] ath5k: phy0: unable to init EEPROM
[   15.024000] ath5k: probe of :00:0e.0 failed with error -5

This patch covers both ath5k and ath9k drivers.

Signed off by: David Fernández papijunkm...@yahoo.com
Signed off by: Bruno Rodríguez bruno.rodriguez.1...@gmail.com
Signed off by: Álvaro Fernández nolt...@gmail.com
Tested by: José Vázquez Fernández ppvazquez...@gmail.com


Index: target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
===
--- target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
(revisión: 0)
+++ target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
(revisión: 0)
@@ -0,0 +1,447 @@
+--- a/arch/mips/lantiq/xway/ath_eep.c
 b/arch/mips/lantiq/xway/ath_eep.c
+@@ -41,94 +41,182 @@ int __init of_ath9k_eeprom_probe(struct
+ {
+   struct device_node *np = pdev-dev.of_node, *mtd_np;
+   int mac_offset, led_pin;
++  struct resource *eep_res, *mac_res;
++  void __iomem *eep, *mac;
++  int mac_offset;
+   u32 mac_inc = 0, pci_slot = 0;
+   int i;
++  u16 *eepdata, sum, el;
+   struct mtd_info *the_mtd;
+   size_t flash_readlen;
+   const __be32 *list;
+   const char *part;
+   phandle phandle;
+ 
+-  list = of_get_property(np, ath,eep-flash, i);
+-  if (!list || (i !=  (2 * sizeof(*list {
+-  dev_err(pdev-dev, failed to find ath,eep-flash\n);
+-  return -ENODEV;
+-  }
++  if (!of_find_property(np,ath,arv-ath9k-fix,NULL))
++  {
++  list = of_get_property(np, ath,eep-flash, i);
++  if (!list || (i !=  (2 * sizeof(*list {
++  dev_err(pdev-dev, failed to find ath,eep-flash\n);
++  return -ENODEV;
++  }
+ 
+-  phandle = be32_to_cpup(list++);
+-  if (!phandle) {
+-  dev_err(pdev-dev, failed to find phandle\n);
+-  return -ENODEV;
+-  }
++  phandle = be32_to_cpup(list++);
++  if (!phandle) {
++  dev_err(pdev-dev, failed to find phandle\n);
++  return -ENODEV;
++  }
+ 
+-  mtd_np = of_find_node_by_phandle(phandle);
+-  if (!mtd_np) {
+-  dev_err(pdev-dev, failed to find mtd node\n);
+-  return -ENODEV;
+-  }
++  mtd_np = of_find_node_by_phandle(phandle);
++  if (!mtd_np) {
++  dev_err(pdev-dev, failed to find mtd node\n);
++  return -ENODEV;
++  }
+ 
+-  part = of_get_property(mtd_np, label, NULL);
+-  if (!part)
+-  part = mtd_np-name;
+-
+-  the_mtd = get_mtd_device_nm(part);
+-  if (the_mtd == ERR_PTR(-ENODEV)) {
+-  dev_err(pdev-dev, failed to find mtd device\n);
+-  return -ENODEV;
+-  }
++  part = of_get_property(mtd_np, label, NULL);
++  if (!part)
++  part = mtd_np-name;
++
++  the_mtd = get_mtd_device_nm(part);
++  if (the_mtd == ERR_PTR(-ENODEV)){
++  dev_err(pdev-dev, failed to find mtd device\n);
++  return -ENODEV;
++  }
+ 
+-  i = mtd_read(the_mtd, be32_to_cpup(list),
++  i = mtd_read(the_mtd, be32_to_cpup(list),
+   ATH9K_PLAT_EEP_MAX_WORDS  1, flash_readlen,
+   (void *) ath9k_pdata.eeprom_data);
+-  put_mtd_device(the_mtd);
+-  if ((sizeof(ath9k_pdata.eeprom_data) != flash_readlen) || i) {
+-  dev_err(pdev-dev, failed to load eeprom from mtd\n);
+-  return -ENODEV;
+-  }
++  put_mtd_device(the_mtd);
++  if ((sizeof(ath9k_pdata.eeprom_data) != flash_readlen) || i) {
++  dev_err(pdev-dev, failed to load eeprom from mtd\n);
++  return -ENODEV;
++  }
+ 
+-  if (of_find_property(np, ath,eep-swap, NULL))
+-  for (i = 0; i  ATH9K_PLAT_EEP_MAX_WORDS; i++)
+-  ath9k_pdata.eeprom_data[i] = 
swab16(ath9k_pdata.eeprom_data[i]);
++  if (of_find_property(np, ath,eep-swap, NULL))
++  for (i = 0; i  ATH9K_PLAT_EEP_MAX_WORDS; i++)
++  ath9k_pdata.eeprom_data[i] = 
swab16(ath9k_pdata.eeprom_data[i]);
++
++  if (of_find_property(np, ath,eep-endian, NULL)) {
++  ath9k_pdata.endian_check = true;
++  dev_info(pdev-dev, endian check 

[OpenWrt-Devel] [PATCH] [lantiq] [1/2] [V3] EEPROM fix for Astoria/Arcadyan boards.

2014-05-16 Thread José Vázquez Fernández
EEPROM fix for Astoria/Arcadyan boards.

This patch fixes a problem in some Astoria/Arcadyan routers with Atheros
based wireless. In these boards the flash partition that contains the
MAC and calibration data is not read properly, causing the driver to not
initialize the wireless.

[   13.772000] PCI: Enabling device :00:0e.0 ( - 0002)
[   13.776000] ath5k :00:0e.0: registered as 'phy0'
[   15.024000] ath5k: phy0: unable to init EEPROM
[   15.024000] ath5k: probe of :00:0e.0 failed with error -5

This patch covers both ath5k and ath9k drivers.

Signed off by: David Fernández papijunkm...@yahoo.com
Signed off by: Bruno Rodríguez bruno.rodriguez.1...@gmail.com
Signed off by: Álvaro Fernández nolt...@gmail.com
Tested by: José Vázquez Fernández ppvazquez...@gmail.com


Index: target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
===
--- target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
(revisión: 0)
+++ target/linux/lantiq/patches-3.10/0203-arv-athx-workaround.patch
(revisión: 0)
@@ -0,0 +1,447 @@
+--- a/arch/mips/lantiq/xway/ath_eep.c
 b/arch/mips/lantiq/xway/ath_eep.c
+@@ -41,94 +41,182 @@ int __init of_ath9k_eeprom_probe(struct
+ {
+   struct device_node *np = pdev-dev.of_node, *mtd_np;
+   int mac_offset, led_pin;
++  struct resource *eep_res, *mac_res;
++  void __iomem *eep, *mac;
++  int mac_offset;
+   u32 mac_inc = 0, pci_slot = 0;
+   int i;
++  u16 *eepdata, sum, el;
+   struct mtd_info *the_mtd;
+   size_t flash_readlen;
+   const __be32 *list;
+   const char *part;
+   phandle phandle;
+ 
+-  list = of_get_property(np, ath,eep-flash, i);
+-  if (!list || (i !=  (2 * sizeof(*list {
+-  dev_err(pdev-dev, failed to find ath,eep-flash\n);
+-  return -ENODEV;
+-  }
++  if (!of_find_property(np,ath,arv-ath9k-fix,NULL))
++  {
++  list = of_get_property(np, ath,eep-flash, i);
++  if (!list || (i !=  (2 * sizeof(*list {
++  dev_err(pdev-dev, failed to find ath,eep-flash\n);
++  return -ENODEV;
++  }
+ 
+-  phandle = be32_to_cpup(list++);
+-  if (!phandle) {
+-  dev_err(pdev-dev, failed to find phandle\n);
+-  return -ENODEV;
+-  }
++  phandle = be32_to_cpup(list++);
++  if (!phandle) {
++  dev_err(pdev-dev, failed to find phandle\n);
++  return -ENODEV;
++  }
+ 
+-  mtd_np = of_find_node_by_phandle(phandle);
+-  if (!mtd_np) {
+-  dev_err(pdev-dev, failed to find mtd node\n);
+-  return -ENODEV;
+-  }
++  mtd_np = of_find_node_by_phandle(phandle);
++  if (!mtd_np) {
++  dev_err(pdev-dev, failed to find mtd node\n);
++  return -ENODEV;
++  }
+ 
+-  part = of_get_property(mtd_np, label, NULL);
+-  if (!part)
+-  part = mtd_np-name;
+-
+-  the_mtd = get_mtd_device_nm(part);
+-  if (the_mtd == ERR_PTR(-ENODEV)) {
+-  dev_err(pdev-dev, failed to find mtd device\n);
+-  return -ENODEV;
+-  }
++  part = of_get_property(mtd_np, label, NULL);
++  if (!part)
++  part = mtd_np-name;
++
++  the_mtd = get_mtd_device_nm(part);
++  if (the_mtd == ERR_PTR(-ENODEV)){
++  dev_err(pdev-dev, failed to find mtd device\n);
++  return -ENODEV;
++  }
+ 
+-  i = mtd_read(the_mtd, be32_to_cpup(list),
++  i = mtd_read(the_mtd, be32_to_cpup(list),
+   ATH9K_PLAT_EEP_MAX_WORDS  1, flash_readlen,
+   (void *) ath9k_pdata.eeprom_data);
+-  put_mtd_device(the_mtd);
+-  if ((sizeof(ath9k_pdata.eeprom_data) != flash_readlen) || i) {
+-  dev_err(pdev-dev, failed to load eeprom from mtd\n);
+-  return -ENODEV;
+-  }
++  put_mtd_device(the_mtd);
++  if ((sizeof(ath9k_pdata.eeprom_data) != flash_readlen) || i) {
++  dev_err(pdev-dev, failed to load eeprom from mtd\n);
++  return -ENODEV;
++  }
+ 
+-  if (of_find_property(np, ath,eep-swap, NULL))
+-  for (i = 0; i  ATH9K_PLAT_EEP_MAX_WORDS; i++)
+-  ath9k_pdata.eeprom_data[i] = 
swab16(ath9k_pdata.eeprom_data[i]);
++  if (of_find_property(np, ath,eep-swap, NULL))
++  for (i = 0; i  ATH9K_PLAT_EEP_MAX_WORDS; i++)
++  ath9k_pdata.eeprom_data[i] = 
swab16(ath9k_pdata.eeprom_data[i]);
++
++  if (of_find_property(np, ath,eep-endian, NULL)) {
++  ath9k_pdata.endian_check = true;
++  dev_info(pdev-dev, endian check 

Re: [OpenWrt-Devel] [PATCH] {, gpio}-button-hotplug: remove check on CONFIG_HOTPLUG for Kernel = 3.11

2014-05-16 Thread Felix Fietkau
On 2014-05-15 11:44, Stefan Hellermann wrote:
 CONFIG_HOTPLUG was removed in Linux kernel 3.11, so remove
 the #ifdef in button-hotplug and gpio-button-hotplug kernel modules.
 
 Reported in Trac ticket #16413.
 
 The Patch is untested on kernel version  3.11
 
 Signed-off-by: Stefan Hellermann ste...@the2masters.de
 ---
  package/kernel/button-hotplug/src/button-hotplug.c   | 4 ++--
  package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c | 4 ++--
  2 files changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/package/kernel/button-hotplug/src/button-hotplug.c 
 b/package/kernel/button-hotplug/src/button-hotplug.c
 index 8f84eb1..a11fd46 100644
 --- a/package/kernel/button-hotplug/src/button-hotplug.c
 +++ b/package/kernel/button-hotplug/src/button-hotplug.c
 @@ -208,7 +208,7 @@ static int button_hotplug_create_event(const char *name, 
 unsigned long seen,
  
  /* 
 -*/
  
 -#ifdef   CONFIG_HOTPLUG
 +#if ( LINUX_VERSION_CODE = KERNEL_VERSION(3,11,0) ) || defined ( 
 CONFIG_HOTPLUG )
I'd prefer a patch that removes the #ifdef instead of adding more
conditions. OpenWrt wouldn't really work without hotplug support anyway.

- Felix
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] d-link dir-615 h1 without wifi on trunk !

2014-05-16 Thread Mikko Hissa

On 16 May 2014, at 14:18, Daniel Petre daniel.pe...@gmail.com wrote:

 Hello,

Hi!

 anyone has any idea about the fix for the wireless of d-link dir-615 h1 ?
 

In rt2800lib.c, remove line 7812:  
  if (rt2x00_rt(rt2x00dev, RT3290) ||
-rt2x00_rt(rt2x00dev, RT3352) ||
 rt2x00_rt(rt2x00dev, RT5390) ||
 rt2x00_rt(rt2x00dev, RT5392))

(You’ll find it in 
build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_rt305x/compat-wireless-2014-03-31/drivers/net/wireless/rt2x00)

Just do make without a clean and it’ll work.

There still are some problems with rt2x00 not limited to rt3352 (slow rx etc.)…

 https://dev.openwrt.org/ticket/16406
 
 I just tried r40772 after a make clean and still no wireless:
 
 rt2800_wmac 1018.wmac: failed to load eeprom property
 ieee80211 phy0: rt2x00lib_request_eeprom_file: Info - Loading EEPROM data 
 from 'soc_wmac.eeprom'.
 ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 3352, rev 0200 detected
 ieee80211 phy0: rt2800_init_eeprom: Error - Invalid RF chipset 0x3352 detected
 ieee80211 phy0: rt2x00lib_probe_dev: Error - Failed to allocate device
 
 thanks!
 ___
 openwrt-devel mailing list
 openwrt-devel@lists.openwrt.org
 https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH] ipset: update to 6.21.1

2014-05-16 Thread Erik Rigtorp
001-timeout-size.patch fixed upstream

Signed-off-by: Erik Rigtorp e...@rigtorp.se
---
 package/network/utils/ipset/Makefile   |  6 ++---
 .../utils/ipset/patches/001-timeout-size.patch | 28 --
 2 files changed, 3 insertions(+), 31 deletions(-)
 delete mode 100644 package/network/utils/ipset/patches/001-timeout-size.patch

diff --git a/package/network/utils/ipset/Makefile
b/package/network/utils/ipset/Makefile
index 71045e4..29ee48f 100644
--- a/package/network/utils/ipset/Makefile
+++ b/package/network/utils/ipset/Makefile
@@ -1,5 +1,5 @@

-# Copyright (C) 2009-2012 OpenWrt.org
+# Copyright (C) 2009-2014 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk

 PKG_NAME:=ipset
-PKG_VERSION:=6.20.1
+PKG_VERSION:=6.21.1
 PKG_RELEASE:=1

 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://ipset.netfilter.org
-PKG_MD5SUM:=8af741492752fbf24d3a28a9d1473d40
+PKG_MD5SUM:=9c136fd51694eb0ef259cda085145da0

 PKG_MAINTAINER:=Jo-Philipp Wich j...@openwrt.org

diff --git a/package/network/utils/ipset/patches/001-timeout-size.patch
b/package/network/utils/ipset/patches/001-timeout-size.patch
deleted file mode 100644
index b9ff4e2..000
--- a/package/network/utils/ipset/patches/001-timeout-size.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff --git a/lib/parse.c b/lib/parse.c
-index 8ea8542..440ef8f 100644
 a/lib/parse.c
-+++ b/lib/parse.c
-@@ -1292,15 +1292,20 @@ ipset_parse_timeout(struct ipset_session *session,
-enum ipset_opt opt, const char *str)
- {
- int err;
-- unsigned long long num = 0;
-+ unsigned long long llnum = 0;
-+ uint32_t num = 0;
-
- assert(session);
- assert(opt == IPSET_OPT_TIMEOUT);
- assert(str);
-
-- err = string_to_number_ll(session, str, 0, UINT_MAX/1000, num);
-- if (err == 0)
-+ err = string_to_number_ll(session, str, 0, UINT_MAX/1000, llnum);
-+ if (err == 0) {
-+ /* Timeout is expected to be 32bits wide, so we have
-+   to convert it here */
-+ num = llnum;
- return ipset_session_data_set(session, opt, num);
-+ }
-
- return err;
- }
-- 
1.9.1
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH] libnetfilter-conntrack: update to 1.04

2014-05-16 Thread Erik Rigtorp
Signed-off-by: Erik Rigtorp e...@rigtorp.se
---
 package/libs/libnetfilter-conntrack/Makefile | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/package/libs/libnetfilter-conntrack/Makefile
b/package/libs/libnetfilter-conntrack/Makefile
index 43413a7..0afaf46 100644
--- a/package/libs/libnetfilter-conntrack/Makefile
+++ b/package/libs/libnetfilter-conntrack/Makefile
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2009-2013 OpenWrt.org
+# Copyright (C) 2009-2014 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -8,14 +8,14 @@
 include $(TOPDIR)/rules.mk

 PKG_NAME:=libnetfilter_conntrack
-PKG_VERSION:=1.0.3
+PKG_VERSION:=1.0.4
 PKG_RELEASE:=1

 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:= \
  http://www.netfilter.org/projects/libnetfilter_conntrack/files/ \
  ftp://ftp.netfilter.org/pub/libnetfilter_conntrack/
-PKG_MD5SUM:=73394a3d8d0cfecc6abb6027b4792d52
+PKG_MD5SUM:=18cf80c4b339a3285e78822dbd4f08d7
 PKG_MAINTAINER:=Jo-Philipp Wich j...@openwrt.org

 PKG_FIXUP:=autoreconf
-- 
1.9.1
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH] iftop: update to 1.0pre4

2014-05-16 Thread Erik Rigtorp
Signed-off-by: Erik Rigtorp e...@rigtorp.se
---
 package/network/utils/iftop/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/network/utils/iftop/Makefile
b/package/network/utils/iftop/Makefile
index b054ed1..df180e0 100644
--- a/package/network/utils/iftop/Makefile
+++ b/package/network/utils/iftop/Makefile
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk

 PKG_NAME:=iftop
-PKG_VERSION:=1.0pre2
+PKG_VERSION:=1.0pre4
 PKG_RELEASE:=1

 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://www.ex-parrot.com/~pdw/iftop/download
-PKG_MD5SUM:=fef521a49ec0122458d02c64212af3c5
+PKG_MD5SUM:=7e6decb4958e8a4890cccac335239f24

 PKG_MAINTAINER:=Jo-Philipp Wich j...@openwrt.org

-- 
1.9.1
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] Some atheros devices not loading kernel modules at boot, but work fine under AA

2014-05-16 Thread Ben West
Aha, nevermind, false alarm.  Looks like the failing reflashed nodes were
carrying over /etc/init.d/boot from AA (which is incompatible with trunk).


On Fri, May 16, 2014 at 7:32 PM, Ben West b...@gowasabi.net wrote:

 With one exception, all the OM1P and EOC-1650 units (atheros / ath5k) I've
 tried flashing with trunk r40746 do not load most of their kernel modules
 at boot.  So no radio, zram, etc.

 Example errors seen in logread:
 Fri May 16 03:01:32 2014 user.emerg syslog: zram_applicable: [ERROR]
 device '/dev/zram0' not found
 Fri May 16 03:01:32 2014 daemon.crit zram_applicable: [ERROR] device
 '/dev/zram0' not found
 Fri May 16 03:01:34 2014 user.emerg syslog: Error: Failed to connect to
 ubus
 Fri May 16 03:01:38 2014 user.emerg syslog: this file has been obseleted.
 please call /sbin/block mount directly
 Fri May 16 03:01:39 2014 user.err syslog: /dev/mtdblock2 is already mounted
 Fri May 16 03:01:39 2014 user.emerg syslog: block: /dev/mtdblock2 is
 already mounted

 Of particular curiosity is that one EOC-1650 *does* to boot up r40746
 just fine, with all kernel modules, radio and zram included.  No observable
 difference in that device's partition table vs. that of failing units.
 Also, all failing devices boot up AA r40431 w/o problem, suggesting the
 issue is not with flash errors on specific units.

 Could this indicate a race condition when the kernel tries to load modules?

 I've filed a ticket with more details:
 https://dev.openwrt.org/ticket/16513


 --
 Ben West
 http://gowasabi.net
 b...@gowasabi.net
 314-246-9434




-- 
Ben West
http://gowasabi.net
b...@gowasabi.net
314-246-9434
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 0/9] ubi, ubifs and ubiblock fixes and improvements

2014-05-16 Thread Daniel Golle
This series fixes a bunch of small issues related to UBI
integration, mostly related to using squashfs on top of UBI
and/or overlayfs on top of UBIFS.

It also adds supports for discovering rootfs on UBI-enabled
devices without the need for passing down a kernel parameter.

Last but not least, integrating ubinize image generation in the
ubifs-specific make-target made little sense as one might want
to use squashfs or other filesystems inside UBI as well and then
also may want to create ubinized images. Add a wrapper-tool for
ubinize to support creating per-profile and per-root-filesystem
images.

Daniel Golle (9):
  kernel/ubifs: remove obsolete CONFIG_UBIFS_FS_XATTR symbol
  kernel: add another new config symbol for kernel 3.14
  kernel: backport ubiblock support from 3.15
  kernel: rootfs auto-mount on ubi
  ubi-utils: bump to version 1.5.1 for ubiblock support
  fstools: support ubifs overlay
  scripts: add ubinize-image.sh to generate ubi images
  images.mk: no longer ubinize only for ubifs
  base-files: include ubiblock tool in sysupgrade ramdisk

 include/image.mk   |  23 +-
 package/base-files/files/lib/upgrade/common.sh |   4 +-
 package/system/fstools/Makefile|   4 +-
 package/utils/ubi-utils/Makefile   |   7 +-
 .../utils/ubi-utils/patches/130-lzma_jffs2.patch   |   8 +-
 scripts/ubinize-image.sh   |  87 +++
 target/linux/generic/config-3.14   |   1 +
 .../550-ubifs-symlink-xattr-support.patch  |   4 +-
 .../550-ubifs-symlink-xattr-support.patch  |   4 +-
 .../550-ubifs-symlink-xattr-support.patch  |   4 +-
 ...BI-R-O-block-driver-on-top-of-UBI-volumes.patch | 847 +
 .../041-UBI-block-do-not-use-term-attach.patch | 194 +
 ...block-Mark-init-only-symbol-as-__initdata.patch |  42 +
 ...UBI-block-Use-u64-for-the-64-bit-dividend.patch |  33 +
 .../044-UBI-rename-block-device-ioctls.patch   |  92 +++
 ...Remove-__initdata-from-ubiblock_param_ops.patch |  35 +
 ...46-UBI-avoid-workqueue-format-string-leak.patch |  30 +
 ...I_IOCVOLCRBLK-take-a-parameter-for-future.patch |  63 ++
 ...tach-mtd-device-named-ubi-or-data-on-boot.patch |  68 ++
 ...bi-auto-create-ubiblock-device-for-rootfs.patch |  74 ++
 ...-mounting-ubi0-rootfs-in-init-do_mounts.c.patch |  58 ++
 ...-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch |  42 +
 .../550-ubifs-symlink-xattr-support.patch  |   4 +-
 .../552-ubifs-respect-silent-mount-flag.patch  | 176 +
 .../550-ubifs-symlink-xattr-support.patch  |   4 +-
 .../550-ubifs-symlink-xattr-support.patch  |   4 +-
 .../550-ubifs-symlink-xattr-support.patch  |   4 +-
 27 files changed, 1867 insertions(+), 49 deletions(-)
 create mode 100755 scripts/ubinize-image.sh
 create mode 100644 
target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch
 create mode 100644 
target/linux/generic/patches-3.14/041-UBI-block-do-not-use-term-attach.patch
 create mode 100644 
target/linux/generic/patches-3.14/042-UBI-block-Mark-init-only-symbol-as-__initdata.patch
 create mode 100644 
target/linux/generic/patches-3.14/043-UBI-block-Use-u64-for-the-64-bit-dividend.patch
 create mode 100644 
target/linux/generic/patches-3.14/044-UBI-rename-block-device-ioctls.patch
 create mode 100644 
target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch
 create mode 100644 
target/linux/generic/patches-3.14/046-UBI-avoid-workqueue-format-string-leak.patch
 create mode 100644 
target/linux/generic/patches-3.14/047-UBI-make-UBI_IOCVOLCRBLK-take-a-parameter-for-future.patch
 create mode 100644 
target/linux/generic/patches-3.14/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
 create mode 100644 
target/linux/generic/patches-3.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch
 create mode 100644 
target/linux/generic/patches-3.14/492-try-auto-mounting-ubi0-rootfs-in-init-do_mounts.c.patch
 create mode 100644 
target/linux/generic/patches-3.14/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch
 create mode 100644 
target/linux/generic/patches-3.14/552-ubifs-respect-silent-mount-flag.patch

-- 
1.9.2



pgpXHq4eePKOp.pgp
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 1/9] kernel/ubifs: remove obsolete CONFIG_UBIFS_FS_XATTR symbol

2014-05-16 Thread Daniel Golle
550-ubifs-symlink-xattr-support.patch contains a reference to the
by now obsolete config symbol CONFIG_UBIFS_FS_XATTR which leads to
the functionality originally added by the patch being left-out during
compile since commit 1bdcc63112a0 (UBIFS: remove xattr Kconnfig
option) in v3.5.
Fix this by removing the #ifdef from all affected kernels.

Signed-off-by: Daniel Golle dan...@makrotopia.org

diff --git 
a/target/linux/generic/patches-3.10/550-ubifs-symlink-xattr-support.patch 
b/target/linux/generic/patches-3.10/550-ubifs-symlink-xattr-support.patch
index b4de071..0235340 100644
--- a/target/linux/generic/patches-3.10/550-ubifs-symlink-xattr-support.patch
+++ b/target/linux/generic/patches-3.10/550-ubifs-symlink-xattr-support.patch
@@ -1,15 +1,13 @@
 --- a/fs/ubifs/file.c
 +++ b/fs/ubifs/file.c
-@@ -1576,6 +1576,12 @@ const struct inode_operations ubifs_syml
+@@ -1576,6 +1576,10 @@ const struct inode_operations ubifs_syml
.follow_link = ubifs_follow_link,
.setattr = ubifs_setattr,
.getattr = ubifs_getattr,
-+#ifdef CONFIG_UBIFS_FS_XATTR
 +  .setxattr= ubifs_setxattr,
 +  .getxattr= ubifs_getxattr,
 +  .listxattr   = ubifs_listxattr,
 +  .removexattr = ubifs_removexattr,
-+#endif
  };
  
  const struct file_operations ubifs_file_operations = {
diff --git 
a/target/linux/generic/patches-3.12/550-ubifs-symlink-xattr-support.patch 
b/target/linux/generic/patches-3.12/550-ubifs-symlink-xattr-support.patch
index f08ec02..9ca8ac1 100644
--- a/target/linux/generic/patches-3.12/550-ubifs-symlink-xattr-support.patch
+++ b/target/linux/generic/patches-3.12/550-ubifs-symlink-xattr-support.patch
@@ -1,15 +1,13 @@
 --- a/fs/ubifs/file.c
 +++ b/fs/ubifs/file.c
-@@ -1577,6 +1577,12 @@ const struct inode_operations ubifs_syml
+@@ -1577,6 +1577,10 @@ const struct inode_operations ubifs_syml
.follow_link = ubifs_follow_link,
.setattr = ubifs_setattr,
.getattr = ubifs_getattr,
-+#ifdef CONFIG_UBIFS_FS_XATTR
 +  .setxattr= ubifs_setxattr,
 +  .getxattr= ubifs_getxattr,
 +  .listxattr   = ubifs_listxattr,
 +  .removexattr = ubifs_removexattr,
-+#endif
  };
  
  const struct file_operations ubifs_file_operations = {
diff --git 
a/target/linux/generic/patches-3.13/550-ubifs-symlink-xattr-support.patch 
b/target/linux/generic/patches-3.13/550-ubifs-symlink-xattr-support.patch
index f08ec02..9ca8ac1 100644
--- a/target/linux/generic/patches-3.13/550-ubifs-symlink-xattr-support.patch
+++ b/target/linux/generic/patches-3.13/550-ubifs-symlink-xattr-support.patch
@@ -1,15 +1,13 @@
 --- a/fs/ubifs/file.c
 +++ b/fs/ubifs/file.c
-@@ -1577,6 +1577,12 @@ const struct inode_operations ubifs_syml
+@@ -1577,6 +1577,10 @@ const struct inode_operations ubifs_syml
.follow_link = ubifs_follow_link,
.setattr = ubifs_setattr,
.getattr = ubifs_getattr,
-+#ifdef CONFIG_UBIFS_FS_XATTR
 +  .setxattr= ubifs_setxattr,
 +  .getxattr= ubifs_getxattr,
 +  .listxattr   = ubifs_listxattr,
 +  .removexattr = ubifs_removexattr,
-+#endif
  };
  
  const struct file_operations ubifs_file_operations = {
diff --git 
a/target/linux/generic/patches-3.14/550-ubifs-symlink-xattr-support.patch 
b/target/linux/generic/patches-3.14/550-ubifs-symlink-xattr-support.patch
index f08ec02..9ca8ac1 100644
--- a/target/linux/generic/patches-3.14/550-ubifs-symlink-xattr-support.patch
+++ b/target/linux/generic/patches-3.14/550-ubifs-symlink-xattr-support.patch
@@ -1,15 +1,13 @@
 --- a/fs/ubifs/file.c
 +++ b/fs/ubifs/file.c
-@@ -1577,6 +1577,12 @@ const struct inode_operations ubifs_syml
+@@ -1577,6 +1577,10 @@ const struct inode_operations ubifs_syml
.follow_link = ubifs_follow_link,
.setattr = ubifs_setattr,
.getattr = ubifs_getattr,
-+#ifdef CONFIG_UBIFS_FS_XATTR
 +  .setxattr= ubifs_setxattr,
 +  .getxattr= ubifs_getxattr,
 +  .listxattr   = ubifs_listxattr,
 +  .removexattr = ubifs_removexattr,
-+#endif
  };
  
  const struct file_operations ubifs_file_operations = {
diff --git 
a/target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch 
b/target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch
index 3d49363..d5766b5 100644
--- a/target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch
+++ b/target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch
@@ -1,15 +1,13 @@
 --- a/fs/ubifs/file.c
 +++ b/fs/ubifs/file.c
-@@ -1573,6 +1573,12 @@ const struct inode_operations ubifs_syml
+@@ -1573,6 +1573,10 @@ const struct inode_operations ubifs_syml
.follow_link = ubifs_follow_link,
.setattr = ubifs_setattr,
.getattr = ubifs_getattr,
-+#ifdef CONFIG_UBIFS_FS_XATTR
 +  .setxattr= ubifs_setxattr,
 +  .getxattr= ubifs_getxattr,
 +  .listxattr   = ubifs_listxattr,
 +  .removexattr = ubifs_removexattr,
-+#endif
  };
  
  const struct file_operations 

[OpenWrt-Devel] [PATCH 2/9] kernel: add another new config symbol for kernel 3.14

2014-05-16 Thread Daniel Golle
It was augmented by CONFIG_USB_GADGET...

Signed-off-by: Daniel Golle dan...@makrotopia.org

diff --git a/target/linux/generic/config-3.14 b/target/linux/generic/config-3.14
index 0516ab0..bbb00de 100644
--- a/target/linux/generic/config-3.14
+++ b/target/linux/generic/config-3.14
@@ -3926,6 +3926,7 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y
 # CONFIG_USB_RTL8150 is not set
 # CONFIG_USB_RTL8152 is not set
 # CONFIG_USB_S2255 is not set
+# CONFIG_USB_S3C_HSOTG is not set
 # CONFIG_USB_SE401 is not set
 # CONFIG_USB_SERIAL is not set
 # CONFIG_USB_SERIAL_AIRCABLE is not set
-- 
1.9.2



pgpPZr8ASXHwe.pgp
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 3/9] kernel: backport ubiblock support from 3.15

2014-05-16 Thread Daniel Golle
Backport ubiblock support from kernel 3.15 as well as all follow-up
fixes related to ubiblock.

Signed-off-by: Daniel Golle dan...@makrotopia.org

 create mode 100644 
target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch
 create mode 100644 
target/linux/generic/patches-3.14/041-UBI-block-do-not-use-term-attach.patch
 create mode 100644 
target/linux/generic/patches-3.14/042-UBI-block-Mark-init-only-symbol-as-__initdata.patch
 create mode 100644 
target/linux/generic/patches-3.14/043-UBI-block-Use-u64-for-the-64-bit-dividend.patch
 create mode 100644 
target/linux/generic/patches-3.14/044-UBI-rename-block-device-ioctls.patch
 create mode 100644 
target/linux/generic/patches-3.14/045-UBI-block-Remove-__initdata-from-ubiblock_param_ops.patch
 create mode 100644 
target/linux/generic/patches-3.14/046-UBI-avoid-workqueue-format-string-leak.patch
 create mode 100644 
target/linux/generic/patches-3.14/047-UBI-make-UBI_IOCVOLCRBLK-take-a-parameter-for-future.patch

diff --git 
a/target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch
 
b/target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch
new file mode 100644
index 000..50e9e2f
--- /dev/null
+++ 
b/target/linux/generic/patches-3.14/040-UBI-R-O-block-driver-on-top-of-UBI-volumes.patch
@@ -0,0 +1,847 @@
+From 9d54c8a33eec78289b1b3f6e10874719c27ce0a7 Mon Sep 17 00:00:00 2001
+From: Ezequiel Garcia ezequiel.gar...@free-electrons.com
+Date: Tue, 25 Feb 2014 13:25:22 -0300
+Subject: [PATCH] UBI: R/O block driver on top of UBI volumes
+
+This commit introduces read-only block device emulation on top of UBI volumes.
+
+Given UBI takes care of wear leveling and bad block management it's possible
+to add a thin layer to enable block device access to UBI volumes.
+This allows to use a block-oriented filesystem on a flash device.
+
+The UBI block devices are meant to be used in conjunction with any
+regular, block-oriented file system (e.g. ext4), although it's primarily
+targeted at read-only file systems, such as squashfs.
+
+Block devices are created upon user request through new ioctls:
+UBI_IOCVOLATTBLK to attach and UBI_IOCVOLDETBLK to detach.
+Also, a new UBI module parameter is added 'ubi.block'. This parameter is
+needed in order to attach a block device on boot-up time, allowing to
+mount the rootfs on a ubiblock device.
+For instance, you could have these kernel parameters:
+
+  ubi.mtd=5 ubi.block=0,0 root=/dev/ubiblock0_0
+
+Or, if you compile ubi as a module:
+
+  $ modprobe ubi mtd=/dev/mtd5 block=/dev/ubi0_0
+
+Artem: amend commentaries and massage the patch a little bit.
+
+Signed-off-by: Ezequiel Garcia ezequiel.gar...@free-electrons.com
+Signed-off-by: Artem Bityutskiy artem.bityuts...@linux.intel.com
+---
+ drivers/mtd/ubi/Kconfig |  15 +
+ drivers/mtd/ubi/Makefile|   1 +
+ drivers/mtd/ubi/block.c | 646 
+ drivers/mtd/ubi/build.c |  11 +
+ drivers/mtd/ubi/cdev.c  |  20 ++
+ drivers/mtd/ubi/ubi.h   |  14 +
+ include/uapi/mtd/ubi-user.h |  11 +
+ 7 files changed, 718 insertions(+)
+ create mode 100644 drivers/mtd/ubi/block.c
+
+diff --git a/drivers/mtd/ubi/Kconfig b/drivers/mtd/ubi/Kconfig
+index 36663af..783fb18 100644
+--- a/drivers/mtd/ubi/Kconfig
 b/drivers/mtd/ubi/Kconfig
+@@ -87,4 +87,19 @@ config MTD_UBI_GLUEBI
+  work on top of UBI. Do not enable this unless you use legacy
+  software.
+ 
++config MTD_UBI_BLOCK
++  bool Read-only block devices on top of UBI volumes
++  default n
++  help
++ This option enables read-only UBI block devices support. UBI block
++ devices will be layered on top of UBI volumes, which means that the
++ UBI driver will transparently handle things like bad eraseblocks and
++ bit-flips. You can put any block-oriented file system on top of UBI
++ volumes in read-only mode (e.g., ext4), but it is probably most
++ practical for read-only file systems, like squashfs.
++
++ When selected, this feature will be built in the UBI driver.
++
++ If in doubt, say N.
++
+ endif # MTD_UBI
+diff --git a/drivers/mtd/ubi/Makefile b/drivers/mtd/ubi/Makefile
+index b46b0c97..4e3c3d7 100644
+--- a/drivers/mtd/ubi/Makefile
 b/drivers/mtd/ubi/Makefile
+@@ -3,5 +3,6 @@ obj-$(CONFIG_MTD_UBI) += ubi.o
+ ubi-y += vtbl.o vmt.o upd.o build.o cdev.o kapi.o eba.o io.o wl.o attach.o
+ ubi-y += misc.o debug.o
+ ubi-$(CONFIG_MTD_UBI_FASTMAP) += fastmap.o
++ubi-$(CONFIG_MTD_UBI_BLOCK) += block.o
+ 
+ obj-$(CONFIG_MTD_UBI_GLUEBI) += gluebi.o
+diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c
+new file mode 100644
+index 000..cea7d1c
+--- /dev/null
 b/drivers/mtd/ubi/block.c
+@@ -0,0 +1,646 @@
++/*
++ * Copyright (c) 2014 Ezequiel Garcia
++ * Copyright (c) 2011 Free Electrons
++ *
++ * Driver parameter handling strongly based on drivers/mtd/ubi/build.c
++ *   Copyright (c) 

[OpenWrt-Devel] [PATCH 4/9] kernel: rootfs auto-mount on ubi

2014-05-16 Thread Daniel Golle
Similar to the rootfs hacks on NOR flash devices, this series
introduces support for auto-attaching (ubi device), auto-creating
(ubiblock device) and mounting the rootfs (ubifs or squashfs)
volume.
This is needed so OpenWrt can start without relying on the bootloader
to pass the ubi.mtd, ubi.block, rootfs and rootfstype parameters, but
instead auto-detect the root filesystem according to a simple convention.

OpenWrt-specific:
490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
491-ubi-auto-create-ubiblock-device-for-rootfs.patch
492-try-auto-mounting-ubi0-rootfs-in-init-do_mounts.c.patch
493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch

sent upstream:
552-ubifs-respect-silent-mount-flag.patch
http://lists.infradead.org/pipermail/linux-mtd/2014-May/053893.html

v4: put_mtd_device was called unconditionally during auto-attach, resulting
in a negative usecount once the ubi device gets detached.
Fix this by only calling put_mtd_device if attaching the ubi device
has failed.

v5: introduce support for ubifs

 create mode 100644 
target/linux/generic/patches-3.14/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
 create mode 100644 
target/linux/generic/patches-3.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch
 create mode 100644 
target/linux/generic/patches-3.14/492-try-auto-mounting-ubi0-rootfs-in-init-do_mounts.c.patch
 create mode 100644 
target/linux/generic/patches-3.14/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch
 create mode 100644 
target/linux/generic/patches-3.14/552-ubifs-respect-silent-mount-flag.patch

diff --git 
a/target/linux/generic/patches-3.14/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
 
b/target/linux/generic/patches-3.14/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
new file mode 100644
index 000..440c6bf
--- /dev/null
+++ 
b/target/linux/generic/patches-3.14/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
@@ -0,0 +1,68 @@
+From 8a52e4100d7c3a4a1dfddfa02b8864a9b0068c13 Mon Sep 17 00:00:00 2001
+From: Daniel Golle dan...@makrotopia.org
+Date: Sat, 17 May 2014 03:36:18 +0200
+Subject: [PATCH 1/5] ubi: auto-attach mtd device named ubi or data on boot
+To: openwrt-devel@lists.openwrt.org
+
+Signed-off-by: Daniel Golle dan...@makrotopia.org
+---
+ drivers/mtd/ubi/build.c | 36 
+ 1 file changed, 36 insertions(+)
+
+diff --git a/drivers/mtd/ubi/build.c b/drivers/mtd/ubi/build.c
+index 6e30a3c..999a36b 100644
+--- a/drivers/mtd/ubi/build.c
 b/drivers/mtd/ubi/build.c
+@@ -1209,6 +1209,36 @@ static struct mtd_info * __init open_mtd_device(const 
char *mtd_dev)
+   return mtd;
+ }
+ 
++/*
++ * This function tries attaching mtd partitions named either ubi or data
++ * during boot.
++ */
++static void __init ubi_auto_attach(void)
++{
++  int err;
++  struct mtd_info *mtd;
++  /* try attaching mtd device named ubi or data */
++  mtd = open_mtd_device(ubi);
++  if (IS_ERR(mtd))
++  mtd = open_mtd_device(data);
++
++  if (!IS_ERR(mtd)) {
++  /* auto-add only media types where UBI makes sense */
++  if (mtd-type == MTD_NANDFLASH ||
++  mtd-type == MTD_DATAFLASH ||
++  mtd-type == MTD_MLCNANDFLASH) {
++  mutex_lock(ubi_devices_mutex);
++  ubi_msg(auto-attach mtd%d, mtd-index);
++  err = ubi_attach_mtd_dev(mtd, UBI_DEV_NUM_AUTO, 0, 0);
++  mutex_unlock(ubi_devices_mutex);
++  if (err  0) {
++  ubi_err(cannot attach mtd%d, mtd-index);
++  put_mtd_device(mtd);
++  }
++  }
++  }
++}
++
+ static int __init ubi_init(void)
+ {
+   int err, i, k;
+@@ -1298,6 +1328,12 @@ static int __init ubi_init(void)
+   }
+   }
+ 
++  /* auto-attach mtd devices only if built-in to the kernel and no ubi.mtd
++   * parameter was given */
++  if (config_enabled(CONFIG_MTD_ROOTFS_ROOT_DEV) 
++  !ubi_is_module()  !mtd_devs)
++  ubi_auto_attach();
++
+   err = ubiblock_init();
+   if (err) {
+   ubi_err(block: cannot initialize, error %d, err);
+-- 
+1.9.2
+
diff --git 
a/target/linux/generic/patches-3.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch
 
b/target/linux/generic/patches-3.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch
new file mode 100644
index 000..e1992c9
--- /dev/null
+++ 
b/target/linux/generic/patches-3.14/491-ubi-auto-create-ubiblock-device-for-rootfs.patch
@@ -0,0 +1,74 @@
+From 0f3966579815f889bb2fcb4846152c35f65e79c4 Mon Sep 17 00:00:00 2001
+From: Daniel Golle dan...@makrotopia.org
+Date: Thu, 15 May 2014 21:06:33 +0200
+Subject: [PATCH 2/5] ubi: auto-create ubiblock device for rootfs
+To: openwrt-devel@lists.openwrt.org
+
+Signed-off-by: Daniel Golle dan...@makrotopia.org
+---
+ 

[OpenWrt-Devel] [PATCH 5/9] ubi-utils: bump to version 1.5.1 for ubiblock support

2014-05-16 Thread Daniel Golle
ubiblock allows creating and removing read-only block devices
on top of ubi volumes.

Signed-off-by: Daniel Golle dan...@makrotopia.org

diff --git a/package/utils/ubi-utils/Makefile b/package/utils/ubi-utils/Makefile
index d009139..fd41da0 100644
--- a/package/utils/ubi-utils/Makefile
+++ b/package/utils/ubi-utils/Makefile
@@ -8,9 +8,9 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=mtd-utils
-PKG_REV:=ab8c6fb93ce9db0f09401c4b819b0b277dc00340
-PKG_VERSION:=1.5.0
-PKG_RELEASE:=2
+PKG_REV:=7d2839b8dede3ae368780364b4a07473d2303219
+PKG_VERSION:=1.5.1
+PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=git://git.infradead.org/mtd-utils.git
@@ -33,6 +33,7 @@ include $(INCLUDE_DIR)/package.mk
 FILES:= \
ubiattach \
ubicrc32 \
+   ubiblock \
ubidetach \
ubiformat \
ubimkvol \
diff --git a/package/utils/ubi-utils/patches/130-lzma_jffs2.patch 
b/package/utils/ubi-utils/patches/130-lzma_jffs2.patch
index a40199e..c788f25 100644
--- a/package/utils/ubi-utils/patches/130-lzma_jffs2.patch
+++ b/package/utils/ubi-utils/patches/130-lzma_jffs2.patch
@@ -2,10 +2,10 @@
 +++ b/Makefile
 @@ -3,7 +3,7 @@
  
- VERSION = 1.5.0
+ VERSION = 1.5.1
  
--CPPFLAGS += -D_GNU_SOURCE -I./include -I$(BUILDDIR)/include 
-I./ubi-utils/include $(ZLIBCPPFLAGS) $(LZOCPPFLAGS)
-+CPPFLAGS += -D_GNU_SOURCE -I./include -I$(BUILDDIR)/include 
-I./ubi-utils/include $(ZLIBCPPFLAGS) $(LZOCPPFLAGS) -I./include/linux/lzma
+-CPPFLAGS += -D_GNU_SOURCE -I./include -I$(BUILDDIR)/include 
-I./ubi-utils/include $(ZLIBCPPFLAGS) $(LZOCPPFLAGS) $(UUIDCPPFLAGS)
++CPPFLAGS += -D_GNU_SOURCE -I./include -I$(BUILDDIR)/include 
-I./ubi-utils/include $(ZLIBCPPFLAGS) $(LZOCPPFLAGS) $(UUIDCPPFLAGS) 
-I./include/linux/lzma
  
  ifeq ($(WITHOUT_XATTR), 1)
CPPFLAGS += -DWITHOUT_XATTR
@@ -5011,7 +5011,7 @@
 +}
 --- a/mkfs.jffs2.c
 +++ b/mkfs.jffs2.c
-@@ -1658,11 +1658,11 @@ int main(int argc, char **argv)
+@@ -1659,11 +1659,11 @@ int main(int argc, char **argv)
  }
  erase_block_size *= units;
  
-- 
1.9.2



pgpmWcZR1s25Z.pgp
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 6/9] fstools: support ubifs overlay

2014-05-16 Thread Daniel Golle
Signed-off-by: Daniel Golle dan...@makrotopia.org

diff --git a/package/system/fstools/Makefile b/package/system/fstools/Makefile
index 826f77d..e052552 100644
--- a/package/system/fstools/Makefile
+++ b/package/system/fstools/Makefile
@@ -1,14 +1,14 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fstools
-PKG_VERSION:=2014-04-17
+PKG_VERSION:=2014-05-13
 
 PKG_RELEASE=$(PKG_SOURCE_VERSION)
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=git://nbd.name/fstools.git
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_VERSION:=fe222812cc12d37647fbb8667851eb005ea95331
+PKG_SOURCE_VERSION:=a9e8236cde8c9b4784e4c91b23a2ba006e727f6a
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
 CMAKE_INSTALL:=1
 
-- 
1.9.2



pgpY3bBGsk1_s.pgp
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 7/9] scripts: add ubinize-image.sh to generate ubi images

2014-05-16 Thread Daniel Golle
Signed-off-by: Daniel Golle dan...@makrotopia.org

 create mode 100755 scripts/ubinize-image.sh

diff --git a/scripts/ubinize-image.sh b/scripts/ubinize-image.sh
new file mode 100755
index 000..d7b1e47
--- /dev/null
+++ b/scripts/ubinize-image.sh
@@ -0,0 +1,87 @@
+#!/bin/sh
+
+flavour=bare
+ubinize_param=
+kernel=
+rootfs=
+outfile=
+
+get_magic_word() {
+   dd if=$1 bs=2 count=1 2/dev/null | hexdump -v -n 2 -e '1/1 %02x'
+}
+
+is_ubifs() {
+   if [ $( get_magic_word $1 ) = 3118 ]; then
+   echo 1
+   fi
+}
+
+ubivol() {
+   volid=$1
+   name=$2
+   image=$3
+   autoresize=$4
+   echo [$name]
+   echo mode=ubi
+   echo vol_id=$volid
+   echo vol_type=dynamic
+   echo vol_name=$name
+   if [ $image ]; then
+   echo image=$image
+   else
+   echo vol_size=1MiB
+   fi
+   if [ $autoresize ]; then
+   echo vol_flags=autoresize
+   fi
+}
+
+ubilayout() {
+   local vol_id=0
+   local root_is_ubifs=$( is_ubifs $3 )
+   if [ $1 = ubootenv ]; then
+   ubivol $vol_id ubootenv
+   vol_id=$(( $vol_id + 1 ))
+   ubivol $vol_id ubootenv2
+   vol_id=$(( $vol_id + 1 ))
+   fi
+   ubivol $vol_id kernel $2
+   vol_id=$(( $vol_id + 1 ))
+   ubivol $vol_id rootfs $3 $root_is_ubifs
+   vol_id=$(( $vol_id + 1 ))
+   [ $root_is_ubifs ] || ubivol $vol_id rootfs_data  1
+}
+
+
+while [ $1 ]; do
+   if [ $1 = --uboot-env ]; then
+   flavour=ubootenv
+   shift
+   continue
+   fi
+
+   if [ ! $kernel ]; then
+   kernel=$1
+   shift
+   continue
+   fi
+   if [ ! $rootfs ]; then
+   rootfs=$1
+   shift
+   continue
+   fi
+   if [ ! $outfile ]; then
+   outfile=$1
+   shift
+   continue
+   fi
+   ubinize_param=$@
+   break
+done
+
+[ ! -e $kernel -o ! -e $rootfs ]  exit 1
+
+ubinizecfg=$( mktemp )
+ubilayout $flavour $kernel $rootfs  $ubinizecfg
+ubinize -o $outfile $ubinize_param $ubinizecfg
+rm $ubinizecfg
-- 
1.9.2



pgpCItpfNJ2eW.pgp
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 8/9] images.mk: no longer ubinize only for ubifs

2014-05-16 Thread Daniel Golle
use scripts/ubinize-image.sh to generate ubinized images in
target/*/images/Makefile

Signed-off-by: Daniel Golle dan...@makrotopia.org

diff --git a/include/image.mk b/include/image.mk
index 5391905..e8a0d0e 100644
--- a/include/image.mk
+++ b/include/image.mk
@@ -106,6 +106,10 @@ define Image/mkfs/jffs2/sub
$(call Image/Build,jffs2-$(2))
 endef
 
+define Image/mkfs/ubi
+   $(call Image/Build,ubi)
+endef
+
 ifneq ($(CONFIG_TARGET_ROOTFS_JFFS2),)
 define Image/mkfs/jffs2
$(foreach SZ,$(JFFS2_BLOCKSIZE),$(call 
Image/mkfs/jffs2/sub,$(SZ),$(SZ),$(JFFS2OPTS)))
@@ -129,20 +133,8 @@ ifneq ($(CONFIG_TARGET_ROOTFS_SQUASHFS),)
 endef
 endif
 
-ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),)
-define Image/mkfs/ubifs/generate
-   $(CP) ./ubinize$(1).cfg $(KDIR)
-   ( cd $(KDIR); \
-   $(STAGING_DIR_HOST)/bin/ubinize \
-   $(if $($(PROFILE)_UBI_OPTS), \
-   $(shell echo $($(PROFILE)_UBI_OPTS)), \
-   $(shell echo $(UBI_OPTS)) \
-   ) \
-   -o $(KDIR)/root$(1).ubi \
-   ubinize$(1).cfg \
-   )
-endef
 
+ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),)
 define Image/mkfs/ubifs
 
 ifneq ($($(PROFILE)_UBIFS_OPTS)$(UBIFS_OPTS),)
@@ -162,11 +154,6 @@ ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),)
 endif
$(call Image/Build,ubifs)
 
-ifneq ($($(PROFILE)_UBI_OPTS)$(UBI_OPTS),)
-   $(call Image/mkfs/ubifs/generate,)
-   $(if $(wildcard ./ubinize-overlay.cfg),$(call 
Image/mkfs/ubifs/generate,-overlay))
-endif
-   $(call Image/Build,ubi)
 endef
 endif
 
-- 
1.9.2



pgpVTk6vNPFpJ.pgp
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 9/9] base-files: include ubiblock tool in sysupgrade ramdisk

2014-05-16 Thread Daniel Golle
Also add some more busybox symlinks which are useful for sysupgrade
on UBI-enabled devices.

Signed-off-by: Daniel Golle dan...@makrotopia.org

diff --git a/package/base-files/files/lib/upgrade/common.sh 
b/package/base-files/files/lib/upgrade/common.sh
index ecf1a98..09f3315 100644
--- a/package/base-files/files/lib/upgrade/common.sh
+++ b/package/base-files/files/lib/upgrade/common.sh
@@ -55,7 +55,8 @@ run_ramfs() { # command [...]
/bin/grep /bin/cp /bin/mv /bin/tar /usr/bin/md5sum /usr/bin/[ 
\
/bin/dd /bin/vi /bin/ls /bin/cat /usr/bin/awk /usr/bin/hexdump  
\
/bin/sleep /bin/zcat /usr/bin/bzcat /usr/bin/printf /usr/bin/wc 
\
-   /bin/cut /usr/bin/printf /bin/sync
+   /bin/cut /usr/bin/printf /bin/sync /bin/mkdir /bin/rmdir
\
+   /bin/rm /usr/bin/basename /bin/kill /bin/chmod /usr/bin/hexdump
 
install_bin /sbin/mtd
install_bin /sbin/ubi
@@ -64,6 +65,7 @@ run_ramfs() { # command [...]
install_bin /sbin/snapshot_tool
install_bin /usr/sbin/ubiupdatevol
install_bin /usr/sbin/ubiattach
+   install_bin /usr/sbin/ubiblock
install_bin /usr/sbin/ubidetach
install_bin /usr/sbin/ubirsvol
install_bin /usr/sbin/ubirmvol
-- 
1.9.2



pgprv8Pz0iz1z.pgp
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel