platform/kernel/linux-starfive.git
2 years agoclk: starfive: Change divider value of cpu_core clock
Xingyu Wu [Thu, 15 Dec 2022 06:17:59 +0000 (14:17 +0800)]
clk: starfive: Change divider value of cpu_core clock

Change divider value to make sure the frequency is half of PLL0.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agoMerge branch 'CR_2822_PCIE_Kevin.xie' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 9 Dec 2022 04:49:48 +0000 (04:49 +0000)]
Merge branch 'CR_2822_PCIE_Kevin.xie' into 'jh7110-5.15.y-devel'

CR 2822 riscv: configs: Add port bus driver for PCIe switch.

See merge request sdk/linux!633

2 years agoMerge branch 'CR_2796_515_sound_card_Xingyu.Wu' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 9 Dec 2022 04:46:38 +0000 (04:46 +0000)]
Merge branch 'CR_2796_515_sound_card_Xingyu.Wu' into 'jh7110-5.15.y-devel'

CR_2796_515_sound_card_Xingyu.Wu

See merge request sdk/linux!631

2 years agoMerge branch 'CR_2789_refresh_uboot/spl_under_kernel_5.15_ziv.xu' into 'jh7110-5...
andy.hu [Fri, 9 Dec 2022 04:45:04 +0000 (04:45 +0000)]
Merge branch 'CR_2789_refresh_uboot/spl_under_kernel_5.15_ziv.xu' into 'jh7110-5.15.y-devel'

CR_2789_refresh_uboot/spl_under_kernel_5.15_ziv.xu

See merge request sdk/linux!635

2 years agosound:starfive:Move playback and capture driver as slave to starfive I2S
Xingyu Wu [Tue, 22 Nov 2022 03:42:34 +0000 (11:42 +0800)]
sound:starfive:Move playback and capture driver as slave to starfive I2S

Move playback and capture driver as slave from snps I2S merge to starfive I2S.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agoriscv:jh7110.dtsi: add uboot and spl partition on qspi node
ziv.xu [Fri, 2 Dec 2022 09:26:19 +0000 (17:26 +0800)]
riscv:jh7110.dtsi: add uboot and spl partition on qspi node

add uboot and spl partition on qspi node

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agoriscv: configs: Add port bus driver for PCIe switch.
Kevin.xie [Wed, 7 Dec 2022 06:20:16 +0000 (14:20 +0800)]
riscv: configs: Add port bus driver for PCIe switch.

Verified on JH7110EVB with ASMedia EV Board (asm1806 version).

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2 years agoriscv: dts: starfive: jh7110: Add multiple sound cards
Xingyu Wu [Tue, 6 Dec 2022 03:19:51 +0000 (11:19 +0800)]
riscv: dts: starfive: jh7110: Add multiple sound cards

Add multiple sound cards to let one device corresponds to
one sound card.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agoe24: xrp: remove from Kconfig and Makefile
Andy Hu [Tue, 6 Dec 2022 10:43:31 +0000 (18:43 +0800)]
e24: xrp: remove from Kconfig and Makefile

since run git filter-repo, then need to remove from Kconfig and
Makefile

Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
2 years agoMerge branch 'CR_2650_PWM_hal.feng' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 1 Dec 2022 10:52:21 +0000 (10:52 +0000)]
Merge branch 'CR_2650_PWM_hal.feng' into 'jh7110-5.15.y-devel'

CR 2650 PWM hal.feng

See merge request sdk/linux!626

2 years agoMerge branch 'CR_2653_QSPI_5.15_ziv.xu' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 1 Dec 2022 10:37:13 +0000 (10:37 +0000)]
Merge branch 'CR_2653_QSPI_5.15_ziv.xu' into 'jh7110-5.15.y-devel'

CR 2653 QSPI 5.15 ziv.xu

See merge request sdk/linux!612

2 years agoMerge branch 'CR_2752_CPUfreq_515_mason.huo' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 1 Dec 2022 10:35:43 +0000 (10:35 +0000)]
Merge branch 'CR_2752_CPUfreq_515_mason.huo' into 'jh7110-5.15.y-devel'

CR_2752 riscv: dts: Change cpu vdd per stress test

See merge request sdk/linux!624

2 years agopwm: starfive: Use pm_runtime functions to disable clock when the device being removed
Hal Feng [Wed, 30 Nov 2022 07:15:11 +0000 (15:15 +0800)]
pwm: starfive: Use pm_runtime functions to disable clock when the device being removed

So this can avoid disabling the pwm clock again when
the pwm device is suspended and being removed.

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2 years agoriscv: dts: Change cpu vdd per stress test
mason.huo [Mon, 28 Nov 2022 01:14:51 +0000 (09:14 +0800)]
riscv: dts: Change cpu vdd per stress test

2 years agoMerge branch 'CR_2651_spi_dtbo_reload_faild_5.15_ziv.xu' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 25 Nov 2022 12:56:08 +0000 (12:56 +0000)]
Merge branch 'CR_2651_spi_dtbo_reload_faild_5.15_ziv.xu' into 'jh7110-5.15.y-devel'

CR_2651_spi_dtbo_reload_faild_5.15_ziv.xu

See merge request sdk/linux!619

2 years agoMerge branch 'CR_2463_PCIE_Kevin.xie' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 25 Nov 2022 10:31:21 +0000 (10:31 +0000)]
Merge branch 'CR_2463_PCIE_Kevin.xie' into 'jh7110-5.15.y-devel'

CR 2463 drivers: nvme: Add precheck and delay for CQE pending status.

See merge request sdk/linux!621

2 years agodrivers: nvme: Add precheck and delay for CQE pending status.
Kevin.xie [Thu, 24 Nov 2022 08:59:12 +0000 (16:59 +0800)]
drivers: nvme: Add precheck and delay for CQE pending status.

To workaroud the NVMe I/O timeout problem in bootup S10udev case
which caused by the CQE update lantancy.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2 years agospi-pl022-starfive:fix the problem of spi overlay reload
ziv.xu [Wed, 23 Nov 2022 06:53:58 +0000 (14:53 +0800)]
spi-pl022-starfive:fix the problem of spi overlay reload

fix the problem of spi overlay reload

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agodriver:spi-cadence-quadspi: enable qspi
ziv.xu [Tue, 15 Nov 2022 01:50:09 +0000 (09:50 +0800)]
driver:spi-cadence-quadspi: enable qspi

enable qspi

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agoMerge branch 'CR_2429_spi_error_of_freq-5.15_ziv.xu' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 17 Nov 2022 09:18:17 +0000 (09:18 +0000)]
Merge branch 'CR_2429_spi_error_of_freq-5.15_ziv.xu' into 'jh7110-5.15.y-devel'

CR 2429 spi error of freq 5.15 ziv.xu

See merge request sdk/linux!603

2 years agoMerge branch 'CR_2661_V4L2_Kevin.xie' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 17 Nov 2022 09:12:03 +0000 (09:12 +0000)]
Merge branch 'CR_2661_V4L2_Kevin.xie' into 'jh7110-5.15.y-devel'

CR 2661 v4l2_driver: vin: Add skip frames for isp control.

See merge request sdk/linux!610

2 years agoMerge branch 'CR_2434_imx219_515_changhuang.liang' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 17 Nov 2022 09:08:34 +0000 (09:08 +0000)]
Merge branch 'CR_2434_imx219_515_changhuang.liang' into 'jh7110-5.15.y-devel'

CR_2434_imx219_515_changhuang.liang media: v4l2_driver: Supplement the missing runtime pm get ops on more than once stream_on cases.

See merge request sdk/linux!595

2 years agoMerge branch 'CR_2642_PCIe_Kevin.xie' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 17 Nov 2022 07:10:11 +0000 (07:10 +0000)]
Merge branch 'CR_2642_PCIe_Kevin.xie' into 'jh7110-5.15.y-devel'

CR 2642 drivers: pci: Set PCIe PCI standard configuration ID.

See merge request sdk/linux!613

2 years agoMerge branch 'CR_2583_fix_usb_resume_hub_minda' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 17 Nov 2022 07:02:36 +0000 (07:02 +0000)]
Merge branch 'CR_2583_fix_usb_resume_hub_minda' into 'jh7110-5.15.y-devel'

CR_2583 USB: core: Fix bug in resuming hub's handling of wakeup requests

See merge request sdk/linux!600

2 years agoMerge branch 'CR_2588_515_watchdog_timeleft_Xingyu.Wu' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 17 Nov 2022 06:53:09 +0000 (06:53 +0000)]
Merge branch 'CR_2588_515_watchdog_timeleft_Xingyu.Wu' into 'jh7110-5.15.y-devel'

CR_2588_515_watchdog_timeleft_Xingyu.Wu

See merge request sdk/linux!597

2 years agoMerge branch 'CR_2621_CPUIDLE_mason.huo' into 'jh7110-5.15.y-devel'
andy.hu [Thu, 17 Nov 2022 06:51:07 +0000 (06:51 +0000)]
Merge branch 'CR_2621_CPUIDLE_mason.huo' into 'jh7110-5.15.y-devel'

CR_2621 riscv: dts: Remove unsupported cpuidle state

See merge request sdk/linux!608

2 years agoMerge branch 'CR_2435_hibernation-for-main_5.15_vout_shengyang.chen' into 'jh7110...
andy.hu [Thu, 17 Nov 2022 06:48:28 +0000 (06:48 +0000)]
Merge branch 'CR_2435_hibernation-for-main_5.15_vout_shengyang.chen' into 'jh7110-5.15.y-devel'

CR_2435: clk:starfive:vout:Add runtime and system pm && riscv:linux:drm: Add runtime and system pm

See merge request sdk/linux!596

2 years agodrivers: pci: Set PCIe PCI standard configuration ID.
Kevin.xie [Tue, 15 Nov 2022 09:27:32 +0000 (17:27 +0800)]
drivers: pci: Set PCIe PCI standard configuration ID.

Class - PCI-to-PCI bridge.
Revision - 2.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2 years agov4l2_driver: vin: Add skip frames for isp control.
Kevin.xie [Tue, 15 Nov 2022 06:04:20 +0000 (14:04 +0800)]
v4l2_driver: vin: Add skip frames for isp control.

The duration of extra isp control skip frames are fixed to 1 second.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2 years agostarfive:defconfig: modify defconfig to enable qspi
ziv.xu [Tue, 15 Nov 2022 08:06:06 +0000 (16:06 +0800)]
starfive:defconfig: modify defconfig to enable qspi

modify defconfig to enable qspi

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agodrm:verisilicon:hdmi-audio:Adjust when to configure registers
Xingyu Wu [Thu, 10 Nov 2022 09:02:38 +0000 (17:02 +0800)]
drm:verisilicon:hdmi-audio:Adjust when to configure registers

Adjust when to configure registers before HDMI suspend.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agodma:dw:Add stg_axi clock and reset of noc_bus
Xingyu Wu [Tue, 8 Nov 2022 14:04:07 +0000 (22:04 +0800)]
dma:dw:Add stg_axi clock and reset of noc_bus

Add 'JH7110_NOC_BUS_CLK_STG_AXI' clock and
'RSTN_U0_NOC_BUS_STG_AXI_N' reset.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agoriscv:linux:drm : fix vout pm bug
shengyang.chen [Wed, 9 Nov 2022 02:15:19 +0000 (10:15 +0800)]
riscv:linux:drm : fix vout pm bug

fix display problem of hdmi sys pm

Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
2 years agoriscv:linux:drm: fix double display bug
shengyang.chen [Fri, 4 Nov 2022 10:17:52 +0000 (18:17 +0800)]
riscv:linux:drm: fix double display bug

fix double display bug

Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
2 years agolinux:dts:starfive: remove some useless port of vout dts
shengyang.chen [Fri, 4 Nov 2022 10:17:06 +0000 (18:17 +0800)]
linux:dts:starfive: remove some useless port of vout dts

fix double display bug
remove some useless port of vout dts

Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
2 years agoriscv:linux:drm: Add basic runtime and system pm support for vout
shengyang.chen [Wed, 2 Nov 2022 03:35:47 +0000 (11:35 +0800)]
riscv:linux:drm: Add basic runtime and system pm support for vout

Add basic runtime and system pm support for vout
remove some useless clk/rst function and calling in vs_dc.c
improve vout driver structure

Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
2 years agolinux:dts:starfive: Add pm support for vout dts
shengyang.chen [Wed, 2 Nov 2022 03:34:32 +0000 (11:34 +0800)]
linux:dts:starfive: Add pm support for vout dts

Add pm support for vout dts
remove some useless port of vout dts

Signed-off-by: shengyang.chen<shengyang.chen@starfivetech.com>
2 years agoclk:starfive:vout:Add parent about disp_apb clk
Xingyu Wu [Tue, 8 Nov 2022 13:53:31 +0000 (21:53 +0800)]
clk:starfive:vout:Add parent about disp_apb clk

Clock "u0_pclk_mux_func_pclk" is the parent of "disp_apb" clock.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agoclk:starfive:vout:Add runtime and system pm
Xingyu Wu [Wed, 19 Oct 2022 09:06:17 +0000 (17:06 +0800)]
clk:starfive:vout:Add runtime and system pm

Add runtime and system pm in vout clock tree driver.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agospi-pl022-starfive.c: prompt warning when frequency does not surpport
ziv.xu [Thu, 10 Nov 2022 08:13:19 +0000 (16:13 +0800)]
spi-pl022-starfive.c: prompt warning when frequency does not surpport

prompt warning when frequency does not surpport

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agoriscv: dts: Remove unsupported cpuidle state
mason.huo [Fri, 11 Nov 2022 02:13:04 +0000 (10:13 +0800)]
riscv: dts: Remove unsupported cpuidle state

The cpuidle state1 is also implemented in sbi with
WFI C state, but it cause audio play failed.
Remove the cpuidle state1.

Signed-off-by: mason.huo <mason.huo@starfivetech.com>
2 years agoUSB: core: Fix bug in resuming hub's handling of wakeup requests
Alan Stern [Sat, 1 Jan 2022 19:52:14 +0000 (14:52 -0500)]
USB: core: Fix bug in resuming hub's handling of wakeup requests

Bugzilla #213839 reports a 7-port hub that doesn't work properly when
devices are plugged into some of the ports; the kernel goes into an
unending disconnect/reinitialize loop as shown in the bug report.

This "7-port hub" comprises two four-port hubs with one plugged into
the other; the failures occur when a device is plugged into one of the
downstream hub's ports.  (These hubs have other problems too.  For
example, they bill themselves as USB-2.0 compliant but they only run
at full speed.)

It turns out that the failures are caused by bugs in both the kernel
and the hub.  The hub's bug is that it reports a different
bmAttributes value in its configuration descriptor following a remote
wakeup (0xe0 before, 0xc0 after -- the wakeup-support bit has
changed).

The kernel's bug is inside the hub driver's resume handler.  When
hub_activate() sees that one of the hub's downstream ports got a
wakeup request from a child device, it notes this fact by setting the
corresponding bit in the hub->change_bits variable.  But this variable
is meant for connection changes, not wakeup events; setting it causes
the driver to believe the downstream port has been disconnected and
then connected again (in addition to having received a wakeup
request).

Because of this, the hub driver then tries to check whether the device
currently plugged into the downstream port is the same as the device
that had been attached there before.  Normally this check succeeds and
wakeup handling continues with no harm done (which is why the bug
remained undetected until now).  But with these dodgy hubs, the check
fails because the config descriptor has changed.  This causes the hub
driver to reinitialize the child device, leading to the
disconnect/reinitialize loop described in the bug report.

The proper way to note reception of a downstream wakeup request is
to set a bit in the hub->event_bits variable instead of
hub->change_bits.  That way the hub driver will realize that something
has happened to the port but will not think the port and child device
have been disconnected.  This patch makes that change.

Cc: <stable@vger.kernel.org>
Tested-by: Jonathan McDowell <noodles@earth.li>
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Link: https://lore.kernel.org/r/YdCw7nSfWYPKWQoD@rowland.harvard.edu
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: minda.chen <minda.chen@starfivetech.com>
2 years agowatchdog: starfive: Get timeleft correctly
Xingyu Wu [Wed, 9 Nov 2022 06:34:14 +0000 (14:34 +0800)]
watchdog: starfive: Get timeleft correctly

Use flag to count timeleft and the flag is base on
reading register instead of interrupt handler function.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agoMerge branch 'CR_2553_ytphy_515_samin.guo' into 'jh7110-5.15.y-devel'
andy.hu [Wed, 9 Nov 2022 11:22:58 +0000 (11:22 +0000)]
Merge branch 'CR_2553_ytphy_515_samin.guo' into 'jh7110-5.15.y-devel'

CR_2553:  515: Use ytphy_link_change_notify to detect link changes by yt8521/YT8531.

See merge request sdk/linux!592

2 years agonet:phy:motorcomm: Fix the problem that phytool cannot be used by YT8531
Samin Guo [Fri, 4 Nov 2022 01:42:40 +0000 (09:42 +0800)]
net:phy:motorcomm: Fix the problem that phytool cannot be used by YT8531

phy_read_status should not judge the auto negotiation speed, which
will cause 0x1e to be frequently modified.

JH7110B In different speed modes, the tx_inverted  needs to be
dynamically updated to match the timming.

known issue:
Function yt8521_read_status, it will be executed once per second.
Can read and write ext reg (0xa001/a002/a003). This may causes the ext value
read by the phytool always is 0.

$ phytool write eth0/0/0x1e 0xa001
$ phytool read eth0/0/0x1f
0000

To avoid this problem, you can read 0x1f as fast as possible after
writing 0x1e.
$ phytool write eth0/0/0x1e 0xa001; phytool read eth0/0/0x1f
0x8160

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
2 years agomedia: v4l2_driver: Supplement the missing runtime pm get ops on more than once strea...
Kevin.xie [Tue, 8 Nov 2022 08:37:45 +0000 (16:37 +0800)]
media: v4l2_driver: Supplement the missing runtime pm get ops on more than once stream_on cases.

For example, if we run stf_isp_ctrl & v4l2test at the same time,
s_stream for sensor will be called twice,
so that rpm should be got twice too.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2 years agoMerge branch 'CR_2517_sec_jiajie.ho' into 'jh7110-5.15.y-devel'
andy.hu [Wed, 2 Nov 2022 09:52:16 +0000 (09:52 +0000)]
Merge branch 'CR_2517_sec_jiajie.ho' into 'jh7110-5.15.y-devel'

CR_2517_515:crypto:starfive: Fix "Unbalanced pm_runtime_enable!" warning

See merge request sdk/linux!583

2 years agoMerge branch 'CR_2522_ECO_EVB_515_samin.guo' into 'jh7110-5.15.y-devel'
andy.hu [Wed, 2 Nov 2022 09:45:57 +0000 (09:45 +0000)]
Merge branch 'CR_2522_ECO_EVB_515_samin.guo' into 'jh7110-5.15.y-devel'

CR_2522:support gmac with jh7110B-evb

See merge request sdk/linux!585

2 years agoMerge branch 'CR_2395_I2C_hal.feng' into 'jh7110-5.15.y-devel'
andy.hu [Wed, 2 Nov 2022 09:40:20 +0000 (09:40 +0000)]
Merge branch 'CR_2395_I2C_hal.feng' into 'jh7110-5.15.y-devel'

CR_2395_I2C_hal.feng

See merge request sdk/linux!581

2 years agoMerge branch 'CR_2498_spi_without_dma_devel_5.15_ziv.xu' into 'jh7110-5.15.y-devel'
andy.hu [Wed, 2 Nov 2022 09:37:53 +0000 (09:37 +0000)]
Merge branch 'CR_2498_spi_without_dma_devel_5.15_ziv.xu' into 'jh7110-5.15.y-devel'

CR 2498 spi without dma devel 5.15 ziv.xu

See merge request sdk/linux!582

2 years agodts:satrfive:jh7110: default support jh7110A gmac0
Samin Guo [Tue, 1 Nov 2022 12:09:36 +0000 (20:09 +0800)]
dts:satrfive:jh7110: default support jh7110A gmac0

default support jh7110A gmac0

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
2 years agonet:phy:motorcomm: support yt8521 inverted
Samin Guo [Tue, 1 Nov 2022 12:04:52 +0000 (20:04 +0800)]
net:phy:motorcomm: support yt8521 inverted

jh7110B need yt8521 inverted.

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
2 years agonet:phy:motorcomm: support modifying RGMII_TX_CLK delay train from dts
Samin Guo [Tue, 1 Nov 2022 11:03:46 +0000 (19:03 +0800)]
net:phy:motorcomm: support modifying RGMII_TX_CLK delay train from dts

support use original or inverted RGMII_TX_CLK delay train.
10M/100M/1000M can be configured independently.

tx_inverted_xx = val;

for example:
&gmac0 {
    #address-cells = <1>;
    #size-cells = <0>;
    phy0: ethernet-phy@0 {
    tx_inverted_10 = <0>;
    tx_inverted_100 = <1>;
    tx_inverted_1000 = <1>;
    };
};

0: original (default)
1: inverted

Signed-off-by: Samin Guo <samin.guo@starfivetech.com>
2 years agoCR_2517:crypto:starfive: Fix "Unbalanced pm_runtime_enable!" warning
Jia Jie Ho [Tue, 1 Nov 2022 06:40:42 +0000 (14:40 +0800)]
CR_2517:crypto:starfive: Fix "Unbalanced pm_runtime_enable!" warning

Crypto driver will probe multiple times waiting for
DMA to be ready, each time calling pm_runtime_enable().
Only call pm_runtime_enable() when it's not already enabled.

Signed-off-by: Jia Jie Ho <jiajie.ho@starfivetech.com>
2 years agospi-pl022-starfive.c: make spi work without dma
ziv.xu [Tue, 1 Nov 2022 06:12:21 +0000 (14:12 +0800)]
spi-pl022-starfive.c: make spi work without dma

make spi work without dma

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agoclk: starfive: Keep the clock apb0 enabled always
Hal Feng [Mon, 31 Oct 2022 05:52:18 +0000 (13:52 +0800)]
clk: starfive: Keep the clock apb0 enabled always

This solves crush problem of i2c runtime pm and
prevents some aon modules from working abnormally.

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2 years agoRevert "i2c: designware: Descend startup priority"
Hal Feng [Mon, 31 Oct 2022 05:46:12 +0000 (13:46 +0800)]
Revert "i2c: designware: Descend startup priority"

This reverts commit ef0fec210073c298598ab9a27e362e002dc0bf0b.
Then we keep the clock apb0 enabled always to fix crush
problem of i2c runtime pm.

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2 years agoMerge branch 'CR_2412_515_Clocktree_PLL1_Xingyu.Wu' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 28 Oct 2022 03:39:02 +0000 (03:39 +0000)]
Merge branch 'CR_2412_515_Clocktree_PLL1_Xingyu.Wu' into 'jh7110-5.15.y-devel'

CR_2412_515_Clocktree_PLL1_Xingyu.Wu

See merge request sdk/linux!553

2 years agoMerge branch 'CR_2440_515_Clocktree_1.5G_Xingyu.Wu' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 28 Oct 2022 03:38:26 +0000 (03:38 +0000)]
Merge branch 'CR_2440_515_Clocktree_1.5G_Xingyu.Wu' into 'jh7110-5.15.y-devel'

CR_2440_515_Clocktree_1.5G_Xingyu.Wu

See merge request sdk/linux!564

2 years agoMerge branch 'CR_2439_CPUFREQ_515_mason.huo' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 28 Oct 2022 03:36:22 +0000 (03:36 +0000)]
Merge branch 'CR_2439_CPUFREQ_515_mason.huo' into 'jh7110-5.15.y-devel'

Cr 2439 cpufreq 515 mason.huo

See merge request sdk/linux!562

2 years agoMerge branch 'CR_2417_CPUIdle_515_mason.huo' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 28 Oct 2022 03:35:46 +0000 (03:35 +0000)]
Merge branch 'CR_2417_CPUIdle_515_mason.huo' into 'jh7110-5.15.y-devel'

Cr 2417 cpu idle 515 mason.huo

See merge request sdk/linux!559

2 years agoMerge branch 'CR_2462_DEV_PM_mason.huo' into 'jh7110-5.15.y-devel'
andy.hu [Fri, 28 Oct 2022 03:27:46 +0000 (03:27 +0000)]
Merge branch 'CR_2462_DEV_PM_mason.huo' into 'jh7110-5.15.y-devel'

CR_2462 Port runtime PM from hibernation to devel

See merge request sdk/linux!574

2 years agoregulator: axp15060: Change the cpu_vdd_0p9 to cpu_vdd
mason.huo [Fri, 29 Jul 2022 07:17:55 +0000 (15:17 +0800)]
regulator: axp15060: Change the cpu_vdd_0p9 to cpu_vdd

Rename the cpu_vdd_0p9 regulator to cpu_vdd,
since the regulator may changed per cpu frequency.

Signed-off-by: mason.huo <mason.huo@starfivetech.com>
2 years agodriver: regulator: Add axp15060 pmic regulator driver
Kevin.xie [Tue, 12 Jul 2022 01:57:05 +0000 (09:57 +0800)]
driver: regulator: Add axp15060 pmic regulator driver

Add support for the axp15060 pmic.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2 years agocpufreq: starfive: Remove unuse clocks
mason.huo [Wed, 26 Oct 2022 03:47:45 +0000 (11:47 +0800)]
cpufreq: starfive: Remove unuse clocks

The jh7110 pll0 is fixed for cpufreq,
so we should change the cpu_core clock directly.
Remove the pll0 & osc clock.

Signed-off-by: mason.huo <mason.huo@starfivetech.com>
2 years agoriscv: defconfigs: Enable cpufreq for jh7110
mason.huo [Wed, 26 Oct 2022 03:43:20 +0000 (11:43 +0800)]
riscv: defconfigs: Enable cpufreq for jh7110

Set the default cpufreq govenor to ondemand.

Signed-off-by: mason.huo <mason.huo@starfivetech.com>
2 years agoriscv: dts: starfive: Remove unsupported cpu frequencies
mason.huo [Mon, 24 Oct 2022 08:51:24 +0000 (16:51 +0800)]
riscv: dts: starfive: Remove unsupported cpu frequencies

As the pll0 is fixed, there are only four cpu frequencies
that can be divided from the pll0, so remove the other
cpu frequencies.

Signed-off-by: mason.huo <mason.huo@starfivetech.com>
2 years agosound:dwc:i2s:Add hibernation about i2srx-3ch
Xingyu Wu [Thu, 27 Oct 2022 09:39:22 +0000 (17:39 +0800)]
sound:dwc:i2s:Add hibernation about i2srx-3ch

Add runtime pm and system pm in i2srx-3ch driver.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agosound:dwc:i2s:Add hibernation about i2stx-4ch1
Xingyu Wu [Thu, 27 Oct 2022 08:06:02 +0000 (16:06 +0800)]
sound:dwc:i2s:Add hibernation about i2stx-4ch1

Add runtime pm and system pm in i2stx-4ch1 driver.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agoriscv: deconfig: Enable pm advanced debug
mason.huo [Thu, 27 Oct 2022 07:25:21 +0000 (15:25 +0800)]
riscv: deconfig: Enable pm advanced debug

Enable pm advanced debug, so that we can
check runtime PM status.

Signed-off-by: mason.huo <mason.huo@starfivetech.com>
2 years agosound:starfive:pwmdac:Add runtime pm operation
Xingyu Wu [Fri, 21 Oct 2022 01:56:24 +0000 (09:56 +0800)]
sound:starfive:pwmdac:Add runtime pm operation

Add runtime pm operation in PWMDAC driver.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agortc:starfive: add pm ops for rtc
ziv.xu [Thu, 27 Oct 2022 02:55:00 +0000 (10:55 +0800)]
rtc:starfive: add pm ops for rtc

add pm ops for rtc

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agoi2c: designware: Descend startup priority
Hal Feng [Wed, 26 Oct 2022 13:13:09 +0000 (21:13 +0800)]
i2c: designware: Descend startup priority

So i2c will be initialized after uart.

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2 years agoi2c: designware: Uncomment and recover the pm functions
Hal Feng [Tue, 25 Oct 2022 12:18:39 +0000 (20:18 +0800)]
i2c: designware: Uncomment and recover the pm functions

Uncomment the system pm and runtime pm ops functions. Restore
the Synopsys DesignWare i2c driver to the original version.

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2 years agoCR_2345_Audio_DevicePM_walker.chen
Walker Chen [Thu, 27 Oct 2022 03:50:06 +0000 (11:50 +0800)]
CR_2345_Audio_DevicePM_walker.chen

Fix the bug that pdm function name spell error.

Signed-off-by: Walker Chen <walker.chen@starfivetech.com>
2 years agoCR_2345_Audio_DevicePM_walker.chen
Walker Chen [Wed, 26 Oct 2022 11:19:12 +0000 (19:19 +0800)]
CR_2345_Audio_DevicePM_walker.chen

Disable clock when audio driver is loaded.

Signed-off-by: Walker Chen <walker.chen@starfivetech.com>
2 years agodriver:gpu: add gpu runtime pm
shanlong.li [Wed, 26 Oct 2022 09:44:58 +0000 (02:44 -0700)]
driver:gpu: add gpu runtime pm

fix up system pm error and add runtime pm

Signed-off-by: shanlong.li <shanlong.li@starfivetech.com>
2 years agosound:starfive:Add hibernation in I2S
Xingyu Wu [Wed, 26 Oct 2022 09:38:41 +0000 (17:38 +0800)]
sound:starfive:Add hibernation in I2S

Add hibernation in starfive I2S driver.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agortc-starfive.c:add system pm for rtc
ziv.xu [Wed, 26 Oct 2022 06:14:04 +0000 (14:14 +0800)]
rtc-starfive.c:add system pm for rtc

add system pm for rtc

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agodrive:mailbox:add pm ops
ys [Wed, 26 Oct 2022 06:18:49 +0000 (23:18 -0700)]
drive:mailbox:add pm ops

add runtime pm and system pm ops

Signed-off-by: ys <eason.xiong@starfivetech.com>
2 years agosec:starfive:add sec runtime PM ops
William Qiu [Tue, 25 Oct 2022 07:00:23 +0000 (15:00 +0800)]
sec:starfive:add sec runtime PM ops

add sec runtime PM ops.

Signed-off-by: William Qiu <william.qiu@starfivetech.com>
2 years agoSDIO:starfive:modify SDIO/EMMC runtime PM callback function
William Qiu [Tue, 25 Oct 2022 02:39:46 +0000 (10:39 +0800)]
SDIO:starfive:modify SDIO/EMMC runtime PM callback function

modify SDIO/EMMC runtime PM callback function.

Signed-off-by: William Qiu <william.qiu@starfivetech.com>
2 years agocanfd:ipms:modify runtime PM callback funciton
William Qiu [Tue, 25 Oct 2022 02:36:38 +0000 (10:36 +0800)]
canfd:ipms:modify runtime PM callback funciton

modify runtime PM callback function.

Signed-off-by: William Qiu <william.qiu@starfivetech.com>
2 years agoclk:starfive:isp:Add runtime and system pm control
Xingyu Wu [Fri, 30 Sep 2022 07:26:59 +0000 (15:26 +0800)]
clk:starfive:isp:Add runtime and system pm control

Add runtime and system pm in isp clock tree driver.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agopwm: starfive: Remove macro UNIVERSAL_DEV_PM_OPS
Hal Feng [Fri, 21 Oct 2022 06:38:17 +0000 (14:38 +0800)]
pwm: starfive: Remove macro UNIVERSAL_DEV_PM_OPS

Because it causes error when system pm.

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2 years agodrivers: temp sensor: reset execute permissions
ziv.xu [Fri, 21 Oct 2022 06:36:51 +0000 (14:36 +0800)]
drivers: temp sensor: reset execute permissions

reset execute permissions for FILE: drivers/hwmon/sfctemp.c

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agoadd devcie pm for temp sensor
ziv.xu [Fri, 21 Oct 2022 03:43:22 +0000 (11:43 +0800)]
add devcie pm for temp sensor

add device pm for temp sensor

Signed-off-by: ziv.xu <ziv.xu@starfive.com>
2 years agoadd device pm for trng
Ziv.Xu [Sat, 8 Oct 2022 07:17:46 +0000 (15:17 +0800)]
add device pm for trng

add device pm for trng

Signed-off-by: Ziv.Xu <Ziv.Xu@starfivetech.com>
2 years agoadd device pm for spi
Ziv.Xu [Mon, 10 Oct 2022 06:58:15 +0000 (14:58 +0800)]
add device pm for spi

add device pm for spi

Signed-off-by: Ziv.Xu <Ziv.Xu@starfivetech.com>
2 years agoSDIO:starfive:add SDIO/EMMC runtime pm ops
William Qiu [Fri, 21 Oct 2022 03:46:05 +0000 (11:46 +0800)]
SDIO:starfive:add SDIO/EMMC runtime pm ops

add SDIO/EMMC runtime pm ops.

Signed-off-by: William Qiu <william.qiu@starfivetech.com>
2 years agocanfd:ipms:add canfd runtime PM ops
William Qiu [Fri, 21 Oct 2022 02:13:13 +0000 (10:13 +0800)]
canfd:ipms:add canfd runtime PM ops

add canfd runtime PM ops.

Signed-off-by: William Qiu <william.qiu@starfivetech.com>
2 years agosound:starfive:spdif:Add hibernation operation
Xingyu Wu [Thu, 20 Oct 2022 07:44:59 +0000 (15:44 +0800)]
sound:starfive:spdif:Add hibernation operation

Add runtime pm and system pm in spdif driver.

Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com>
2 years agopwm: starfive: Add pm handling (system/runtime pm ops)
Hal Feng [Wed, 19 Oct 2022 12:10:56 +0000 (20:10 +0800)]
pwm: starfive: Add pm handling (system/runtime pm ops)

Add system/runtime pm ops functions and enable runtime pm.

Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2 years agopinctrl:starfive: Add system pm interface
Jianlong Huang [Wed, 19 Oct 2022 10:00:02 +0000 (18:00 +0800)]
pinctrl:starfive: Add system pm interface

Support system pm fuction when suspend and resume.

Signed-off-by: Jianlong Huang <jianlong.huang@starfivetech.com>
2 years agoCR_2345_Audio_DevicePM_walker.chen
Walker Chen [Fri, 14 Oct 2022 07:43:20 +0000 (15:43 +0800)]
CR_2345_Audio_DevicePM_walker.chen

Implement Runtime PM and System PM for PDM and TDM module.

Signed-off-by: Walker Chen <walker.chen@linux.starfivetech.com>
2 years agoadd system pm for watchdog
Ziv.Xu [Thu, 13 Oct 2022 09:09:05 +0000 (17:09 +0800)]
add system pm for watchdog

add system pm for watchdog

Signed-off-by: Ziv.Xu <Ziv.Xu@starfivetech.com>
2 years agoadd runtime pm for watchdog
Ziv.Xu [Sat, 8 Oct 2022 07:02:15 +0000 (15:02 +0800)]
add runtime pm for watchdog

add runtime pm for watchdog

Signed-off-by: Ziv.Xu <Ziv.Xu@starfivetech.com>
2 years agousb: cdns: add pm and runtume pm ops
minda.chen [Sat, 8 Oct 2022 11:07:06 +0000 (19:07 +0800)]
usb: cdns: add pm and runtume pm ops

add starfive pm supend/resume and runtime pm runtime
suspend and resume ops

Signed-off-by: minda.chen <minda.chen@starfivetech.com>
2 years agodrivers: pci: Support system pm no irq ops.
Kevin.xie [Thu, 13 Oct 2022 03:29:30 +0000 (11:29 +0800)]
drivers: pci: Support system pm no irq ops.

Because of the limitation of hardware design, only enable/disable clk here.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2 years agodrivers: pci: Support runtime pm & release when found empty slot in probe.
Kevin.xie [Thu, 13 Oct 2022 02:53:59 +0000 (10:53 +0800)]
drivers: pci: Support runtime pm & release when found empty slot in probe.

Used PLDA link up/down status in probe to indicate the slot situations.

Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>