Commit Graph

200 Commits

Author SHA1 Message Date
John Crispin
01ca7a34f0 brcm63xx/lzma-loader: fix O32 ABI conformance
According to the calling convention of the o32 ABI the caller
function must reserve stack space for $a0-$a3 registers in case
the callee needs to save its arguments.

The assembly code of the loader does not reserve stack space for
these registers thus when the 'loader_main' function needs to save
its arguments, those will be stored in the 'workspace' area instead
of the stack.

Because the workspace area is also used by other part of the code, the
saved register values gets overwritten and this often leads to failed
kernel boots.

Fix the code to reserve stack space for the registers to avoid this
error.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
[noltari: apply the fix for brcm63xx too]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 48979
2016-03-10 19:10:54 +00:00
Jonas Gorski
065a240345 brcm63xx: fix build of lzma-loader with binutils 2.25.1
Apply the same fix as ar71xx needed in r46893.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 48473
2016-01-24 12:36:10 +00:00
Jonas Gorski
a78bb9590f brcm63xx: add support for Huawei HG622
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 48305
2016-01-18 10:47:23 +00:00
Felix Fietkau
2499a57d92 targets: add kernel image dependencies on device tree files
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48146
2016-01-06 18:39:06 +00:00
Jonas Gorski
d12502b666 brcm63xx: Add NuCom R5010UNv2 support
This patch adds support for the NuCom R5010UNv2.

It's a BCM6328 based board. It has an onboard BCM43217 wifi chip. For this
wifi chip looks like the brcmsmac driver isn't still supported, b43 drivers are used
for the profile of the router.

It's worth mentioning this board was affected by a bug solved with
https://dev.openwrt.org/changeset/46707

Tested-by: Angel Fontan <angel.fontan@gmail.com>
Signed-off-by: Daniel Gonzalez <dgcbueu@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47697
2015-12-02 22:18:20 +00:00
Jonas Gorski
64af3295cd brcm63xx: fix Netgear CVG834G HCS magic bytes
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Acked-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47378
2015-11-04 11:33:10 +00:00
Jonas Gorski
8f3cfe4ba2 brcm63xx: lzma-loader: add BCM3380 support
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47377
2015-11-04 11:33:07 +00:00
Jonas Gorski
4c43b05dac brcm63xx: lzma-loader: add BCM3368 support
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Acked-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47376
2015-11-04 11:33:03 +00:00
Jonas Gorski
78f253f9b1 brcm63xx: add Comtrend VR-3026e support
Add support for Comtrend VR-3026e v1.
The device is almost identical to the Comtrend VR-3025un.

Signed-off-by: Martin Tesar <tesarmar@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46752
2015-08-30 12:17:46 +00:00
Jonas Gorski
4e81a1473e brcm63xx: move gzip build command to include/image.mk
Allow other targets to make use of it.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46601
2015-08-14 15:10:47 +00:00
Jonas Gorski
8e69c9f7ef image.mk: store the device name variable
Make the device name accessible for any build commands instead of
forcing targets to define it themselves.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46597
2015-08-14 13:05:22 +00:00
Jonas Gorski
4ecae78c16 image.mk: replace all Build/netgear-chk with a generic implementation
Instead of letting each target define it themselves, create on in
include/image.mk and let the targets use it.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46596
2015-08-14 13:05:14 +00:00
Jonas Gorski
79b733264b brcm63xx: prefix netgear specific device variables with NETGEAR_
Rename BOARD_ID to NETGEAR_BOARD_ID.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46595
2015-08-14 13:04:43 +00:00
Jonas Gorski
a105688c87 brcm63xx: Add support for Plusnet 2704N
BCM6318: add support for Plusnet / Sagem 2704N (V1)
Signed-off-by: Matt Goring <matt.goring@googlemail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46562
2015-08-05 13:55:37 +00:00
Jonas Gorski
65654a3c54 brcm63xx: build image for DSL-275XB D1
It boots fine, so no reason to not build it.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46561
2015-08-05 13:55:18 +00:00
Jonas Gorski
ef78a63997 brcm63xx: switch to new image building system
Switches BCM63xx to the new IB system.
Images are generated per device definitions.
There are no changes in the produced images except for some name changes,
caused by the new IB system.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46490
2015-07-25 12:12:11 +00:00
Jonas Gorski
5a62d503d9 brcm63xx: use new tool for generating redboot images
Simplify image/Makefile by using the new perl script for RedBoot.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46489
2015-07-25 12:12:06 +00:00
Jonas Gorski
71e0bd0165 brcm63xx: make use of the new BuildDTB command
Now that we have a BuildDTB command, make use of it instead of calling
dtc directly.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46390
2015-07-16 11:13:47 +00:00
John Crispin
096b3759a9 build: Prevent more gzip timestamps
To improve reproducibility, prevent the inclusion of timestamps
in the gzip header.

Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>

