platform/kernel/linux-starfive.git
11 months agotools perf: Fix compilation error with new binutils 04/292904/1
Andres Freund [Mon, 1 Aug 2022 01:38:30 +0000 (18:38 -0700)]
tools perf: Fix compilation error with new binutils

commit 83aa0120487e8bc3f231e72c460add783f71f17c upstream.

binutils changed the signature of init_disassemble_info(), which now causes
compilation failures for tools/perf/util/annotate.c, e.g. on debian
unstable.

Relevant binutils commit:

  https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=60a3da00bd5407f07

Wire up the feature test and switch to init_disassemble_info_compat(),
which were introduced in prior commits, fixing the compilation failure.

I verified that perf can still disassemble bpf programs by using bpftrace
under load, recording a perf trace, and then annotating the bpf "function"
with and without the changes. With old binutils there's no change in output
before/after this patch. When comparing the output from old binutils (2.35)
to new bintuils with the patch (upstream snapshot) there are a few output
differences, but they are unrelated to this patch. An example hunk is:

       1.15 :   55:mov    %rbp,%rdx
       0.00 :   58:add    $0xfffffffffffffff8,%rdx
       0.00 :   5c:xor    %ecx,%ecx
  -    1.03 :   5e:callq  0xffffffffe12aca3c
  +    1.03 :   5e:call   0xffffffffe12aca3c
       0.00 :   63:xor    %eax,%eax
  -    2.18 :   65:leaveq
  -    2.82 :   66:retq
  +    2.18 :   65:leave
  +    2.82 :   66:ret

Signed-off-by: Andres Freund <andres@anarazel.de>
Acked-by: Quentin Monnet <quentin@isovalent.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: Ben Hutchings <benh@debian.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Sedat Dilek <sedat.dilek@gmail.com>
Cc: bpf@vger.kernel.org
Link: http://lore.kernel.org/lkml/20220622181918.ykrs5rsnmx3og4sv@alap3.anarazel.de
Link: https://lore.kernel.org/r/20220801013834.156015-5-andres@anarazel.de
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 97f005c0bdbaf656a7808586d234965385a06c58)

Change-Id: I72d8603797149776b20511f9c4b649853fb33a28
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
11 months agotools build: Add feature test for init_disassemble_info API changes 03/292903/1
Andres Freund [Mon, 1 Aug 2022 01:38:27 +0000 (18:38 -0700)]
tools build: Add feature test for init_disassemble_info API changes

commit cfd59ca91467056bb2c36907b2fa67b8e1af9952 upstream.

binutils changed the signature of init_disassemble_info(), which now causes
compilation failures for tools/{perf,bpf}, e.g. on debian unstable.

Relevant binutils commit:

  https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=60a3da00bd5407f07

This commit adds a feature test to detect the new signature.  Subsequent
commits will use it to fix the build failures.

Signed-off-by: Andres Freund <andres@anarazel.de>
Acked-by: Quentin Monnet <quentin@isovalent.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: Ben Hutchings <benh@debian.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Quentin Monnet <quentin@isovalent.com>
Cc: Sedat Dilek <sedat.dilek@gmail.com>
Cc: bpf@vger.kernel.org
Link: http://lore.kernel.org/lkml/20220622181918.ykrs5rsnmx3og4sv@alap3.anarazel.de
Link: https://lore.kernel.org/r/20220801013834.156015-2-andres@anarazel.de
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 51b99dc38c1a053e2e732d7f9e2740e343ae7eae)

Change-Id: I1c17a17b2a2d8cfbc09bf44292366fb52b9fcd09
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
12 months agoriscv: fix riscv64 unrecognized opcode build error 73/292373/3
Marek Szulc [Fri, 19 Aug 2022 10:29:48 +0000 (12:29 +0200)]
riscv: fix riscv64 unrecognized opcode build error

Considering older gcc version, "imafd" has to be changed
to "g", in order for asm to handle "zicsr" and "zifencei"
extensions.

Support for the mentioned extensions has been added
in GCC 11.1, hence this commit may be removed
after GCC update.

The lack of this causes following errors:
Error: unrecognized opcode `csrr a5,0xc01'
Error: unrecognized opcode `csrr a2,0xc01'

Change-Id: I0768a7b1255c828c4fc319f74f2783bc7e1581bf
Signed-off-by: Marek Szulc <m.szulc3@samsung.com>
Signed-off-by: Ɓukasz Stelmach <l.stelmach@samsung.com>
12 months agopackaging: Add linux-visionfive2 spec file 72/292372/3
Jaehoon Chung [Fri, 10 Mar 2023 06:31:40 +0000 (15:31 +0900)]
packaging: Add linux-visionfive2 spec file

Add linux-visionfive2 spec file to build with gbs.
This is for only visionfive2 board.

Change-Id: Ia9ea5f73453250814bb768bab6eeb6997797167f
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
12 months agoRISCV: configs: Enable usb BT defconfig 27/292527/1
Hoegeun Kwon [Tue, 9 May 2023 07:22:43 +0000 (16:22 +0900)]
RISCV: configs: Enable usb BT defconfig

Enable usb BT defconfig.

