Commit Graph

50 Commits

Author SHA1 Message Date
Daniel Golle
31a6605de0 mac80211: rt2x00: experimental improvements for MT7620 wifi
Serge Vasilugin reports:

To improve mt7620 built-in wifi performance some changes:
1. Correct BW20/BW40 switching (see comments with mark (1))
2. Correct TX_SW_CFG1 MAC reg from v3 of vendor driver see
	https://gitlab.com/dm38/padavan-ng/-/blob/master/trunk/proprietary/rt_wifi/rtpci/3.0.X.X/mt76x2/chips/rt6352.c#L531
3. Set bbp66 for all chains.
4. US_CYC_CNT init based on Programming guide, default value was 33 (pci),
   set chipset bus clock with fallback to cpu clock/3.
5. Don't overwrite default values for mt7620.
6. Correct some typos.
7. Add support for external LNA:
    a) RF and BBP regs never be corrected for this mode
    b) eLNA is driven the same way as ePA with mt7620's pin PA
	but vendor driver explicitly pin PA to gpio mode (for forrect calibration?)
	so I'm not sure that request for pa_pin in dts-file will be enough

First 5 changes (really 2) improve performance for boards w/o eLNA/ePA.
Changes 7 add support for eLNA

Configuration w/o eLAN/ePA and with eLNA show results
tx/rx (from router point of view) for each stream:
 35-40/30-35 Mbps for HT20
 65-70/60-65 Mbps for HT40

Yes. Max results for 2T2R client is 140-145/135-140
with peaks 160/150, It correspond to mediatek driver results.
Boards with ePA untested.

Reported-by: Serge Vasilugin <vasilugin@yandex.ru>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-09-12 21:37:08 +01:00
Ilya Lipnitskiy
85ca6923bc ramips: gpio-ralink: use ngpios, not ralink,num-gpios
DTS properties that match *-gpios are treated specially.

Use ngpios instead, as most GPIO drivers upstream do.

Fixes 5.10 DTS errors such as:
  OF: /palmbus@300000/gpio@600: could not find phandle

Fixes DTC warnings such as:
  Warning (gpios_property): /palmbus@300000/gpio@600:ralink,num-gpios:
  Could not get phandle node for (cell 0)

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Cc: Daniel Golle <daniel@makrotopia.org>
2021-04-15 00:00:54 +08:00
Adrian Schmutzler
d4520d75a1 ramips: move aliases to the top in SoC DTSI files
The aliases node is expected as one of the first entries, and
having it there matches alphabetic sorting as well.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-02-22 18:49:57 +01:00
Adrian Schmutzler
621297e867 ramips: move dts-v1 statement to top-level DTSI files
The "/dts-v1/;" identifier is supposed to be present once at the
top of a device tree file after the includes have been processed.

In ramips, we therefore requested to have in the DTS files so far,
and omit it in the DTSI files. However, essentially the syntax of
the parent mtxxxx/rtxxxx DTSI files already determines the DTS
version, so putting it into the DTS files is just a useless repetition.

Consequently, this patch puts the dts-v1 statement into the top-level
SoC-based DTSI files, and removes all other occurences.
Since the dts-v1 statement needs to be before any other definitions,
this also moves the includes accordingly where necessary.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-09-25 23:26:40 +02:00
Chuanhong Guo
b756ea2a90 ramips: replace pinctrl property names
Upstream pinctrl driver in drivers/staging uses
groups/function/ralink,num-gpios instead of
ralink,group/ralink,function/ralink,nr-gpio
Replace these properties in dts as well as the pinctrl driver in
patches-4.14.
This commit is created using:
sed -i 's/ralink,group/groups/g'
sed -i 's/ralink,function/function/g'
sed -i 's/ralink,nr-gpio/ralink,num-gpios/g'

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2020-04-12 22:29:17 +08:00
Mathias Kresin
ffa55386f1 ramips: fix dtc compiler warnings
The latest dtc compiler considers nodes named i2c or spi as the
respective bus:

  /pinctrl/i2c: incorrect #address-cells for I2C bus
  /pinctrl/spi: incorrect #address-cells for SPI bus

Rename the node to fix the false positives.

Fix the spi node unit address for the DWR-512-B and UBNT-ER-e50 to get
rid of the following warning:

  SPI bus unit address format error, expected "n"

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 12:17:25 +01:00
Mathias Kresin
a58535771f ramips: set usb led trigger via devicetree
Assign the usbdev trigger via devicetree for all subtargets and drop
the userspace handling of the usb leds.

