Commit graph

1359 commits

Author SHA1 Message Date
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
John Crispin
13fbd6fea7 ramips: add rt2880/mt7620 spi register defines
Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47573
2015-11-22 11:48:10 +00:00
John Crispin
55ee2e0ef7 ralink: add missing nand layer hack
It turned out that mtk_nand driver uses some sophisticated accounting and a
general nand code must be patched.

This patch adds required read and erase calls to a general nand code. I
used a  code  for re6500 released by Linksys as a reference.

All required operations (erase, write and read) are usable. However I found
that jffs2 filesystem can be created only on top of a ubi volume. I tried
to create jffs2 directly on mtd device but pages with clean markers are
became uncorrectable.

Signed-off-by: Kirill Berezin <fyiwdt@gmail.com>

SVN-Revision: 47565
2015-11-21 21:25:33 +00:00
John Crispin
40ddc71cc9 ramips: init usb power for Lenovo Y1S
Signed-off-by: Shonn Lu <countrysideboy@qq.com>

SVN-Revision: 47557
2015-11-21 21:24:38 +00:00
Felix Fietkau
b95aed986a ramips: minor fixes for mt7621 profiles
* remove references to non-existing kmod-usb3-mt7621
 * ZTB WG2626 doesn't have an RTC (thanks to Piotr Dymacz!)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>

SVN-Revision: 47407
2015-11-07 12:51:48 +00:00
John Crispin
aebf73f045 ramips: fix previous commit
r47388 accidentially changed 2 files too many

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

SVN-Revision: 47389
2015-11-05 10:03:58 +00:00
John Crispin
dc699dd547 ramips: minor tweak to the lks7688 baord name
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47388
2015-11-05 10:01:23 +00:00
John Crispin
2350c149b5 ramips: add feature to blink led on sysupgrade
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47373
2015-11-03 13:32:02 +00:00
John Crispin
165244a222 ramips: add support for ZBT WG2626
Signed-off-by: Daniel Golle <daniel@makrotopia.org>

SVN-Revision: 47351
2015-11-02 10:18:19 +00:00
John Crispin
0f4b153e3d ramips: add eeprom mtd partition to the Asus RP-N53 dts
This patch adds the eeprom property to the dts for the Asus RP-N53. It is necessary to get the wifi in the soc working.

Signed-off-by:  Alberto Mattea <alberto@mattea.info>

SVN-Revision: 47350
2015-11-02 10:18:09 +00:00
John Crispin
907c67fa87 ramips: preinit: use iproute2 instead of vconfig
Replace use of vconfig with the corresponding iproute2 syntax in
/lib/preinit/07_set_preinit_iface_ramips

The switch reset work-around needed on some ramips targets used the
deprecated vconfig tool to bring up the pre-init/failsafe interface.
This doesn't work on recent builds where vconfig is no longer being
deployed, resulting in the device being unreachable when triggered
into failsafe mode.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>

SVN-Revision: 47349
2015-11-02 10:18:02 +00:00
John Crispin
3760b95702 ramips: add support for Dovado tiny AC
Add support for Dovado tiny AC wifi router.

Soc: mt7620a
ram: 64MB
flash: 8MB
1x usb 2.0
two gigabit lan ports

5ghz wlan is not supported on this board since there is no gpl driverfor mt7610e wifi chip.

Signed-off-by: Andrej Vlasic <andrej.vlasic0@gmail.com>

SVN-Revision: 47348
2015-11-02 10:17:51 +00:00
John Crispin
83693c911a ramips: add function to change rt2x00 wifi eeprom mac
Some boards like dovado tiny ac have generic ralink mac in onflash wifi eeprom.
Add eeprom_set_macaddr function to rt2x00 eeprom extract script which changes mac addr insde eeprom dump.

Signed-off-by: Andrej Vlasic <andrej.vlasic0@gmail.com>

SVN-Revision: 47347
2015-11-02 10:17:41 +00:00
John Crispin
a76de8e7b3 ramips: mt7620 add icplus phy driver kernel config symbol
Add missing icplus phy driver kernel config symbol to mt7620 subtarget.
This is needed since some mt7620 devices have icplus ip1001 ethernet transceiver

Signed-off-by: Andrej Vlasic <andrej.vlasic0@gmail.com>

SVN-Revision: 47346
2015-11-02 10:17:35 +00:00
John Crispin
8fa6927415 ramips: add support for the Asus RP-N53 in the "02_network" boot script
This patch adds a case for the Asus RP-N53 in the "02_network" boot script. Without this, the lan interface does not get configured on startup, effectively bricking the device.

Signed-off-by:  Alberto Mattea <alberto@mattea.info>

SVN-Revision: 47345
2015-11-02 10:17:26 +00:00
John Crispin
ed30ca8e39 ramips: rt305x: enable seama mtdsplit parser
D-Link DIR-610 A1 needs seama mtdsplit parser.
This patch should fix #18046.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>