Change-Id: Ibbcd86557c0adf6f80beb229622d63ad74e62e06
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
12 months agoRISCV: configs: Enable usb wireless defconfig 26/292526/1
Hoegeun Kwon [Tue, 9 May 2023 07:20:26 +0000 (16:20 +0900)]
RISCV: configs: Enable usb wireless defconfig

Enable usb wireless defconfig and realtek module.

Change-Id: I86a7ac58de3e7234ef6a2da05acfbeab28f3034c
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
13 months agoscript: build: add local build script for v5.15
Jaehoon Chung [Thu, 6 Apr 2023 05:42:30 +0000 (14:42 +0900)]
script: build: add local build script for v5.15

Add local build ssript for v5.15.

Change-Id: I0f54869889fd787eeff8acf650e270b21fd8929f
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
13 months agoRISCV: configs: Add an intial tizen_vf2_defconfig
Jaehoon Chung [Thu, 6 Apr 2023 01:01:58 +0000 (10:01 +0900)]
RISCV: configs: Add an intial tizen_vf2_defconfig

Add an initial tizen_vfs2_defconfig.

Change-Id: I69ee9b894c24a105f39ddb57e2d1b57ba18efd86
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
13 months agoMerge tag 'JH7110_515_SDK_v4.5.2' into vf2-515-devel
Andy Hu [Mon, 20 Mar 2023 17:53:42 +0000 (01:53 +0800)]
Merge tag 'JH7110_515_SDK_v4.5.2' into vf2-515-devel

version JH7110_515_SDK_v4.5.2 for JH7110 EVB board

1. #4142: soft_3rdpart: linux: IMG GPU disable pdump in kernel space and user space

13 months agoMerge branch 'CR_4142_gpu_2_joyce.ooi' into 'jh7110-5.15.y-devel'
andy.hu [Mon, 20 Mar 2023 17:01:50 +0000 (17:01 +0000)]
Merge branch 'CR_4142_gpu_2_joyce.ooi' into 'jh7110-5.15.y-devel'

CR_4142: gpu: drm: img: disable PDUMP

See merge request sdk/linux!748

13 months agogpu: drm: img: disable PDUMP
joyce.ooi [Mon, 20 Mar 2023 03:20:13 +0000 (11:20 +0800)]
gpu: drm: img: disable PDUMP

PDUMP is disabled to improve performance of GPU as PDUMP is used for
debugging purposes.

Signed-off-by: joyce.ooi <joyce.ooi@starfivetech.com>
13 months agoMerge branch 'CR_4142_gpu_2_joyce.ooi' into 'vf2-515-devel'
andy.hu [Mon, 20 Mar 2023 16:11:36 +0000 (16:11 +0000)]
Merge branch 'CR_4142_gpu_2_joyce.ooi' into 'vf2-515-devel'

CR_4142: gpu: drm: img: disable PDUMP

See merge request sbc/linux!87

13 months agogpu: drm: img: disable PDUMP
joyce.ooi [Mon, 20 Mar 2023 03:20:13 +0000 (11:20 +0800)]
gpu: drm: img: disable PDUMP

PDUMP is disabled to improve performance of GPU as PDUMP is used for
debugging purposes.

Signed-off-by: joyce.ooi <joyce.ooi@starfivetech.com>
13 months agoMerge tag 'JH7110_515_SDK_v4.5.1' into vf2-515-devel
Andy Hu [Sun, 19 Mar 2023 09:25:40 +0000 (17:25 +0800)]
Merge tag 'JH7110_515_SDK_v4.5.1' into vf2-515-devel

version JH7110_515_SDK_v4.5.1 for JH7110 EVB board

1. #4082: linux: u-boot: apply csr patch
2. #3499: linux: u-boot: enable framebuffer console
3. #4038: linux: vout fixed open clock fail
4. #3509: linux: fix some bugs and add request(), free(), set_config() ops for sys gpiochip

13 months agoMerge branch 'CR_3509_pinctrl_hal.feng' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 17 Mar 2023 11:53:02 +0000 (11:53 +0000)]
Merge branch 'CR_3509_pinctrl_hal.feng' into 'jh7110-5.15.y-devel'

CR 3509 pinctrl hal.feng

See merge request sdk/linux!746

13 months agoMerge branch 'CR_4038_vout_515_changhuang.liang' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 17 Mar 2023 10:48:57 +0000 (10:48 +0000)]
Merge branch 'CR_4038_vout_515_changhuang.liang' into 'jh7110-5.15.y-devel'

CR_4038_vout_515_changhuang.liang gpu: drm: verisilicon: Fixed open clock fail

See merge request sdk/linux!743

13 months agoMerge branch 'CR_3499_vout_515_changhuang.liang' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 17 Mar 2023 10:45:49 +0000 (10:45 +0000)]
Merge branch 'CR_3499_vout_515_changhuang.liang' into 'jh7110-5.15.y-devel'

CR_3499_vout_515_changhuang.liang gpu: drm: verisilicon: Add framebuffer console support

See merge request sdk/linux!741

13 months agoMerge branch 'CR_4082_apply_csr_patch_515_Andy.Hu' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 17 Mar 2023 10:15:48 +0000 (10:15 +0000)]
Merge branch 'CR_4082_apply_csr_patch_515_Andy.Hu' into 'jh7110-5.15.y-devel'

