mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
mailbox: Introduce support for T-head TH1520 Mailbox driver
This driver was tested using the drm/imagination GPU driver. It was able to successfully power on the GPU, by passing a command through mailbox from E910 core to E902 that's responsible for powering up the GPU. The GPU driver was able to read the BVNC version from control registers, which confirms it was successfully powered on. [ 33.957467] powervr ffef400000.gpu: [drm] loaded firmware powervr/rogue_36.52.104.182_v1.fw [ 33.966008] powervr ffef400000.gpu: [drm] FW version v1.0 (build 6621747 OS) [ 38.978542] powervr ffef400000.gpu: [drm] *ERROR* Firmware failed to boot Though the driver still fails to boot the firmware, the mailbox driver works when used with the not-yet-upstreamed firmware AON driver. There is ongoing work to get the BXM-4-64 supported with the drm/imagination driver [1], though it's not completed yet. This work is based on the driver from the vendor kernel [2]. Link: https://gitlab.freedesktop.org/imagination/linux-firmware/-/issues/2 [1] Link: https://github.com/revyos/thead-kernel.git [2] Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com> Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
This commit is contained in:
committed by
Jassi Brar
parent
271ee263cc
commit
5d4d263e1c
@@ -19871,6 +19871,7 @@ T: git https://github.com/pdp7/linux.git
|
||||
F: Documentation/devicetree/bindings/clock/thead,th1520-clk-ap.yaml
|
||||
F: arch/riscv/boot/dts/thead/
|
||||
F: drivers/clk/thead/clk-th1520-ap.c
|
||||
F: drivers/mailbox/mailbox-th1520.c
|
||||
F: include/dt-bindings/clock/thead,th1520-clk-ap.h
|
||||
|
||||
RNBD BLOCK DRIVERS
|
||||
|
||||
@@ -296,4 +296,14 @@ config QCOM_IPCC
|
||||
acts as an interrupt controller for receiving interrupts from clients.
|
||||
Say Y here if you want to build this driver.
|
||||
|
||||
config THEAD_TH1520_MBOX
|
||||
tristate "T-head TH1520 Mailbox"
|
||||
depends on ARCH_THEAD || COMPILE_TEST
|
||||
help
|
||||
Mailbox driver implementation for the Thead TH-1520 platform. Enables
|
||||
two cores within the SoC to communicate and coordinate by passing
|
||||
messages. Could be used to communicate between E910 core, on which the
|
||||
kernel is running, and E902 core used for power management among other
|
||||
things.
|
||||
|
||||
endif
|
||||
|
||||
@@ -64,3 +64,5 @@ obj-$(CONFIG_SPRD_MBOX) += sprd-mailbox.o
|
||||
obj-$(CONFIG_QCOM_CPUCP_MBOX) += qcom-cpucp-mbox.o
|
||||
|
||||
obj-$(CONFIG_QCOM_IPCC) += qcom-ipcc.o
|
||||
|
||||
obj-$(CONFIG_THEAD_TH1520_MBOX) += mailbox-th1520.o
|
||||
|
||||
597
drivers/mailbox/mailbox-th1520.c
Normal file
597
drivers/mailbox/mailbox-th1520.c
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user