Age | Commit message (Collapse) | Author |
|
Passthrough lvds pwm, otherwise dom0 will panic when reboot if
domu started and shutdown, because LVDS_1_PWM_0 is assigned
to domu and when domu shutdown, the resource will be powered
off, however dom0 still think it is powered on.
since lvds1_pwm is expected for domu, so let's passthrough it.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Flynn xu <flynn.xu@nxp.com>
(cherry picked from commit abb243aba12a6649fad8114e298ff075b0a8399d)
|
|
The resources are wrongly added.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Cleanup the resources that not could be set SID and remove the UNUSED
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Flynn xu <flynn.xu@nxp.com>
|
|
When resources are owned by M41, we need to handle that correctly in
xen.
Also drop power doamins for xen,shared gpio, xen will power up the gpio.
gpio1 is owned by M41, so we also need to check its power status in xen.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Flynn xu <flynn.xu@nxp.com>
|
|
CM41 runs before CortexA, we should not use smmu to restrict it, because
smmu is owned by xen. Also remove MU_13/12 which is wrongly added
before.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Flynn xu <flynn.xu@nxp.com>
|
|
Update resource ID table to SCFW commit:
004247e14afc ("SCF-341 Fix bug in setting large slice clock divider")
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 8fa8f318eeac939604e2616fd7a6e1fd10d837a0)
|
|
the region of CMA associated with M0+ core is in [256M, 1G]
It can't be guaranteed that it's uncachable for M0+ core.
There are some risk, reserve memory to make sure it's in [128M, 256M].
Eliminate the potential risks
Signed-off-by: ming_qian <ming.qian@nxp.com>
|
|
Update memory region according to rpmsg and vpu changes.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Correct gpu reg, otherwise DPU/GPU could not share memory.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Flynn xu <flynn.xu@nxp.com>
Reviewed-by: Xianzhong <xianzhong.li@nxp.com>
|
|
We are using SPI 33 for virtual PL031, but dom0 not passthrough
the interrupt, so domu are not able to use this.
In this patch also correct domu android car rtc node interrupts
property.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Flynn xu <flynn.xu@nxp.com>
|
|
Android auto use sai0 for bluetooth phone audio output,
so enable sai0 for android auto.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
HDMI power domain is under DC0, however DC0 is used by the first OS,
so domu has no permission to use HDMI.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Flynn xu <flynn.xu@nxp.com>
|
|
Add rfkill node for domu car for bluetooth usage.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Flynn xu <flynn.xu@nxp.com>
|
|
Passthrough hifi dsp to DomU, smmu is enabled for dsp,
so the mu13_B side also needs to be mapped into smmu table.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Passthrough esai0 to domu, the audio in dom0 is broken for now.
Because of there are some shared clock/power for sai and esai,
we could not cleanly parition the audio. So only support audio
in domu now, in future, we could use paravirtualized audio.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Map M41 reserved DDR memory for rpmsg
Add init-smmu-bypass, because m41 is started by SCU at early stage,
configure sid for a running master needs some specific handle. For
CM41, we configure S2CR with BYPASS in init stage.
Add mipi csi gpio
Add can_rpmsg node, this node is only used by android auto kernel.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Fix PCIEA rsrc id, then uboot could program SID correctly for PCIEA.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Andy Duan <fugang.duan@nxp.com>
|
|
commit 108e99f6487("MLK-19774 VPU: Add CSR address in dts and remove some CM4 legacy code")
did not take xen domu into consideration and cause VPU probe failure in
domu.
Fix it by add reg-csr in domu dts and passthrough the reg space.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Fugang Duan <fugang.duan@nxp.com>
|
|
Passthrough to domu.
BuildInfo:
- SCFW a27e9643, SECO-FW 31fabbff, IMX-MKIMAGE 7eae081f, ATF e6db8a6
- U-Boot 2018.03-00007-gb8296e64d2
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Passthrough usb typec to domu
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Use ISI0-3 in DomU, use ISI4-7 in Dom0.
BuildInfo:
- SCFW a958746e, SECO-FW 31fabbff, IMX-MKIMAGE f244aefa, ATF 1590be0
- U-Boot 2018.03-00707-g884cada50b
Use `mx8_v4l2_cap_drm.out -cam 0xf` to test camera in Dom0 and DomU
after `systemctl stop weston`.
One remaing issue is that ISI_CH0 is the parent power domain,
if dom0 runtime power down this domain, DomU will camera will
panic.
Since there is an i2c controller passthrough, the orignal backend
pvi2c adapter idx will be changed to 0, so reflect that change
in domu.dts.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Introduce xen_i2c node and passthrough the i2c0 sensors to domu.
The BuildInfo
- SCFW 148acb34, SECO-FW 31fabbff, IMX-MKIMAGE f244aefa, ATF 1590be0
- U-Boot 2018.03-00707-g884cada50b-dirty
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
passthrough crypto to domu
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Passthrough VPU to DomU
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Passthrough pcie to DomU to support pcie wifi.
Add the needed GPIOs in dom0 dts.
Add SMMU hook for pciea.
Modify the reserved-memory for pcie usage.
passthrough pcie related LPCG to make sure domu not panic when access
LPCG.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Enable the gpio controller, but remove the power-domain property.
Currently we are using mmio trap in XEN to handle GPIO.
For Dom0, it has the highest priviledge to read/write any gpio registers
and the interrupts are also forwarded to Dom0.
For DomU, a new property as following is added to doma node in dom0 dts.
gpios = <&gpio1 13 GPIO_ACTIVE_LOW>, <&gpio4 9 GPIO_ACTIVE_LOW>;
xen will parse it and restrict domu read/write behavior.
xen,shared means mmio trap is used.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
1. Dom0 dts include fsl-imx8qm-mek.dtsi
2. Add /memreserve/ according to reserved-memory no-map node, then
xen will not use these memory. The memory region are used by
vpu/dsp/rpmsg, so xen should not touch them.
3. correct dom0 cma area, CM4 has limitation that the max access address
is 0xE0000000, so the alloc-ranges should consider the limitation,
otherwise rpmsg dma allocation will alloc memory higher than
0xE0000000 and M4 will crash.
4. Hook CM41 with SMMU, added the addresses the CM41 will access, then
after SMMU enabled, CM41 could access the address. To support
Rear-View Camera, CM41 is kicked off by SCU at very early stage,
DomU memory almost has no chance to have machine address 0x90000000
included which is the vring desc buffer. So we have to enable SMMU
to let CM41 access the memory.
5. Since DomU Guest RAM0 base is moved to 0x80000000, Let's change DomU
ip address space to their machine address, since there is no conflict
now.
6. Add reserved-memory in DomU dts, we enabled xen xl to copy that
to DomU dtb.
7. Mark PCI/VPU as xen,passthrough, but not supported in DomU now.
8. Add Pixel_combiner2 passthrough to make dpu2 display work.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com>
|
|
Update dom node with name and reg, the two property
will be parsed by xen to create the mapping between
domain name and partition id.
With the mapping, xen could power off the resources
owned by the partition when destroy/reboot/shutdown
the domain.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
This fixes a pinctrl error in the guest, fixing these warnings:
imx8qm-pinctrl passthrough:iomuxc: pin_config_set op failed for pin 60
imx-lpi2c 157247000.i2c: Error applying setting, reverse things back
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
|
|
This was always wrong but causes failures recently after dom0 switched
to using mu1 and claiming it's interrupt
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
|
|
pd_dc1 is a power domain node, marking it as xen,passthrough
meaning disabled. Alought when enabing xen passthrough
the second DC to DomU, we no need this power domain,
but Dom0 linux will disable unused clks and trigger
error message, "populate_gate_pd: failed to get pd".
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
|
|
Passthrough EDMA0 Channel 14/15 and lpuart1 to DomU.
Delete the original edma0 node and introduce the other 5 nodes
to which contains two channels each node.
Currently the nodes are included in fsl-imx8qm-xen.dtsi.
The modem-reset node to support bluetooth is not introduced in DomU
dts, because gpio support has not been done.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
To support passthrough, we need some nodes for dom0 and domu.
In dom0, the nodes are under root node, however the nodes
are under passthrough node for domu.
To make consistent, when updating dtsi, to avoid break domu,
create a dedicated fsl-imx8qm-device.dtsi only contain device node
that might be passthrough to domu. The fsl-imx8qm-device.dtsi
contains node previously in fsl-imx8qm.dtsi, no other change.
Create a fsl-imx8qm-xen.dtsi to include changes needed for xen.
The logic is:
fsl-imx8qm.dtsi include fsl-imx8qm-device.dtsi in root node
fsl-imx8qm-mek-dom0.dts include fsl-imx8qm-mek.dts
fsl-imx8qm-mek-domu.dts include fsl-imx8qm-device.dtsi in passthrough
node.
In dom0 dts, there is a new node that used by U-Boot to create new
software partition, the partition only effects when it has a dedicated
MU, there are 5 MUs, 0A is used by Dom0, 1A is used by ATF, so for DomU,
2A/3A/4A could be used: SC_R_MU_0A SC_R_MU_1A SC_R_MU_2A SC_R_MU_3A
SC_R_MU_4A.
domu {
dom2: dom@2 {
compatible = "xen,domu";
rsrcs = <
....
>;
pads = <
...
>;
};
};
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
|