The PWM on the RK3568 with RK628 board has a hardware inverting
circuit to improve drive strength.
Therefore, software needs to change the PWM polarity to get
the desired PWM output.
Change-Id: I3a87d6aa16c4e09780a566117e4864d8d235038e
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Support hdmi output specific resolution and color format
regardless of whether hdmi is connected.
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I3f18aeb04427846e06b6a4397a4c6df77bbbcab2
Support hdmi output specific resolution and color format
regardless of whether hdmi is connected.
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I228a74d128aa818166f589798897729473d97610
This patch assign the LRCK pin for TDM_ONE_FRAME on Slave mode.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I2ef950170d6646f3d04115662099918942c3cf9d
This patch assign the LRCK pin for TDM_ONE_FRAME on Slave mode.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I0f0e1a1c778e1e42a5bb5471148358815f6d7b2a
This patch assign the LRCK pin for TDM_ONE_FRAME on Slave mode.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I28bd554d64f9c63073d2c7f67b9e101c63266c8f
This patch fix multi-channels order for TDM_ONE_FRAME on SLAVE
mode.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ib6543cf0740516d5df1570245abf07fcce9082c3
Situation for 'i2s-lrck':
Should use flag GPIOD_ASIS not to reclaim LRCK pin as GPIO function,
because we use the same PIN and just read EXT_PORT value which show
the pin status.
Situation for 'tdm-fsync':
A. when the pin is a generic gpio as the ref signal pin which is drived from
external. should use flag GPIOD_IN to reclaim as GPIO_IN function.
B. when the pin is the same pin from the 'clk-src' on the same SoC, we can
use the 'clk-src' fsync out signal as the 'tdm-fsync' to query status.
in this case, should use flag GPIOD_ASIS not to reclaim it as GPIO.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I529d982a7e49cb90c02b7670a58759607f4e4f32
This patch fix resources from of_iomap() not released.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I46a7f4996bc751ade34071727a350137a313b446
There are clk sync issue on TRCM mode for RK3308/RK1808/PX30,
and the previous soluation is to make TX/RX reset at the same
time to fix that. Unfortunately, it fails on PX30-I2S0, because
the reset-TX and reset-RX bits can't be addressed at the same time.
Now, we use another way to fix it:
reset_control_assert(i2s_tdm->tx_reset);
reset_control_assert(i2s_tdm->rx_reset);
|
gate the i2s src clk
|
reset_control_deassert(i2s_tdm->tx_reset);
reset_control_deassert(i2s_tdm->rx_reset);
|
ungate the i2s src clk
as shown above, use the pair gate/ungate src clk to make the
TX/RX reset at the same time.
Change-Id: Ib320ad13350516100eb11c7717e1bd9005abaf39
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
TRCM on Master mode require TX/RX enabled at the same time,
or need the one which provide clk enabled at first. In this
situation, one direction's FIFO maybe XRUN which may break
the channels order.
This patch add dmaengine for this mode to handle this situation.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I831aead0371228661620b54188048e4f3daa717e
TRCM require TX/RX enabled at the same time, or need the one
which provide clk enabled at first. In this situation, one
direction's FIFO maybe XRUN which may break the channels order.
This patch add dmaengine for this mode to handle this situation.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I30b4ec134b06516d80de4c1d0ccaf916513294ab
Check hwlock user id and object to unlocking someone else's lock
when invoking unlock() API.
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
Change-Id: I46c256fd703fa56ce3d175ff2d721f53d3615ec0
With this commit, we can set hwlock user id in DT with
"rockchip,hwlock-user-id" property, if it is not set, the driver
use default value 0x01 instead.
Change-Id: Ib7ecc3eaf23ba79d85dc82182a9db0760c6d830c
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
Set hwlock user id with the "rockchip,hwlock-user-id" property.
Change-Id: I46327ff4146e9c0999def48d67a3538462b82bfb
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>