SVN-Revision: 46361
2015-07-14 09:57:45 +00:00
Jonas Gorski
84bfed7bd3 brcm63xx: fix A4001N image padding size
When r42245 moved A4001N to DT based detection the image padding size
was accidentally increased from 4 to 8 MiB. This made images unflashable
on these devices.

Fixes #19836.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45945
2015-06-11 12:10:43 +00:00
Jonas Gorski
6d07290de3 brcm63xx: fix livebox image generation
Livebox does need the uncompressed kernel, so just create it during
image generation.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45875
2015-06-02 10:23:45 +00:00
Jonas Gorski
9c6945d7a1 brcm63xx: delete uncompressed kernels after use
Delete the dtb appended, uncompressed kernels after having compressed
them, so they don't end in the image builder.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45869
2015-06-01 12:37:34 +00:00
Jo-Philipp Wich
957534693c brcm63xx: use common image prefix
Also remove "redbootscript" and "redbootscript.padded" junk files.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
Acked-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45780
2015-05-27 15:18:21 +00:00
Jonas Gorski
509c3211d6 brcm63xx: Add Huawei HG655b support
This patch adds support for the Huawei HG655b.

Nothing much special in this router, it's just another BCM6368 with
a Ralink RT3062 wifi chip and the calibration data embedded in the
main flash chip at offset 0x7c0000. There is also configuration data
used by the OEM firmware before the cal_data partition, this area is
protected by the board_data partition in this patch.

Signed-off-by: Daniel Gonzalez <dgcbueu@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45708
2015-05-21 19:31:54 +00:00
Jonas Gorski
5e8eedb897 brcm63xx: add missing bcm96329bhr profile and dts
Hopefully the last missing board.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45557
2015-04-21 16:43:46 +00:00
Jonas Gorski
a709beb4ae brcm63xx: fix zyxel kernel name
Accidentally left over development artifact.

