The new Rockchip socs have optional half divider,
so we use "branch_half_divider" + "COMPOSITE_NOMUX_HALFDIV \
DIV_HALF \ COMPOSITE_HALFDIV \ CMPOSITE_NOGATE_HALFDIV"
to hook that special divider clock-type into our clock-tree.
Change-Id: I79e3f0e8265ccb6a9839cd83a7a3ee0ca825a020
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Indeed, "2EE" is hardcoded, it's not a good way.
But I could not find a way to get the number of EE(s) at runtime right now.
Change-Id: I15afe580d194c0d8354953fe877ac1d2882826c5
Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
We need to close ADC or DAC mclk if they are not working,
it may reduce a bit of power consumption for runtime.
And, power off and close pclk_acodec during suspend. But
the acodec may be needed by VAD during suspend, we can
use the property 'rockchip,no-deep-low-power' to keep
codec during suspend.
The following is a comparison of power consumption before
and after the modification on RK3308 EVB v10:
[default] VCC_1V8_CODEC(V*mA=mW) VCC_3V3_CODEC(V*mA=mW)
idle 1.794*0.9=1.614 3.354*2.8=9.3912 // the ADC and DAC mclk are opened
playback 2ch 1.793*7.9=14.1647 3.354*2.8=9.3912 // the ADC and DAC mclk are opened
capture 8ch 1.789*27.8=49.7342 3.324*2.8=9.3072 // the ADC and DAC mclk are opened
suspend 1.8*0.7=1.26 3.356*2.8=9.3968 // the ADC and DAC mclk are opened
[modified] VCC_1V8_CODEC(V*mA=mW) VCC_3V3_CODEC(V*mA=mW)
idle 1.794*0.8=1.4352 3.354*2.8=9.3912 // just close ADC and DAC + close ADC / DAC mclk
playback 2ch 1.793*7.8=13.9854 3.354*2.8=9.3912 // open DAC mclk, close ADC mclk
capture 8ch 1.789*27.7=49.5553 3.323*2.8=9.3044 // open ADC mclk, close DAC mclk
suspend 1.799*1=1.799 3.355*0.3=1.0065 // close 2 micbiases, close mclk tx/rx and pclk_acodec
It seems that the light low power (close ADC and DAC mclk) can't
bring us much help to reduce power (only ~1mA@VCC_1V8_CODEC),
but the deep lower power can help us to reduce ~8mW@VCC_3V3_CODEC
during suspend. However, it's that the power is increased
~0.5mW@VCC_1V8_CODEC in deep low power, it needs to EE's to
help us to check this.
Change-Id: I7982b4e20bcb894e1895f772816b2b188bcc314d
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
rk3308 has a new nandc, driver need modify to support.
Change-Id: I1b30f5ac106759873cd0a14b6340b49232f5106c
Signed-off-by: Yifeng Zhao <zyf@rock-chips.com>
This adds the necessary data for handling efuse on the rk3308.
Change-Id: I0c986e632f8dcc27ac38a887df25241db4b9fa19
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
It would be more stable to reset phy before use user interface to
access otp.
Change-Id: Icd5660db15f6da7bad0ef8d01970f88aeca369a2
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Add two defconfig for rk3308 on ARM.
One for release and one for debug.
Change-Id: I4492f7e28d7e85b1ee139b15371127c9f17053d3
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
If XferNotReady comes before usb_ep_queue() we will
set our PENDING request flag and wait for a
request. However, originally, we were assuming
usb_ep_queue() would always happen before our first
XferNotReady and that causes a corner case where we
could try to issue ENDTRANSFER command before
STARTTRANSFER.
Let's fix that by tracking endpoints which have been
started.
Change-Id: I8432a70fff0da1b4bc1ea7d86e13d491e89a05bb
Reported-by: Janusz Dziedzic <januszx.dziedzic@intel.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
(cherry picked from commit 6cb2e4e3de)
The cmd argument we pass to
dwc3_send_gadget_ep_cmd() could contain extra
arguments embedded. When checking for StartTransfer
command, we need to make sure to match only lower 4
bits which contain the actual command and ignore the
rest.
Change-Id: I08056bf689f8a4ea1bcec242ffab296407d41bc8
Reported-by: Janusz Dziedzic <januszx.dziedzic@intel.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
(cherry picked from commit 5999914f22)
Serial Flash controller is used to control the data
transfer between this SoC and a serial nor or nand
flash device.
Change-Id: Ibe7c8c4a11410287c34c1a7dc5b232b330ee6751
Signed-off-by: Randy Li <randy.li@rock-chips.com>
1.Modify the incompatibility of FTL in kernel 4.4;
2.Add arm v7 sftl lib and arm v8 sftl lib
3.Unified naming format and variable with code in u-boot
Change-Id: I43ec418bb278fc3590fcb73d50ae6f6c9281ecfa
Signed-off-by: Dingqiang Lin <jon.lin@rock-chips.com>
This patch limit the channel min/max according channel mapping.
Change-Id: Ia66c276e41d1c6b6f8c78c1c8db3c9087b8c9ca8
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
If the CONFIG_USB_CONFIGFS is not define, the 'audio_source_bind_config'
may be unused. Corrcet warning of no previous prototype for
'audio_source_bind_config' by adding judgment of CONFIG_USB_CONFIGFS
macro definition.
Change-Id: I174ae996c1d53e78b76f72cf463bc1efb189675b
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
The sending process may still work if disconnect from
PC, for the sending function is called in the complete
call back function. So set alt to 0 when disconnect or
reset, and stop follow-up sending in complete function
if alt is 0.
Change-Id: I073f122fe2ce2faf8cf6fb036fb983f9f3325f34
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
This patch add support of 2 channel of uac, set min
channel number and max channel number to 2.
Change-Id: Ia3b45d3329ba6819339079b31ff42398464942b5
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
Add sample rate to attribute of uevent when receive the command
of set interface.
Change-Id: I9cea17ebe57441209a99dec0b1dc279e274accc3
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
Accordding to the "Universal Serial Bus Device Class Definition
for Audio Devices", there are some error in the f_audio_source
driver. The audio source can't be recognize by the Windows PC
if control unit is not support. In order to support Windows PC,
this patch fix error in f_audio_source driver and add support of
control unit.
Change-Id: Ie508141f032adecfbe2e951ad36d9b8c271b28ba
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
The sample rate is force to 44100 in current code. This
code add numbers of sample rate up to 15 and support
set or get by PC.
Change-Id: I543d84f3081f82a4c96071c2b2442d37a9a835fb
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
Add uevent of setting interface to notify the application.
In some cases that the application want to get the change event
and state of alt immediately when to select the next operation,
but current code doesn't have the interface for it. So this patch
sent a uevent when setting interface and report the state of alt
throw attribute of uevent.
Change-Id: I47084f99bc046dede86d6b5777677f3799056c03
Signed-off-by: Meng Dongyang <daniel.meng@rock-chips.com>
The midgard for linux is used for mali r9 library, which is not
used and update anymore.
Change-Id: I446c9b223b5235b40eb28cd8001d318578b16ba2
Signed-off-by: Randy Li <randy.li@rock-chips.com>