CR_4082: riscv: fix build with binutils 2.38

See merge request sdk/linux!744

13 months agopinctrl: starfive: Add request(), free(), set_config() ops for sys gpiochip
Hal Feng [Mon, 6 Mar 2023 01:24:51 +0000 (09:24 +0800)]
pinctrl: starfive: Add request(), free(), set_config() ops for sys gpiochip

So libgpiod can call these ops to support some options of
commands such as "-B pull-down" and "-B pull-up".

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
13 months agoriscv: fix build with binutils 2.38
Aurelien Jarno [Wed, 26 Jan 2022 17:14:42 +0000 (18:14 +0100)]
riscv: fix build with binutils 2.38

From version 2.38, binutils default to ISA spec version 20191213. This
means that the csr read/write (csrr*/csrw*) instructions and fence.i
instruction has separated from the `I` extension, become two standalone
extensions: Zicsr and Zifencei. As the kernel uses those instruction,
this causes the following build failure:

  CC      arch/riscv/kernel/vdso/vgettimeofday.o
  <<BUILDDIR>>/arch/riscv/include/asm/vdso/gettimeofday.h: Assembler messages:
  <<BUILDDIR>>/arch/riscv/include/asm/vdso/gettimeofday.h:71: Error: unrecognized opcode `csrr a5,0xc01'
  <<BUILDDIR>>/arch/riscv/include/asm/vdso/gettimeofday.h:71: Error: unrecognized opcode `csrr a5,0xc01'
  <<BUILDDIR>>/arch/riscv/include/asm/vdso/gettimeofday.h:71: Error: unrecognized opcode `csrr a5,0xc01'
  <<BUILDDIR>>/arch/riscv/include/asm/vdso/gettimeofday.h:71: Error: unrecognized opcode `csrr a5,0xc01'

The fix is to specify those extensions explicitely in -march. However as
older binutils version do not support this, we first need to detect
that.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Tested-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
Cc: stable@vger.kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
13 months agopinctrl: starfive: jh7110: Correct the ioconfig register address and bit definitions
Hal Feng [Fri, 3 Mar 2023 03:28:28 +0000 (11:28 +0800)]
pinctrl: starfive: jh7110: Correct the ioconfig register address and bit definitions

1. Correct the io_conf_reg address when pin number >= PAD_QSPI_SCLK.
2. The pull-down bit is the fourth bit, so the mask is 0x10.

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
13 months agogpu: drm: verisilicon: Fixed open clock fail
Changhuang Liang [Wed, 15 Mar 2023 09:47:29 +0000 (17:47 +0800)]
gpu: drm: verisilicon: Fixed open clock fail

Fixed open clock fail because this clock not close.

Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
13 months agogpu: drm: verisilicon: Add framebuffer console support
Changhuang Liang [Tue, 14 Mar 2023 06:02:08 +0000 (14:02 +0800)]
gpu: drm: verisilicon: Add framebuffer console support

Add framebuffer console support.

Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
14 months agoMerge branch 'CR_2829_cryp_jiajie.ho' into 'vf2-515-devel'
andy.hu [Fri, 10 Mar 2023 15:39:31 +0000 (15:39 +0000)]
Merge branch 'CR_2829_cryp_jiajie.ho' into 'vf2-515-devel'

CR_2829: riscv: defconfig - Enable tcrypt module

See merge request sbc/linux!80

14 months agoMerge branch 'CR_3929_vf2_enable_thermal_subsystem_5.15_ziv.xu' into 'vf2-515-devel'
andy.hu [Fri, 10 Mar 2023 15:38:48 +0000 (15:38 +0000)]
Merge branch 'CR_3929_vf2_enable_thermal_subsystem_5.15_ziv.xu' into 'vf2-515-devel'

CR_3929_vf2_enable_thermal_subsystem_5.15_ziv

See merge request sbc/linux!82

14 months agothermal:vf2 enable thermal subsystem
ziv.xu [Fri, 10 Mar 2023 02:22:22 +0000 (10:22 +0800)]
thermal:vf2 enable thermal subsystem

vf2 enable thermal subsystem

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
14 months agoMerge remote-tracking branch 'sdk/jh7110-5.15.y-devel' into vf2-515-devel
Andy Hu [Fri, 10 Mar 2023 01:28:24 +0000 (09:28 +0800)]
Merge remote-tracking branch 'sdk/jh7110-5.15.y-devel' into vf2-515-devel

sync for CR_3922_evb_515_DRM_mipi_hdmi_display_keith.zhao

14 months agoMerge branch 'CR_3922_evb_515_DRM_mipi_hdmi_display_keith.zhao' into 'jh7110-5.15...
andy.hu [Thu, 9 Mar 2023 15:26:14 +0000 (15:26 +0000)]
Merge branch 'CR_3922_evb_515_DRM_mipi_hdmi_display_keith.zhao' into 'jh7110-5.15.y-devel'

CR 3922 riscv:linux:vout:mipi+hdmi

See merge request sdk/linux!738

14 months agoMerge tag 'JH7110_515_SDK_v4.5.0-rc2' into vf2-515-devel
Andy Hu [Thu, 9 Mar 2023 10:59:00 +0000 (18:59 +0800)]
Merge tag 'JH7110_515_SDK_v4.5.0-rc2' into vf2-515-devel

