* add rt_i2c structure to store driver data
* rewrite read/write check function and add i2c error status check.
so we don't need to wait until time out.
* add 10 bits address support. according to the data sheet i think
it is possible. but i haven't verify it.
* the most important is start transfer only need once. otherwise
it cause I2C_STARTERR status.
* add set i2c clock speed register by dts options "clock-frequency".
not just hard code it.
* add mt7621 i2c driver. i just copy i2c-ralink.c and change register
names. and the hardware don't support error status. so i remove it.
but the logic is the same.
Signed-off-by: Michael Lee <igvtee@gmail.com>
* fix compiler error. device_control operation not support now.
* add old chips support 8 channels. new chips support 16 channels.
* add mt7621 hsdma driver. data sheet says it has two channels.
but after test only one channel support.
* add memory to memory DMA support. i use dmatest kernel module to
verify this function. on rt305x it will copy more data. on mt7621
only two channels can works at the same time. these two chips
maybe have hardware bugs. because on other chips don't have these bugs.
* use tasklet to handle remaining dma requests.
Signed-off-by: Michael Lee <igvtee@gmail.com>
- Use default number of uarts (2) for rt288x/rt305x/rt3883/mt7620.
- Allow up to 3 uarts on MT7621 and MT7628.
- Remove unneeded SERIAL_8250_RT288X for MT7628.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
The Widora board is similar to the Linkit 7688 but features a larger flash
capacity.
Signed-off-by: Yuan Chenmang <771992497@qq.com>
[Jo-Philipp Wich: Reword commit message, cleanup initial PR]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
The previous image creation code would have failed if the
unpadded kernel uImage size was less than 64 bytes from the
next erase block boundary. Fix that.
Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
The bootloader on this device expects the kernel partition to end
on a 64k boundary. The last 64 byte of the kernel partition must
contain a valid uImage header (the fakeroot partition).
Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
Currently, for RT5350 and MT7628, esw is marked as compatible with
"ralink,rt3050-esw". While this is true, the switches within RT5350
and MT7628 actually support more functionality than the RT3050 switch.
One such example is per-VLAN untagging, which is an important feature.
RT3352 is another example of this, but it already has an additional
compatible property, which allows to differentiate it from RT3050.
This commit adds such more specific properties for RT5350 and MT7628
as well.
Signed-off-by: Stanislav Galabov <sgalabov@gmail.com>
- disable all ethernet ports except port 0 on MPR-A2
Port 0 is the only ethernet port on this router, so disable all other PHYs in order to save power.
- don't use a VLAN for the single ethernet port of the MPR-A2
Like A5-V11, this router only has one ethernet port.
Signed-off-by: Cezary Jackiewicz <cezary@eko.one.pl>
This commit makes the following modifications to ramips dts files:
1. Add clkctrl node to all dtsi files (although not used for now)
2. Add clocks and clock-names properties to some nodes (usbphy, pci)
3. Add usbphy node for rt3050 (although not used for now)
4. Add clock-frequency to uart nodes in mt7621.dtsi and mt7628an.dtsi
These modifications, although not fully used at the moment, will make
it easier for FreeBSD to adopt and use LEDE ramips dts files with
minimal changes for easier maintenance.
Signed-off-by: Stanislav Galabov <sgalabov@gmail.com>
Add node aliases to dtsi files.
Reword dts files so they're more in-line with upstream.
Fix some more warnings and errors reported by dtc
Signed-off-by: Stanislav Galabov <sgalabov@gmail.com>
This patch introduces serial0 aliases in the ramips DTS files, which can
then be used to denote the active console instead of relying on bootargs.
Signed-off-by: Stanislav Galabov <sgalabov@gmail.com>
This router only has one ethernet port, so a VLAN is useless here, now that the rt3050 TCP bug that happened without VLANs has been fixed for a very long time.
Add this router to the VLAN-less config that is used by other single-port routers.
Also fix MAC address detection code since this router has no WAN port.
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
Some routers only have one port, so eth0 is used without VLANs for them.
Revision r47720 introduced some changes, but wrongly confused "enable" with "reset".
VLANs need to be disabled for those routers, and the switch may be reset.
Fix this, by explicitly disabling VLANs instead of resetting the switch for these routers.
Also merge duplicate configuration for the "m2m".
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
The new rt3050 switch driver doesn't have problems with TCP when not
using VLANs.
This piece of code also broke failsafe for all routers where the LAN
port is not wired to port 0 of the internal switch.
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
SVN-Revision: 49293
Port 0 is the only ethernet port on this router, so disable all other PHYs
in order to save power.
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
SVN-Revision: 49292
Port 4 is the only ethernet port on this router, so disable all other PHYs
in order to save power.
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
SVN-Revision: 49291
This patch allows configuring ports to be disabled in the device tree; this
saves power, since disabling ports here actually disables power to ethernet
PHYs.
Line 444 enables all ethernet ports, so line 487 is getting zero ports to be
disabled, except for port 5 in SoCs where this is not implemented as it will
be sticky disabled in register POC0. Because of this, the code will still read
the switch configuration and OR it to the device tree setting.
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
SVN-Revision: 49290
Line 444 is actually enabling all switch ports by setting the disable bits
to 0. This needs to be done because the bootloader sets all ports to disabled
by default (which is the case for at least one router based on RT5350).
So, this patch fixes the comment in line 443.
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
SVN-Revision: 49289
The FCT2 esw register should be set to 0x2500C to have "unknown IPv6
multicast" packets broadcasted to every port, instead of dropped.
The previous value only let those packets go through ports 1 and 3.
"Unknown IPv6 multicast" packets include packets needed by ICMPv6 echo
requests addressed to well-known addresses, such as ff02::1 (MAC address
is 33:33:00:00:00:01 in this case).
Please note that by default ICMPv6 echo requests to ff02::1 are not replied
to by the router because of ip6tables considering those packets to be invalid.
But this is another bug/patch. ;)
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
SVN-Revision: 49287
add support for Planex MZK-EX750NP.
MZK-EX750NP is MT7620A and MT7610E based 11ac wifi repeater.
Built-in power supply.
64MiB RAM, 8MiB SPI Flash, non Wired Ethernet.
Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
SVN-Revision: 49268
CS-QR10 is MT7620A based IP Camera.
the camera and sound does not work with kernel 4.4.
- camera chip is sn9c291.
- sound chip is wm8960.
Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
SVN-Revision: 49234
Makes the patches apply again by fixing the white space broken patch.
This problem was introduced in r49212.
Closes#22248 and #22259
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 49221
The WG3526 is the follow-up to the 2626 and is mostly the same, with the
excaption that the mt7602 has been replaced with the mt7603. The internal wifi
setup has also changed slightly. Based on my tests, everything that worked on
the 2626 works on the 3526 and with roughly the same performance.
v1->v2:
* Remove some references to 2626 that I had missed in the dts.
v2->v3:
* Update patch to match new file structure.
* Removed SD driver to be consistent with other MT7621 targets.
Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
SVN-Revision: 49213
ELECOM WRH-300CR is MT7620N based very small Wi-Fi router with 64MiB
DDR2 SDRAM, 16MiB SPI Flash, one fast ethernet port, and (internal but
easy-to-access) UART.
it also has internal USB hub and USB card reader which provide one USB
port, one SD card slot, and one microSD card slot.
Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
SVN-Revision: 49211
update DTS files to use jedec,spi-nor compatible string for m25p80 to fix probe issues.
Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
SVN-Revision: 49209
Misc fixes for LinkIt 7688 board:
- Copy the right wireless firmware for the mt7688
- Add back '0065-mt7688-fixes.patch', left out after the move to Linux 4.4.
- Remove SPI_DEV from linux config which otherwise causes a massive warning
- Add wmac to LINKIT7688.dts so wireless works
Signed-off-by: Adam Kent <adam@semicircular.net>
SVN-Revision: 49130
Currently the maximum image size defaults to 8Mbyte even though this model has 16Mbyte of flash memory.
Tested and works on my device.
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
SVN-Revision: 49129
Remove unnecessary packages to reduce image size so it fits in initramfs (to enable upgrading from factory firmware).
Signed-off-by: Roman Yeryomin <roman@advem.lv>
SVN-Revision: 49127
- all subtarget specific defines are in their own files
- common defines left in main Makefile
- each subtarget makefile idefed with SUBTARGET
- all subtargets compile tested
- few seems to be broken/unneeded things marked with FIXME
Signed-off-by: Roman Yeryomin <roman@advem.lv>
SVN-Revision: 49104
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 startup code does not reserve stack space
for these registers thus when the main C function needs
to save its arguments, that will cause a stack overflow.
Fix the assembly code to reserve stack space for the
registers to avoid that.
Untested. It seems that the lzma-loader is not used at all?
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 49062
1) Use leds to indicate:
Red - Power
Amber - Radio On
Blue - Wifi associated
2) Add profile to default build group for MT7628 subtarget
Signed-off-by: Noble Pepper <openwrtmail@noblepepper.com>
SVN-Revision: 49045
Xiaomi MiWiFi Nano is based on Mediatek MT7628 with 64MB ram 16MB flash
Signed-off-by: Noble Pepper <openwrtmail@noblepepper.com>
v3 includes changes suggested by L. D. Pinney & Karl Palsson-
Eliminate en25q64 (4MB) flash chip
Alphabetization
Remove hyphen in model
Rename profile from miwifinano.mk to xiaomi.mk
Add gpios that are attached to leds
SVN-Revision: 49024
This patch adds support for GL-MT750.
GL-MT750 is powered by MT7620A and MT7610e, dual band 802.11ac, 2.4G 300Mbps and 5G 450Mbps.
It has 5 LANs, MMC interface, USB, a lot of IOs and PoE support.
SVN-Revision: 48994
This patch adds support for GL-MT300N.
GL-MT300N is powered by MT7620N with 16MB flash, 64MB RAM,
2 LANs, USB, UART, GPIO and PoE support.
SVN-Revision: 48993
This patches adds support for GL-MT300A.
GL-MT300A is powered by MT7620A. It has 16MB flash, 128MB RAM,
Two LANs, USB, UART and MMC daughter board.
SVN-Revision: 48992
add support for Planex MZK-WDPR.
MZK-WDPR(MZK-WDPR-R01) is internet radio tuner.
This patch is "network board" in MZK-WDPR.
LCD board is non OpenWrt Platform.
Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
SVN-Revision: 48968
This patch adds profiles and support for building factory and
sysupgrade images for JHR-N805R, JHR-N825R and JHR-N926R.
Signed-off-by: Reinhard Max <reinhard@m4x.de>
Reviewed-by: Torsten Duwe <duwe@lst.de>
SVN-Revision: 48906
This patch adds support for JHR-N805R, JHR-N825R and JHR-N926R to
various scripts in the base-files directory.
Signed-off-by: Reinhard Max <reinhard@m4x.de>
Reviewed-by: Torsten Duwe <duwe@lst.de>
SVN-Revision: 48905
Add a device tree for JCG JHR-N825R
This router is based on a RT3052 and has 4MB of CFI flash and 32MB of
SDRAM. As a special feature, it comes with a two digit seven segment
display that is connected to a pair of daisy-chained 74164 shift
registers that can be controlled via GPIOs.
For details, see https://wikidevi.com/wiki/JCG_JHR-N825R .
Signed-off-by: Reinhard Max <reinhard@m4x.de>
Reviewed-by: Torsten Duwe <duwe@lst.de>
SVN-Revision: 48904
Add a device tree for JCG JHR-N825R
This router is based on a RT3052 and has 4MB of CFI flash and 32MB of
SDRAM. For details, see https://wikidevi.com/wiki/JCG_JHR-N825R .
Signed-off-by: Reinhard Max <reinhard@m4x.de>
Reviewed-by: Torsten Duwe <duwe@lst.de>
SVN-Revision: 48903
Add a device tree for JCG JHR-N805R
This router is based on a RT3050 and has 4MB of SPI flash and 16MB of
SDRAM. For details, see https://wikidevi.com/wiki/JCG_JHR-N805R .
Signed-off-by: Reinhard Max <reinhard@m4x.de>
Reviewed-by: Torsten Duwe <duwe@lst.de>
SVN-Revision: 48902
Commit d0f5ab6d95a1 ("ramips: Added support for ZBT-826 / ZBT-1026")
incorrectly changed the mode of the ramips shell scripts from 755 to 644.
I.e., they are not excutable any more and for example devices will be left
with broken configs.
Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
SVN-Revision: 48893
Hi,
the board in subject (RT5350F-OLinuXino-EVB) still ships from vendor
with a RC3 image built upon a .dts file which declares GPIO12 and GPIO14
as relay2 and relay1 respectively, as you can see from their rt5350f
branch on GitHub.
For some reason in the official stable build both the GPIOs are swapped
and the wrong names are declared in the gpio-export directive.
I'm submitting this patch which should roll back the wrong changes, so
that we get backward compatibility with any script developed on RC3
which controls the relays.
After patching correct operation is restored:
root@OpenWrt:/# cat /sys/kernel/debug/gpio
GPIOs 0-21, platform/10000600.gpio, 10000600.gpio:
gpio-0 (button ) in hi
gpio-12 (relay2 ) out lo
gpio-14 (relay1 ) out lo
Thank you,
Signed-off-by: Lorenzo Cafaro <lorenzo@ibisco.net>
SVN-Revision: 48796
As indicated in the bug tracker[1], failsafe mode is broken on at least some
devices using the mt7620 switch (and possibly mt7621). The thread explicitly
mentions the Xiaomi MiWifi, and the Nexx WT3020, and an unspecified device
using the mt7621 switch; the issue also applies to the Netgear EX2700.
The problem is that failsafe mode uses eth0, but enable_vlan is always set to 1
by the switch driver. Connecting to and/or pinging the device fails. This patch
fixes the failsafe preinit config, by making sure that vlan support is disabled.
It currently only fixes the switch config on mt7620, but might apply to the
mt7621 as well, so the patch has been designed with this in mind.
A similar (line wrapped) patch was submitted in December by Simon Peter, but never
accepted and/or discussed.
This patch applies to both Chaos Calmer and trunk.
[1] https://dev.openwrt.org/ticket/18768
Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
SVN-Revision: 48772
This patch adds support for building factory and sysupgrade images
for the Netgear EX2700 that don't require modification of u-boot
environment variables.
The bootloader on this device expects the kernel partition to end
on a 64k block boundary. The last 64 byte of the kernel partition
must contain a valid uImage header - in the stock firmware, this is
the uImage header of the root filesystem. For this patch, we're using
the uImage header of a 0 byte partition (ex2700-fakeroot.uImage).
Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
SVN-Revision: 48771
- Fix typo in board_data partition start address
- Increase board_data partition size in order to exploit all flash size
Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>
SVN-Revision: 48751
This patch adds support for Phicomm PSG1208.This is a router with MT7620A SoC with 8M flash and 64M ram.
The WPS led is uesd as status_led because the power light can't be controlled with GPIO.
It seems that the 5g wifi led is connected to MT7612E and it can't be controlled with GPIO too.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
SVN-Revision: 48721
This patch adds support for the Netgear EX2700 and builds an approriate
sysupgrade image.
What's missing is the option to build a factory image flashable via the
router's stock web interface, but this approach is hindered by the fact
that u-boot operforms an additional integrity check, which expects a
uImage header in the last 64 bytes of the "kernel" partition, which
the bootloader expects to be 960k, a size exceeded by the standard
OpenWrt kernel.
Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
SVN-Revision: 48698
The top half of UARTF on the HLK-RM04 is used for GPIO.
mode 1 mode 2
RIN GPIO14
DSR_N GPIO13
DCD_N GPIO12
DTR_N GPIO11
RXD GPIO10
CTS_N GPIO09
TXD GPIO08
RTS_N GPIO07
This patch applies 3'b101 mode to UARTF:
GPIO14
GPIO13
GPIO12
GPIO11
RXD
CTS_N
TXD
RTS_N
Because the base rt5350.dtsi file forces 3'b000 mode, remove the pin setting from this file and apply it directly to the files that inherit from it (WIZFI630A.dts and WT1520.dtsi). This change makes the rt5350.dtsi file consistent with the mt7620a.dtsi file.
Signed-off-by: John Clark <inindev@gmail.com>
SVN-Revision: 48665
The I2C function of the RT5350 SoC on the HLK-RM04 is used for GPIO1 and GPIO2.
Take note that the I2C_SD pin is GPIO1 on the RT5350 and is exposed on the HLK-RM04 as GPIO0
Likewise the I2C_SCLK pin is GPIO2 on the RT5350 and is exposed on the HLK-RM04 as GPIO1
group mode 1 mode 2 hlk-rm04 pin & export
i2c i2c_sd gpio1 (pin 8, hlk-rm04:gpio0)
i2c i2c_sclk gpio2 (pin 9, hlk-rm04:gpio1)
reference:
http://www.hlktech.net/product_detail.php?ProId=39http://cdn.sparkfun.com/datasheets/Wireless/WiFi/RT5350.pdf
Signed-off-by: John Clark <inindev@gmail.com>
SVN-Revision: 48664
The RESET button of the HLK-RM04 is connected to GPIO0, linux function 0x198
The WPS button of the HLK-RM04 is connected to GPIO14, linux function 0x211
Signed-off-by: John Clark <inindev@gmail.com>
SVN-Revision: 48663
The power LED on the HLK-RM04 is hard wired to the power bus and is not under GPIO control, remove the bogus config for it.
(Note that GPIO0 is actually connected to the RESET button.)
Signed-off-by: John Clark <inindev@gmail.com>
SVN-Revision: 48662
The bootloader was updated and now uses 115200 instead of 57600 baud
for the serial console. Change this also in OpenWrt's DTS, so the rate
is consistent for bootloader and linux kernel output.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 48359
The image name for the HiLink HLK-RM04 module has a typo and should read "RM04" rather than "RM02"
Signed-off-by: John Clark <inindev@gmail.com>
SVN-Revision: 48355
LED's were defined wrong in the device tree file, they are hardware driven because they are connected directly to the switch chip and wireless chips respectively, thus no GPIO addresses are assigned to them. It is safe to remove them from the device tree file to stop confusion.
Signed-off-by: Sebastian Careba <nitroshift@yahoo.com>
SVN-Revision: 48055