projects/imx6/patches/kodi: update imx6 rework patches

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2015-02-08 11:12:58 +01:00
parent 9188d497e6
commit 61fe40004c
12 changed files with 379 additions and 502 deletions

View File

@ -1,7 +1,7 @@
From 5aed65d63d71073340a4b4c7da814a67a8e814a7 Mon Sep 17 00:00:00 2001
From 1a49d401ee7c0ce645c8ee49a8f91aeb8b9cff4c Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de>
Date: Fri, 2 Jan 2015 10:02:09 +0100
Subject: [PATCH 1/6] renderer: drop old tempfix firstflippage, did not work
Subject: [PATCH 01/12] renderer: drop old tempfix firstflippage, did not work
anyway because RendererHandlesPresent returned always true
---
@ -12,7 +12,7 @@ Subject: [PATCH 1/6] renderer: drop old tempfix firstflippage, did not work
4 files changed, 2 insertions(+), 17 deletions(-)
diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
index 7ee0a34..1c717c2 100644
index 4a5619a..aa7aed0 100644
--- a/xbmc/Application.cpp
+++ b/xbmc/Application.cpp
@@ -2222,7 +2222,7 @@ void CApplication::Render()
@ -95,5 +95,5 @@ index 22d0fc8..c47a6d5 100644
CGUIControl::Process(currentTime, dirtyregions);
}
--
1.9.1
1.9.3

View File

@ -1,7 +1,7 @@
From a14f5348c5ce76ca074630c8bf0bfc3b6bf3f767 Mon Sep 17 00:00:00 2001
From 8627cb27e5771bb2d6da37c295f99b174cad4be9 Mon Sep 17 00:00:00 2001
From: smallint <tahoma@gmx.de>
Date: Fri, 2 Jan 2015 15:35:33 +0000
Subject: [PATCH 2/6] Set dirty flag in teletext dialog if required
Subject: [PATCH 02/12] Set dirty flag in teletext dialog if required
---
xbmc/video/dialogs/GUIDialogTeletext.cpp | 19 +++++++++++++++++++
@ -91,5 +91,5 @@ index 51aced5..e8e11f8 100644
virtual void OnInitWindow();
virtual void OnDeinitWindow(int nextWindowID);
--
1.9.1
1.9.3

View File

@ -1,7 +1,7 @@
From 12021a04a6662400ed2bfffd0f2a752af89a6643 Mon Sep 17 00:00:00 2001
From f275a6996031d2226d0c3bc5e1f3ef04e21cd2fe Mon Sep 17 00:00:00 2001
From: smallint <tahoma@gmx.de>
Date: Sat, 16 Aug 2014 17:29:15 +0200
Subject: [PATCH 3/6] renderer: improve rendering to gui and separate video
Subject: [PATCH 03/12] renderer: improve rendering to gui and separate video
layer
---
@ -27,7 +27,7 @@ Subject: [PATCH 3/6] renderer: improve rendering to gui and separate video
19 files changed, 204 insertions(+), 62 deletions(-)
diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
index 1c717c2..137872c 100644
index aa7aed0..3a222d4 100644
--- a/xbmc/Application.cpp
+++ b/xbmc/Application.cpp
@@ -2170,9 +2170,6 @@ bool CApplication::RenderNoPresent()
@ -655,5 +655,5 @@ index 03608af..5a9b101 100644
void ChangetheTimeCode(int remote);
void ChangetheTVGroup(bool next);
--
1.9.1
1.9.3

View File