SVN-Revision: 47341
2015-11-02 10:16:56 +00:00
John Crispin
6dcbf74a94 ramips: rt305x: update kernel config symbols
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>

SVN-Revision: 47340
2015-11-02 10:16:48 +00:00
Hauke Mehrtens
55a912f43e kernel: update kernel 3.18 to version 3.18.23
Changelog:
 * https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.22
 * https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.23

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 47334
2015-11-01 13:45:57 +00:00
Felix Fietkau
b100027a83 ramips: fix for kernel 4.0 napi repoll need return budgets number
Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47306
2015-10-30 22:32:49 +00:00
John Crispin
228eeb647e ramips: make the alsa driver register the codec
this allows using the codec even if it is not listed in the DTS

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

SVN-Revision: 47256
2015-10-26 09:00:42 +00:00
John Crispin
e043ada1d5 ramips: gpio-mt7621 was not handling irqs above 31 properly
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47238
2015-10-20 07:09:20 +00:00
John Crispin
7295e9fb8b ramips: add alsa support
add the SDK alsa driver. this has only been tested on mt7628/88 and wm8960.
mt7620 is only compile tested.

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

SVN-Revision: 47205
2015-10-19 10:07:54 +00:00
John Crispin
f5d5cb0114 ramips: add a baurate hack
When talking to an atmel controller we need 9600 or 250000 baud.
as 250000 does not exist we use 2500000.

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

SVN-Revision: 47204
2015-10-19 10:07:43 +00:00
John Crispin
51dd991d39 ramips: add LinkIt Smart7688 support
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47203
2015-10-19 10:07:38 +00:00
John Crispin
b0f7e6bc83 ramips: fix /target/linux/ramips/dts/HC5XXX.dtsi
dtb complained about those lines

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

SVN-Revision: 47151
2015-10-07 08:00:40 +00:00
Felix Fietkau
2686dc6dd8 ramips: enable mt76 by default for the mt7620 subtarget (for devices with mt7620 + mt7612)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47146
2015-10-06 12:32:31 +00:00
Felix Fietkau
38389c79c2 ramips: improve read performance of the m25p80 chunked io patch
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47137
2015-10-05 11:34:16 +00:00
John Crispin
b4db6d29d3 ramips: improve systick timer
when sleep mode is disable use MIPS as clocksource and clockevent instead of systick.
because MIPS timer has higher resolution 5ns less than systick 20us and
larger counter bits 32 > 16.
clean interrupt by write compare register at isr.
fix typo cause sleep mode not enable.

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

SVN-Revision: 47122
2015-10-05 10:27:09 +00:00
John Crispin
10f75a2b7f ramips: fix use remove_irq to release irqaction resource
Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47121
2015-10-05 10:27:04 +00:00
John Crispin
ccf89e71f2 ramips: add support for 16MB VoCore
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47120
2015-10-05 10:27:00 +00:00
John Crispin
948e67cb16 ramips: fix size-cells for spi nodes
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 47119
2015-10-05 10:26:54 +00:00
John Crispin
d4cd8f89eb ramips: Ralink RT3883 RGMII pinmux fix.
Due to datasheet of rt3883 SoC rgmii1 port handles pins 84-95 and rgmii2 port handles pins 72-83. When this function ports gets added to rt3883_pinmux_data there's wrong pinmux bits set (RT3883_GPIO_MODE_GE1 manages 84-95 pins and RT3883_GPIO_MODE_GE2 manages 72-83). So when enabling rgmii2 as GPIO driver confuses hardware and nothing work, neither rgmii nor gpio.
Also in '0030-pinctrl-ralink-add-pinctrl-driver.patch' typo in name of rgmii2 port.

Signed-off-by: Nick Leiten <nickleiten@gmail.com>

SVN-Revision: 47118
2015-10-05 10:26:40 +00:00
John Crispin
aecac14cc4 ramips: Enable rx of 1536 bytes ethernet frames on MT7621
The default switch frame size (with FCS + header) is 1536 bytes. But the
GMAC only accepted frames up to 1522 bytes. Setting it to 1536 allows to
receive ethernet frames using the full of MTU 1500 + an extra VLAN header +
VLAN header added by the switch.

Signed-off-by: Sven Eckelmann <sven@open-mesh.com>

SVN-Revision: 47117
2015-10-05 10:26:34 +00:00
John Crispin
7b306e3eb3 ramips: Fix too small rx buffer
The driver assumes that the maximum received buffer for non-jumbo frames is
1536 bytes. But the allocation of the rx fragment doesn't reflect that. It
currently allocates fragments which will only be large enough to be used as
rx buffer with the size of 1534 bytes. This is problematic because the GMAC
will now try to write to 2 bytes which don't belong to its receive buffer
when a large enough ethernet frame is received.

