Commit graph

1403 commits

Author SHA1 Message Date
John Crispin
43422a634b ramips: change CM_GCR_BASE_CMDEFTGT_MEM value to match datasheet
Zero config value for default memory region means 'memory', not
not 'disabled' according to 'Control Registers Of The Coherency
Manager' manual.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47906
2015-12-17 09:26:51 +00:00
John Crispin
acbed0eff3 ramips: mt7621: undo mips-cm probe hack to not wipe out memory regions
Since now we hopefully setup memory regions properly we no longer need this hack.

Tested and works on ubnt-erx.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47905
2015-12-17 09:26:43 +00:00
John Crispin
622e268710 ramips: mt7621: setup memory region for pcie controller memory
Only compile tested since I do not have any hardware with
devices on pcie bus.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47904
2015-12-17 09:26:35 +00:00
John Crispin
e8890c6be0 ramips: mt7621: add patch to setup CM memory region for palmbus
This is tested and works on ubnt-erx.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47903
2015-12-17 09:26:28 +00:00
John Crispin
b4bb10b3a0 ralink: update config files to build the cleaned up ethernet driver
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47902
2015-12-17 09:26:20 +00:00
John Crispin
402db12f1a ralink: drop dummy profile from mt7688
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47901
2015-12-17 09:26:09 +00:00
John Crispin
651e620de5 ralink: fixup devicetree files to work with new ethernet driver
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47900
2015-12-17 09:25:57 +00:00
John Crispin
fa854a02a1 ralink: drop old ethernet driver
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47899
2015-12-17 09:25:30 +00:00
John Crispin
31116661ff ralink: add reworked ethernet driver
update to the version of the driver that is on its way upstream

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47898
2015-12-17 09:25:24 +00:00
John Crispin
5d4f5689fd ramips: add missing kernel symbols
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47884
2015-12-12 21:01:02 +00:00
John Crispin
4e31b2e869 ramips: add support for Ubiquiti EdgeRouter X (UBNT-ERX)
This router is based on MT7621 SoC, no wifi, no usb, nand.

Works:
* Boots.
* Ethernet.
* Switch.
* Button (reset).
* Flashing OpenWrt from stock firmware.
* Upgrading OpenWrt.

Doesn't work:
* No GPIO leds. All leds are controlled by switch,
  but stock firmware was able to control them.
* SoC has crypto engine but no open driver.
* SoC has nat acceleration, but no open driver.
* This router has 2MB spi flash soldered in but MT
  nand/spi drivers do not support pin sharing,
  so it is not accessable and disabled. Stock
  firmware could read it and it was empty.
* PoE out.

Router has serial pins populated. If looking at the top
of the router, then counting from Eth sockets pins go as:
'GND, RX, TX, GND'. 3.3v, 57600.

U-boot bootloader supports tftpboot, controlled from serial.
This router has two kernel partitions: 'live' and 'backup'.
They are swapped during flashing (on both stock and OpenWrt).
Active partition is controlled by a flag in a factory partition.
U-boot has custom command to switch active kernel partition.
Kernel partitions are 'bare flash' 3MB. Stock bootloader has
no UBI support. Stock rootfs is UBIFS.

Flashing procedure.
Stock firmware uses custom kernel patch to mount squashfs
from a file that is located on UBIFS volume. This makes wiping
out this volume from within stock firmware difficult.
Instead this patch builds image that is flashable by stock firmware
and contains initrams image (with minimal set of packages
to fit into kernel partition). Once this is flashed one can reboot
into initramfs OpenWrt and use sysupgrade to flash OpenWrt including
rootfs into nand.
Note: factory image is only built if initramfs image is enabled.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47881
2015-12-12 07:38:06 +00:00
John Crispin
1c6c9549d6 ramips: add support for Spansion S34ML0[24]G2 flash
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47880
2015-12-12 07:37:53 +00:00
John Crispin
9e5044926b ralink: remove stray "+" from ethernet driver
this is what you get if you manually apply patches with c&p

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47877
2015-12-12 06:42:17 +00:00
John Crispin
8470e30a76 ramips: move partition definitions out of mt7621.dtsi file
Partitions defined in parent dtsi cannot be undefined in children.
This moves partitions defined in mt7621.dtsi into board's device tree.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47876
2015-12-12 06:42:11 +00:00
John Crispin
e610cdfc8a ramips: use gic timer as clocksource for mt7621
* Switches clocksource to gic timer.
* Moves frequency definitions to dtsi since frequency was hardcoded anyway
  Will work on proper frequency detection later.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47875
2015-12-12 06:42:05 +00:00
Felix Fietkau
77bedbe80d Revert "ramips: use gic timer as clocksource for mt7621"
This reverts commit 270a2afcc544ca14e79198346e7e186033472ae7.

