drivers/intel/gma: put controller in separate header

Including i915.h just for the GMA/SSDT related functions means
dragging along all of i915_reg.h as well, which is problematic
since some platforms (like Apollo Lake) use overlapping symbols.
To avoid this conflict, break out the GMA/SSDT bits into their
own header which can be included without conflict.

Change-Id: I73fb7ef01abaafdcdbc44f1e3f5eb1883fc31616
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/40592
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
Matt DeVillier 2020-04-20 18:50:17 -05:00
parent b4a0ec5284
commit 168d8a49b6
2 changed files with 23 additions and 15 deletions

View File

@ -0,0 +1,22 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/* This file is part of the coreboot project. */
#ifndef _GMA_H_
#define _GMA_H_
#include <stdint.h>
struct i915_gpu_controller_info {
int use_spread_spectrum_clock;
int ndid;
u32 did[5];
};
#define GMA_STATIC_DISPLAYS(ssc) { \
.use_spread_spectrum_clock = (ssc), \
.ndid = 3, .did = { 0x0100, 0x0240, 0x0410, } \
}
void drivers_intel_gma_displays_ssdt_generate(const struct i915_gpu_controller_info *conf);
#endif

View File

@ -6,6 +6,7 @@
#include <drivers/intel/gma/i915_reg.h> #include <drivers/intel/gma/i915_reg.h>
#include <drivers/intel/gma/drm_dp_helper.h> #include <drivers/intel/gma/drm_dp_helper.h>
#include <drivers/intel/gma/gma.h>
#include <edid.h> #include <edid.h>
/* port types. We stick with the same defines as the kernel */ /* port types. We stick with the same defines as the kernel */
@ -75,21 +76,6 @@ int gtt_poll(u32 reg, u32 mask, u32 value);
void gtt_write(u32 reg, u32 data); void gtt_write(u32 reg, u32 data);
u32 gtt_read(u32 reg); u32 gtt_read(u32 reg);
struct i915_gpu_controller_info
{
int use_spread_spectrum_clock;
int ndid;
u32 did[5];
};
#define GMA_STATIC_DISPLAYS(ssc) { \
.use_spread_spectrum_clock = (ssc), \
.ndid = 3, .did = { 0x0100, 0x0240, 0x0410, } \
}
void
drivers_intel_gma_displays_ssdt_generate(const struct i915_gpu_controller_info *conf);
/* vbt.c */ /* vbt.c */
struct device; struct device;
void void