Clément Peron

Members
  • Posts

    2
  • Joined

  • Last visited

Reputation Activity

  1. Like
    Clément Peron got a reaction from Werner in Unable to make Panfrost work on H6   
    @Werner @NicoD There seems to have an issue with the clock implementation in the kernel.
    You can look at @megi explanation about PLL lock of the NKMP clock.
     
    Allwinner GPU clock is actually prone to overshooting which make the GPU DVFS not usable at the time.
  2. Like
    Clément Peron reacted to Icenowy in A try on utilizing H6 PCIe with "Virtualization"   
    As we know, the PCIe on H6 is buggy, which doesn't offer linear address, and Linux cannot support such kind of configuration.
     
    However, the Cortex-A53 cores used by H6 supports virtualization, which can be used to change the order of the address space.
     
    Recently, I tried to make use of virtualization to provide linear mapping of PCIe, and I succeed in making an Intel 6205 wireless card working.
     
    The hypervisor code is at https://github.com/Icenowy/aw-el2-barebone . It's intended to start before U-Boot, and located at 0x40010000.
     
    A U-Boot fork that is patched to load the hypervisor is at https://github.com/Icenowy/u-boot/tree/h6-load-hyp , and a kernel that utilizes the wrapped PCIe (and patched to reserve memory for the hypervisor) is at https://github.com/Icenowy/linux/tree/h6-pcie-wrapped .
     
    In order to let the hypervisor start before U-Boot, BL31 needs to be built with `PRELOADED_BL33_BASE=0x40010000` in make parameter -- this will change the EL2 entrypoint to the hypervisor. Mainline ATF from ARM works.
     
    Contributions to the hypervisor is welcomed.
     
    (In addition, abusing virtualization in such way will prevent us from using KVM. But I think more people will want PCIe instead of KVM, right?)