SVN-Revision: 47872
2015-12-11 19:22:15 +00:00
Jo-Philipp Wich
67e1c87012 all: drop old uci-defaults.sh
Replace former uci-defaults.sh implementation with the uci-defaults-new.sh one
and update all users accordingly.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47867
2015-12-11 15:26:06 +00:00
John Crispin
9f14006809 ramips: add additional support for MQmaker WiTi board
The board is based on mt7621AT cpu, and has 16mb nor flash, 256mb of ram,
2 sata ports, microsd card slot, 1 USB 3.0 port and at least one 2.4 and
one 5 ghz antenna.

This is the 6th submission that adds support for XHCI in the device tree
file, along with switching the location of the 2 radio's and addition of
the kmod-i2c-mt7621 in the default packages of the profile.

Signed-off-by: Sebastian Careba <nitroshift@yahoo.com>

SVN-Revision: 47845
2015-12-11 15:04:13 +00:00
John Crispin
6cbb1be464 ramips: Fix support for PBR-M1 board
The PBR-M1 support in current OpenWrt is for the early demo board and it doesn't work on the final board.This patch fixes the support for it.

The LED called pbr-m1:buzzer is a beeper connected to GPIO26 so I used gpio-beeper instead of gpio-leds.

Signed-off-by: 郭传鈜 <gch981213@gmail.com>

SVN-Revision: 47844
2015-12-11 15:03:50 +00:00
John Crispin
abd11be13c ramips: use gic timer as clocksource for mt7621
* Switches clocksource to gic timer.
* Moves frequency definitions to dtsi since frequency was hardcoded anyway
  Will work on proper frequency detection later.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47843
2015-12-11 15:03:39 +00:00
John Crispin
a87272ebfb ramips: enable CPS for mt7621
Enables CPS multiprocessing instead ob obsoleted CMP for mt7621.

This patch fixes a few issues currently existing on 4.3 kernel with at least ubnt-erx:
* iperf shows only 50Mbits on direct gigabit connection to desktop,
* ping times jump to 5-6ms to dorectly connected desktop
* /proc/interrupts shows spurious interrups (ERR)

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47842
2015-12-11 15:03:27 +00:00
John Crispin
fbc1624d6a ramips: irq handlers do not get irq in 4.3 kernel, update patches
This resolves compilation warnings like this:
drivers/gpio/gpio-mt7621.c: In function 'mediatek_gpio_probe':
drivers/gpio/gpio-mt7621.c:328:46: warning: passing argument 2 of 'irq_set_chained_handler' from incompatible pointer type [-Wincompatible-pointer-types]
   irq_set_chained_handler(mediatek_gpio_irq, mediatek_gpio_irq_handler);

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47841
2015-12-11 15:03:16 +00:00
John Crispin
4076d12f41 ramips: Fix CM_GCR_CPC_BASE_CPCBASE_{MSK, SHF} values
Update CM_GCR_CPC_BASE_CPCBASE_{MSK,SHF} to match datasheet

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47840
2015-12-11 15:03:08 +00:00
John Crispin
e4ee2402cb ramips: fold gic patch into mt7621 support patch
All gic patch was doing is removing code added by mt7621 support patch.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47839
2015-12-11 15:02:55 +00:00
John Crispin
ed8775d3c3 ramips: backport series of patches that ensure GCRs of other CPUs are accessed properly
Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47838
2015-12-11 15:02:50 +00:00
John Crispin
e0d77e68ce ramips: backport batch fixing illegal instruction when booting secodnary CPUs in CPS mode
Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47837
2015-12-11 15:02:36 +00:00
John Crispin
81c999bbda ramips: mt7621: use symbolic names of gic interrupt settings
This also adds dts nodes for cpc and mc for documentation purposes

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47836
2015-12-11 15:02:13 +00:00
John Crispin
6df4426245 ralink: bump to the target to v4.3
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47831
2015-12-10 19:06:32 +00:00
Felix Fietkau
09335a0a2f build: fix arch used during dts compilation
Use kernel arch for dts compilation.
Also use Image/BuildDTB to build dts for ramips.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47823
2015-12-10 12:39:32 +00:00
Jo-Philipp Wich
527ec2af59 all: remove dummy ucidef_set_interface_loopback() from board.d
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47744
2015-12-03 23:13:00 +00:00
Jo-Philipp Wich
8f8b702f85 board.d: remove redundant ucidef_set_interfaces_lan_wan() calls
This removes calls to ucidef_set_interfaces_lan_wan() and
ucidef_set_interfaces_lan() on boards where all relevant info can be
inferred from the switch definition.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47722
2015-12-03 17:30:56 +00:00
Jo-Philipp Wich
9b02e73188 board.d: merge ucidef_add_switch() and ucidef_add_switch_ports()
This changes uci-defaults-new.sh, config_generate and all relevant board.d
files in order combine ucidef_add_switch() and ucidef_add_switch_ports() into
a single function.

