summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)AuthorFilesLines
2023-03-03Merge branch 'CR_3746_evb_515_rgb_1080_60_porting_shengyang.chen' into ↵andy.hu2-6/+31
'jh7110-5.15.y-devel' CR_3746_evb_515_riscv:linux:vout: rgb support 1080P@60fps See merge request sdk/linux!719
2023-03-03Merge branch 'CR_3526_qspi_use_reset_framework_5.15_ziv.xu' into ↵andy.hu1-30/+11
'jh7110-5.15.y-devel' CR_3526_qspi_use_reset_framework_5.15_ziv.xu See merge request sdk/linux!712
2023-03-03Merge branch 'CR_3546_v4l2_compliance_515_changhuang.liang' into ↵andy.hu1-240/+0
'jh7110-5.15.y-devel' CR_3546_v4l2_compliance_515_changhuang.liang media: starfive: Delete operate sensor ctrl in video node See merge request sdk/linux!716
2023-03-03cpufreq: Introduce the cpufreq-dt driver for JH7110Mason Huo4-231/+1
The original starfive-cpufreq is deprecated. Use the cpufreq-dt driver for JH7110, as this is a generic cpu scaling driver. Signed-off-by: Mason Huo <mason.huo@starfivetech.com>
2023-03-02riscv:linux:vout: rgb support 1080P@60fpsshengyang.chen2-6/+31
rgb support 1080P@60fps porting from: branch: CR_2896_evb_515_MIPI_RGB_dual_display_keith.zhao commit id: 51504aed4280caab91258e3faa789a9b66984bfc1a3 Signed-off-by: keith <keith.zhao@starfivetech.com> Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
2023-02-28spi-cadence-quadspi:use reset framwork to reset qspiziv.xu1-30/+11
use reset framwork to reset qspi Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2023-02-24Merge branch 'CR_3634_cryp_jiajie.ho' into 'jh7110-5.15.y-devel'andy.hu3-1/+6
CR_3634: crypto: starfive - fix recursive mutex_lock See merge request sdk/linux!710
2023-02-24Merge branch 'CR_3535_PCIe_515_Kevin.xie' into 'jh7110-5.15.y-devel'andy.hu1-6/+6
CR 3535 [515] drivers: pci: Fix crash in rt-linux because of an uninitialized lock. See merge request sdk/linux!704
2023-02-24media: starfive: Delete operate sensor ctrl in video nodeChanghuang Liang1-240/+0
Delete operate sensor ctrl in video node. Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
2023-02-24crypto: starfive - fix recursive mutex_lockTan En De3-1/+6
In jh7110_rsa_domain_transfer(), there is a path that may lead to recursive mutex_lock when calling jh7110_pka_wait_done(). Replace it with completion variable, which is more suitable for signaling completion instead of using mutex, not to mention using mutex_*() in interrupt context is bad. Signed-off-by: Tan En De <ende.tan@starfivetech.com> Signed-off-by: Jia Jie Ho <jiajie.ho@starfivetech.com>
2023-02-21drivers: pci: Fix crash in rt-linux because of an uninitialized lock.Kevin.xie1-6/+6
Adjust the order of invocations in probe to avoid from the crash. Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2023-02-20driver:GPU: adjust interface sequenceshanlong.li1-3/+4
1. add axi disable interface 2. adjust the interface order between clk and reset Signed-off-by: shanlong.li <shanlong.li@starfivetech.com>
2023-02-20Merge branch 'CR_3167_gt911_ts_515_changhuang.liang' into 'vf2-515-devel'VF2_v2.10.4andy.hu4-1976/+2
CR_3167_gt911_ts_515_changhuang.liang Revert "riscv: defconfig: Enable GT9xx" See merge request sbc/linux!65
2023-02-17Merge tag 'JH7110_515_SDK_v4.3.0' into vf2-515-develAndy Hu3-44/+38
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
2023-02-17Merge branch 'CR_3349_CRYP_jiajie.ho' into 'jh7110-5.15.y-devel'andy.hu1-2/+0
CR_3349: crypto: starfive - Remove AES key zeroization See merge request sdk/linux!700
2023-02-17Merge branch 'CR_3145_PCIe_PHY_Kevin.xie' into 'jh7110-5.15.y-devel'andy.hu1-8/+36
CR 3145 [515] drivers: pci: Add PHY settings in pcie host driver. See merge request sdk/linux!703
2023-02-16CR_3349: crypto: starfive - Remove AES key zeroizationJia Jie Ho1-2/+0
Remove key zeroization after each request in AES module. Signed-off-by: Jia Jie Ho <jiajie.ho@starfivetech.com>
2023-02-16drivers: pci: Add PHY settings in pcie host driver.Kevin.xie1-8/+36
The settings are about PHY PLL KVCO fine tuning form CTS testing. Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2023-02-13hibernation: mmc: change the runtime PM APIWilliam Qiu1-34/+2
Use the common API to do the runtime PM. Signed-off-by: William Qiu <william.qiu@starfivetech.com>
2023-02-12Merge tag 'JH7110_515_SDK_v4.2.0' into vf2-515-develAndy Hu6-25/+29
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
2023-02-11Merge branch 'CR_3345_evb_515_DRM_mipi_for_uboot_keith.zhao' into ↵andy.hu2-5/+6
'jh7110-5.15.y-devel' CR_3345:riscv:driver:drm: See merge request sdk/linux!689
2023-02-10Merge branch 'CR_3070_PCIe_Aqtion_Hibernation_515_Kevin.xie' into ↵andy.hu1-15/+8
'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
2023-02-10Merge branch 'CR_3262_evb_515_VOUT_mipi_hdmi_dual_display_keith.zhao' into ↵andy.hu1-1/+1
'jh7110-5.15.y-devel' CR_3262:riscv:linux:vout:mipi+hdmi See merge request sdk/linux!683
2023-02-10Merge branch 'CR_3317_qspi_compilation_into_ko_resume_exception' into ↵andy.hu1-0/+7
'jh7110-5.15.y-devel' CR_3317_qspi_compilation_into_ko_resume_exception See merge request sdk/linux!686
2023-02-10riscv:driver:drm:dckeith.zhao1-22/+17
fix the build warning Signed-off-by:keith.zhao<keith.zhao@statfivetech.com>
2023-02-10riscv:driver:drm:dckeith.zhao2-7/+9
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>
2023-02-09starfive-wdt: add reset before resumeziv.xu1-4/+7
add reset before resume Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2023-02-09riscv:driver:drm:keith.zhao2-20/+24
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>
2023-02-09net: atlantic: remove aq_nic_deinit() when resumeChia-Lin Kao (AceLan)1-3/+0
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>
2023-02-09net: atlantic: remove deep parameter on suspend/resume functionsChia-Lin Kao (AceLan)1-14/+10
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>
2023-02-09net: atlantic: always deep reset on pm op, fixing up my null deref regressionManuel Ullmann1-2/+2
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>
2023-02-09net: atlantic: invert deep par in pm functions, preventing null derefsManuel Ullmann1-4/+4
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>
2023-02-09spi-cadence-quadspi: add reset before resumeziv.xu1-0/+7
add reset before resume Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2023-02-06input: touchscreen: goodix: Update irq fetch modeChanghuang Liang1-2/+2
Update irq fetch mode. Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
2023-02-06Revert "input: touchscreen: Add gt9xx driver support"Changhuang Liang3-1974/+0
This reverts commit d4bbbc4e18e0584599a170e4b01bff160b58e390.
2023-02-06riscv:linux:vout:mipi+hdmikeith.zhao1-1/+1
support hdmi+mipi dual display for debain fix the dump issue when dual display Signed-off-by: keith <keith.zhao@starfivetech.com>
2023-02-05Merge tag 'JH7110_515_SDK_v4.1.0' into vf2-515-develAndy Hu14-22/+358
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
2023-02-03Merge branch 'CR_2975_5.15_hdmi_shengyang.chen' into 'jh7110-5.15.y-devel'andy.hu1-1/+24
CR_2975_riscv: linux: vout: fix hdmi hibernation resume failure cause by pmic See merge request sdk/linux!673
2023-02-03Merge branch 'CR_3158_ISP_515_Kevin.xie' into 'jh7110-5.15.y-devel'andy.hu2-13/+78
CR_3158: v4l2_driver: isp: Save & resore context regs during stream on/off. See merge request sdk/linux!678
2023-02-03Merge branch 'CR_3137_usb_hiber_notify_minda' into 'jh7110-5.15.y-devel'andy.hu3-1/+103
CR_3137 usb: cdns3: add hibernation pm notifier to set roothub wakeup See merge request sdk/linux!679
2023-02-03Merge branch 'CR_3170_spi_compiled_as_module_5.15_ziv.xu' into ↵andy.hu1-3/+8
'jh7110-5.15.y-devel' CR_3170: spi-pl022-starfive:Enable spi to be compiled into modules See merge request sdk/linux!677
2023-02-03Merge branch 'CR_3157_imx219_515_changhuang.liang' into 'jh7110-5.15.y-devel'andy.hu1-1/+1
CR_3157_imx219_515_changhuang.liang media: starfive: Modify support imx219 compile to module See merge request sdk/linux!675
2023-02-01usb: cdns3: add hibernation pm notifier to set roothub wakeupminda.chen3-1/+103
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>
2023-01-31v4l2_driver: isp: Save & resore context regs during stream on/off.Kevin.xie2-13/+78
Besides, add some log in dump reg function to distinguish different groups. Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2023-01-30riscv: linux: vout: fix hdmi hibernation resume failure cause by pmicshengyang.chen1-1/+24
fix hdmi hibernation resume failure cause by pmic Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
2023-01-29usb:xhci:To improve performance,usb using lowmem for bulk xfer.minda.chen6-3/+144
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>
2023-01-19Merge branch 'CR_3031_disable_wifi_p2p_michael.zhu' into 'vf2-515-devel'andy.hu1-1/+1
CR_3031: net:wireless:eswin:disable p2p function See merge request sbc/linux!61
2023-01-19Merge tag 'JH7110_515_SDK_v4.0.1' into vf2-515-develAndy Hu7-66/+69
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
2023-01-18spi-pl022-starfive:Enable spi to be compiled into modulesziv.xu1-3/+8
Enable spi to be compiled into modules Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2023-01-18Merge branch 'CR_3149_TempSensor_hal.feng' into 'jh7110-5.15.y-devel'andy.hu1-43/+43
CR 3149 TempSensor hal.feng See merge request sdk/linux!676