version JH7110_515_SDK_v4.5.0-rc2 for JH7110 EVB board

1. #3746: linux: vout rgb code rollback to v4.4.0
2. #3668: linux: perf:sbi: disable cpu hotplug callback
3. #3166: linux: add thermal subsystem
4. #3877: linux: expand the mtd0 spl partition size in spi nor flash
5. #3729: linux: fix 4K wayland not work on some monitors

14 months agoriscv:linux:vout:mipi+hdmi
keith.zhao [Thu, 9 Mar 2023 09:53:02 +0000 (01:53 -0800)]
riscv:linux:vout:mipi+hdmi

fix hdmi+mipi display issues on debian
http://192.168.110.82/redmine/issues/3922

Signed-off-by: keith <keith.zhao@starfivetech.com>
14 months agoMerge branch 'CR_3729_evb_515_DRM__hdmi_4K_keith.zhao' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 9 Mar 2023 09:21:12 +0000 (09:21 +0000)]
Merge branch 'CR_3729_evb_515_DRM__hdmi_4K_keith.zhao' into 'jh7110-5.15.y-devel'

CR 3729 riscv:linux:vout:hdmi

See merge request sdk/linux!736

14 months agoMerge branch 'CR_3877_mtd0_expansion_5.15_ziv.xu' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 9 Mar 2023 09:09:16 +0000 (09:09 +0000)]
Merge branch 'CR_3877_mtd0_expansion_5.15_ziv.xu' into 'jh7110-5.15.y-devel'

CR_3877_mtd0_expansion_5.15_ziv.xu

See merge request sdk/linux!731

14 months agoMerge branch 'CR_3166_add_thermal_subsystem_support_5.15_ziv.xu' into 'jh7110-5.15...
andy.hu [Thu, 9 Mar 2023 09:07:49 +0000 (09:07 +0000)]
Merge branch 'CR_3166_add_thermal_subsystem_support_5.15_ziv.xu' into 'jh7110-5.15.y-devel'

CR_3166_add_thermal_subsystem_support_5.15_ziv.xu

See merge request sdk/linux!727

14 months agoMerge branch 'CR_3668_disable_register_cpu_hotplug_cb_minda' into 'jh7110-5.15.y...
andy.hu [Thu, 9 Mar 2023 08:51:43 +0000 (08:51 +0000)]
Merge branch 'CR_3668_disable_register_cpu_hotplug_cb_minda' into 'jh7110-5.15.y-devel'

CR 3668 perf:sbi: disable cpu hotplug callback.

See merge request sdk/linux!722

14 months agoMerge branch 'CR_3746_evb_515_rgb_1080_60_porting_rollback_shengyang.chen' into ...
andy.hu [Thu, 9 Mar 2023 08:46:52 +0000 (08:46 +0000)]
Merge branch 'CR_3746_evb_515_rgb_1080_60_porting_rollback_shengyang.chen' into 'jh7110-5.15.y-devel'

CR_3746_evb_515_riscv:linux:vout: rollback rgb code to tag JH7110_515_SDK_v4.4.0

See merge request sdk/linux!733

14 months agoriscv:linux:vout:hdmi
keith.zhao [Thu, 9 Mar 2023 08:22:57 +0000 (00:22 -0800)]
riscv:linux:vout:hdmi

Dell 4K can not display , it is caused by PM interface
need delay the time to enter power off

Signed-off-by: keith <keith.zhao@starfivetech.com>
14 months agoriscv: defconfig - Enable tcrypt module
Jia Jie Ho [Thu, 9 Mar 2023 07:37:57 +0000 (15:37 +0800)]
riscv: defconfig - Enable tcrypt module

Add tcrypt as module to VisionFive 2. User can use this module to do
basic functional and speed test on crypto module.

Signed-off-by: Jia Jie Ho <jiajie.ho@starfivetech.com>
14 months agoperf:sbi: disable cpu hotplug callback.
Minda Chen [Thu, 2 Mar 2023 09:16:01 +0000 (17:16 +0800)]
perf:sbi: disable cpu hotplug callback.

register cpu hotplug callback will cause dhrystone
and coremark benchmark reduce the scores. this CPU
hotplug ops will do in sbi cpu/on and off. So disable
this no side effect.

Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
14 months agoriscv:linux:vout: rollback rgb code to tag JH7110_515_SDK_v4.4.0
shengyang.chen [Thu, 9 Mar 2023 02:34:57 +0000 (10:34 +0800)]
riscv:linux:vout: rollback rgb code to tag JH7110_515_SDK_v4.4.0

rollback rgb code to tag JH7110_515_SDK_v4.4.0 after porting patch-rgb support 1080P@60fps

Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
14 months agojh7110.dsti :expand mtd0 partition
ziv.xu [Tue, 7 Mar 2023 10:03:51 +0000 (18:03 +0800)]
jh7110.dsti :expand mtd0 partition

expand mtd0 partition

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
14 months agothermal: enable thermal subsystem with step_wise governor
ziv.xu [Thu, 2 Mar 2023 07:01:47 +0000 (15:01 +0800)]
thermal: enable thermal subsystem with step_wise governor