Reported-by: John Crispin <blogic@openwrt.org>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45179
2015-03-31 09:54:15 +00:00
Jonas Gorski
a54b8303d2 brcm63xx: don't build non-dtb kernels anymore
Now that all supported boards have an dts there is no need for a
dtb free kernel anymore.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45169
2015-03-30 20:21:24 +00:00
Jonas Gorski
0f08442ded brcm63xx: move DSL-275XB to DT
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45168
2015-03-30 20:21:15 +00:00
Jonas Gorski
f77b446051 brcm63xx: move bcm6318 reference boards to DT
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45167
2015-03-30 20:21:07 +00:00
Jonas Gorski
f644c1581a brcm63xx: move VG50 to DT
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45166
2015-03-30 20:21:01 +00:00
Jonas Gorski
f973580488 brcm63xx: move V2110 to DT
Also readd image generation which was accidentally dropped in r43364.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45165
2015-03-30 20:20:49 +00:00
Jonas Gorski
d8ba40cfcd brcm63xx: use relocate to move the kernel back to start of ram
Appearently the kernel only uses kernel above it, so moving it to an
higher address causes a lot of unavailable memory (#19327).

Also move the on-flash kernel to 0x80a0000, as newer CFEs don't like
uncompressing there (net-booting an ELF kernel is fine, though).

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45164
2015-03-30 20:20:15 +00:00
Jonas Gorski
10cdfd04e6 brcm63xx: move RTA770(B)W to dts
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44992
2015-03-25 15:36:12 +00:00
Jonas Gorski
0e4c1ba284 brcm63xx: move MAGIC to dts
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44991
2015-03-25 15:36:05 +00:00
Jonas Gorski
582dfc52f5 brcm63xx: move CPVA502+ to dts
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44990
2015-03-25 15:35:57 +00:00
Jonas Gorski
46b4d4d1d5 brcm63xx: move dg834g v4 to dts
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44989
2015-03-25 15:35:43 +00:00
Jonas Gorski
30a579c674 brcm63xx: move dsl-2640u to dts
Also build image again(?).

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44988
2015-03-25 15:35:37 +00:00
Jonas Gorski
16ea19053a brcm63xx: move bcm963268bu_p300 to dts
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44987
2015-03-25 15:35:24 +00:00
Jonas Gorski
2d3371cd0f brcm63xx: Add BT Home Hub 2A support.
Support for the BT HomeHub 2.0 Type A.

This router was manufactured by Thomson, and it's BCM6358 based.
The leds are controled by two chained HC594, all working ok. The BCM5325
switch has the RESET# pin wired to the GPIO15, but currently there is no
way to tell the b53 driver how to get this gpio number in brcm63xx,
therefore swconfig won't use it when performing a switch reset.

The patch was tested with several firmwares, and all except unsupported
stuff (i.e xDSL) works pretty well.

Tested-by: Tahir <tahir00ali@gmail.com>
Signed-off-by: Daniel Gonzalez <dgcbueu@gmail.com>

SVN-Revision: 44985
2015-03-25 15:35:12 +00:00
Jonas Gorski
065d6e9047 brcm63xx: move kernel load address to 8MiB
Fixes boot when uncompressed kernel is > 4 MiB (#19251).

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44984
2015-03-25 15:34:59 +00:00
Jonas Gorski
ee0140a678 brcm63xx: hcsimage: respect load address
Respect the vmlinux load address when generating images.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44983
2015-03-25 15:34:45 +00:00
Jonas Gorski
d84fafb9f3 brcm63xx: add Livebox 1 firmware image generation
Currently there isn't images ready for flashing liveboxes boards. This
patch adds a script and the code to call it in the  bcm63xx images
builder makefile to generate the livebox 1 firmware.

I removed some lines to avoid generating unneded files in the bin/ dir
for this board. And added code to generate a squashed rootfs aligned to
64 kB since the current one in the /bin dir is 128 kB aligned and
doesn't work. Still no sysupgrade support for this board. Upgrading from
within openwrt can be done writing with mtd the kernel, and then the 64k
aligned rootfs.

Regards

Signed-off-by: Daniel Gonzalez <dgcbueu@gmail.com>
[jogo: use sed instead of a separate shell script for the boot script, make it
 respect the load address]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44982
2015-03-25 15:34:40 +00:00
Jonas Gorski
77e3d442b0 brcm63xx: add a dummy image recipe for boards missing proper images
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44981
2015-03-25 15:34:26 +00:00
Jonas Gorski
02d68c2b57 brcm63xx: drop non-dtb image recipe
All images generated contain dtbs, so it is now unused.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44980
2015-03-25 15:34:23 +00:00
Jonas Gorski
ca7f6d28c8 brcm63xx: Add DGND3700 v1 / DGND3800B support
This adds support for the Netgear DGND3700 v1 and DGND3800B.

DGND3700 v1 and DGND3800B are exactly the same router, only one difference,
the factory firmware. This patch produces two factory firmwares for each router.

The router includes an onboard NAND flash for extra storage. NAND is currently
not supported in bcm63xx, so no code added for this part. The NOR flash (32MB)
is enough for storing an openwrt firmware.

Signed-off-by: Daniel Gonzalez <dgcbueu@gmail.com>
[jogo: Add back commit message from v1]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44831
2015-03-16 11:52:10 +00:00
Jonas Gorski
b6ad4b7332 brcm63xx: fix image generation and broken patch
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 44569
2015-02-27 23:48:32 +00:00
Jonas Gorski
1efb7398e1 brcm63xx: convert BTV2500V to dts
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44564
2015-02-27 17:39:29 +00:00
Jonas Gorski
90c15beee6 brcm63xx: convert RTA1320 to dts
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44563
2015-02-27 17:39:21 +00:00
Jonas Gorski
5a9b7c28c3 brcm63xx: convert RTA1025 to dts
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44562
2015-02-27 17:39:13 +00:00
Jonas Gorski
9a65e1a570 brcm63xx: use dtb for cvg834g
Add a dtsi for bcm3368, add a dts and profile for cvg834g, and convert
it to use ImageDTB. Since HCS requires more arguments, enhance the max
arguments of the call.
The image name is intentionally left blank to prevent non-initramfs
images to be built, as they currently contain no rootfs and consequently
won't work.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 44561
2015-02-27 17:39:07 +00:00