Age | Commit message (Collapse) | Author | Files | Lines |
|
1. add axi disable interface
2. adjust the interface order between clk and reset
Signed-off-by: shanlong.li <shanlong.li@starfivetech.com>
|
|
CR_3167_gt911_ts_515_changhuang.liang Revert "riscv: defconfig: Enable GT9xx"
See merge request sbc/linux!65
|
|
version JH7110_515_SDK_v4.3.0 for JH7110 EVB board
1. Fix hibernation issue: mmc
2. #3345 uboot: support mipi dsi display logo
3. #3145 linux: pci: Add PHY settings in pcie host driver.
4. #3349 linux: crypto: Remove AES key zeroization
5. #3477 spl_tool add LICENSE file
|
|
CR_3349: crypto: starfive - Remove AES key zeroization
See merge request sdk/linux!700
|
|
CR 3145 [515] drivers: pci: Add PHY settings in pcie host driver.
See merge request sdk/linux!703
|
|
Remove key zeroization after each request in AES module.
Signed-off-by: Jia Jie Ho <jiajie.ho@starfivetech.com>
|
|
The settings are about PHY PLL KVCO fine tuning form CTS testing.
Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
|
|
Use the common API to do the runtime PM.
Signed-off-by: William Qiu <william.qiu@starfivetech.com>
|
|
version JH7110_515_SDK_v4.2.0 for JH7110 EVB board
1. Fix hibernation issue: AQC107 PCIe NIC
2. Support linux driver module build for: PDM, TDM, I2S, Watchdog, QSPI
3. #3253 open source for spl_tool
4. #3211 fix gst-omx crashed upon calling OMX_UseEGLImage func
5. #3262 Fix hdmi mipi dual display crash dump issue
|
|
'jh7110-5.15.y-devel'
CR_3345:riscv:driver:drm:
See merge request sdk/linux!689
|
|
'jh7110-5.15.y-devel'
CR 3070 [515] Downstream commits from the latest version to fix the AQC107 NIC hibernation crash problem.
See merge request sdk/linux!687
|
|
'jh7110-5.15.y-devel'
CR_3262:riscv:linux:vout:mipi+hdmi
See merge request sdk/linux!683
|
|
'jh7110-5.15.y-devel'
CR_3317_qspi_compilation_into_ko_resume_exception
See merge request sdk/linux!686
|
|
fix the build warning
Signed-off-by:keith.zhao<keith.zhao@statfivetech.com>
|
|
after uboot displayed bitmap , the kernel dc proble call dc_isr will dump.
it is casued by NULL pointer used , add a conditional judgment to avoid this
Signed-off-by:keith.zhao<keith.zhao@statfivetech.com>
|
|
add reset before resume
Signed-off-by: ziv.xu <ziv.xu@starfive.com>
|
|
after mipi panel shows logo in uboot stage , star kernel will report dc_isr error message
so register the isr handle after dc_enable to avoid this
this is a workround , need do more fix on it next !!
Signed-off-by:keith.zhao<keith.zhao@statfivetech.com>
|
|
aq_nic_deinit() has been called while suspending, so we don't have to call
it again on resume.
Actually, call it again leads to another hang issue when resuming from
S3.
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992345] Call Trace:
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992346] <TASK>
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992348] aq_nic_deinit+0xb4/0xd0 [atlantic]
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992356] aq_pm_thaw+0x7f/0x100 [atlantic]
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992362] pci_pm_resume+0x5c/0x90
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992366] ? pci_pm_thaw+0x80/0x80
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992368] dpm_run_callback+0x4e/0x120
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992371] device_resume+0xad/0x200
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992373] async_resume+0x1e/0x40
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992374] async_run_entry_fn+0x33/0x120
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992377] process_one_work+0x220/0x3c0
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992380] worker_thread+0x4d/0x3f0
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992382] ? process_one_work+0x3c0/0x3c0
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992384] kthread+0x12a/0x150
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992386] ? set_kthread_struct+0x40/0x40
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992387] ret_from_fork+0x22/0x30
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992391] </TASK>
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992392] ---[ end trace 1ec8c79604ed5e0d ]---
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992394] PM: dpm_run_callback(): pci_pm_resume+0x0/0x90 returns -110
Jul 8 03:09:44 u-Precision-7865-Tower kernel: [ 5910.992397] atlantic 0000:02:00.0: PM: failed to resume async: error -110
Fixes: 1809c30b6e5a ("net: atlantic: always deep reset on pm op, fixing up my null deref regression")
Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
Link: https://lore.kernel.org/r/20220713111224.1535938-2-acelan.kao@canonical.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
|
Below commit claims that atlantic NIC requires to reset the device on pm
op, and had set the deep to true for all suspend/resume functions.
commit 1809c30b6e5a ("net: atlantic: always deep reset on pm op, fixing up my null deref regression")
So, we could remove deep parameter on suspend/resume functions without
any functional change.
Fixes: 1809c30b6e5a ("net: atlantic: always deep reset on pm op, fixing up my null deref regression")
Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
Link: https://lore.kernel.org/r/20220713111224.1535938-1-acelan.kao@canonical.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
|
The impact of this regression is the same for resume that I saw on
thaw: the kernel hangs and nothing except SysRq rebooting can be done.
Fixes regression in commit cbe6c3a8f8f4 ("net: atlantic: invert deep
par in pm functions, preventing null derefs"), where I disabled deep
pm resets in suspend and resume, trying to make sense of the
atl_resume_common() deep parameter in the first place.
It turns out, that atlantic always has to deep reset on pm
operations. Even though I expected that and tested resume, I screwed
up by kexec-rebooting into an unpatched kernel, thus missing the
breakage.
This fixup obsoletes the deep parameter of atl_resume_common, but I
leave the cleanup for the maintainers to post to mainline.
Suspend and hibernation were successfully tested by the reporters.
Fixes: cbe6c3a8f8f4 ("net: atlantic: invert deep par in pm functions, preventing null derefs")
Link: https://lore.kernel.org/regressions/9-Ehc_xXSwdXcvZqKD5aSqsqeNj5Izco4MYEwnx5cySXVEc9-x_WC4C3kAoCqNTi-H38frroUK17iobNVnkLtW36V6VWGSQEOHXhmVMm5iQ=@protonmail.com/
Reported-by: Jordan Leppert <jordanleppert@protonmail.com>
Reported-by: Holger Hoffstaette <holger@applied-asynchrony.com>
Tested-by: Jordan Leppert <jordanleppert@protonmail.com>
Tested-by: Holger Hoffstaette <holger@applied-asynchrony.com>
CC: <stable@vger.kernel.org> # 5.10+
Signed-off-by: Manuel Ullmann <labre@posteo.de>
Link: https://lore.kernel.org/r/87bkw8dfmp.fsf@posteo.de
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
|
This will reset deeply on freeze and thaw instead of suspend and
resume and prevent null pointer dereferences of the uninitialized ring
0 buffer while thawing.
The impact is an indefinitely hanging kernel. You can't switch
consoles after this and the only possible user interaction is SysRq.
BUG: kernel NULL pointer dereference
RIP: 0010:aq_ring_rx_fill+0xcf/0x210 [atlantic]
aq_vec_init+0x85/0xe0 [atlantic]
aq_nic_init+0xf7/0x1d0 [atlantic]
atl_resume_common+0x4f/0x100 [atlantic]
pci_pm_thaw+0x42/0xa0
resolves in aq_ring.o to
```
0000000000000ae0 <aq_ring_rx_fill>:
{
/* ... */
baf: 48 8b 43 08 mov 0x8(%rbx),%rax
buff->flags = 0U; /* buff is NULL */
```
The bug has been present since the introduction of the new pm code in
8aaa112a57c1 ("net: atlantic: refactoring pm logic") and was hidden
until 8ce84271697a ("net: atlantic: changes for multi-TC support"),
which refactored the aq_vec_{free,alloc} functions into
aq_vec_{,ring}_{free,alloc}, but is technically not wrong. The
original functions just always reinitialized the buffers on S3/S4. If
the interface is down before freezing, the bug does not occur. It does
not matter, whether the initrd contains and loads the module before
thawing.
So the fix is to invert the boolean parameter deep in all pm function
calls, which was clearly intended to be set like that.
First report was on Github [1], which you have to guess from the
resume logs in the posted dmesg snippet. Recently I posted one on
Bugzilla [2], since I did not have an AQC device so far.
#regzbot introduced: 8ce84271697a
#regzbot from: koo5 <kolman.jindrich@gmail.com>
#regzbot monitor: https://github.com/Aquantia/AQtion/issues/32
Fixes: 8aaa112a57c1 ("net: atlantic: refactoring pm logic")
Link: https://github.com/Aquantia/AQtion/issues/32 [1]
Link: https://bugzilla.kernel.org/show_bug.cgi?id=215798 [2]
Cc: stable@vger.kernel.org
Reported-by: koo5 <kolman.jindrich@gmail.com>
Signed-off-by: Manuel Ullmann <labre@posteo.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
add reset before resume
Signed-off-by: ziv.xu <ziv.xu@starfive.com>
|
|
Update irq fetch mode.
Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
|
|
This reverts commit d4bbbc4e18e0584599a170e4b01bff160b58e390.
|
|
support hdmi+mipi dual display for debain
fix the dump issue when dual display
Signed-off-by: keith <keith.zhao@starfivetech.com>
|
|
version JH7110_515_SDK_v4.1.0 for JH7110 EVB board
1. Fix hibernation issue: usb cdns3, hdmi vout, isp
2. Support linux driver module build for: imx219, pwmdac, spi
3. #2339 fix usb read performance issue
4. #1432 support uboot reset on evb jh7110b or vf2 board
5. #3238 lack a memory reservation for OpenSBI
6. #3151 fix tdm input/ouput error
|
|
CR_2975_riscv: linux: vout: fix hdmi hibernation resume failure cause by pmic
See merge request sdk/linux!673
|
|
CR_3158: v4l2_driver: isp: Save & resore context regs during stream on/off.
See merge request sdk/linux!678
|
|
CR_3137 usb: cdns3: add hibernation pm notifier to set roothub wakeup
See merge request sdk/linux!679
|
|
'jh7110-5.15.y-devel'
CR_3170: spi-pl022-starfive:Enable spi to be compiled into modules
See merge request sdk/linux!677
|
|
CR_3157_imx219_515_changhuang.liang media: starfive: Modify support imx219 compile to module
See merge request sdk/linux!675
|
|
In hibernation resume case. usb devices maybe not emulated,
roothub is suspended, In this case, usb devices will be resume
fail. Set roothub active while hibernation resume.
Signed-off-by: minda.chen <minda.chen@starfivetech.com>
|
|
Besides, add some log in dump reg function to distinguish different groups.
Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
|
|
fix hdmi hibernation resume failure cause by pmic
Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
|
|
Generate an usb low memory pool for usb 3.0 host
read/write transfer, default size is 8M.
Signed-off-by: minda.chen <minda.chen@starfivetech.com>
|
|
CR_3031: net:wireless:eswin:disable p2p function
See merge request sbc/linux!61
|
|
version JH7110_515_SDK_v4.0.1 for JH7110 EVB board
1. Fix hibernation issues: clk tree, gpio, gpu, tempsensor
2. Add gpio reset feature in opensbi
3. Fix usb device issue for debian
|
|
Enable spi to be compiled into modules
Signed-off-by: ziv.xu <ziv.xu@starfive.com>
|
|
CR 3149 TempSensor hal.feng
See merge request sdk/linux!676
|
|
[runtime_pm off]
After Linux starts, it will enable clk and put tempsensor in standby state.
When 'cat /sys/class/hwmon/hwmon0/temp1_input' is executed, will switch to
the run state, and return the value of the sensor after the interrupt is
generated.
$ cat /sys/kernel/debug/clk/clk_summary | grep "temp_sensor"
enable prepare protect duty hardware
clock count count count rate accuracy phase cycle enable
-------------------------------------------------------------------------------------------
u0_temp_sensor_clk_temp 1 1 0 1000000 0 0 50000 Y
u0_temp_sensor_clk_apb0 1 1 0 49500000 0 0 50000 Y
$ cat /sys/class/hwmon/hwmon0/temp1_input
46135
$ cat /sys/class/hwmon/hwmon0/temp1_enable
1
You can 'echo 0 >/sys/class/hwmon/hwmon0/temp1_enable' to turn off the
tempsensor and clk.
$ echo 0 > /sys/class/hwmon/hwmon0/temp1_enable
$ cat /sys/kernel/debug/clk/clk_summary | grep "temp_sensor"
enable prepare protect duty hardware
clock count count count rate accuracy phase cycle enable
-------------------------------------------------------------------------------------------
u0_temp_sensor_clk_temp 0 0 0 1000000 0 0 50000 N
u0_temp_sensor_clk_apb0 0 0 0 49500000 0 0 50000 N
$ cat /sys/class/hwmon/hwmon0/temp1_enable
0
$ cat /sys/class/hwmon/hwmon0/temp1_input
cat: read error: No data available
[runtime_pm on]
When runtime_pm is turned on, sfctemp will automatically enter
the suspend state and close clk after the system is started.
$ cat /sys/kernel/debug/clk/clk_summary | grep "temp_sensor"
enable prepare protect duty hardware
clock count count count rate accuracy phase cycle enable
-------------------------------------------------------------------------------------------
u0_temp_sensor_clk_temp 0 0 0 1000000 0 0 50000 N
u0_temp_sensor_clk_apb0 0 0 0 49500000 0 0 50000 N
when 'cat /sys/class/hwmon/hwmon0/temp1_input', it will call
starfive_temp_resume, enable clk and put sfctemp into power on state.
$ cat /sys/class/hwmon/hwmon0/temp1_input
46235
After the interrupt is generated and the sensor value is obtained, it
will enter the suspend state again. so, hardware-enable-stats is always 'N'.
Of course, in this mode (runtime_pm on), it also supports the opening
and closing of functions (in fact, clk is not directly operated, and the
opening and closing of clk are controlled by runtime_pm)
$ cat /sys/class/hwmon/hwmon0/temp1_input
46235
$ cat /sys/class/hwmon/hwmon0/temp1_enable
1
$ echo 0 > /sys/class/hwmon/hwmon0/temp1_enable
$ cat /sys/class/hwmon/hwmon0/temp1_enable
0
$ cat /sys/class/hwmon/hwmon0/temp1_input
cat: read error: No data available
Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
|
|
CR_2956: gpu:driver: fix up hibernation resume problem
See merge request sdk/linux!672
|
|
To fix dynamic naming issue, disable CONFIG_ECRNX_P2P for wifi ECR6600U
Signed-off-by: MichaelZhuxx <michael.zhu@starfivetech.com>
|
|
CR 3027 pinctrl hal.feng
See merge request sdk/linux!671
|
|
Modify support imx219 compile to module.
Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
|
|
fix up hibernation resume problem
Signed-off-by: shanlong.li <shanlong.li@starfivetech.com>
|
|
when resuming
Restore the other registers besides irq registers when resuming.
Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
|
Fixed UART3-5 error after hibernation by adjusting register shift.
Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
|
|
version JH7110_515_SDK_v4.0.0-rc2 for JH7110 EVB board
1. Fix hibernation issue: spdif, pwmdac, tdm, pdm, wave511, wave420l, jpu, can, isp, clk tree, gmac, gpio
2. Porting the upstream opensbi and add pm patch for hibernation
3. #3120 omx fix low probability of segment fault when decoding finish
|
|
CR_2862_gt9xx_ts_515_changhuang.liang input: touchscreen: Add gt9xx driver support
See merge request sbc/linux!56
|
|
CR 3027 pinctrl hal.feng
See merge request sdk/linux!669
|