enable thermal subsystem with step_wise governor

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
14 months agoMerge tag 'JH7110_515_SDK_v4.5.0-rc1' into vf2-515-devel
Andy Hu [Fri, 3 Mar 2023 11:57:27 +0000 (19:57 +0800)]
Merge tag 'JH7110_515_SDK_v4.5.0-rc1' into vf2-515-devel

version JH7110_515_SDK_v4.5.0-rc1 for JH7110 EVB board

1. #3467: linux: fix CPUfreq issue for the hibernation resume issue
2. #3546: linux: fix v4l2-compliance test issue for imx219 sensor
3. #3526: linux: qspi use reset framework
4. #3746: linux: rgb display support 1080p 60fps

14 months agoMerge branch 'CR_3467_cpufreq_add_pm_opp_5.15_mason.huo' into 'vf2-515-devel'
andy.hu [Fri, 3 Mar 2023 08:29:57 +0000 (08:29 +0000)]
Merge branch 'CR_3467_cpufreq_add_pm_opp_5.15_mason.huo' into 'vf2-515-devel'

CR_3467 cpufreq_add_pm_opp

See merge request sbc/linux!76

14 months agoMerge branch 'CR_3583_IPV6_SUPPORT_samin.guo' into 'vf2-515-devel'
andy.hu [Fri, 3 Mar 2023 08:28:33 +0000 (08:28 +0000)]
Merge branch 'CR_3583_IPV6_SUPPORT_samin.guo' into 'vf2-515-devel'

CR_3583: riscv: defconfig: jh7110: enable ipv6.

See merge request sbc/linux!75

14 months agoMerge branch 'CR_3702_mtd0_expansion_5.15_ziv.xu' into 'vf2-515-devel'
andy.hu [Fri, 3 Mar 2023 08:18:23 +0000 (08:18 +0000)]
Merge branch 'CR_3702_mtd0_expansion_5.15_ziv.xu' into 'vf2-515-devel'

CR_3702_mtd0_expansion_5.15_ziv.xu

See merge request sbc/linux!74

14 months agoMerge branch 'CR_3746_evb_515_rgb_1080_60_porting_shengyang.chen' into 'jh7110-5...
andy.hu [Fri, 3 Mar 2023 08:06:05 +0000 (08:06 +0000)]
Merge branch 'CR_3746_evb_515_rgb_1080_60_porting_shengyang.chen' into 'jh7110-5.15.y-devel'

CR_3746_evb_515_riscv:linux:vout: rgb support 1080P@60fps

See merge request sdk/linux!719

14 months agoMerge branch 'CR_3526_qspi_use_reset_framework_5.15_ziv.xu' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 3 Mar 2023 08:03:51 +0000 (08:03 +0000)]
Merge branch 'CR_3526_qspi_use_reset_framework_5.15_ziv.xu' into 'jh7110-5.15.y-devel'

CR_3526_qspi_use_reset_framework_5.15_ziv.xu

See merge request sdk/linux!712

14 months agoMerge branch 'CR_3546_v4l2_compliance_515_changhuang.liang' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 3 Mar 2023 08:02:29 +0000 (08:02 +0000)]
Merge branch 'CR_3546_v4l2_compliance_515_changhuang.liang' into '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

14 months agoMerge branch 'CR_3467_cpufreq_add_pm_opp_5.15_mason.huo' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 3 Mar 2023 07:59:23 +0000 (07:59 +0000)]
Merge branch 'CR_3467_cpufreq_add_pm_opp_5.15_mason.huo' into 'jh7110-5.15.y-devel'

CR_3467 cpufreq: starfive: Add opp suspend callback

See merge request sdk/linux!717

14 months agoriscv: dts: Set specific cpu frequency when suspending
Mason Huo [Wed, 1 Mar 2023 05:24:41 +0000 (13:24 +0800)]
riscv: dts: Set specific cpu frequency when suspending

As JH7110 saves & restores all clock registers in hibernation.
The cpu voltage may not correct after restoring cpu freqency
from hibernation resume process.

In case it's suspended in 1.5GHz with 1.04v,
and it schedules to 750Mhz with 0.8v before resuming,
then the cpu clock will be restored to 1.5GHz, but the cpu
voltage still remains in 0.8v, then the system crashes.

So we set the cpu frequency to 750MHz, and it will keep
the cpu voltage matched when doing hibernation resuming.

Signed-off-by: Mason Huo <mason.huo@starfivetech.com>
14 months agocpufreq: Introduce the cpufreq-dt driver for JH7110
Mason Huo [Wed, 1 Mar 2023 10:24:51 +0000 (18:24 +0800)]
cpufreq: Introduce the cpufreq-dt driver for JH7110

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>
14 months agoriscv: dts: statfive: Add clock and power supply for cpu
Mason Huo [Fri, 3 Mar 2023 05:17:50 +0000 (13:17 +0800)]
riscv: dts: statfive: Add clock and power supply for cpu

To enable the cpufreq-dt driver, config the cpu
with clock & power supply regulator.

Signed-off-by: Mason Huo <mason.huo@starfivetech.com>
14 months agojh7110.dsti :expand mtd0 partition
ziv.xu [Thu, 2 Mar 2023 06:30:22 +0000 (14:30 +0800)]
jh7110.dsti :expand mtd0 partition

