Commit Graph

14 Commits

Author SHA1 Message Date
Sven Wegener
2419546cee generic: move ledbar driver from mediatek target
This moves the ledbar driver to generic, to be also used by the ramips target.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit 53fc987b25)
2022-09-18 15:39:41 +01:00
Sven Wegener
420a86436f mediatek: add led count
The LEDs connected to the MCU are so-called smart LEDs and their signal is
daisy-chained. Because of this, the MCU needs to be told how many LEDs are
connected. It also means the LEDs could be individually controlled, if the MCU
has a command for this.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit 76198e8f09)
2022-09-18 15:39:41 +01:00
Sven Wegener
40610c5322 mediatek: add initialization after reset
During GPIO initialization the pin state flips and triggers a reset of
the ledbar MCU. It needs to be moved through an initialization sequence
before working correctly.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit 013a956f08)
2022-09-18 15:39:41 +01:00
Sven Wegener
26cd0c1ee9 mediatek: add support for reset gpio
Some versions of the ledbar MCU have a reset pin. It needs to be
correctly initialized or we might keep the MCU in reset state.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit 84e4bbf5f0)
2022-09-18 15:39:41 +01:00
Sven Wegener
b5665a0045 mediatek: support reading more than one byte of response
There are commands that return more than one byte of response.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit 7c852e7df5)
2022-09-18 15:39:41 +01:00
Sven Wegener
cd0283788f mediatek: cast literal value to char
Or the comparison against a signed char is always true, because the
literal 0xaa is treated as an unsigned int, to which the signed char is
casted during comparison. 0xaa is above the positive values of a signed
char and negative signed char values result in values larger than 0xaa
when casted to unsigned int.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit e9a22ce253)
2022-09-18 15:39:41 +01:00
Sven Wegener
a2d251573b mediatek: correctly log i2c response
The read response is in the i2c_response variable. Also use %hhx format,
because we're dealing with a single char.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit c4f9f9b44c)
2022-09-18 15:39:41 +01:00
Sven Wegener
7366ee86ef mediatek: remove gpiod_direction_output()
It's already set to output with GPIOD_OUT_LOW.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit a188356484)
2022-09-18 15:39:41 +01:00
Sven Wegener
ba6c780acb mediatek: do not use gpiod_set_raw_value()
The polarity of the signal is set in the device dts.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
(cherry picked from commit 56c2d15587)
2022-09-18 15:39:41 +01:00
Richard Huynh
4b51fa0d80 mediatek: Add GD5F1GQ5xExxG to mtk-snand
Some units of the Xiaomi Redmi Router AX6S/Xiaomi Router AX3200 contain this part.

Signed-off-by: Richard Huynh <voxlympha@gmail.com>
(cherry picked from commit 4177de10df)
2022-03-21 13:11:56 +00:00
Chuanhong Guo
388127abd1 mediatek: mtk-snand: check request size against chip info
mtd->size will be overrided by BMT which makes all mtd requests made by
bmt fail in request size checking.
this commit changes the driver to check against actual chip size in chip
info as a workaround.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2021-08-27 10:26:25 +08:00
Weijie Gao
050621aa01 mediatek: add a new spi-nand driver for kernel 5.10
This patch adds a new spi-nand driver which implements the SNFI of mt7622
and mt7629.

Unlike the existing snfi driver which makes use of the spi-mem framework
and the spi-nand framework with modified ecc support, this driver is
implemented directly on the mtd framework with other components untouched,
and provides better performance, and behaves exactly the same as the nand
framework.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2021-08-27 10:26:24 +08:00
David Bauer
fd5ced246a mediatek: fix Ubiquiti UniFi 6 LR LED
When adding Kernel 5.10 support, the kernel configuration did not
include the LED driver required for the UniFi 6 LR. Also the actual
driver source went missing.

Fixes commit c46ccb69d1 ("mediatek: mt7622: add Linux 5.10 support")

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-04-16 20:24:02 +02:00
Felix Fietkau
c46ccb69d1 mediatek: mt7622: add Linux 5.10 support
Switch mt7622 subtarget to Linux 5.10, it has been tested by many of us
on several devices for a couple of weeks already.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2021-02-28 00:45:56 +00:00