@ -1,7 +1,7 @@
From 23ef73e82745569bcd95ce1fdbcc698318388b0f Mon Sep 17 00:00:00 2001
From ef4b58dd279c14ea5f62fe27690217f80880dfe2 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de>
Date: Mon, 5 Jan 2015 11:29:15 +0100
Subject: [PATCH 4/6] guilib: mark control dirty when setting to invisible
Subject: [PATCH 04/12] guilib: mark control dirty when setting to invisible
---
xbmc/guilib/GUIControl.cpp | 2 ++
@ -21,5 +21,5 @@ index e3d04db..ff2086b 100644
if (m_forceHidden)
{ // reset any visible animations that are in process
--
1.9.1
1.9.3

View File

@ -1,7 +1,7 @@
From ef6230c3d3106f045719cdebf3ca33cc5cedf88d Mon Sep 17 00:00:00 2001
From b3b3c3c1e03c7538b8d423e352c3e14f7a23e011 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de>
Date: Tue, 6 Jan 2015 13:13:27 +0100
Subject: [PATCH 5/6] renderer: exit gfx lock when waiting for present time
Subject: [PATCH 05/12] renderer: exit gfx lock when waiting for present time
---
xbmc/cores/VideoRenderers/RenderManager.cpp | 3 +++
@ -23,5 +23,5 @@ index 63bbdcc..b394d7b 100644
m_clock_framefinish = GetPresentTime();
--
1.9.1
1.9.3

View File

@ -1,8 +1,8 @@
From ecf0df3917462187b6def084bb7e3adf797effcd Mon Sep 17 00:00:00 2001
From c0976e515f0a8b05ab36a70ddb39b97db6aa7ef6 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de>
Date: Fri, 23 Jan 2015 07:41:46 +0100
Subject: [PATCH] renderer: fix sequence from WaitFrame, Render, FrameMove to
WaitFrame, FrameMove, Render
Subject: [PATCH 06/12] renderer: fix sequence from WaitFrame, Render,
FrameMove to WaitFrame, FrameMove, Render
---
xbmc/Application.cpp | 12 +++++++++---
@ -11,7 +11,7 @@ Subject: [PATCH] renderer: fix sequence from WaitFrame, Render, FrameMove to
3 files changed, 21 insertions(+), 6 deletions(-)
diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
index fe44706..3410209 100644
index 3a222d4..5775a76 100644
--- a/xbmc/Application.cpp
+++ b/xbmc/Application.cpp
@@ -2212,16 +2212,17 @@ void CApplication::Render()
@ -48,7 +48,7 @@ index fe44706..3410209 100644
CTimeUtils::UpdateFrameTime(flip);
diff --git a/xbmc/cores/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoRenderers/RenderManager.cpp
index 72ad819..85c3565 100644
index b394d7b..36c2842 100644
--- a/xbmc/cores/VideoRenderers/RenderManager.cpp
+++ b/xbmc/cores/VideoRenderers/RenderManager.cpp
@@ -316,13 +316,21 @@ void CXBMCRenderManager::Update()
@ -90,5 +90,5 @@ index 7280423..b80319a 100644
bool IsGuiLayer();
bool IsVideoLayer();
--
1.9.1
1.9.3

View File

@ -1,7 +1,7 @@
From 38bc5699178afdbf85f22cd5fc3cf151c4defa6b Mon Sep 17 00:00:00 2001
From 60dd2e99e0997d637bdff7c36e620d861ba536aa Mon Sep 17 00:00:00 2001
From: Stanislav Vlasic <svlasic@gmail.com>
Date: Mon, 13 Oct 2014 13:20:11 +0200
Subject: [PATCH 1/3] Add aml_support_hevc function and recognize S812 chip
Subject: [PATCH 07/12] Add aml_support_hevc function and recognize S812 chip
---
xbmc/utils/AMLUtils.cpp | 26 ++++++++++++++++++++++++--
@ -76,5 +76,5 @@ index 9778e9b..208f9d3 100644
void aml_cpufreq_min(bool limit);
void aml_cpufreq_max(bool limit);
--
1.9.1
1.9.3

View File

@ -1,7 +1,7 @@
From a8fb1fdd478d7150d9d0b68bc6fef825241d7ef6 Mon Sep 17 00:00:00 2001
From 7adba15f4a285d6445ed38c92797ea7778d3824e Mon Sep 17 00:00:00 2001
From: "Chris \"Koying\" Browet" <cbro@semperpax.com>
Date: Wed, 31 Dec 2014 15:08:12 +0100
Subject: [PATCH 2/3] CHG: Extract SysfsUtils from the AML utils
Subject: [PATCH 08/12] CHG: Extract SysfsUtils from the AML utils
---
xbmc/cores/dvdplayer/DVDCodecs/Video/AMLCodec.cpp | 46 +++++-----
@ -708,10 +708,10 @@ index 7064836..0cce3ea 100644
close(fd0);
}
diff --git a/xbmc/windowing/egl/EGLNativeTypeIMX.cpp b/xbmc/windowing/egl/EGLNativeTypeIMX.cpp
index 2b8180b..5bf5e06 100644
index 04cadc8..9893558 100644
--- a/xbmc/windowing/egl/EGLNativeTypeIMX.cpp
+++ b/xbmc/windowing/egl/EGLNativeTypeIMX.cpp
@@ -29,6 +29,7 @@
@@ -28,6 +28,7 @@
#include "utils/log.h"
#include "utils/RegExp.h"
#include "utils/StringUtils.h"
@ -719,7 +719,7 @@ index 2b8180b..5bf5e06 100644
#include "utils/Environment.h"
#include "guilib/gui3d.h"
#include "windowing/WindowingFactory.h"
@@ -232,7 +233,7 @@ bool CEGLNativeTypeIMX::DestroyNativeWindow()
@@ -190,7 +191,7 @@ bool CEGLNativeTypeIMX::DestroyNativeWindow()
bool CEGLNativeTypeIMX::GetNativeResolution(RESOLUTION_INFO *res) const
{
std::string mode;
@ -728,7 +728,7 @@ index 2b8180b..5bf5e06 100644
return ModeToResolution(mode, res);
}
@@ -242,14 +243,14 @@ bool CEGLNativeTypeIMX::SetNativeResolution(const RESOLUTION_INFO &res)
@@ -200,14 +201,14 @@ bool CEGLNativeTypeIMX::SetNativeResolution(const RESOLUTION_INFO &res)
return false;
std::string mode;
@ -745,7 +745,7 @@ index 2b8180b..5bf5e06 100644
CreateNativeDisplay();
@@ -267,7 +268,7 @@ bool CEGLNativeTypeIMX::ProbeResolutions(std::vector<RESOLUTION_INFO> &resolutio
@@ -225,7 +226,7 @@ bool CEGLNativeTypeIMX::ProbeResolutions(std::vector<RESOLUTION_INFO> &resolutio
return false;
std::string valstr;
@ -754,7 +754,7 @@ index 2b8180b..5bf5e06 100644
std::vector<std::string> probe_str;
probe_str = StringUtils::Split(valstr, "\n");
@@ -299,41 +300,6 @@ bool CEGLNativeTypeIMX::ShowWindow(bool show)
@@ -257,41 +258,6 @@ bool CEGLNativeTypeIMX::ShowWindow(bool show)
return false;
}
@ -810,5 +810,5 @@ index d5e5739..0298cb5 100644
EGLNativeDisplayType m_display;
--
1.9.1
1.9.3

View File

@ -1,17 +1,17 @@
From c1589961786033b47ab5f8f3f0cf6d9384460e12 Mon Sep 17 00:00:00 2001
From 93962bc37ad6ffc092b37354f36431fafad424e7 Mon Sep 17 00:00:00 2001
From: smallint <tahoma@gmx.de>
Date: Mon, 19 Jan 2015 20:38:42 +0100
Subject: [PATCH 3/3] [imx] Fixed mode change after SysfsUtils port
Subject: [PATCH 09/12] [imx] Fixed mode change after SysfsUtils port
---
xbmc/windowing/egl/EGLNativeTypeIMX.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xbmc/windowing/egl/EGLNativeTypeIMX.cpp b/xbmc/windowing/egl/EGLNativeTypeIMX.cpp
index 5bf5e06..cf2f706 100644
index 9893558..061f6e6 100644
--- a/xbmc/windowing/egl/EGLNativeTypeIMX.cpp
+++ b/xbmc/windowing/egl/EGLNativeTypeIMX.cpp
@@ -250,7 +250,7 @@ bool CEGLNativeTypeIMX::SetNativeResolution(const RESOLUTION_INFO &res)
@@ -208,7 +208,7 @@ bool CEGLNativeTypeIMX::SetNativeResolution(const RESOLUTION_INFO &res)
DestroyNativeWindow();
DestroyNativeDisplay();
@ -21,5 +21,5 @@ index 5bf5e06..cf2f706 100644
CreateNativeDisplay();
--
1.9.1
1.9.3

View File

@ -0,0 +1,67 @@
From 4608ac3855f881685f231838eebf51b3e6c8b9c1 Mon Sep 17 00:00:00 2001
From: smallint <tahoma@gmx.de>
Date: Thu, 5 Feb 2015 19:35:05 +0000
Subject: [PATCH 10/12] [imx] Added de-interlacing method enumerations
FAST_MOTION and FAST_MOTION_DOUBLE
---
language/English/strings.po | 14 +++++++++++++-
xbmc/settings/VideoSettings.h | 3 +++
xbmc/video/dialogs/GUIDialogVideoSettings.cpp | 2 ++
3 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/language/English/strings.po b/language/English/strings.po
index 15090fc..d994570 100755
--- a/language/English/strings.po
+++ b/language/English/strings.po
@@ -7548,7 +7548,19 @@ msgctxt "#16333"
msgid "MMAL - Bob (Half)"
msgstr ""
-#empty strings from id 16334 to 16399
+#. Description of OSD video settings for deinterlace method with label #16334
+#: xbmc/video/dialogs/GUIDialogVideoSettings.cpp
+msgctxt "#16334"
+msgid "IMX - Fast motion"
+msgstr ""
+
+#. Description of OSD video settings for deinterlace method with label #16335
+#: xbmc/video/dialogs/GUIDialogVideoSettings.cpp
+msgctxt "#16335"
+msgid "IMX - Fast motion (Double)"
+msgstr ""
+
+#empty strings from id 16336 to 16399
#: xbmc/video/dialogs/GUIDialogVideoSettings.cpp
msgctxt "#16400"
diff --git a/xbmc/settings/VideoSettings.h b/xbmc/settings/VideoSettings.h
index 6eaef1d..8644250 100644
--- a/xbmc/settings/VideoSettings.h
+++ b/xbmc/settings/VideoSettings.h
@@ -72,6 +72,9 @@ enum EINTERLACEMETHOD
VS_INTERLACEMETHOD_MMAL_BOB = 27,
VS_INTERLACEMETHOD_MMAL_BOB_HALF = 28,
+ VS_INTERLACEMETHOD_IMX_FASTMOTION = 29,
+ VS_INTERLACEMETHOD_IMX_FASTMOTION_DOUBLE = 30,
+
VS_INTERLACEMETHOD_MAX // do not use and keep as last enum value.
};
diff --git a/xbmc/video/dialogs/GUIDialogVideoSettings.cpp b/xbmc/video/dialogs/GUIDialogVideoSettings.cpp
index ca65fdc..d350a02 100644
--- a/xbmc/video/dialogs/GUIDialogVideoSettings.cpp
+++ b/xbmc/video/dialogs/GUIDialogVideoSettings.cpp
@@ -266,6 +266,8 @@ void CGUIDialogVideoSettings::InitializeSettings()
entries.push_back(make_pair(16331, VS_INTERLACEMETHOD_MMAL_ADVANCED_HALF));
entries.push_back(make_pair(16332, VS_INTERLACEMETHOD_MMAL_BOB));
entries.push_back(make_pair(16333, VS_INTERLACEMETHOD_MMAL_BOB_HALF));
+ entries.push_back(make_pair(16334, VS_INTERLACEMETHOD_IMX_FASTMOTION));
+ entries.push_back(make_pair(16335, VS_INTERLACEMETHOD_IMX_FASTMOTION_DOUBLE));
/* remove unsupported methods */
for (StaticIntegerSettingOptions::iterator it = entries.begin(); it != entries.end(); )
--
1.9.3