Also removes now superfluous enable and reset arguments.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47721
2015-12-03 17:30:24 +00:00
Jo-Philipp Wich
d17a64c7c0 base-files: uci-defaults-new: remove reset/enable args of ucidef_add_switch()
Out of 69 switch definitions, only 3 pass something different than "1" as
values for reset and enable, with one of those three being invalid.

This change ...

 * removes the reset and enable arguments from ucidef_add_switch()
 * unconditionally writes reset:1 and enable:1 to JSON
 * converts the three users of nonstandard values to ucidef_add_switch_attr()

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47720
2015-12-03 17:30:08 +00:00
Jo-Philipp Wich
de51026515 ramips: switch ucidef_add_switch_vlan() to ucidef_add_switch_ports()
This migrates the final board.d user of ucidef_add_switch_vlan() to the new
ucidef_add_switch_ports() approach, fixing some logic errors for a few boards
along the way.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47717
2015-12-03 15:46:29 +00:00
John Crispin
06af966094 ramips: remove duplicate patch
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47670
2015-11-28 23:26:03 +00:00
John Crispin
82557aee85 ramips: adapt VoCore to new second spi device code
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47667
2015-11-28 23:24:52 +00:00
John Crispin
af14fa011c ramips: add second SPI clocks
These clocks were missing in the changes introduced in r47573-47580

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47666
2015-11-28 23:24:40 +00:00
Jo-Philipp Wich
ecf5b4fab7 ramips: hg255d: replace ucidef_set_led_interface() with ucidef_set_led_netdev()
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47657
2015-11-26 12:46:04 +00:00
John Crispin
7b4acdeff6 ralink: renable nand support
CONFIG_MTK_MTD_NAND was incorrectly disabled by r47619.

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47640
2015-11-24 22:00:55 +00:00
Felix Fietkau
d8a62fdbc2 ramips: fix typo in image makefile (#18712)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47627
2015-11-24 19:29:56 +00:00
John Crispin
8c1f5141ce ralink: add support for netis WF-2881
netis WF-2881 is an MT7621AT based router with MT7602EN, MT7612EN.
It has 128MB DDR3, 128MB SLC NAND FLASH, 5-port Gbps switch and 1x USB 3.0.
The following patch adds support for this device.

this device only works on top of UBI.

Tested and working:
* ethernet
* both WiFi radios
* USB 3.0
* buttons (reset button)
* ethernet switch and USB diag LEDs
* UART
* GPIOs
* sysupgrade

Tested and not working
* failsafe

Signed-off-by: YounJae Rho <luxflow@live.com>

SVN-Revision: 47619
2015-11-24 18:29:26 +00:00
John Crispin
e9baf8265b ramips: add support for Youku YK1
Changes since V1:
I resend this patch for current trunk.The former V1 patch is for CC branch.

Signed-off-by: Shonn Lu <countrysideboy@qq.com>

SVN-Revision: 47617
2015-11-24 18:29:02 +00:00
John Crispin
12b6f4cf71 ramips: add second spi master sysclk
for mt7620, rt3883 and rt5350

Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47616
2015-11-24 18:28:54 +00:00
John Crispin
c550ad3d3a ramips: update dtsi files to support second spi device
Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47580
2015-11-22 11:49:13 +00:00
John Crispin
a941b34008 ramips: use transfer_one instead of transfer_one_message on rt2880 spi
* use kernel buildin transfer_one_message. we only need to implement
transfer_one and set_cs function
* should support use gpio as cs pin
* deselected the spi device when setup and add debug info
* only reset device when first driver probe

Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47579
2015-11-22 11:49:04 +00:00
John Crispin
95aa28da81 ramips: move rt2880 spi clock and reset init code to spi_prepare_message
before spi transfer. use spi_prepare_message to setup spi hardware. it
will setup MSB, spi mode and speed
remove sys_freq member and speed check code

Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47578
2015-11-22 11:48:57 +00:00
John Crispin
a58dec6275 ramips: improve rt2880 spi setup
* check clock rate, SPI mode, and word sizes
* setup spi polarity
* enable spi1 hw if need

Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47577
2015-11-22 11:48:51 +00:00
John Crispin
2ce886f149 ramips: clean up rt2880 spi probe/remove
* fill struct according to the member order
* add error clean up
* set min/max spi speed. so we don't need to check again

Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47576
2015-11-22 11:48:45 +00:00
John Crispin
bf89d139e1 ramips: improve rt2880 spi wait ready function
use loops_per_jiffy, spi clock speed and write bytes to get the
spi loop count. if loop to 0 than spi operation timeout.
remove usleep. we only write 1 byte to spi device. use busy loop
would be better.

Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47575
2015-11-22 11:48:34 +00:00
John Crispin
702c480dfe ramips: remove rt2880 spi lock and clean bit operation
Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47574
2015-11-22 11:48:21 +00:00