With the change all usb ports are triggering the usb led instead of
only usb 1.1 XOR usb 2.0 XOR usb 3.0 as it was before.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-07 11:34:18 +02:00
Mathias Kresin
563a5b5f94 ramips: add mt7620/1 sdhci pinmux
Set the pins to the required mode via the pinmux driver. It allows to
get rid of the pinmux related code in the sd card driver.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-09-06 21:35:53 +02:00
Mathias Kresin
3601c3de23 ramips: fix mt7620 pinmux for second SPI
The mt7620 doesn't have a pinmux group named spi_cs1. The cs1 is part
of the "spi refclk" group. The function "spi refclk" enables the second
chip select.

On reset, the pins of the "spi refclk" group are used as reference
clock and GPIO.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-27 19:31:17 +02:00
Mathias Kresin
b8996ea08a ramips: fix compatibles in SoC dtsi
The former used compatibles aren't defined anywhere and aren't used by
the devicetree source files including them.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-23 22:40:59 +02:00
Mathias Kresin
f9b8328d79 ramips: fix pci/pcie related dtc warnings
Add the ranges property to the PCI bridges where missing. Add the unit
address to PCI bridge where missing.

Rework the complete rt3883 pci node. Drop the PCI unit nodes from the
dtsi. They are not used by any dts file and should be rather in the dts
than in the SoC dtsi. Express the PCI-PCI bridge in a clean devicetree
syntax. The ralink,pci-slot isn't used by any driver, drop it. Move the
pci interrupt controller out of the pci node. It doesn't share the same
reg and therefore should be an independent/SoC child node.

Move the pci related rt3883 pinctrl setting to the dtsi instead of
defining the very same for each rt3883 board.

If the device_type property is used for PCI units, the unit is treated
as pci bridge which it isn't. Drop it for PCI units.

Reference pci-bridges or the pci node defined in the dtsi instead of
recreating the whole node hierarchy. It allows to change the referenced
node in the dtsi without the need to touch all dts.

Fix the PCI(e) wireless unit addresses. All our PCI(e) wireless chips
are the first device on the bus. The unit address has to be the bus
address instead of the PCI vendor/device id.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
d8e7a526a3 ramips: use ralink,nr-gpio instead of ralink,num-gpios
Since commit c1e7738988f5 ("checks: add gpio binding properties check")
dtc treats any *-gpios and *-gpio property as phandle at least during
checks. The only whitelisted property is nr-gpio.

Use ralink,nr-gpio in favour of ralink,num-gpios to get rid of false
positive warnings.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
1bad2b74ae ramips: fix cpu interrupt controller dtc warnings
The cpu interrupt controller doesn't have a reg property, hence we
can't use a unit address in the node name.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
b9dbf3f3c8 ramips: fix cpu related dtc warnings
We need a reg property if we are using a unit address.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Vianney le Clément de Saint-Marcq
eda27d7557 ramips: fix usbphy DT nodes on linux 4.14
The Ralink USB PHY driver merged into mainline has a slightly different
device tree binding than the patch that was used with linux 4.9.
The new driver requires a `ralink,sysctl` node pointing to the `syscon`
node.

This patch also sets `#phy-cells` to 0, as recommended by the mainline
documentation [1].

[1] Documentation/devicetree/bindings/phy/ralink-usb-phy.txt

Signed-off-by: Vianney le Clément de Saint-Marcq <code@quartic.eu>
2018-04-07 17:53:34 +02:00
Mathias Kresin
b69ceb0c3d ramips: add missing pinmuxes to SoC dtsi
Add pinmuxes defined by some board which are including the dtsi files
to the dtsi files itself. Allows to reduce duplication.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-22 08:21:52 +01:00
Michael Lee
c3e420f28c ramips: Add support for D-Link DCH-M225
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>
2016-07-11 14:19:47 +02:00
Michael Lee
921d782eb7 ramips: update i2s dtsi files
Signed-off-by: Michael Lee <igvtee@gmail.com>
2016-06-13 22:51:42 +02:00
Michael Lee
011ce1fad6 ramips: update i2c dtsi files
Signed-off-by: Michael Lee <igvtee@gmail.com>
2016-06-13 22:51:42 +02:00
Michael Lee
f36d624d88 ramips: add gdma hsdma dts info
Signed-off-by: Michael Lee <igvtee@gmail.com>
2016-06-13 22:51:42 +02:00
Álvaro Fernández Rojas
021c893658 ramips: fix size-cells on spi nodes
size-cells should be 0 in order to avoid dummy values in reg properties.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-05-18 16:57:39 +02:00
Stanislav Galabov
ffaaa6788a ramips: DTS modifications
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>
2016-05-12 03:29:36 +02:00
Stanislav Galabov
9195d8da35 ramips: DTS rework
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>
2016-05-12 03:29:35 +02:00
Stanislav Galabov
600c224213 ramips: Add hex prefix (0x) to dtsi reg properties where needed.
Signed-off-by: Stanislav Galabov <sgalabov@gmail.com>
2016-05-10 10:43:17 +02:00
Stanislav Galabov
b8f73d7f0a ramips: introduce serial0 aliases
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>
2016-05-10 10:43:17 +02:00
John Crispin
eb9fccc440 ralink: update the usb phy driver to the version sent upstream
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 48114
2016-01-04 14:21:17 +00:00
John Crispin
9b675a2a33 ralink: fix USB compatible strings
switch to the upstream compatible strings for ehci and ohci support.

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