expand mtd0 partition to 256k

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
14 months agoriscv:linux:vout: rgb support 1080P@60fps
shengyang.chen [Thu, 2 Mar 2023 01:51:14 +0000 (09:51 +0800)]
riscv:linux:vout: rgb support 1080P@60fps

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>
14 months agospi-cadence-quadspi:use reset framwork to reset qspi
ziv.xu [Tue, 28 Feb 2023 01:51:39 +0000 (09:51 +0800)]
spi-cadence-quadspi:use reset framwork to reset qspi

use reset framwork to reset qspi

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
14 months agoriscv: defconfig: jh7110: enable ipv6.
Samin Guo [Fri, 24 Feb 2023 10:03:42 +0000 (18:03 +0800)]
riscv: defconfig: jh7110: enable ipv6.

jh7110 support ipv6, so enable it.

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
14 months agoMerge branch 'CR_3634_cryp_jiajie.ho' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 24 Feb 2023 09:56:10 +0000 (09:56 +0000)]
Merge branch 'CR_3634_cryp_jiajie.ho' into 'jh7110-5.15.y-devel'

CR_3634: crypto: starfive - fix recursive mutex_lock

See merge request sdk/linux!710

14 months agoMerge branch 'CR_3583_IPV6_SUPPORT_samin.guo' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 24 Feb 2023 09:49:55 +0000 (09:49 +0000)]
Merge branch 'CR_3583_IPV6_SUPPORT_samin.guo' into 'jh7110-5.15.y-devel'

CR_3583: riscv: defconfig: jh7110: add ipv6 support

See merge request sdk/linux!709

14 months agoMerge branch 'CR_3535_PCIe_515_Kevin.xie' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 24 Feb 2023 09:47:34 +0000 (09:47 +0000)]
Merge branch 'CR_3535_PCIe_515_Kevin.xie' into 'jh7110-5.15.y-devel'

CR 3535 [515] drivers: pci: Fix crash in rt-linux because of an uninitialized lock.

See merge request sdk/linux!704

14 months agoMerge branch 'CR_3500_gpu_shanlong.li' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 24 Feb 2023 09:45:58 +0000 (09:45 +0000)]
Merge branch 'CR_3500_gpu_shanlong.li' into 'jh7110-5.15.y-devel'

CR_3500: driver:GPU: adjust interface sequence

See merge request sdk/linux!707

14 months agomedia: starfive: Delete operate sensor ctrl in video node
Changhuang Liang [Fri, 24 Feb 2023 03:06:37 +0000 (11:06 +0800)]
media: starfive: Delete operate sensor ctrl in video node

Delete operate sensor ctrl in video node.

Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
14 months agocrypto: starfive - fix recursive mutex_lock
Tan En De [Wed, 2 Nov 2022 07:00:47 +0000 (15:00 +0800)]
crypto: starfive - fix recursive mutex_lock

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>
14 months agoriscv: defconfig: jh7110: add ipv6 support
Samin Guo [Thu, 23 Feb 2023 01:52:17 +0000 (09:52 +0800)]
riscv: defconfig: jh7110: add ipv6 support

jh7110 support ipv6, so enable it.

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
14 months agodrivers: pci: Fix crash in rt-linux because of an uninitialized lock.
Kevin.xie [Tue, 21 Feb 2023 03:18:51 +0000 (11:18 +0800)]
drivers: pci: Fix crash in rt-linux because of an uninitialized lock.

Adjust the order of invocations in probe to avoid from the crash.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
14 months agodriver:GPU: adjust interface sequence
shanlong.li [Mon, 20 Feb 2023 07:05:00 +0000 (23:05 -0800)]
driver:GPU: adjust interface sequence
1. add axi disable interface
2. adjust the interface order between clk and reset

Signed-off-by: shanlong.li <shanlong.li@starfivetech.com>
14 months agoMerge branch 'CR_3167_gt911_ts_515_changhuang.liang' into 'vf2-515-devel'
andy.hu [Mon, 20 Feb 2023 02:51:35 +0000 (02:51 +0000)]
Merge branch 'CR_3167_gt911_ts_515_changhuang.liang' into 'vf2-515-devel'

CR_3167_gt911_ts_515_changhuang.liang Revert "riscv: defconfig: Enable GT9xx"

See merge request sbc/linux!65

14 months agoMerge tag 'JH7110_515_SDK_v4.3.0' into vf2-515-devel
Andy Hu [Fri, 17 Feb 2023 09:36:21 +0000 (17:36 +0800)]
Merge tag 'JH7110_515_SDK_v4.3.0' into vf2-515-devel

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

14 months agoMerge branch 'CR_3349_CRYP_jiajie.ho' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 17 Feb 2023 09:00:18 +0000 (09:00 +0000)]
Merge branch 'CR_3349_CRYP_jiajie.ho' into 'jh7110-5.15.y-devel'

CR_3349: crypto: starfive - Remove AES key zeroization

See merge request sdk/linux!700

14 months agoMerge branch 'CR_3145_PCIe_PHY_Kevin.xie' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 17 Feb 2023 08:59:44 +0000 (08:59 +0000)]
Merge branch 'CR_3145_PCIe_PHY_Kevin.xie' into 'jh7110-5.15.y-devel'