This may already be a problem on existing chips but will at least become a
problem when the 1536 byte rx modus is enabled on MT7621a. It is required
on this SoC to receive ethernet frames which use their full 1500 bytes MTU
and a VLAN header next to the switch VLAN tag.

Signed-off-by: Sven Eckelmann <sven@open-mesh.com>

SVN-Revision: 47116
2015-10-05 10:26:28 +00:00
John Crispin
6b4985b105 ramips: Fix setting of rx buffer length
The length of the DMA rx buffer was always set to 0 because the function
for extracting the length was used to calculate the value for setting it.
Instead the macro has to be split in a get and set function similar to the
TX_DMA_(GET_|)PLEN(0|1) macro.

No problem was noticed on MT7621a before this was changed and thus maybe it
was hidden by different problem which is not yet fixed.

Signed-off-by: Sven Eckelmann <sven@open-mesh.com>

SVN-Revision: 47115
2015-10-05 10:26:21 +00:00
John Crispin
1aab21df9f ramips: Allow to receive vlan over untag ports on MT7530
The MT7530 switch driver with enable_vlan set will automatically set all
ports to the user port mode. The hardware will remove the incoming vlan tag
on these ports and use it for its internal vlan. This is usually not wanted
and makes it impossible to communicate via vlan over the switch in both
directions.

It is possible to configure a switch port to "transparent mode" when this
port is only used as untag in the switch VLANs. This will disable the VLAN
untagging of packets when they were received on this port. The tagging on
"tag" ports based on the vlan id is still working.

The transparent port mode cannot be used when a port is both used in a VLAN
as "tag" and in another one as "untag" port.

Signed-off-by: Sven Eckelmann <sven@open-mesh.com>

SVN-Revision: 47114
2015-10-05 10:26:09 +00:00
John Crispin
dd8f5abb23 ramips: Add build files for HiWiFi HC5x61 models
HiWiFi HC5661/5761/5861 models are manufactured by http://www.hiwifi.com <http://www.hiwifi.com/>. These models have similar hardware specs(MT7620A + 128M DDR2 + 16M flash). This patch adds support for them.

The original author is Justin Liu (rssnsj@gmail.com). I ported the patch to trunk and submitted it here with his approval.

v3 fix
    1: Spaces -> Tabs
    2: Removed some packages

Signed-off-by: Xiaoning Kang <kangxn@163.com>

SVN-Revision: 47113
2015-10-05 10:26:02 +00:00
John Crispin
e6e373d348 ramips: Add DTS files for HiWiFi HC5x61 models
HiWiFi HC5661/5761/5861 models are manufactured by http://www.hiwifi.com. These models have similar hardware specs(MT7620A + 128M DDR2 + 16M flash). This patch adds support for them.

The original author is Justin Liu (rssnsj@gmail.com). I ported the patch to trunk and submitted it here with his approval.

v3 fix
  1: Merged most stuff into dtsi file
  2: Remove unnecessary empty lines.

Signed-off-by: Xiaoning Kang <kangxn@163.com>

SVN-Revision: 47112
2015-10-05 10:25:53 +00:00
John Crispin
c10bdf11ff ramips: Add base-files for HiWiFi HC5x61 models
HiWiFi HC5661/5761/5861 models are manufactured by http://www.hiwifi.com. These models have similar hardware specs(MT7620A + 128M DDR2 + 16M flash). This patch adds support for them.

The original author is Justin Liu (rssnsj@gmail.com). I ported the patch to trunk and submitted it here with his approval.

v3 fix
   1: Fixed model order
   2: Remove manufacturer name from model name
   3: Use a hacky but prettier way to get mac address.

Signed-off-by: Xiaoning Kang <kangxn@163.com>

SVN-Revision: 47111
2015-10-05 10:25:47 +00:00
John Crispin
7ad419a9f1 ralink: add irq to mt7628 gpio node
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47076
2015-10-01 19:12:14 +00:00
John Crispin
e1b1b0cbfd ralink: the mmc driver can now handle CD lines that are active low
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47074
2015-10-01 18:13:47 +00:00
John Crispin
9e1268b168 ralink: speed selection was broken in spi-mt7621
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47073
2015-10-01 15:35:44 +00:00
John Crispin
f453508b3e ramips: Fix pinmux functions for MT7621
The pinctrl-rt2880 code doesn't support multiple functions with the same
name. This will result in a incorrect pinmux configuration.

Signed-off-by: Sven Eckelmann <sven@open-mesh.com>

SVN-Revision: 46963
2015-09-16 08:31:52 +00:00
John Crispin
3a149a2910 ramips: add mt7621/3/8 support to the I2C driver
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 46959
2015-09-16 08:31:15 +00:00
John Crispin
e6a9d5edf2 ramips: fix reported vendor name
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 46958
2015-09-16 08:31:10 +00:00