SVN-Revision: 48113
2016-01-04 14:21:11 +00:00
John Crispin
651e620de5 ralink: fixup devicetree files to work with new ethernet driver
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 47900
2015-12-17 09:25:57 +00:00
John Crispin
c550ad3d3a ramips: update dtsi files to support second spi device
Signed-off-by: Michael Lee <igvtee@gmail.com>

SVN-Revision: 47580
2015-11-22 11:49:13 +00:00
John Crispin
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
553fea9f19 ramips: fix indentation and other mistakes in .dts{, i} files
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
2015-08-17 05:57:18 +00:00
John Crispin
654bc380ec ralink: add 3.18 support
keep default as 3.14, mt7621 gic need to be ported to 3.18

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

SVN-Revision: 44349
2015-02-09 12:13:55 +00:00
Felix Fietkau
69ee1807ed ralink: add ethernet fe and esw reset control bit
Signed-off-by: michael lee <igvtee@gmail.com>

SVN-Revision: 44042
2015-01-18 20:16:44 +00:00
John Crispin
32d4348540 ralink: fix pcie reset
some old mt7620a uboots dont reset the pcie core properly. work around this
issue in the kernel driver.

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

SVN-Revision: 43292
2014-11-17 16:27:48 +00:00
John Crispin
c073bf6bdf ralink: few updates tot he sdhci probe code
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 43275
2014-11-15 14:35:32 +00:00
John Crispin
66463a5b5d ralink: update pcie driver to load ranges from dts
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 43249
2014-11-14 16:53:07 +00:00
Felix Fietkau
29f71d384f ramips: add missing size/address-cells to device tree include files
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43217
2014-11-08 14:15:44 +00:00
John Crispin
503a34ca50 ralink: fix the compat string for mt7620a pci
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 43211
2014-11-08 12:12:05 +00:00
John Crispin
c5954fc510 ralink: make pci driver handle mt7628
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 43198
2014-11-06 09:31:37 +00:00
John Crispin
b25b58a96a ralink: add pci bidge node to mt7620a dts file
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 43172
2014-11-03 20:20:46 +00:00
John Crispin
6fb04ff871 ramips: correct typo ubsphy -> usbphy
This appears to be a typo.

Signed-off-by: Russell Senior <russell@personaltelco.net>

SVN-Revision: 41859
2014-07-28 15:26:36 +00:00
John Crispin
2e8c6e4128 ramips: add wmac to mt7620a device tree
Signed-off-by: Roman Yeryomin <roman@advem.lv>
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 41445
2014-07-01 10:26:33 +00:00
John Crispin
55383946dc ralink: add gpio_uartf mux group
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 39610
2014-02-18 13:33:20 +00:00
John Crispin
93d8dc870e ramips: add gpio pin 72 in mt7620 chips to dtsi files
describes register set to control last gpio pin on mt7620 platfrom

Signed-off-by: Pavel Löbl <lobl.pavel@gmail.com>

SVN-Revision: 39162
2013-12-25 17:04:34 +00:00
John Crispin
a65c9e5b20 ralink: add mt7620a gdma info to dtsi
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 39017
2013-12-09 17:29:19 +00:00
John Crispin
e382d2c7e6 ralink: add support for the mt7530 eval board
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 38345
2013-10-08 21:10:15 +00:00
John Crispin
65bb48cf23 ralink: dts fixes
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 38265
2013-09-30 20:48:39 +00:00
John Crispin
8cd1c99707 ralink: add pinctrl driver
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 38026
2013-09-17 21:45:44 +00:00
John Crispin
632a3e3a79 ramips: various updates to the mt7620 dtsi file
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 37779
2013-08-14 18:15:26 +00:00
John Crispin
55fb6f3a05 ralink: update patches
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 37016
2013-06-23 15:50:49 +00:00