CR 3145 [515] drivers: pci: Add PHY settings in pcie host driver.

See merge request sdk/linux!703

14 months agoMerge branch 'CR_3330_MMC_515_william.qiu' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 17 Feb 2023 08:58:21 +0000 (08:58 +0000)]
Merge branch 'CR_3330_MMC_515_william.qiu' into 'jh7110-5.15.y-devel'

CR_3330: hibernation: mmc: change the runtime PM API

See merge request sdk/linux!695

14 months agoCR_3349: crypto: starfive - Remove AES key zeroization
Jia Jie Ho [Thu, 16 Feb 2023 04:24:02 +0000 (12:24 +0800)]
CR_3349: crypto: starfive - Remove AES key zeroization

Remove key zeroization after each request in AES module.

Signed-off-by: Jia Jie Ho <jiajie.ho@starfivetech.com>
14 months agodrivers: pci: Add PHY settings in pcie host driver.
Kevin.xie [Wed, 15 Feb 2023 08:27:03 +0000 (16:27 +0800)]
drivers: pci: Add PHY settings in pcie host driver.

The settings are about PHY PLL KVCO fine tuning form CTS testing.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
14 months agohibernation: mmc: change the runtime PM API
William Qiu [Mon, 13 Feb 2023 02:04:21 +0000 (10:04 +0800)]
hibernation: mmc: change the runtime PM API

Use the common API to do the runtime PM.

Signed-off-by: William Qiu <william.qiu@starfivetech.com>
14 months agoMerge tag 'JH7110_515_SDK_v4.2.0' into vf2-515-devel
Andy Hu [Sun, 12 Feb 2023 07:27:39 +0000 (15:27 +0800)]
Merge tag 'JH7110_515_SDK_v4.2.0' into vf2-515-devel

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

14 months agoMerge branch 'CR_3345_evb_515_DRM_mipi_for_uboot_keith.zhao' into 'jh7110-5.15.y...
andy.hu [Sat, 11 Feb 2023 15:03:00 +0000 (15:03 +0000)]
Merge branch 'CR_3345_evb_515_DRM_mipi_for_uboot_keith.zhao' into 'jh7110-5.15.y-devel'

CR_3345:riscv:driver:drm:

See merge request sdk/linux!689

15 months agoMerge branch 'CR_3312_TDM_KO_Not_Work' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 10 Feb 2023 10:11:43 +0000 (10:11 +0000)]
Merge branch 'CR_3312_TDM_KO_Not_Work' into 'jh7110-5.15.y-devel'

CR_3312_TDM_KO_Not_Work

See merge request sdk/linux!694

15 months agoCR_3312_TDM_KO_Not_Work
Walker Chen [Fri, 10 Feb 2023 09:49:03 +0000 (17:49 +0800)]
CR_3312_TDM_KO_Not_Work

Fixed the bug that tdm cat not work when it is build as module.

Signed-off-by: Walker Chen <walker.chen@starfivetech.com>
15 months agoMerge branch 'CR_3070_PCIe_Aqtion_Hibernation_515_Kevin.xie' into 'jh7110-5.15.y...
andy.hu [Fri, 10 Feb 2023 08:33:38 +0000 (08:33 +0000)]
Merge branch 'CR_3070_PCIe_Aqtion_Hibernation_515_Kevin.xie' into '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

15 months agoMerge branch 'CR_3262_evb_515_VOUT_mipi_hdmi_dual_display_keith.zhao' into 'jh7110...
andy.hu [Fri, 10 Feb 2023 07:59:20 +0000 (07:59 +0000)]
Merge branch 'CR_3262_evb_515_VOUT_mipi_hdmi_dual_display_keith.zhao' into 'jh7110-5.15.y-devel'

CR_3262:riscv:linux:vout:mipi+hdmi

See merge request sdk/linux!683

15 months agoMerge branch 'CR_3319_I2S_Hibernation_Module_Xingyu.Wu' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 10 Feb 2023 07:56:52 +0000 (07:56 +0000)]
Merge branch 'CR_3319_I2S_Hibernation_Module_Xingyu.Wu' into 'jh7110-5.15.y-devel'

CR_3319_I2S_Hibernation_Module_Xingyu.Wu

See merge request sdk/linux!692

15 months agoMerge branch 'CR_3323_PDM_KO_Not_Work_walker.chen' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 10 Feb 2023 07:51:10 +0000 (07:51 +0000)]
Merge branch 'CR_3323_PDM_KO_Not_Work_walker.chen' into 'jh7110-5.15.y-devel'

CR_3323_PDM_KO_Can_Work_walker.chen

See merge request sdk/linux!693

15 months agoMerge branch 'CR_3317_qspi_compilation_into_ko_resume_exception' into 'jh7110-5.15...
andy.hu [Fri, 10 Feb 2023 07:49:36 +0000 (07:49 +0000)]
Merge branch 'CR_3317_qspi_compilation_into_ko_resume_exception' into 'jh7110-5.15.y-devel'

CR_3317_qspi_compilation_into_ko_resume_exception

See merge request sdk/linux!686

