aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/gma500/psb_drv.c
diff options
context:
space:
mode:
authorAlan Cox <alan@linux.jf.intel.com>2011-03-03 12:38:04 +0000
committerGreg Kroah-Hartman <gregkh@suse.de>2011-03-07 13:28:05 -0800
commit487e873dd3f8d7ede7635896e19376ef78157721 (patch)
tree96cf25cbc305c08ebc0c3a00c9c22506269bd5ae /drivers/staging/gma500/psb_drv.c
parent2145cff54f512907a4c4fa906f957fa62406e558 (diff)
downloadkernel_samsung_smdk4412-487e873dd3f8d7ede7635896e19376ef78157721.zip
kernel_samsung_smdk4412-487e873dd3f8d7ede7635896e19376ef78157721.tar.gz
kernel_samsung_smdk4412-487e873dd3f8d7ede7635896e19376ef78157721.tar.bz2
staging: gma500: Resync the patch queue with GregKH's space cleanup.
Remove all sorts of bits we can get rid of. We are now a very simple KMS driver relying on the stolen memory for our framebuffer base (which is for the moment hardcoded). To support multiple frame buffers and some accel bits we will need some kind of memory allocator, possibly a minimal use of GEM. Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/gma500/psb_drv.c')
-rw-r--r--drivers/staging/gma500/psb_drv.c55
1 files changed, 7 insertions, 48 deletions
diff --git a/drivers/staging/gma500/psb_drv.c b/drivers/staging/gma500/psb_drv.c
index 2b410af..090d9a2 100644
--- a/drivers/staging/gma500/psb_drv.c
+++ b/drivers/staging/gma500/psb_drv.c
@@ -33,14 +33,13 @@
#include <linux/notifier.h>
#include <linux/spinlock.h>
#include <linux/pm_runtime.h>
+#include <acpi/video.h>
int drm_psb_debug;
static int drm_psb_trap_pagefaults;
int drm_psb_disable_vsync = 1;
int drm_psb_no_fb;
-int drm_psb_force_pipeb;
-int drm_idle_check_interval = 5;
int gfxrtdelay = 2 * 1000;
static int psb_probe(struct pci_dev *pdev, const struct pci_device_id *ent);
@@ -57,7 +56,6 @@ MODULE_PARM_DESC(hdmi_edid, "EDID info for HDMI monitor");
module_param_named(debug, drm_psb_debug, int, 0600);
module_param_named(no_fb, drm_psb_no_fb, int, 0600);
module_param_named(trap_pagefaults, drm_psb_trap_pagefaults, int, 0600);
-module_param_named(force_pipeb, drm_psb_force_pipeb, int, 0600);
module_param_named(rtpm, gfxrtdelay, int, 0600);
@@ -108,12 +106,6 @@ MODULE_DEVICE_TABLE(pci, pciidlist);
#define DRM_IOCTL_PSB_GETPAGEADDRS \
DRM_IOWR(DRM_COMMAND_BASE + DRM_PSB_GETPAGEADDRS,\
struct drm_psb_getpageaddrs_arg)
-#define DRM_IOCTL_PSB_HIST_ENABLE \
- DRM_IOWR(DRM_PSB_HIST_ENABLE + DRM_COMMAND_BASE, \
- uint32_t)
-#define DRM_IOCTL_PSB_HIST_STATUS \
- DRM_IOWR(DRM_PSB_HIST_STATUS + DRM_COMMAND_BASE, \
- struct drm_psb_hist_status_arg)
#define DRM_IOCTL_PSB_UPDATE_GUARD \
DRM_IOWR(DRM_PSB_UPDATE_GUARD + DRM_COMMAND_BASE, \
uint32_t)
@@ -133,15 +125,9 @@ MODULE_DEVICE_TABLE(pci, pciidlist);
/*
* TTM execbuf extension.
*/
-#define DRM_PSB_CMDBUF (DRM_PSB_DPU_DSR_OFF + 1)
-
-#define DRM_PSB_SCENE_UNREF (DRM_PSB_CMDBUF + 1)
-#define DRM_IOCTL_PSB_CMDBUF \
- DRM_IOW(DRM_PSB_CMDBUF + DRM_COMMAND_BASE, \
- struct drm_psb_cmdbuf_arg)
-#define DRM_IOCTL_PSB_SCENE_UNREF \
- DRM_IOW(DRM_PSB_SCENE_UNREF + DRM_COMMAND_BASE, \
- struct drm_psb_scene)
+
+#define DRM_PSB_CMDBUF 0x23
+#define DRM_PSB_SCENE_UNREF 0x24
#define DRM_IOCTL_PSB_KMS_OFF DRM_IO(DRM_PSB_KMS_OFF + DRM_COMMAND_BASE)
#define DRM_IOCTL_PSB_KMS_ON DRM_IO(DRM_PSB_KMS_ON + DRM_COMMAND_BASE)
/*
@@ -168,8 +154,6 @@ MODULE_DEVICE_TABLE(pci, pciidlist);
#define DRM_PSB_TTM_FENCE_UNREF (TTM_FENCE_UNREF + DRM_PSB_FENCE_OFFSET)
#define DRM_PSB_FLIP (DRM_PSB_TTM_FENCE_UNREF + 1) /*20*/
-/* PSB video extension */
-#define DRM_LNC_VIDEO_GETPARAM (DRM_PSB_FLIP + 1)
#define DRM_IOCTL_PSB_TTM_PL_CREATE \
DRM_IOWR(DRM_COMMAND_BASE + DRM_PSB_TTM_PL_CREATE,\
@@ -201,12 +185,6 @@ MODULE_DEVICE_TABLE(pci, pciidlist);
#define DRM_IOCTL_PSB_TTM_FENCE_UNREF \
DRM_IOW(DRM_COMMAND_BASE + DRM_PSB_TTM_FENCE_UNREF, \
struct ttm_fence_unref_arg)
-#define DRM_IOCTL_PSB_FLIP \
- DRM_IOWR(DRM_COMMAND_BASE + DRM_PSB_FLIP, \
- struct drm_psb_pageflip_arg)
-#define DRM_IOCTL_LNC_VIDEO_GETPARAM \
- DRM_IOWR(DRM_COMMAND_BASE + DRM_LNC_VIDEO_GETPARAM, \
- struct drm_lnc_video_getparam_arg)
static int psb_vt_leave_ioctl(struct drm_device *dev, void *data,
struct drm_file *file_priv);
@@ -268,9 +246,6 @@ static struct drm_ioctl_desc psb_ioctls[] = {
PSB_IOCTL_DEF(DRM_IOCTL_PSB_DPST_BL, psb_dpst_bl_ioctl, DRM_AUTH),
PSB_IOCTL_DEF(DRM_IOCTL_PSB_GET_PIPE_FROM_CRTC_ID,
psb_intel_get_pipe_from_crtc_id, 0),
- /*to be removed later*/
- /*PSB_IOCTL_DEF(DRM_IOCTL_PSB_SCENE_UNREF, drm_psb_scene_unref_ioctl,
- DRM_AUTH),*/
PSB_IOCTL_DEF(DRM_IOCTL_PSB_TTM_PL_CREATE, psb_pl_create_ioctl,
DRM_AUTH),
@@ -392,15 +367,6 @@ static void psb_get_core_freq(struct drm_device *dev)
#define FB_SKU_100 0
#define FB_SKU_100L 1
#define FB_SKU_83 2
-#if 1 /* FIXME remove it after PO */
-#define FB_GFX_CLK_DIVIDE_MASK (BIT20|BIT21|BIT22)
-#define FB_GFX_CLK_DIVIDE_SHIFT 20
-#define FB_VED_CLK_DIVIDE_MASK (BIT23|BIT24)
-#define FB_VED_CLK_DIVIDE_SHIFT 23
-#define FB_VEC_CLK_DIVIDE_MASK (BIT25|BIT26)
-#define FB_VEC_CLK_DIVIDE_SHIFT 25
-#endif /* FIXME remove it after PO */
-
bool mid_get_pci_revID(struct drm_psb_private *dev_priv)
{
@@ -596,7 +562,7 @@ static int psb_driver_unload(struct drm_device *dev)
dev->dev_private = NULL;
/*destory VBT data*/
- psb_intel_destory_bios(dev);
+ psb_intel_destroy_bios(dev);
}
ospm_power_uninit();
@@ -615,10 +581,6 @@ static int psb_driver_load(struct drm_device *dev, unsigned long chipset)
int ret = -ENOMEM;
uint32_t tt_pages;
- DRM_INFO("psb - %s\n", PSB_PACKAGE_VERSION);
-
- DRM_INFO("Run drivers on Poulsbo platform!\n");
-
dev_priv = kzalloc(sizeof(*dev_priv), GFP_KERNEL);
if (dev_priv == NULL)
return -ENOMEM;
@@ -774,11 +736,8 @@ static int psb_driver_load(struct drm_device *dev, unsigned long chipset)
if (ret)
return ret;
- /**
- * Init lid switch timer.
- * NOTE: must do this after psb_intel_opregion_init
- * and psb_backlight_init
- */
+/* igd_opregion_init(&dev_priv->opregion_dev); */
+ acpi_video_register();
if (dev_priv->lid_state)
psb_lid_timer_init(dev_priv);