From: Jani Nikula <jani.nikula@intel.com>
To: mika.kahola@intel.com
Cc: Deepak M <m.deepak@intel.com>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 11/11] drm/i915/opregion: handle VBT sizes bigger than 6 KB
Date: Thu, 17 Dec 2015 11:46:30 +0200 [thread overview]
Message-ID: <87egels8zt.fsf@intel.com> (raw)
In-Reply-To: <1450337437.5693.6.camel@sorvi>
On Thu, 17 Dec 2015, Mika Kahola <mika.kahola@intel.com> wrote:
> On Mon, 2015-12-14 at 12:50 +0200, Jani Nikula wrote:
>> The RVDA and RVDS (raw VBT data address and size) fields of the ASLE
>> mailbox may specify an alternate location for VBT instead of mailbox #4.
>> Use the alternate location if available and valid, falling back to
>> mailbox #4 otherwise.
>>
> Tested-by: Mika Kahola <mika.kahola@intel.com>
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Pushed to drm-intel-next-queued, thanks for the review and testing.
BR,
Jani.
>> ---
>> drivers/gpu/drm/i915/i915_drv.h | 1 +
>> drivers/gpu/drm/i915/intel_opregion.c | 25 +++++++++++++++++++++++--
>> 2 files changed, 24 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
>> index ca8c2a64bc6d..8cfac7398568 100644
>> --- a/drivers/gpu/drm/i915/i915_drv.h
>> +++ b/drivers/gpu/drm/i915/i915_drv.h
>> @@ -457,6 +457,7 @@ struct intel_opregion {
>> u32 swsci_gbda_sub_functions;
>> u32 swsci_sbcb_sub_functions;
>> struct opregion_asle *asle;
>> + void *rvda;
>> const void *vbt;
>> u32 vbt_size;
>> u32 *lid_state;
>> diff --git a/drivers/gpu/drm/i915/intel_opregion.c b/drivers/gpu/drm/i915/intel_opregion.c
>> index e89ee2383fe1..a139889dd45b 100644
>> --- a/drivers/gpu/drm/i915/intel_opregion.c
>> +++ b/drivers/gpu/drm/i915/intel_opregion.c
>> @@ -837,6 +837,10 @@ void intel_opregion_fini(struct drm_device *dev)
>>
>> /* just clear all opregion memory pointers now */
>> memunmap(opregion->header);
>> + if (opregion->rvda) {
>> + memunmap(opregion->rvda);
>> + opregion->rvda = NULL;
>> + }
>> opregion->header = NULL;
>> opregion->acpi = NULL;
>> opregion->swsci = NULL;
>> @@ -987,12 +991,29 @@ int intel_opregion_setup(struct drm_device *dev)
>> DRM_DEBUG_DRIVER("ASLE extension supported\n");
>>
>> if (!dmi_check_system(intel_no_opregion_vbt)) {
>> - const void *vbt = base + OPREGION_VBT_OFFSET;
>> - u32 vbt_size = OPREGION_ASLE_EXT_OFFSET - OPREGION_VBT_OFFSET;
>> + const void *vbt = NULL;
>> + u32 vbt_size = 0;
>> +
>> + if (opregion->header->opregion_ver >= 2 && opregion->asle &&
>> + opregion->asle->rvda && opregion->asle->rvds) {
>> + opregion->rvda = memremap(opregion->asle->rvda,
>> + opregion->asle->rvds,
>> + MEMREMAP_WB);
>> + vbt = opregion->rvda;
>> + vbt_size = opregion->asle->rvds;
>> + }
>>
>> if (intel_bios_is_valid_vbt(vbt, vbt_size)) {
>> opregion->vbt = vbt;
>> opregion->vbt_size = vbt_size;
>> + DRM_DEBUG_DRIVER("VBT from RVDA\n");
>> + } else {
>> + vbt = base + OPREGION_VBT_OFFSET;
>> + vbt_size = OPREGION_ASLE_EXT_OFFSET - OPREGION_VBT_OFFSET;
>> + if (intel_bios_is_valid_vbt(vbt, vbt_size)) {
>> + opregion->vbt = vbt;
>> + opregion->vbt_size = vbt_size;
>> + }
>> }
>> }
>>
>
>
--
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
prev parent reply other threads:[~2015-12-17 9:46 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-14 10:50 [PATCH 00/11] drm/i915: VBT/opregion refactor to support >6 KB VBT Jani Nikula
2015-12-14 10:50 ` [PATCH 01/11] drm/i915: Add Intel opregion mailbox 5 structure Jani Nikula
2015-12-14 10:50 ` [PATCH 02/11] drm/i915: move "no VBT in opregion" quirk to intel_opregion_setup() Jani Nikula
2015-12-14 10:50 ` [PATCH 03/11] drm/i915/bios: have functions return vbt, not bdb, header pointer Jani Nikula
2015-12-14 10:50 ` [PATCH 04/11] drm/i915/bios: move debug logging about VBT source to intel_parse_bios() Jani Nikula
2015-12-15 11:14 ` [PATCH v2 " Jani Nikula
2015-12-14 10:50 ` [PATCH 05/11] drm/i915/bios: rename intel_parse_bios to intel_bios_init Jani Nikula
2015-12-14 10:50 ` [PATCH 06/11] drm/i915: refactor VBT validation Jani Nikula
2015-12-14 13:41 ` Ville Syrjälä
2015-12-14 14:34 ` Jani Nikula
2015-12-14 14:42 ` Ville Syrjälä
2015-12-15 11:16 ` [PATCH v2 " Jani Nikula
2015-12-14 10:50 ` [PATCH 07/11] drm/i915/opregion: make VBT size limit more strict Jani Nikula
2015-12-14 10:50 ` [PATCH 08/11] drm/i915/opregion: make VBT pointer a const Jani Nikula
2015-12-14 10:50 ` [PATCH 09/11] drm/i915: don't use a temp buffer for opregion debugfs file Jani Nikula
2015-12-14 13:45 ` Ville Syrjälä
2015-12-14 14:38 ` Jani Nikula
2015-12-14 14:45 ` Ville Syrjälä
2015-12-14 10:50 ` [PATCH 10/11] drm/i915/debugfs: add a separate debugfs file for VBT Jani Nikula
2015-12-14 10:57 ` Chris Wilson
2015-12-14 11:06 ` Jani Nikula
2015-12-14 11:29 ` Chris Wilson
2015-12-14 13:20 ` [PATCH v2 " Jani Nikula
2015-12-15 11:17 ` [PATCH v3 " Jani Nikula
2015-12-14 10:50 ` [PATCH 11/11] drm/i915/opregion: handle VBT sizes bigger than 6 KB Jani Nikula
2015-12-14 14:19 ` Ville Syrjälä
2015-12-14 14:34 ` Ville Syrjälä
2015-12-15 14:02 ` Ville Syrjälä
2015-12-16 9:37 ` Jani Nikula
2015-12-14 14:40 ` Jani Nikula
2015-12-15 11:18 ` [PATCH v2 " Jani Nikula
2015-12-17 7:30 ` [PATCH " Mika Kahola
2015-12-17 9:46 ` Jani Nikula [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87egels8zt.fsf@intel.com \
--to=jani.nikula@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=m.deepak@intel.com \
--cc=mika.kahola@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.