15 months agoMerge branch 'CR_3318_watchdog_compilation_into_ko_resume_exception' into 'jh7110...
andy.hu [Fri, 10 Feb 2023 07:48:23 +0000 (07:48 +0000)]
Merge branch 'CR_3318_watchdog_compilation_into_ko_resume_exception' into 'jh7110-5.15.y-devel'

CR_3318_watchdog_compilation_into_ko_resume_exception

See merge request sdk/linux!690

15 months agoCR_3323_PDM_KO_Can_Work_walker.chen
Walker Chen [Thu, 9 Feb 2023 08:36:39 +0000 (16:36 +0800)]
CR_3323_PDM_KO_Can_Work_walker.chen

1. Build as ko module, can work normally after multiple loading and
unloading.
2. can record normally after hibernation resume.

Signed-off-by: Walker Chen <walker.chen@starfivetech.com>
15 months agosound: starfive: I2S: Fixed error after hibernation when building module
Xingyu Wu [Wed, 8 Feb 2023 08:09:06 +0000 (16:09 +0800)]
sound: starfive: I2S: Fixed error after hibernation when building module

When I2S resume but WM8960 has not resume and no clock, I2S should
use inner clock instead of wm8960's clock first.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
15 months agosound: codecs: wm8960: Add context saving and restoring when hibernation
Xingyu Wu [Wed, 8 Feb 2023 07:52:13 +0000 (15:52 +0800)]
sound: codecs: wm8960: Add context saving and restoring when hibernation

Add context saving and restoring when suspend and resume.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
15 months agoriscv:driver:drm:dc
keith.zhao [Fri, 10 Feb 2023 02:45:10 +0000 (18:45 -0800)]
riscv:driver:drm:dc

fix the build warning

Signed-off-by:keith.zhao<keith.zhao@statfivetech.com>

15 months agoriscv:driver:drm:dc
keith.zhao [Fri, 10 Feb 2023 02:28:14 +0000 (18:28 -0800)]
riscv:driver:drm:dc

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>

15 months agostarfive-wdt: add reset before resume
ziv.xu [Thu, 9 Feb 2023 13:49:17 +0000 (21:49 +0800)]
starfive-wdt: add reset before resume

add reset before resume

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
15 months agoriscv:driver:drm:
keith.zhao [Thu, 9 Feb 2023 10:02:30 +0000 (02:02 -0800)]
riscv:driver:drm:

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>

15 months agonet: atlantic: remove aq_nic_deinit() when resume
Chia-Lin Kao (AceLan) [Wed, 13 Jul 2022 11:12:24 +0000 (19:12 +0800)]
net: atlantic: remove aq_nic_deinit() when resume

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>
15 months agonet: atlantic: remove deep parameter on suspend/resume functions
Chia-Lin Kao (AceLan) [Wed, 13 Jul 2022 11:12:23 +0000 (19:12 +0800)]
net: atlantic: remove deep parameter on suspend/resume functions

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>
15 months agonet: atlantic: always deep reset on pm op, fixing up my null deref regression
Manuel Ullmann [Wed, 4 May 2022 19:30:44 +0000 (21:30 +0200)]
net: atlantic: always deep reset on pm op, fixing up my null deref regression

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>
15 months agonet: atlantic: invert deep par in pm functions, preventing null derefs
Manuel Ullmann [Sun, 17 Apr 2022 22:20:01 +0000 (00:20 +0200)]
net: atlantic: invert deep par in pm functions, preventing null derefs

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
Link: https://bugzilla.kernel.org/show_bug.cgi?id=215798
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>
15 months agospi-cadence-quadspi: add reset before resume
ziv.xu [Thu, 9 Feb 2023 02:15:59 +0000 (10:15 +0800)]
spi-cadence-quadspi: add reset before resume

add reset before resume

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
15 months agoriscv: defconfig: Enable GT911
Changhuang Liang [Mon, 6 Feb 2023 03:42:51 +0000 (11:42 +0800)]
riscv: defconfig: Enable GT911

Enable GT911.

Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
15 months agoriscv: dts: starfive: Add goodix gt911 touchscreen support
Changhuang Liang [Mon, 6 Feb 2023 03:37:14 +0000 (11:37 +0800)]
riscv: dts: starfive: Add goodix gt911 touchscreen support

Add goodix gt911 touchscreen support.

Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
15 months agoinput: touchscreen: goodix: Update irq fetch mode
Changhuang Liang [Mon, 6 Feb 2023 03:31:14 +0000 (11:31 +0800)]
input: touchscreen: goodix: Update irq fetch mode

Update irq fetch mode.

Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com>
15 months agoRevert "input: touchscreen: Add gt9xx driver support"
Changhuang Liang [Mon, 6 Feb 2023 03:21:40 +0000 (11:21 +0800)]
Revert "input: touchscreen: Add gt9xx driver support"

This reverts commit d4bbbc4e18e0584599a170e4b01bff160b58e390.

15 months agoRevert "riscv: dts: starfive: Add gt9xx touchscreen support"
Changhuang Liang [Mon, 6 Feb 2023 03:21:15 +0000 (11:21 +0800)]
Revert "riscv: dts: starfive: Add gt9xx touchscreen support"

This reverts commit 114424dfb1540462f90867028d1ad915e05f3016.