Re: [OpenWrt-Devel] [RFC] Lantiq subtargets based in SoC.

2013-05-04 Thread José Vázquez
As Felix and John said, probably the best choice will be leave the
Lantiq subtargets with the current structure.
Additionally could be a good idea tuning the XWAY subtarget to 34kc
and enable dsp extensions to achieve better performance in the Danube,
AR9 and VR9 boards. This diff is an example of how it could be done:

Index: trunk/target/linux/lantiq/svip_be/target.mk
===
--- trunk/target/linux/lantiq/svip_be/target.mk (revisión: 36545)
+++ trunk/target/linux/lantiq/svip_be/target.mk (copia de trabajo)
@@ -3,6 +3,7 @@
 BOARDNAME:=SVIP Big Endian
 FEATURES:=squashfs jffs2
 DEVICE_TYPE:=other
+CFLAGS=-mtune=mips32r2

 DEFAULT_PACKAGES+= uboot-svip hostapd-mini

Index: trunk/target/linux/lantiq/xway/target.mk
===
--- trunk/target/linux/lantiq/xway/target.mk(revisión: 36545)
+++ trunk/target/linux/lantiq/xway/target.mk(copia de trabajo)
@@ -2,6 +2,7 @@
 SUBTARGET:=xway
 BOARDNAME:=XWAY
 FEATURES:=squashfs jffs2 atm
+CFLAGS=-mtune=34kc -mdsp

 DEFAULT_PACKAGES+=kmod-leds-gpio kmod-gpio-button-hotplug

Index: trunk/target/linux/lantiq/svip_le/target.mk
===
--- trunk/target/linux/lantiq/svip_le/target.mk (revisión: 36545)
+++ trunk/target/linux/lantiq/svip_le/target.mk (copia de trabajo)
@@ -3,6 +3,7 @@
 BOARDNAME:=SVIP Little Endian
 FEATURES:=squashfs jffs2
 DEVICE_TYPE:=other
+CFLAGS=-mtune=mips32r2

 DEFAULT_PACKAGES+= uboot-svip hostapd-mini

Index: trunk/target/linux/lantiq/falcon/target.mk
===
--- trunk/target/linux/lantiq/falcon/target.mk  (revisión: 36545)
+++ trunk/target/linux/lantiq/falcon/target.mk  (copia de trabajo)
@@ -3,6 +3,7 @@
 BOARDNAME:=Falcon
 FEATURES:=squashfs jffs2
 DEVICE_TYPE:=other
+CFLAGS=-mtune=mips32r2

 DEFAULT_PACKAGES+= kmod-ifxos gpon-base-files kmod-leds-gpio
kmod-ledtrig-heartbeat \
kmod-gpon-optic-drv gpon-optic-drv kmod-gpon-onu-drv gpon-onu-drv \
Index: trunk/target/linux/lantiq/ase/target.mk
===
--- trunk/target/linux/lantiq/ase/target.mk (revisión: 36545)
+++ trunk/target/linux/lantiq/ase/target.mk (copia de trabajo)
@@ -2,6 +2,7 @@
 SUBTARGET:=ase
 BOARDNAME:=Amazon-SE
 FEATURES:=squashfs jffs2 atm
+CFLAGS=-mtune=mips32r2

 DEFAULT_PACKAGES+=kmod-pppoa ppp-mod-pppoa linux-atm atm-tools
br2684ctl kmod-ltq-dsl-ase ltq-dsl-app

Index: trunk/target/linux/lantiq/Makefile
===
--- trunk/target/linux/lantiq/Makefile  (revisión: 36545)
+++ trunk/target/linux/lantiq/Makefile  (copia de trabajo)
@@ -13,7 +13,7 @@

 LINUX_VERSION:=3.8.11

-CFLAGS=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves -mno-branch-likely
+CFLAGS=-Os -pipe -mips32r2 -fno-caller-saves -mno-branch-likely

 define Target/Description
Build firmware images for Lantiq SoC

More aggressive optimizations, like -mt, must be selected by the user.
Finally, i've tested a Danube board with -mtune=34kc and strangely
there is no difference than selecting -mtune=24kec

José Vázquez
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [RFC] Lantiq subtargets based in SoC.

2013-05-03 Thread José Vázquez Fernández
As have been done preciously in the ramips target the Lantiq target
could be divided in subtargets based in the SoC (ase, danube, svip, ar9,
vr9, ...) or the mips core (4k, 24k, 34k, ...), but the second option
might be very confusing.
The benefits will be the same as in ramips: better organization based in
SoC instead of board, and the specific optimizations for each mips core
might be easily managed, like dsp extensions, multithreading and some
others.
The idea is split the subtargets in this way:
- XWAY Danube.
- XWAY AR9.
- XWAY VR9.
- ASE or XWAY ASE.
- Falcon.
- SVIP-le.
- SVIP-be.

For more information:
- http://www.mips.com/media/files/white-papers/24ke.pdf
- http://www.mips.com/media/files/MIPS32_34K_US.PDF
- http://electronicsandbooks.com/eab1/manual/Electronic%20Component%
20Databook%20Datasheet/Brand/MIPS/MD00445-2B-24KEC-DTS-01.02%
20c20051220%20%5B61%5D.pdf
- http://gcc.gnu.org/onlinedocs/gcc/MIPS-Options.html

Regards:

José Vázquez

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


Re: [OpenWrt-Devel] [RFC] Lantiq subtargets based in SoC.

