This fixes the partition name for the firmware splitter, the cfi
address and adds the mtd-eeprom address for wmac. It adds additional
LEDs and make use of them in diag.sh and 01_leds.
Please note that the ":blue:wired" LED is used because the
":blue:router" behaviour is unpredictable for failsafe indication. The
issue with the router LED is that you have two states only.
"off" is steady on and "on" blinks. Therefore the wired LED is more
suitable.
Furthermore it reuses the correct switch configuration definition to
reflect the device ports and numbering. Additionally fixes the issue
that the default configuration is not applied as no port 6 exists on
this device.
Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
use pwr LED in diag.sh
Expose unused pinmux pins as GPIOs
export power LED and buzzer pins
Use rb750gr3:blue:pwr LED in diag.sh for boot status instead of rb750gr3:green:usr
Signed-off-by: Andrew Yong <me@ndoo.sg>
Fix bug that LEDE failed to boot with this message:
WARNING: CPU: 2 PID: 1 at drivers/spi/spi-mt7621.c:214
mt7621_spi_transfer_one_message+0x28c/0x620()
Signed-off-by: Yong-hyu, Ban <perillamint@gentoo.moe>
Use gpio.h definition of GPIO_ACTIVE_HIGH and GPIO_ACTIVE_LOW. Remove unused backup partition to increase available JFFS space. As long as U-Boot env variable "bootcount" is < 3 (reset to 0 after boot by init script) SamKnow's U-Boot will not attempt to boot from the backup flash address (0xe30000).
Signed-off-by: Andrew Yong <me@ndoo.sg>
The Dlink DWR-512-B modem is a ralink 5350 processor based embedding
a 3G mini-pcie router.
The oem JBOOT bootloader has to be replaced by a RT5350 SDK
U-Boot such as https://github.com/stevenylai/ralink_sdk - U-Boot
configured for the RT5350 256MiB SDR.
Main reason to change the bootloader is the encrypted header used to
store the kernel image. In this way an image can only be generated
using the propietary binboy tool (included in the GPL distribution
from Dlink). The binboy tool doesn't allow to modify the kernel/rootfs
partition scheme. This is considered a big constraint (limited kernel
size and inefficient usage of flash space).
For interested people I pubblished the details of my investigation
about the encrypted firmware header here:
http://lists.infradead.org/pipermail/lede-dev/2016-October/003435.html
Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
Fix a typo in mt7621.dtsi compatible string. Disable spi, sdhci and pci
in mt7621.dtsi and enable the nodes in the indiviual board dts files.
The nodes require further device specific configuration anyway.
Remove the m25p80@0 spi child node from mt7621.dtsi and add the
chunked-io parameter to the individual board dts files. Fix the spi
flash compatible string for the WNDR3700V5.
Drop the mt7621-eval-board compatible string for all boards which are
not the eval board.
Drop the linux,modalias parameter from spi flash node.
Remove the xhci node from board files, it is already enabled in dtsi.
Disable xhci for boards not having usb ports populated.
Signed-off-by: Mathias Kresin <dev@kresin.me>
fix in sdhci Use ralink_soc == MT762X_SOC_MT7621AT instead of CONFIG_SOC_MT7621 which is
wrong and breaks builds on mt7620a-similar platforms (MT7621, MT7688)
Signed-off-by: Andrew Yong <me@ndoo.sg>
Enable work-arounds present in the code commented-out but needed to write to
sdcard on mt7621 which currently causes kernel to oops when engaging in
serious writing to sdcard. With this change applied, there are still
occasional warnings thrown by the mmc driver, however, at least it no longer
crashes the system and even large writes (full-card dump/erase/write/compare)
don't show any corruption.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Rebase to LEDE and added "CONFIG_SOC_MT7621" check to ensure non-MT7621 devices do not face performance regressions.
Signed-off-by: Andrew Yong <me@ndoo.sg>
Factory image can be installed via Zyxel WebUI.
Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
[removed linux,modalias parameter from flash node in dts]
[removed sdhci node from dts; no sd card slot here]
Signed-off-by: Mathias Kresin <dev@kresin.me>
The Sitecom firmware upgrade file has SENAO_FIRMWARE_TYPE 2 set. This
looks rather wrong since SENAO_FIRMWARE_TYPE 2 is kernel only but the
file is way to big for only including a kernel.
The factory image need to have the dlf file extension. Otherwise the
Sitecom firmware rejects the file.
The stock firmware uses the following mac addresses:
LAN: 00:0C:F6:AA:BB:D8 (u-boot env: ethaddr)
2,4: 00:0C:F6:AA:BB:D8 (EEPROM)
5: 00:0C:F6:AA:BB:DC (EEPROM)
WAN: 00:0C:F6:AA:C8:43 (u-boot env: wanaddr)
Assuming the mac address range :D8 to :DC is reserved for this device,
the MAC addresses were reorder to have a unique MAC address for each
interface:
2.4GHz: 00:0C:F6:AA:BB:D8
LAN: 00:0C:F6:AA:BB:D9
WAN: 00:0C:F6:AA:BB:DA
5 GHz: 00:0C:F6:AA:BB:DC
The first MAC is assigned to the 2.4GHz WiFi interface
to keep compatibility with the SSIDs printed on the case, which have
the last three sextets of the MAC address appended.
There are still issues with the rt2x00 driver. It is not possible to
use both wireless interfaces at the same time. The 2.4 GHz
wireless (PCIe) only works if the internal 5GHz wireless is/has been
enabled or used for scanning. The internal 5GHz wireless only works if
the 2.4GHz wireless (PCIe) was never enabled. Disabling the 2.4Ghz
after it was enabled will result in stations seeing the 5Ghz AP but are
unable to connect.
Due to the not optimal working wifi the manufacture, backup and storage
partitions of the OEM firmware are kept for now to allow an easy switch
back to the Sitecom firmware.
Signed-off-by: Jasper Scholte <NightNL@outlook.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
Polling every 40ms causes more than 10% CPU load on weak devices. An
interval of 200ms is much more reasonable.
Signed-off-by: Martin Weinelt <martin@darmstadt.freifunk.net>
[Matthias Schiffer: adapt OpenWrt patch; add ramips; extend commit message]
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
All compiled device tree files not mentioned are binary identical to the
former ones.
Fix the obvious decimal/hex confusion for the power key of ramips/M2M.dts.
Due to the include of the input binding header, the BTN_* node names in:
- ramips/GL-MT300A.dts
- ramips/GL-MT300N.dts
- ramips/GL-MT750.dts
- ramips/Timecloud.dts
will be changed by the compiler to the numerical equivalent.
Move the binding include of lantiq boards to the file where they are
used the first time to hint the user where the values do come from.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Fixes invalid device tree parameters.
Drop the mvsw61xx node used in mvebu device tree source files. It looks
like some kind of ethernet switch cargo cult. Neither the
marvell,88e6352 nor the marvell,88e6172 compatible strings can be found
in any LEDE file or in the kernel sources.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Assign an unused MAC addresses to the 2.4GHz wifi interface as it was
originally planed but not possible.
The MAC address numbering of the TEW-691GR changes to the following
pattern:
LAN: AA:BB:CC:DD:EE:0C
WIFI: AA:BB:CC:DD:EE:0D
WAN: AA:BB:CC:DD:EE:0F
The MAC address numbering of the TEW-692GR changes to the following
pattern:
LAN: AA:BB:CC:DD:EE:e4
WAN: AA:BB:CC:DD:EE:e5
2.4GHz: AA:BB:CC:DD:EE:e7
5 GHz: AA:BB:CC:DD:EE:e8
Set the label and compatible string for the TEW-692GR PCIe wireless
according to the the PCI binding documentation.
Use the wifi@0,0 label and the pci0,0 compatible string since the PCI
vendor and device id is unknown. It should work anyway since the
compatible string isn't evaluated (yet).
Signed-off-by: Mathias Kresin <dev@kresin.me>
Use the ralink,mtd-eeprom instead of invoking the userspace firmware
loader.
Set the label and compatible string according to the the PCI binding
documentation.
Use the wifi@0,0 label and the pci0,0 compatible string in case the
PCI vendor and device id is unknown. It should work anyway since the
compatible string isn't evaluated (yet).
This commit might fixes the PCIe wireless for the Buffalo WHR-600D.
This board was mentioned in the board 10-rt2x00-eeprom firmware hotplug
script but never had the correct eeprom name set to trigger the
firmware from flash extraction.
Use the usual eeprom for the soc wmac of the Dovado Tiny AC.
Signed-off-by: Mathias Kresin <dev@kresin.me>
The MikroTik hEX v3 (RB750Gr3) is a MT7621AT board which is similar to most MT7621 reference designs, it can be easily supported by this patch; however, the stock RouterBOOT bootloader has to be replaced by a MT7621 SDK U-Boot such as https://github.com/ndoo/RB750Gr3-U-Boot - U-Boot configured for the RB750Gr3 (16MiB SPI flash, 256MiB DDR3 RAM at 1200MHz).
RouterBOOT, the stock bootloader, does not initialize the UART and boots silently, making it preferable to replace it with a MT7621 SDK U-Boot with UART (57600 8N1) that supports HTTP, TFTP or serial upload of sysupgrade firmware and U-Boot.
Furthermore, RouterOS, the stock firmware, is contained in a proprietary modification of SquashFS without GPL sources; UART is also disabled in stock firmware.
The combination of LEDE firmware generated by this PR and MT7621 SDK U-Boot expects the printed MAC address to reside at offset `0xe000` of the factory partition (absolute offset is `0x4e000`); this is similar to the factory MAC address offset for several other MT7621 devices.
A 16MiB flash dump suitable for use with flashrom will be provided if/once this patch is accepted and binaries are built by LEDE buildbot. Alternatively, writing the U-Boot to the SPI flash starting at 0x0 offset and booting the board with serial console attached will allow TFTP, HTTP or serial upload of sysupgrade firmware.
Signed-off-by: Andrew Yong <me@ndoo.sg>
This patch bumps the 4.4 kernel from .28 to .30 and refreshes the patches.
Compile-tested on ar71xx, x86/64, ramips/mt7621, brcm47xx and kirkwood.
Run-tested on ar71xx & ramips/mt7621, brcm47xx and kirkwood (last two confirmed
by P. Wassi).
Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
This patch adds the kmod-usb3 and kmod-usb-ledtrig-usbport packages to the
DIR-860L B1 profile. The DIR-860L B1 has a USB 3 port.
Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
- setting read-only flag to important partitions
- enabling PA to improve 2.4 GHz signal strength
- add missing leds
- rename colour led
- add mac adress to 5GHz wlan interface
- included <dt-bindings/input/input.h> and <dt-bindings/gpio/gpio.h>
Signed-off-by: Henryk Heisig hyniu@o2.pl
Build the RTC driver into the kernel, (and remove the optional module), in order
to make hctosys working. (Currently the module is loaded after hctosys has failed previously)
Signed-off-by: Rosen Penev <rosenp@gmail.com>
This makes init.d script handle existing UCI entries using the new
trigger. It also switches all targets to use its package.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
All of the touched boards don't have an ethernet port. Allow to use the
wps button on these boards to enable the wireless radio after boot.
The force enabled wireless for the DCH-M225 is removed. It is reckless
to bring up an unencrypted wireless network by default these days.
Using the wps button to bring up the radio seam to me the better
approach.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Images installed via TFTP recovery or the Edimax webinterface of the
3g-6200n(l) are writting with the edimax header to flash.
Use only one image type for these boards. The migration to the
factory only images need to be done via TFTP recovery.
Use the same start address for the 3g-6200n(l) factory images as the
stock firmware images.
Thanks to Jan Dostrasil for reporting all the issues of the 3g-6200nl
and the patient testing of all changes.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Assign the reset functionality to the wps/reset buttons. Use the wlan
switch of the 6200n to enable/disable wlan.
Add the internet led of the 6200nl and use the led for boot status
indication
Signed-off-by: Mathias Kresin <dev@kresin.me>
With 3a9752bbd2 and later changes to
ramips_set_preinit_iface() the default vlan config applied during
preinit was changed. These changes were made without updating the
default network config to ensure that vlan interfaces used for lan/wan
are still configured.
Fix the issue by using the default all LAN portmap and disabling not
connected switch ports using portdisable device tree parameter.
Signed-off-by: Mathias Kresin <dev@kresin.me>
With de51026515 the explicit tagging of
the CPU port was removed. This leads to a not working default network
config, with vlans enabled but disabled CPU tagging, for boards where
all switch ports are having the same role.
In case the ports are having different roles set, tagging is is set
implicit for the CPU port by ucidef_add_switch().
Signed-off-by: Mathias Kresin <dev@kresin.me>
Don't set the lan/wan interface when using ucidef_add_switch. This
results into a wan interface albeit all ports a annotated as lan ports.
ucidef_add_switch takes care of setting the correct lan/wan interface
according to the annotation of the ports.
Signed-off-by: Mathias Kresin <dev@kresin.me>
applied bb-final-ramips-add-zyxel-nbg-419n2.patch from
123serge123, found at https://yadi.sk/d/1ZV0lKJwbTE65;
see https://forum.openwrt.org/viewtopic.php?pid=246905#p246905,
modified slightly to fit to CC release and to new lede build
system: image/rt305x.mk include file is used now
changed NBG-419N2.dts format to fit style of other dts files
Signed-off-by: Klaus <k-laus@quantentunnel.de>
- CPU: MT7620A 580MHz
- Flash: 8MB - RAM: 64MB
- External PA+LNA on both WLAN2.4 and WLAN5
- 4x LAN ethernet and 1x WAN ethernet
Signed-off-by: Xuefu Lin <xuefulin@gmail.com>
Refresh patches for all targets that support kernel 4.4.
compile/run-tested on brcm2708/bcm2710 only.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Forgot to update kernel-version.mk, so updated patch. Compile-tested on x86/64 and ar71xx; run-tested on x86/64 and ar71xx.
Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
kmod-rt2x00-lib and kmod-mac80211 need to be removed, as they depend on
kmod-cfg80211. kmod-rt2800-pci should not be installed anyways.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Older busybox versions allowed using the local keyword outside of
functions, whereas 1.25.0 (which was introduced in 06fa1c46fc) do not
allow this anymore (leading to the following error when executing the
script: "file: local: line nn: not in a function").
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
The D-Link DIR-860L B1 has a flash chip which doesn't support
4K sectors. Since the DIR-860L B1 was the only mt7621 board which had
the 4k blocksize set, the 4K sector support is removed from the kernel
config.
I've checked the flash chips of all boards having set a 4K blocksize
again. This time I searched harder to finding bootlogs instead of
relying on wikis articles and/or the device tree source file.
The Planex MZK-DP150N has an en25q32b instead of the mentioned one in
the dts. Albeit the en25q32b supports 4K sectors, 4K support is not
enabled in the driver. Change the blocksize for this board back to 64K.
Reported-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Mathias Kresin <dev@kresin.me>
This is a follow up to 28110727f1
"ramips: set blocksize for 4MB devices". I've missed to include the
required changes of the kernel configs to enable 4K sector size
support.
The option is only enabled for targets having boards with 4k sector
size flash chips.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Only add them where they are actually required.
Should help with compatibility issues with stock U-Boot images that
access UBI
Signed-off-by: Felix Fietkau <nbd@nbd.name>
- quote the interface name
- remove call of not existing function
- remove the proto if it's the default proto
Signed-off-by: Mathias Kresin <dev@kresin.me>
Now that all seama images are using the new build code this seama recipe
used with the old build code can be dropped.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Set the blocksize for devices having only 4MB of flash for ramips
devices already using the new image build code.
Informations about the used flash chip are gathered from the OpenWrt
wiki, wikidevi, forums, OEM bootlogs or the compatible property in the
device tree source file.
The en25q32b from the AirLive Air3GII does not have 4k support in the
kernel.
For the following boards no information about the used flash chip could
be found and a 64k blocksize is assumed:
- Ralink V11ST-FE
- Ralink AP-RT3052-V22RW-2X2
- MediaTek MT7628 EVB
- MediaTek MT7621 EVB
- UPVEL UR-326N4G
- Buffalo WZR-AGL300NH
Signed-off-by: Mathias Kresin <dev@kresin.me>
1004kc is just a SMP capable 34kc, and GCC treats 24kc and 34kc exactly
the same and will generate identical code, so there is no need to tune
to 1004kc instead of 24kc.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Refresh patches for all targets that support kernel 4.4.
Compile-tested on all targets that use kernel 4.4 and aren't marked broken.
Runtime-tested on ar71xx, octeon and x86/64.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
The image generation for TEW-691GR and TEW-692GR was broken since
79d02229 due to the move of the UMedia recipe to another Makefile.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Due to the missing phy-mode setting, the switch wasn't initialised.
The wireless requires an eeprom to work. Use the same mac addresses as
the stock firmware.
Signed-off-by: Mathias Kresin <dev@kresin.me>
The AR8327 initvals were not copied to the DTS during the switch from
mach file to device tree and broke the switch on the device.
The former used PORT6 related initvals were wrong and have been
corrected.
The phy mode setting for the switch was missing in the DTS as well.
The wireless requires an eeprom to work. The dual band wireless chips
have both bands enabled by default but only one band per chip is
working.
The stock firmware uses the following mac addresses:
LAN: AA:BB:CC:DD:EE:E4
WAN: AA:BB:CC:DD:EE:E4
2.4GHz: AA:BB:CC:DD:EE:E4
5 GHz: AA:BB:CC:DD:EE:E8
Assuming the mac address range :E4 to :E8 is reserved for this device,
the MAC addresses were reorder to have a unique MAC address for each
interface:
LAN: AA:BB:CC:DD:EE:E4
2.4GHz: AA:BB:CC:DD:EE:E4
WAN: AA:BB:CC:DD:EE:E5
5 GHz: AA:BB:CC:DD:EE:E8
Signed-off-by: Mathias Kresin <dev@kresin.me>
Fixes the following compiler warning:
Warning (reg_format): "reg" property in /ethernet@10100000/port@0 has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
Warning (avoid_default_addr_size): Relying on default #address-cells value for /ethernet@10100000/port@0
Warning (avoid_default_addr_size): Relying on default #size-cells value for /ethernet@10100000/port@0
Signed-off-by: Mathias Kresin <dev@kresin.me>
Thunder Timecloud is a small NAS with MT7621A. It has 1 USB port and an
SD Card slot. There is no wireless cards.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Since the only difference between 24Kec and 24Kc is the addition of DSP
ASE support, and we don't use it anymore, there is no need to keep 24Kec
as a separate cpu type.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
There does not seem to be any meaningful difference in generated code.
This will save some time and space on snapshot builds
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Now that the "sysupgrade-nand" step is used by non-NAND targets as well,
rename it to "sysupgrade-tar" to make it more generic.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Introduce an optional parameter at the local set_usb_led and
set_wifi_led function such that they can take a triggering
device. If no parameter is passed, behaviour is unchanged.
Signed-off-by: P.Wassi <p.wassi@gmx.at>
* add gdma and hsdma kernel modules
* i2s support all ramips targets except rt288x
* i2s need gdma to transfer data
* add simple audio kernel module. it support device tree binding
Signed-off-by: Michael Lee <igvtee@gmail.com>
D-Link DCH-M225 is based on Mediatek MT7620 with 64MB ram, 8MB flash,
3.5mm audio out support. but no ethernet and usb ports.
so you must default enable wifi.
Signed-off-by: Michael Lee <igvtee@gmail.com>
The NixCore X1 is a Ralink/MediaTek rt5350 WiFi Module.
http://nixcores.com/
Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
Acked-by: Drew Gaylo <drew@nixcores.com>
The partition size is wrong, leading to out-of-disk-space even on no/moderate use.
Upstream fix from vendor: 2f25eb57ed
Suggested fix for openwrt: https://dev.openwrt.org/ticket/20321
Signed-off-by: Rene Treffer <treffer@measite.de>
Pinmux for rgmii needs to be set to rgmii, not gpio.
Hide the ESW switch on boot (using new rgmii esw devicetree attribute).
Also add a Sitecom-specific profile, since the image needs to include
the rtl8366 kernel driver.
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
Commit "kernel: mtdsplit: calculate kernel partition precisely for Seama"
changed the kernel partition to only contain the kernel itself and not
the Seama header. Adjust the fixseama call to match what is used on
brcm53xx.
This fixes failing to boot a second time after flashing the factory image
on the affected devices.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Reviewed-by: Jo-Philipp Wich <jo@mein.io>
The ZBT APE522II is a dual-radio outdoor CPE based on the MT7620a SoC. It has
64 MB RAM, 8 MB flash, 2 Fast Ethernet ports via internal switch (one with
802.3af 48V PoE support), a 802.11b/g/n SoC 2.4 GHz radio and an 802.11a/n/ac
MT7612E-based 5 GHz radio.
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
* 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>
Commit 9ff8928bb9 renamed the snd-soc-mt7620-i2s
driver and dropped snd-soc-mt7620-wm8960 which selected CONFIG_SND_SOC_WM8960
breaking all ramips builds due to undefined kernel config symbols.
Rework the kmod-sound-mt7620 package to explicitely select the
CONFIG_SND_SOC_WM8960 symbols and change it to bundle the renamed .ko file.
Also remove the @BROKEN flag and exclude it on the rt288x subtarget instead.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
DuZun DM06 is a develop board based on mt7628
64M RAM, 8M SPI Flash, 1 WAN, 1 LAN.
wm8960 codec with line out, line in and speaker output.
Signed-off-by: Michael Lee <igvtee@gmail.com>
* remove mt7620-wm8960.c use simple card and DTS to do it
* add old chips support
* add 12Mhz refclk setup. this is hard code. need use clock framework
rewrite it
* add interrupt error status support for debug. default disable it.
because it cause to many interrupts
* add setup bclk suport not hard code it
* add 24 bits support for mt7628. not verified
* use regmap api to control registers
* add txdma-req/rxdma-req DTS params for DMA use
Signed-off-by: Michael Lee <igvtee@gmail.com>
* 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
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
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
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
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
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
* 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
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
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
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
* 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
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
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
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
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
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
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
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
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
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
* 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
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
* 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
* 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
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
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
* 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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
This patch is to add the WIZnet WizFi630A board as a new platform. The board is in mini pci express form factor.
Signed-off-by: Tobias Welz <tw@wiznet.eu>
SVN-Revision: 46921
This patch add support for Planex DB-WRT01. DANBOARD route on
the MT7620A SoC with two Ethernet port and a 802.11n 2.4 GHz radio.
DANBOARD is Cartoon character.
Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
SVN-Revision: 46918
The PBR-M1 and other upcoming MT7621 boards have RTC chips on them. The
PBR-M1 also selects the kmod-rtc-pcf8563 by default. But the module itself
will not be build because CONFIG_RTC_CLASS is currently not enabled for its
kernel.
Enabling this option should fix the problem of the missing rtc device on
these boards.
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
SVN-Revision: 46857
Instead of using board name provided explicitly as text in LED name, ex.:
[...]
mlwg2)
status_led="mlwg2:blue:system"
[...]
use $board variable, which allows to combine together multiple boards with same color and LED names, ex:
[...]
mlw221|\
mlwg2)
status_led="$board:blue:system"
[...]
The above approach allows to shrink size of code in base-files/etc/board.d/01_leds and base-files/etc/diag.sh scripts dramatically.
One thing to keep in mind here is that we assume to use proper and consistent LED naming scheme ("device:color:led-name").
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46665
The upstream LED naming convention is "device:color:led-name", but it seems that many of supported boards in OpenWrt don't follow this approach.
The following patch fixes this inconsistency in dts{,i} files and updates base-files scripts for ramips target:
* fixes wrong indentation
* keeps case statements structure in same convention as in other scripts (no empty line after ";;", no indentation for case...esac body)
* fixes wrong LED names for some of boards (makes them the same as in dts{,i} files)
* combines boards with same configuration (ex. set_wifi_led "rt2800pci-phy0::radio" in 01_leds)
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46664
The MT7621 uses a 2 bit wide configuration of the sdhci, spi, mdio, pcie,
wdt, uart2 and uart3 in the GPIO_MODE register. It was correctly done
for sdhci, spi, pcie and wdt, The same has to be done for uart3, uart2
and mdio.
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
SVN-Revision: 46645
The PINS conntrolled by the SPI bits in the GPIO_MODE register is always
7 and not 8 for nand mode.
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
SVN-Revision: 46644
The uart3 setting in GPIO_MODE register is before the uart2 setting. Also
don't mix uart2 and uart3 function/groups.
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
SVN-Revision: 46643
The following patch:
* fixes wrong indentation
* combines together boards with same configuration
* removes unnecessary spaces
* removes empty lines after ";;" and uses only "|\" (for consistency)
* orders boards alphabetically
in base-files/etc/board.d/02_network script.
One bug was left untouched: freestation5 board is listed twice in case statement, in ramips_setup_macs().
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46634
This patch:
* fixes various mistakes (leading spaces, wrong or missing model names)
* shortens model strings (we don't need to use whole model string from dts file, make it for consistency and as optimization)
* sorts boards alphabetically
in base-files/lib/ramips.sh script.
Case statement was tested after above changes with simple script, which:
* takes model string from dts{,i} file (model = "...")
* provides this value as case input ($machine)
* returns output ($name)
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46632
This patch:
* fixes wrong indentation
* fixes wrong names and descriptions (ex. Dlink -> D-Link)
* changes filenames to manufacturer names
* moves oem/unknown manufacturers boards to misc.mk profiles
* combines profiles for boards from the same manufacturers in one file (ex. Olimex)
* fix profile files structure (keep the same convention as in other targets, ex. ar71xx)
in various .mk profiles, in ramips target.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46631
It seems that support for Edimax BR-6524N was dropped long time ago (dts file for this device is missing).
This patch removes remaining code.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46630
The following patch changes 7Links PX-4885 dts{,i} filenames, board, image and profile names from "PX4885" to "PX-4885" (for consistency).
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46629
The following patch changes Buffalo WMR-300 dts filename, board, image and profile names from "WMR300" to "WMR-300" (for consistency).
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46628
The following patch changes dts filename and profile name for Aigale Ai-BR100 (for consistency).
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46624
Official names for RT5350F based OLinuXino products are "RT5350F-OLinuXino{,-EVB}" as on official manufacturer website.
The following patch:
* changes board names from "olinuxino-rt5350f{,-evb}" to "rt5350f-olinuxino{,-evb}"
* changes filenames of dts and profile files
* changes image filenames
for Olimex RT5350F-OLinuXino{,-EVB} devices.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46623
The following patch changes:
* board name from "wl341v3" to "wl-341v3"
* dts filename
* LED names in dts file
for Sitecom WL-341v3 device.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46622
The following patch:
* changes board name from "argus-atp52b" to "atp-52b"
* changes dts filename
* fixes LED names in dts file and base-files scripts
* removes manufacturer name from image filename
for Argus ATP-52B device.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46621
This patch removes manufacturer from Belkin F7C027 image name ("belkinf7c027" -> "f7c027").
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46620
Other Asus RT-N dts files are named "RT-N..." (not "RTN..."), so use the same for RT-N56U.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46619
The following patch:
* changes board name from "xiaomi-miwifi-mini" to "miwifi-mini"
* changes filenames of dts and profile
* fixes LED names in dts file and base-files scripts
* removes manufacturer name from image filename
for Xiaomi MiWiFi Mini device.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46617
This patch:
* fixes typo (rp_n53 -> rp-n53) in Asus RP-N53 image name
* removes manufacturer from image names for Lenovo Y1{,S} devices
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46616
There are other Asus boards supported in ramips target, so use the same naming scheme for WL-330N{,3G} boards and their dts files.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46615
There is another Zbtlink board (ZBT-WA05) supported in ramips target, so use the same naming scheme for ZBT-WR8305RT board and its dts file.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46614
The following patch fixes:
* wrong indentations
* doubled gpio-keys-polled nodes (DIR-300-B7, DIR-320-B1, DIR-610-A1)
* duplicate spacings
* empty lines at end of files and after last child nodes
* trailing and leading whitespace
* unnecessary and commented-out code
* missing empty lines between nodes and between properties and nodes
* unnecessary empty lines between nodes properties [1]
in .dts{,i} files, for ramips target.
[1] Some of empty lines in SOCs dtsi files were left untouched, because they seem to be there for a reason (readability?).
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46613
STORYLiNK SAP-G3200U3 is an AC1200 router based on MT7621AT+MT7602EN+MT7612EN.
It has 128MB DDR3, 8MB NOR FLASH, 5-port Gbps switch and 1x USB 3.0.
The following patch adds support for this device.
Tested and working:
* ethernet
* both WiFi radios
* USB 3.0
* buttons
* ethernet switch and USB diag LEDs
* UART
* GPIOs
Tested and not working:
* LEDs for WiFi radios (connected with WiFi chips, not supported in mt76?)
* failsafe mode (known problem, needs workaround like other MTK based devices)
More information in Wiki: http://wiki.openwrt.org/toh/storylink/sap-g3200u3
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
SVN-Revision: 46454
This patch add support for Planex MZK-DP150N.
a mini router on the MT7620A SoC with one Ethernet port and a 802.11n 2.4 GHz radio.
Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
SVN-Revision: 46405
Adding support for OY-0001 Wireless Router.
OY-0001 is a wireless router made by oyewifi.com. Below is the details:
MT7620A, 128MB DDR2, 16MB FLASH, SD Slot, USB 2.0, 4 x LAN + 1 x WAN.
Signed-off-by: Tom Deng <2579131212@qq.com>
SVN-Revision: 46349
USB port of TP-Link Archer C20i does not work with trunk and CC.
This patch adds two nodes (ehci and ohci) to the device tree enabling USB.
Signed-off-by: Gunnar Thorburn <gunnar@thorburn.se>
SVN-Revision: 46348
This patch adds support for the Linksys RE6500 Range Extender
http://wiki.openwrt.org/toh/linksys/re6500
Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
SVN-Revision: 46043
This patch is for PandoraBox PBR-M1 which is based on mt7621,
all the features work fine, including rtc, leds, button, usb3.0, etc.
Signed-off-by: tymon <banglang.huang@foxmail.com>
SVN-Revision: 46041
Version 2 : White spaces and alphabetical order problems
fixed
Support for Olimex RT5350F-OLinuXino Boards, tested with RT5350F-OLinuXino and RT5350F-OLinuXino-EVB boards. More Info :
https://www.olimex.com/Products/OLinuXino/RT5350F/RT5350F-OLinuXino/open-source-hardware
Signed-off-by: Dimitar Gamishev HeHoPMaJIeH <gamishev@gmail.com>
SVN-Revision: 45902
if there is any new tx need to clean up. do it in next napi poll.
collect tx related members to fe_tx_ring struct. for better
cache usage and more readable.
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 45895
when open device. first ready napi software rx.
then enable hardware interrupt.
final start software tx queue to send data.
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 45894
Avoid the use of memory marked as reserved
MT7621 support 512MB memory.
According to "MT7621_ProgrammingGuide_Preliminary_Platform.pdf"
0x0~0x1c000000 448MB
0x20000000~0x4000000 64MB
total 512MB
Signed-off-by: wengbj <fl.service@t-firefly.com>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 45892
Fix an upstream regression on 3.18+ that causes rt305x based devices
to hang on boot.
Fixes#19715.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 45747
The diag.sh script lacked an entry for the status led on the RT-N14U,
map it to the asus:blue:power led which is also used by the boot loader
to report boot status (eg. TFTP recovery mode VS normal boot)
Signed-off-by: Matteo Panella <m.panella@level28.org>
SVN-Revision: 45725