summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/common.h105
-rw-r--r--src/intel_display.c3
-rw-r--r--src/intel_driver.c2
-rw-r--r--src/intel_memory.c2
-rw-r--r--src/intel_module.c4
-rw-r--r--src/legacy/i810/i810_driver.c2
-rw-r--r--src/sna/sna.h10
-rw-r--r--src/sna/sna_display.c22
-rw-r--r--src/sna/sna_dri.c1
-rw-r--r--src/sna/sna_video_textured.c4
10 files changed, 15 insertions, 140 deletions
diff --git a/src/common.h b/src/common.h
index e3ab1f22..86e5b11d 100644
--- a/src/common.h
+++ b/src/common.h
@@ -38,6 +38,8 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#ifndef _INTEL_COMMON_H_
#define _INTEL_COMMON_H_
+#include <xf86.h>
+
/* Provide substitutes for gcc's __FUNCTION__ on other compilers */
#if !defined(__GNUC__) && !defined(__FUNCTION__)
# if defined(__STDC__) && (__STDC_VERSION__>=199901L) /* C99 */
@@ -47,117 +49,14 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# endif
#endif
-
#define PFX __FILE__,__LINE__,__FUNCTION__
#define FUNCTION_NAME __FUNCTION__
#define KB(x) ((x) * 1024)
#define MB(x) ((x) * KB(1024))
-/* Using usleep() makes things noticably slow. */
-#if 0
-#define DELAY(x) usleep(x)
-#else
-#define DELAY(x) do {;} while (0)
-#endif
-
-/* I830 hooks for the I810 driver setup/probe. */
-extern const OptionInfoRec *I830AvailableOptions(int chipid, int busid);
extern Bool intel_init_scrn(ScrnInfoPtr scrn);
-/* Symbol lists shared by the i810 and i830 parts. */
-extern int I830EntityIndex;
-
-#ifdef _I830_H_
-#define PrintErrorState i830_dump_error_state
-#define WaitRingFunc I830WaitLpRing
-#define RecPtr intel
-#else
-#define PrintErrorState I810PrintErrorState
-#define WaitRingFunc I810WaitLpRing
-#define RecPtr pI810
-#endif
-
-static inline void memset_volatile(volatile void *b, int c, size_t len)
-{
- size_t i;
-
- for (i = 0; i < len; i++)
- ((volatile char *)b)[i] = c;
-}
-
-static inline void memcpy_volatile(volatile void *dst, const void *src,
- size_t len)
-{
- size_t i;
-
- for (i = 0; i < len; i++)
- ((volatile char *)dst)[i] = ((const volatile char *)src)[i];
-}
-
-/* Memory mapped register access macros */
-#define INREG8(addr) *(volatile uint8_t *)(RecPtr->MMIOBase + (addr))
-#define INREG16(addr) *(volatile uint16_t *)(RecPtr->MMIOBase + (addr))
-#define INREG(addr) *(volatile uint32_t *)(RecPtr->MMIOBase + (addr))
-#define INGTT(addr) *(volatile uint32_t *)(RecPtr->GTTBase + (addr))
-#define POSTING_READ(addr) (void)INREG(addr)
-
-#define OUTREG8(addr, val) do { \
- *(volatile uint8_t *)(RecPtr->MMIOBase + (addr)) = (val); \
- if (I810_DEBUG&DEBUG_VERBOSE_OUTREG) { \
- ErrorF("OUTREG8(0x%lx, 0x%lx) in %s\n", (unsigned long)(addr), \
- (unsigned long)(val), FUNCTION_NAME); \
- } \
-} while (0)
-
-#define OUTREG16(addr, val) do { \
- *(volatile uint16_t *)(RecPtr->MMIOBase + (addr)) = (val); \
- if (I810_DEBUG&DEBUG_VERBOSE_OUTREG) { \
- ErrorF("OUTREG16(0x%lx, 0x%lx) in %s\n", (unsigned long)(addr), \
- (unsigned long)(val), FUNCTION_NAME); \
- } \
-} while (0)
-
-#define OUTREG(addr, val) do { \
- *(volatile uint32_t *)(RecPtr->MMIOBase + (addr)) = (val); \
- if (I810_DEBUG&DEBUG_VERBOSE_OUTREG) { \
- ErrorF("OUTREG(0x%lx, 0x%lx) in %s\n", (unsigned long)(addr), \
- (unsigned long)(val), FUNCTION_NAME); \
- } \
-} while (0)
-
-
-#define DEBUG_VERBOSE_ACCEL 0x1
-#define DEBUG_VERBOSE_SYNC 0x2
-#define DEBUG_VERBOSE_VGA 0x4
-#define DEBUG_VERBOSE_RING 0x8
-#define DEBUG_VERBOSE_OUTREG 0x10
-#define DEBUG_VERBOSE_MEMORY 0x20
-#define DEBUG_VERBOSE_CURSOR 0x40
-#define DEBUG_ALWAYS_SYNC 0x80
-#define DEBUG_VERBOSE_DRI 0x100
-#define DEBUG_VERBOSE_BIOS 0x200
-
-/* Size of the mmio region.
- */
-#define I810_REG_SIZE 0x80000
-
-#define GTT_PAGE_SIZE KB(4)
-#define PRIMARY_RINGBUFFER_SIZE KB(128)
-#define MIN_SCRATCH_BUFFER_SIZE KB(16)
-#define MAX_SCRATCH_BUFFER_SIZE KB(64)
-#define HWCURSOR_SIZE GTT_PAGE_SIZE
-#define HWCURSOR_SIZE_ARGB GTT_PAGE_SIZE * 4
-
-/* Use a 64x64 HW cursor */
-#define I810_CURSOR_X 64
-#define I810_CURSOR_Y I810_CURSOR_X
-
-#define PIPE_NAME(n) ('A' + (n))
-
-struct pci_device *
-intel_host_bridge (void);
-
/**
* Hints to CreatePixmap to tell the driver how the pixmap is going to be
* used.
diff --git a/src/intel_display.c b/src/intel_display.c
index a974e348..0a80aa84 100644
--- a/src/intel_display.c
+++ b/src/intel_display.c
@@ -711,8 +711,7 @@ intel_crtc_init(ScrnInfoPtr scrn, struct intel_mode *mode, int num)
crtc_id(intel_crtc));
intel_crtc->cursor = drm_intel_bo_alloc(intel->bufmgr, "ARGB cursor",
- HWCURSOR_SIZE_ARGB,
- GTT_PAGE_SIZE);
+ 4*64*64, 4096);
intel_crtc->crtc = crtc;
list_add(&intel_crtc->link, &mode->crtcs);
diff --git a/src/intel_driver.c b/src/intel_driver.c
index f2770d6c..78f7ce39 100644
--- a/src/intel_driver.c
+++ b/src/intel_driver.c
@@ -932,7 +932,7 @@ I830ScreenInit(SCREEN_INIT_ARGS_DECL)
miDCInitialize(screen, xf86GetPointerScreenFuncs());
xf86DrvMsg(scrn->scrnIndex, X_INFO, "Initializing HW Cursor\n");
- if (!xf86_cursors_init(screen, I810_CURSOR_X, I810_CURSOR_Y,
+ if (!xf86_cursors_init(screen, 64, 64,
(HARDWARE_CURSOR_TRUECOLOR_AT_8BPP |
HARDWARE_CURSOR_BIT_ORDER_MSBFIRST |
HARDWARE_CURSOR_INVERT_MASK |
diff --git a/src/intel_memory.c b/src/intel_memory.c
index bfc0e8ca..bb7710f9 100644
--- a/src/intel_memory.c
+++ b/src/intel_memory.c
@@ -96,7 +96,7 @@ unsigned long intel_get_fence_size(intel_screen_private *intel, unsigned long si
if (INTEL_INFO(intel)->gen >= 40 || intel->has_relaxed_fencing) {
/* The 965 can have fences at any page boundary. */
- return ALIGN(size, GTT_PAGE_SIZE);
+ return ALIGN(size, 4096);
} else {
/* Align the size to a power of two greater than the smallest fence
* size.
diff --git a/src/intel_module.c b/src/intel_module.c
index f8ba1494..a39affbd 100644
--- a/src/intel_module.c
+++ b/src/intel_module.c
@@ -28,9 +28,7 @@
#include "config.h"
#endif
-#include <xf86.h>
#include <xf86_OSproc.h>
-#include <xf86cmap.h>
#include <xf86Parser.h>
#include <xf86drmMode.h>
@@ -159,10 +157,12 @@ SymTabRec *intel_chipsets = (SymTabRec *) _intel_chipsets;
{ 0x8086, (d), PCI_MATCH_ANY, PCI_MATCH_ANY, 0, 0, (intptr_t)(i) }
static const struct pci_id_match intel_device_match[] = {
+#if !KMS_ONLY
INTEL_DEVICE_MATCH (PCI_CHIP_I810, &intel_i81x_info ),
INTEL_DEVICE_MATCH (PCI_CHIP_I810_DC100, &intel_i81x_info ),
INTEL_DEVICE_MATCH (PCI_CHIP_I810_E, &intel_i81x_info ),
INTEL_DEVICE_MATCH (PCI_CHIP_I815, &intel_i81x_info ),
+#endif
INTEL_DEVICE_MATCH (PCI_CHIP_I830_M, &intel_i830_info ),
INTEL_DEVICE_MATCH (PCI_CHIP_845_G, &intel_i845_info ),
diff --git a/src/legacy/i810/i810_driver.c b/src/legacy/i810/i810_driver.c
index 6fc17bd0..98216121 100644
--- a/src/legacy/i810/i810_driver.c
+++ b/src/legacy/i810/i810_driver.c
@@ -142,8 +142,6 @@ static int i810_pitches[] = {
};
#endif
-int I830EntityIndex = -1;
-
/*
* I810GetRec and I810FreeRec --
*
diff --git a/src/sna/sna.h b/src/sna/sna.h
index d7fa71bb..03115c22 100644
--- a/src/sna/sna.h
+++ b/src/sna/sna.h
@@ -289,10 +289,6 @@ extern void sna_mode_wakeup(struct sna *sna);
extern void sna_mode_redisplay(struct sna *sna);
extern void sna_mode_fini(struct sna *sna);
-extern int sna_crtc_id(xf86CrtcPtr crtc);
-extern bool sna_crtc_is_bound(struct sna *sna, xf86CrtcPtr crtc);
-extern int sna_output_dpms_status(xf86OutputPtr output);
-
extern int sna_page_flip(struct sna *sna,
struct kgem_bo *bo,
void *data,
@@ -356,9 +352,9 @@ static inline void sna_dri_destroy_window(WindowPtr win) { }
static inline void sna_dri_close(struct sna *sna, ScreenPtr pScreen) { }
#endif
-extern bool sna_crtc_on(xf86CrtcPtr crtc);
-int sna_crtc_to_pipe(xf86CrtcPtr crtc);
-int sna_crtc_to_plane(xf86CrtcPtr crtc);
+extern int sna_crtc_to_pipe(xf86CrtcPtr crtc);
+extern int sna_crtc_to_plane(xf86CrtcPtr crtc);
+extern int sna_crtc_id(xf86CrtcPtr crtc);
CARD32 sna_format_for_depth(int depth);
CARD32 sna_render_format_for_depth(int depth);
diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
index 0928f6a4..87a69ba9 100644
--- a/src/sna/sna_display.c
+++ b/src/sna/sna_display.c
@@ -113,21 +113,14 @@ int sna_crtc_id(xf86CrtcPtr crtc)
return to_sna_crtc(crtc)->id;
}
-bool sna_crtc_on(xf86CrtcPtr crtc)
-{
- return to_sna_crtc(crtc)->bo != NULL;
-}
-
int sna_crtc_to_pipe(xf86CrtcPtr crtc)
{
- struct sna_crtc *sna_crtc = to_sna_crtc(crtc);
- return sna_crtc->pipe;
+ return to_sna_crtc(crtc)->pipe;
}
int sna_crtc_to_plane(xf86CrtcPtr crtc)
{
- struct sna_crtc *sna_crtc = to_sna_crtc(crtc);
- return sna_crtc->plane;
+ return to_sna_crtc(crtc)->plane;
}
static unsigned get_fb(struct sna *sna, struct kgem_bo *bo,
@@ -465,7 +458,7 @@ mode_to_kmode(struct drm_mode_modeinfo *kmode, DisplayModePtr mode)
kmode->name[DRM_DISPLAY_MODE_LEN-1] = 0;
}
-bool sna_crtc_is_bound(struct sna *sna, xf86CrtcPtr crtc)
+static bool sna_crtc_is_bound(struct sna *sna, xf86CrtcPtr crtc)
{
struct sna_crtc *sna_crtc = to_sna_crtc(crtc);
struct drm_mode_crtc mode;
@@ -1676,13 +1669,6 @@ sna_output_dpms(xf86OutputPtr output, int dpms)
}
}
-int
-sna_output_dpms_status(xf86OutputPtr output)
-{
- struct sna_output *sna_output = output->driver_private;
- return sna_output->dpms_mode;
-}
-
static bool
sna_property_ignore(drmModePropertyPtr prop)
{
@@ -2579,7 +2565,7 @@ sna_wait_for_scanline(struct sna *sna,
int y1, y2, pipe;
assert(crtc);
- assert(sna_crtc_on(crtc));
+ assert(to_sna_crtc(crtc)->bo != NULL);
assert(pixmap == sna->front);
/* XXX WAIT_EVENT is still causing hangs on SNB */
diff --git a/src/sna/sna_dri.c b/src/sna/sna_dri.c
index 6afeb517..5f237b01 100644
--- a/src/sna/sna_dri.c
+++ b/src/sna/sna_dri.c
@@ -553,7 +553,6 @@ sna_dri_copy_to_front(struct sna *sna, DrawablePtr draw, RegionPtr region,
DBG(("%s: flushing? %d\n", __FUNCTION__, flush));
if (flush) { /* STAT! */
- assert(sna_crtc_is_bound(sna, crtc));
kgem_submit(&sna->kgem);
bo = kgem_get_last_request(&sna->kgem);
}
diff --git a/src/sna/sna_video_textured.c b/src/sna/sna_video_textured.c
index 110bb001..2332ce20 100644
--- a/src/sna/sna_video_textured.c
+++ b/src/sna/sna_video_textured.c
@@ -295,10 +295,8 @@ sna_video_textured_put_image(ScrnInfoPtr scrn,
/* Push the frame to the GPU as soon as possible so
* we can hit the next vsync.
*/
- if (flush) {
- assert(sna_crtc_is_bound(sna, crtc));
+ if (flush)
kgem_submit(&sna->kgem);
- }
return ret;
}