View File

@ -0,0 +1,52 @@
From 9cbf6c98775dd8f4052c08aa18eb7401d8b17a12 Mon Sep 17 00:00:00 2001
From: smallint <tahoma@gmx.de>
Date: Thu, 5 Feb 2015 19:37:13 +0000
Subject: [PATCH 11/12] [RenderManager] preserve field type for
Renderer::RenderUpdate
---
xbmc/cores/VideoRenderers/RenderManager.cpp | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoRenderers/RenderManager.cpp
index 36c2842..85c3565 100644
--- a/xbmc/cores/VideoRenderers/RenderManager.cpp
+++ b/xbmc/cores/VideoRenderers/RenderManager.cpp
@@ -676,7 +676,10 @@ void CXBMCRenderManager::FlipPage(volatile bool& bStop, double timestamp /* = 0L
deinterlacemode = VS_DEINTERLACEMODE_OFF;
if (deinterlacemode == VS_DEINTERLACEMODE_OFF)
+ {
presentmethod = PRESENT_METHOD_SINGLE;
+ sync = FS_NONE;
+ }
else
{
if (deinterlacemode == VS_DEINTERLACEMODE_AUTO && sync == FS_NONE)
@@ -691,6 +694,7 @@ void CXBMCRenderManager::FlipPage(volatile bool& bStop, double timestamp /* = 0L
else if (interlacemethod == VS_INTERLACEMETHOD_RENDER_BOB_INVERTED) { presentmethod = PRESENT_METHOD_BOB; invert = true; }
else if (interlacemethod == VS_INTERLACEMETHOD_DXVA_BOB) presentmethod = PRESENT_METHOD_BOB;
else if (interlacemethod == VS_INTERLACEMETHOD_DXVA_BEST) presentmethod = PRESENT_METHOD_BOB;
+ else if (interlacemethod == VS_INTERLACEMETHOD_IMX_FASTMOTION_DOUBLE) presentmethod = PRESENT_METHOD_BOB;
else presentmethod = PRESENT_METHOD_SINGLE;
/* default to odd field if we want to deinterlace and don't know better */
@@ -837,8 +841,14 @@ bool CXBMCRenderManager::IsVideoLayer()
void CXBMCRenderManager::PresentSingle(bool clear, DWORD flags, DWORD alpha)
{
CSingleLock lock(g_graphicsContext);
+ SPresent& m = m_Queue[m_presentsource];
- m_pRenderer->RenderUpdate(clear, flags, alpha);
+ if (m.presentfield == FS_BOT)
+ m_pRenderer->RenderUpdate(clear, flags | RENDER_FLAG_BOT, alpha);
+ else if (m.presentfield == FS_TOP)
+ m_pRenderer->RenderUpdate(clear, flags | RENDER_FLAG_TOP, alpha);
+ else
+ m_pRenderer->RenderUpdate(clear, flags, alpha);
}
/* new simpler method of handling interlaced material, *
--
1.9.3