2013-05-03 Thread Felix Fietkau
On 2013-05-03 4:17 PM, José Vázquez Fernández wrote:
 As have been done preciously in the ramips target the Lantiq target
 could be divided in subtargets based in the SoC (ase, danube, svip, ar9,
 vr9, ...) or the mips core (4k, 24k, 34k, ...), but the second option
 might be very confusing.
 The benefits will be the same as in ramips: better organization based in
 SoC instead of board, and the specific optimizations for each mips core
 might be easily managed, like dsp extensions, multithreading and some
 others.
 The idea is split the subtargets in this way:
 - XWAY Danube.
 - XWAY AR9.
 - XWAY VR9.
 - ASE or XWAY ASE.
 - Falcon.
 - SVIP-le.
 - SVIP-be.
Simply making a somewhat arbitrary split of SoC types into subtargets
the way you're describing is a bad idea - it wastes lots of extra CPU
cycles for building all images.
As for ramips: at least rt28xx and rt30xx support cannot coexist in the
same kernel image due to memory layout changes - not sure about rt3883,
but there's probably a good reason for that one too.
You're not giving any proper justification for your proposed subtarget
split (which is overkill anyway).

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


Re: [OpenWrt-Devel] [RFC] Lantiq subtargets based in SoC.

2013-05-03 Thread John Crispin

On 03/05/13 16:56, Felix Fietkau wrote:

On 2013-05-03 4:17 PM, José Vázquez Fernández wrote:

As have been done preciously in the ramips target the Lantiq target
could be divided in subtargets based in the SoC (ase, danube, svip, ar9,
vr9, ...) or the mips core (4k, 24k, 34k, ...), but the second option
might be very confusing.
The benefits will be the same as in ramips: better organization based in
SoC instead of board, and the specific optimizations for each mips core
might be easily managed, like dsp extensions, multithreading and some
others.
The idea is split the subtargets in this way:
- XWAY Danube.
- XWAY AR9.
- XWAY VR9.
- ASE or XWAY ASE.
- Falcon.
- SVIP-le.
- SVIP-be.

Simply making a somewhat arbitrary split of SoC types into subtargets
the way you're describing is a bad idea - it wastes lots of extra CPU
cycles for building all images.
As for ramips: at least rt28xx and rt30xx support cannot coexist in the
same kernel image due to memory layout changes - not sure about rt3883,


rt3883 has pci


but there's probably a good reason for that one too.
You're not giving any proper justification for your proposed subtarget
split (which is overkill anyway).

- Felix


i agree with felix, we used to have per soc subtargets and dropped them 
as there is no point in splitting things.


ase needs a seperate subtarget as it has no pci, falcon / svip need 
their own subtarget, as they are are SoC variants of their own with 
different pinctrl and so forth.


however for xway i see no reason to split up the support to a soc based 
approach.


what we should add is a xway-vsmp subtarget for the 74k based SoC 
(xrx200) on boards where the vpe0 is not used for voice.


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


Re: [OpenWrt-Devel] [RFC] Lantiq subtargets based in SoC.

2013-05-03 Thread José Vázquez
2013/5/3, John Crispin j...@phrozen.org:
 On 03/05/13 16:56, Felix Fietkau wrote:
 On 2013-05-03 4:17 PM, José Vázquez Fernández wrote:
 As have been done previously in the ramips target the Lantiq target
 could be divided in subtargets based in the SoC (ase, danube, svip, ar9,
 vr9, ...).
 The benefits will be the same as in ramips: better organization based in
 SoC instead of board, and the specific optimizations for each mips core
 might be easily managed, like dsp extensions, multithreading and some
 others.
 The idea is split the subtargets in this way:
 - XWAY Danube.
 - XWAY AR9.
 - XWAY VR9.
 - ASE or XWAY ASE.
 - Falcon.
 - SVIP-le.
 - SVIP-be.
 Simply making a somewhat arbitrary split of SoC types into subtargets
 the way you're describing is a bad idea - it wastes lots of extra CPU
 cycles for building all images.
In the Lantiq target fortunately only compiles for the target board;
the problem comes building the snapshots.
 You're not giving any proper justification for your proposed subtarget
 split (which is overkill anyway).

 - Felix

 i agree with felix, we used to have per soc subtargets and dropped them
 as there is no point in splitting things.

 ase needs a seperate subtarget as it has no pci, falcon / svip need
 their own subtarget, as they are are SoC variants of their own with
 different pinctrl and so forth.

 however for xway i see no reason to split up the support to a soc based
 approach.

   John
With the split of the subtargets the optimizations for each SoC can be
implemented easily, because the 34Kc cores have support for
multithreading afaik, and for the danube based boards some kernel
drivers can be disabled in order to make the kernel smaller.
To summarize, the benefits are that optimizations for the different
cpus can be easily implemented, but the side effect is that the
compiling time will be higher.

As Felix said, maybe the best choice, in order to keep it simple,
will be tune all the boards to 34kc and enable the dsp extensions if
they improve the overall performance of this processors .
Benchmarking the danube 1.3 with dsp ase enabled and tuning to mips
24kec helps slightly, but would be very interesting to see the ar9 and
vr9 performance increase.
Attached there is a some kind of diff that shows the possible
reorganization of the lantiq target.

Regards:

José


lantiq_subtargets.diff.tar.bz2
Description: BZip2 compressed data


bench.txt.tar.bz2
Description: BZip2 compressed data
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel