summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-03-05ASoC: starfive: Add SPDIF and PCM driverXingyu Wu5-0/+1125
Add SPDIF and SPDIF-PCM driver for StarFive JH7110. Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05ASoC: codecs: Add AC108 Codec driverXingyu Wu7-0/+4677
Add AC108 Codec driver and AC101 driver for AC10x. Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05ASoC: wm8960: Configuration for JH7110 AudioWalker Chen2-108/+243
Configure WM8960 to be used for JH7110 TDM & I2S. Signed-off-by: Walker Chen <walker.chen@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05dmaengine: dw-axi-dmac: Drop unused print messageWalker Chen1-1/+1
Removed printing information which is not related to StarFive platform. Signed-off-by: Walker Chen <walker.chen@starfivetech.com>
2024-03-05perf: sbi: disable cpu hotplug callback.Minda Chen1-0/+2
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> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05RISC-V: Added generic pmu-events mapfileJoão Mário Domingos1-0/+20
The pmu-events now supports custom events for RISC-V, plus the cycle, time and instret events were defined. Signed-off-by: João Mário Domingos <joao.mario@tecnico.ulisboa.pt>
2024-03-05RISC-V: Support CPUID for risc-v in perfJoão Mário Domingos1-0/+18
This patch creates the header.c file for the risc-v architecture and introduces support for PMU identification through sysfs. It is now possible to configure pmu-events in risc-v. Depends on patch [1], that introduces the id sysfs file. Signed-off-by: João Mário Domingos <joao.mario@tecnico.ulisboa.pt> Signed-off-by: minda.chen <minda.chen@starfivetech.com>
2024-03-05RISC-V: Create unique identification for SoC PMUJoão Mário Domingos1-0/+47
The SBI PMU platform driver did not provide any identification for perf events matching. This patch introduces a new sysfs file inside the platform device (soc:pmu/id) for pmu identification. The identification is a 64-bit value generated as: [63-32]: mvendorid; [31]: marchid[MSB]; [30-16]: marchid[15-0]; [15-0]: mimpid[15MSBs]; The CSRs are detailed in the RISC-V privileged spec [1]. The marchid is split in MSB + 15LSBs, due to the MSB being used for open-source architecture identification. [1] https://github.com/riscv/riscv-isa-manual Signed-off-by: João Mário Domingos <joao.mario@tecnico.ulisboa.pt>
2024-03-05drivers: nvme: Add precheck and delay for CQE pending status.Kevin.xie1-0/+10
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>
2024-03-05regulator: starfive-jh7110: Add regulator support for JH7110 A type EVB.Kevin.xie4-0/+161
Add 7 regulators base on regulator framework for JH7110 evb HW design. Signed-off-by: Kevin.xie <kevin.xie@starfivetech.com>
2024-03-05CAN: starfive - Add CAN engine supportWilliam Qiu3-0/+1281
Adding device probe StarFive CAN module. Signed-off-by: William Qiu <william.qiu@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05dt-bindings: CAN: Add StarFive CAN moduleWilliam Qiu1-0/+97
Add documentation to describe StarFive CAN engine. Signed-off-by: William Qiu <william.qiu@starfivetech.com>
2024-03-05uart: 8250: add reset operation in runtime PMWilliam Qiu1-0/+4
add reset operation in runtime PM Signed-off-by: William Qiu <william.qiu@starfivetech.com>
2024-03-05driver:uart: fix up uart communicate failshanlong.li1-4/+4
fix up uart communicate fail Signed-off-by: shanlong.li <shanlong.li@starfivetech.com>
2024-03-05uart: 8250: Add dw auto flow ctrl supportMinda Chen5-1/+21
Add designeware 8250 auto flow ctrl support. Enable it by add auto-flow-control in dts. Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
2024-03-05driver: rtc: Add StarFive JH7110 rtc driverziv.xu3-0/+752
Add RTC driver and support for StarFive JH7110 SoC. Signed-off-by: ziv.xu <ziv.xu@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05driver: mailbox: Add mailbox drivershanlong.li4-0/+771
Add mailbox driver. Signed-off-by: shanlong.li <shanlong.li@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05drivers: mtd: gigadevice: add gd25lq256d 32M flash supportZiv Xu1-0/+4
add gd25lq256d 32M flash support Signed-off-by: Ziv Xu <ziv.xu@starfivetech.com>
2024-03-05i2c: designware: Delete SMBus functionalitiesHal Feng1-6/+4
The driver didn't implement the smbus interface, so replace the SMBus functionalities with I2C_FUNC_SMBUS_EMUL. Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05usr: Add gen_initramfs_list.shHal Feng1-0/+328
Add gen_initramfs_list.sh Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05of: configfs: Add configfs functionJianlong Huang3-0/+285
Signed-off-by: Jianlong Huang <jianlong.huang@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05riscv: configs: Add starfive_jh7110_defconfigHal Feng1-0/+368
Add starfive_jh7110_defconfig for JH7110 EVB. The code is ported from tag JH7110_SDK_6.1_v5.11.3 Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05riscv: dts: starfive: Add evb-overlay dtso subdirHal Feng8-0/+428
Create subdir evb-overlay/ and add overlay .dtso for JH7110 EVB. The code is ported from tag JH7110_SDK_6.1_v5.11.3 Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05riscv: dts: starfive: Add JH7110 EVB expanded device treeHal Feng10-1/+662
Add JH7110 EVB expanded device tree. The code is ported from tag JH7110_SDK_6.1_v5.11.3 Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05riscv: dts: starfive: Add JH7110 EVB device treeHal Feng6-7/+2444
Add JH7110 evaluation board device tree. The code is ported from tag JH7110_SDK_6.1_v5.11.3 Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05mm/pgtable-generic.c: Export symbol __pte_offset_mapHal Feng1-0/+1
So JH7110 vdec can call pte_offset_map() when it is built as a module. Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05pinctrl: starfive: jh7110: Unset .strict in pinmux_opsHal Feng1-1/+0
Allow simultaneous use of the same pin for GPIO and another function. This feature is used in HDMI hot plug detect. Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05ASoC: dwc: i2s: Add RX master support for StarFive JH7110 SoCXingyu Wu1-0/+31
Add JH7110 I2S RX master support, so the PDM can work on JH7110 EVB board. Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05ASoC: dwc: i2s: Fix getting platform data error for StarFive JH7110Xingyu Wu1-0/+4
JH7110 need to use a DT specific function to get the platform data, otherwise, it fails in probe(). Fixes: 9c97790a07dc ("ASoC: dwc: Fix non-DT instantiation") Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05spi: spl022: Get and deassert reset in probe()ziv.xu1-0/+17
This fix spi1~6 communication time out. Signed-off-by: ziv.xu <ziv.xu@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05mmc: starfive: Change the voltage to adapt to JH7110 EVBWilliam Qiu1-0/+30
Change the voltage, so the driver can adapt to JH7110 EVB. Signed-off-by: William Qiu <william.qiu@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05MAINTAINERS: Update all StarFive entriesHal Feng1-4/+57
Merge all StarFive maintainers changes together. Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05riscv: dts: starfive: Add full support (except VIN and VOUT) for JH7110 and ↵Hal Feng2-0/+432
VisionFive 2 board Merge all StarFive dts patches together except VIN and VOUT. Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
2024-03-05riscv: dts: starfive: pinfunc: Fix the pins name of I2STX1Xingyu Wu1-2/+2
These pins are actually I2STX1 clock input, not I2STX0, so their names should be changed. Signed-off-by: Xingyu Wu <xingyu.wu@starfivetech.com> Reviewed-by: Walker Chen <walker.chen@starfivetech.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
2024-03-05pmdomain: starfive: Update prefixes for AON power domainChanghuang Liang1-2/+2
Use "JH7110_AON_PD_" prefix for AON power doamin for JH7110 SoC. Reviewed-by: Walker Chen <walker.chen@starfivetech.com> Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com> Link: https://lore.kernel.org/r/20230927130734.9921-3-changhuang.liang@starfivetech.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2024-03-05dt-bindings: power: Update prefixes for AON power domainChanghuang Liang1-2/+3
Use "JH7110_AON_PD_" prefix for AON power domain for JH7110 SoC. Reviewed-by: Walker Chen <walker.chen@starfivetech.com> Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com> Acked-by: Conor Dooley <conor.dooley@microchip.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/20230927130734.9921-2-changhuang.liang@starfivetech.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2024-03-05pmdomain: starfive: Move Kconfig file to the pmdomain subsystemUlf Hansson3-1/+2
The Kconfig belongs closer to the corresponding implementation, hence let's move it from the soc subsystem to the pmdomain subsystem. Cc: Walker Chen <walker.chen@starfivetech.com> Cc: Conor Dooley <conor@kernel.org> Acked-by: Conor Dooley <conor.dooley@microchip.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2024-03-05pmdomain: Prepare to move Kconfig files into the pmdomain subsystemUlf Hansson2-0/+6
Rather than having the various Kconfig files for the genpd providers sprinkled across subsystems, let's prepare to move them into the pmdomain subsystem along with the implementations. Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2024-03-05pmdomain: starfive: Add JH7110 AON PMU supportChanghuang Liang1-5/+52
Add AON PMU for StarFive JH7110 SoC. It can be used to turn on/off the dphy rx/tx power switch. Reviewed-by: Walker Chen <walker.chen@starfivetech.com> Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com> Signed-off-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230913-dude-imprecise-fc32622bc947@spud Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2024-03-05pmdomain: starfive: Extract JH7110 pmu private operationsChanghuang Liang1-27/+62
Move JH7110 private operation into private data of compatible. Convenient to add AON PMU which would not have interrupts property. Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com> Reviewed-by: Walker Chen <walker.chen@starfivetech.com> Signed-off-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230913-slideshow-luckiness-38ff17de84c6@spud Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2024-03-05pmdomain: starfive: Replace SOC_STARFIVE with ARCH_STARFIVEChanghuang Liang1-2/+2
Using ARCH_FOO symbol is preferred than SOC_FOO. Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Reviewed-by: Walker Chen <walker.chen@starfivetech.com> Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com> Signed-off-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230913-legibly-treachery-567cffcb5604@spud Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2024-03-05dt-bindings: power: Add power-domain header for JH7110Changhuang Liang1-1/+4
Add power-domain header for JH7110 SoC, it can use to operate dphy power. Signed-off-by: Changhuang Liang <changhuang.liang@starfivetech.com> Signed-off-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20230913-grumbly-rewrite-34c85539f2ed@spud Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2024-03-05ASoC: starfive/jh7110-pwmdac: Convert to platform remove callback returning voidUwe Kleine-König1-3/+2
The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20231013221945.1489203-12-u.kleine-koenig@pengutronix.de Signed-off-by: Mark Brown <broonie@kernel.org>
2024-03-05ASoC: Update jh7110 PWM DAC for ops moveMark Brown1-1/+1
For some reason the JH7110 PWM DAC driver made it through build testing in spite of not being updated for the move of probe() to the ops struct. Make the required update. Signed-off-by: Mark Brown <broonie@kernel.org>
2024-03-05ASoC: starfive: Add JH7110 PWM-DAC driverHal Feng3-0/+539
Add PWM-DAC driver support for the StarFive JH7110 SoC. Reviewed-by: Walker Chen <walker.chen@starfivetech.com> Signed-off-by: Hal Feng <hal.feng@starfivetech.com> Link: https://lore.kernel.org/r/20230814080618.10036-3-hal.feng@starfivetech.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-03-05ASoC: dt-bindings: Add StarFive JH7110 PWM-DAC controllerHal Feng1-0/+76
Add bindings for the PWM-DAC controller on the JH7110 RISC-V SoC by StarFive Ltd. Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Hal Feng <hal.feng@starfivetech.com> Link: https://lore.kernel.org/r/20230814080618.10036-2-hal.feng@starfivetech.com Signed-off-by: Mark Brown <broonie@kernel.org>
2024-03-05PCI: starfive: Add JH7110 PCIe controllerMinda Chen4-1/+556
Add StarFive JH7110 SoC PCIe controller platform driver codes, JH7110 with PLDA host PCIe core. Signed-off-by: Minda Chen <minda.chen@starfivetech.com> Co-developed-by: Kevin Xie <kevin.xie@starfivetech.com> Reviewed-by: Mason Huo <mason.huo@starfivetech.com>
2024-03-05PCI: Add PCIE_RESET_CONFIG_DEVICE_WAIT_MS waiting time valueKevin Xie1-0/+16
Add the PCIE_RESET_CONFIG_DEVICE_WAIT_MS macro to define the minimum waiting time between exit from a conventional reset and sending the first configuration request to the device. As described in PCI base specification r6.0, section 6.6.1 <Conventional Reset>, there are two different use cases of the value: - "With a Downstream Port that does not support Link speeds greater than 5.0 GT/s, software must wait a minimum of 100 ms following exit from a Conventional Reset before sending a Configuration Request to the device immediately below that Port." - "With a Downstream Port that supports Link speeds greater than 5.0 GT/s, software must wait a minimum of 100 ms after Link training completes before sending a Configuration Request to the device immediately below that Port." Signed-off-by: Kevin Xie <kevin.xie@starfivetech.com> Reviewed-by: Mason Huo <mason.huo@starfivetech.com> Acked-by: Bjorn Helgaas <bhelgaas@google.com>
2024-03-05dt-bindings: PCI: Add StarFive JH7110 PCIe controllerMinda Chen1-0/+120
Add StarFive JH7110 SoC PCIe controller dt-bindings. JH7110 using PLDA XpressRICH PCIe host controller IP. Signed-off-by: Minda Chen <minda.chen@starfivetech.com> Reviewed-by: Hal Feng <hal.feng@starfivetech.com> Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Reviewed-by: Rob Herring <robh@kernel.org>
2024-03-05PCI: plda: Add host init/deinit and map bus functionsMinda Chen2-14/+139
Add PLDA host plda_pcie_host_init()/plda_pcie_host_deinit() and map bus function. So vendor can use it to init PLDA PCIe host core. Signed-off-by: Minda Chen <minda.chen@starfivetech.com> Reviewed-by: Mason Huo <mason.huo@starfivetech.com>