jernej

Members
  • Content Count

    725
  • Joined

  • Last visited


Reputation Activity

  1. Like
    jernej got a reaction from gounthar in Orangepi 3 h6 allwiner chip   
    It seems that OrangePi 3 has DDC_CEC_EN signal (pin PH2), which has to be enabled in order to read out EDID. Can someone try to enable it by hand and then re-plug hdmi to see if it helps?
     
    Correct solution would be to extend HDMI driver with additional DDC power supply or gpio property, like it's done here: https://github.com/Icenowy/linux/commits/h6-hdmi (IMO power supply is more appropriate solution).
  2. Like
    jernej got a reaction from gounthar in Orangepi 3 h6 allwiner chip   
    It seems that OrangePi 3 has DDC_CEC_EN signal (pin PH2), which has to be enabled in order to read out EDID. Can someone try to enable it by hand and then re-plug hdmi to see if it helps?
     
    Correct solution would be to extend HDMI driver with additional DDC power supply or gpio property, like it's done here: https://github.com/Icenowy/linux/commits/h6-hdmi (IMO power supply is more appropriate solution).
  3. Like
    jernej got a reaction from gounthar in Orangepi 3 h6 allwiner chip   
    It seems that OrangePi 3 has DDC_CEC_EN signal (pin PH2), which has to be enabled in order to read out EDID. Can someone try to enable it by hand and then re-plug hdmi to see if it helps?
     
    Correct solution would be to extend HDMI driver with additional DDC power supply or gpio property, like it's done here: https://github.com/Icenowy/linux/commits/h6-hdmi (IMO power supply is more appropriate solution).
  4. Like
    jernej got a reaction from @lex in Orangepi 3 h6 allwiner chip   
    DMA channels for SPI0 are 22 and 22 (Rx, Tx).
     
    BTW, I already sent patches, but I still want to know if it will work for you once you fix DT issues.
  5. Like
    jernej got a reaction from guidol in Orangepi 3 h6 allwiner chip   
    It would be weird if you wouldn't get this error. This actually tells you that U-Boot checked if environment variables are stored somewhere. It looked at configured place, noticed that CRC doesn't match and concluded that it will use default environment instead.
     
    In short, this error is normal and it would go away only if you would execute "saveenv" command in U-Boot.
  6. Like
    jernej got a reaction from manuti in Orange Pi One Plus Desktop Enviroment   
    I have H6 DRM patches prepared for 4.20, so you can just copy them over. However, I think you would need some more of them for 4.19. Currently, we're investigating some troubles with HDMI, so it's not stable yet anyway.
  7. Like
    jernej got a reaction from TonyMac32 in Kickstarter: Allwinner VPU support in the official Linux kernel   
    I'll try to add support for it soon. But it will be in the same boat as others at first. Don't expect to have 10 bit HEVC support at the beginning. BTW, VP9 is separate peripheral so it needs separate driver. Since nobody did reverse engineering yet, it will take a long time to be supported. However, it seems to be Webm project reference VP9 HW decoder, so there is a great chance that other SoCs from other manufacturers have same unit and someone else might write a driver for it.
  8. Like
    jernej got a reaction from TonyMac32 in Kickstarter: Allwinner VPU support in the official Linux kernel   
    I'll try to add support for it soon. But it will be in the same boat as others at first. Don't expect to have 10 bit HEVC support at the beginning. BTW, VP9 is separate peripheral so it needs separate driver. Since nobody did reverse engineering yet, it will take a long time to be supported. However, it seems to be Webm project reference VP9 HW decoder, so there is a great chance that other SoCs from other manufacturers have same unit and someone else might write a driver for it.
  9. Like
    jernej got a reaction from Slackstick in Kickstarter: Allwinner VPU support in the official Linux kernel   
    Why it can't be both? I have commit rights for LE and I'm maintainer of allwinner branch (until it's merged in master). And everything I do is in my spare time. As it is the case for any other LibreELEC developer.
     
    And 4.20 will be out around Christmas, so I guess I'll merge all HW decoding related patches to allwinner branch around then. But you can get my WIP stuff from my github.
     
    BTW, merged version won't use libva-v4l2-request, but native ffmpeg integration.
  10. Like
    jernej got a reaction from Slackstick in Kickstarter: Allwinner VPU support in the official Linux kernel   
    Why it can't be both? I have commit rights for LE and I'm maintainer of allwinner branch (until it's merged in master). And everything I do is in my spare time. As it is the case for any other LibreELEC developer.
     
    And 4.20 will be out around Christmas, so I guess I'll merge all HW decoding related patches to allwinner branch around then. But you can get my WIP stuff from my github.
     
    BTW, merged version won't use libva-v4l2-request, but native ffmpeg integration.
  11. Like
    jernej got a reaction from PaddleStroke in Orange pi lite - HDMI output   
    That is unfortunate. The only other solution I know is this:
    sudo su cd /sys/kernel/debug/dispdbg/ echo "switch" > command echo "disp" > name echo "0 5" > param echo "1" > start Actually, second number for "param" could be anything. If you want to reenable, then you should write "4 5" to param, where 4 means HDMI output and 5 is wanted resolution, the same number as it is used in script.bin and with h3disp utility (most commonly 10 for 1080p60 and 5 for 720p60) .
  12. Like
    jernej got a reaction from PaddleStroke in AV/HDMI switch and display rotation   
    Address is correct.
     
    I would suggest you first find devmem2 program (source is all over the net). It does almost exactly what you want, but universally (you give it physical address on command line which you want to read).
  13. Like
    jernej got a reaction from Tido in Kickstarter: Allwinner VPU support in the official Linux kernel   
    Cons: I never worked on ffmpeg source or V4L2, so there is large amount of code and documentation to research.
    Pros: It is the best way to go on for Kodi. It wouldn't even need any change, while for current approach, it needs a patch, which has to be cared for (I''m not sure if approach taken in that patch would be acceptable for upstream Kodi). I think that other problems could also be avoided like excessive buffering...
     
    Please don't take that for granted, I don't know ffmpeg well.
  14. Like
    jernej got a reaction from Tido in Kickstarter: Allwinner VPU support in the official Linux kernel   
    Direct access is a bit strong word. Technically, it means that VAAPI layer would be dropped and same interface as in https://github.com/bootlin/libva-v4l2-request would be used (V4L2 interface with new additions).
     
     
    If I understand correctly, "untiling" research took a bit more time than anticipated. Please also note that request API patches (base for AW VPU driver) are at v18 (!) written by multiple people outside Bootlin. But now that V4L2 base (request API) and VPU driver base are more or less finished, it should be much easier to add support for other codecs.
     
    BTW, you can actually watch movies with current H264 driver. It just doesn't cover all possible variants and from time to time you can see artifacts. Bigger problem is ffmpeg + VAAPI combination for H264, since you often run out of memory (note that VPU can address only 128 MB of memory and currently DT allocate even less). This problem is know and noted on cedrus wiki page. I hope that using more direct approach in ffmpeg this could be solved.
     
    Contrary to you, I'm not disappointed, since the work needed to make stable base is enormous. Framework which support such driver (request API) is evolving along AW VPU driver and AW VPU driver will be it's first user.
  15. Like
    jernej got a reaction from Tido in Kickstarter: Allwinner VPU support in the official Linux kernel   
    MPEG2 is with latest version definitely production quality while H264 is not. You must understand that MPEG2 is very simple codec. It seems that focus shifted to H265 because Paul has a contract only until end of August. Fortunately, H264 and H265 share some common features, so work on H265 will definitely help with H264.
     
    However, it turns out that ffmpeg + vaapi doesn't work well for some not so well formed MPEG2 files (same issues with Intel vaapi + ffmpeg), while purely SW ffmpeg decoding works well. I kinda started working on direct ffmpeg integration, but I'm not sure if I have enough motivation to actually finish it.
  16. Like
    jernej got a reaction from Tido in 1280X1024 resolution Orange Pi   
    @HANAX please tell me which is your kernel version. If it is based on mainline, there is no need to specify anything. However, just few days ago issue has been found which causes that some resolution don't work. I already prepared some patches to fix that issue.
  17. Like
    jernej got a reaction from PaddleStroke in AV/HDMI switch and display rotation   
    That can work only if /dev/mem (or kmem?) access is permissive, i.e. it is allowed to access device memory regions from userspace. Additionally, daemon has to be run as root (maybe you can drop priviliges later?).
     
    That being said, it can work. HDMI PHY status register is 32 bit wide, located at 0x01ef0038 and as you can see from above snippet, you have to check bit 19.
  18. Like
    jernej got a reaction from PaddleStroke in AV/HDMI switch and display rotation   
    Probably, but it is not HW accelerated on H3.
     
    About other things, something can be done, IF you rebuild kernel with CONFIG_SWITCH or CONFIG_ANDROID_SWITCH enabled. That way you will get few files, which will have different content, based on TV or HDMI hot plug detection status. Not sure where those files will be located, but it will be probably somewhere in /sys or /proc. Code for that is located here:
    https://github.com/armbian/linux/blob/sun8i/drivers/video/sunxi/disp2/hdmi/drv_hdmi.c#L491-L510
    https://github.com/armbian/linux/blob/sun8i/drivers/video/sunxi/disp2/tv/drv_tv.c#L31-L82
     
    In script.bin you would need enabled both, hdmi and tv, or else you won't get status notification. Final step would be writing simple daemon, which will monitor aforementioned files and react on content change accordingly. There is simple way how to enable/disable TV/HDMI display from userspace on running system, but you would need root access. Since you already need to recompile the kernel, you should patch this part of code to have access rights 0666, so root rights are not needed The procedure how to turn on/off hdmi/tv can be found here Just instead "disp" use "disp0" and "disp1" respectively. There is another procedure if this doesn't work.
     
    I'm not sure if work described above is worth the hassle, but your strategy may work.
  19. Like
    jernej got a reaction from chwe in NanoPi K1 Plus + Armbian   
    I just tested 1080p on my development linux branch which consist of linux-next at next-20180515 tag and R40 HDMI patches and it works fine (startx gives normal xfce desktop). However, rootfs is pretty old (year or so old Armbian), so it might not be representative.
     
    I don't have 4K screen...
     
    Coincidentaly, I just received a notification 5 minutes back, that WIP A64 HDMI patches breaks HDMI on H3. Please note that those patches miss some important things and please don't consider them if you don't want complaints from users (it works in some cases). I know what needs to be fixed, but since Jagan started on that, I will just provide reviews.
  20. Like
    jernej got a reaction from valant in H6 boards: Orange Pi One Plus, Orange Pi 3 Plus and Pine H64   
    I don't know actual implementation details, but defining "bootargs" variable with "booti" command works, since I'm using that during development... I think I heard that bootm doesn't work with aarch64 kernels and I didn't even try it.
  21. Like
    jernej got a reaction from valant in H6 boards: Orange Pi One Plus, Orange Pi 3 Plus and Pine H64   
    Same as with other Cortex-A53 AW SoCs, it starts in aarch32 mode. I doubt they changed BROM functionality much.
     
    If you are using mainline U-Boot, that shouldn't bother you, since SPL switches to aarch64.
  22. Like
    jernej got a reaction from chwe in mali node missing from dtb's on H5?   
    Here you have H5 mali DT node patch. Kernel side driver can be found on @Icenowy github page here. However, the biggest question is where to find appropriate userspace drivers if you care about licensing stuff. For private builds you can take them from anywhere you can find them, but it won't be redistributable. Don't forget that mali kernel driver version has to match to userspace version.
     
    About how to add your own patches to build system - you can find some documentation here.
  23. Like
    jernej got a reaction from willmore in Armbian for OrangePi PC2, AllWinner H5   
    Fortunately, VPU driver is around 95% usable also for newer SoCs.
     
    I have a feeling that H6 support will become useful a bit quicker.
  24. Like
    jernej got a reaction from Igor in Next major upgrade v5.60   
    @Igor zador is correct. Patches can be dropped only when 4.17 is released, so in about 2 months. However, there are many DRM changes in 4.16 so it may be better to backport patches from 4.17, but there are many, including in clocks subsystem. Maybe I can find time to look into that later this week.
  25. Like
    jernej got a reaction from lanefu in H3/H5/A64 DRM display driver   
    Today A83T HDMI driver was merged Now to the H3/H5 driver, which should be more straightforward for mainlining. Seems like with 4.17 there will be no need for DRM patches, except maybe for A64 (depends when Icenowy can get DE2 clocks & SRAM patches merged).