diff options
-rw-r--r-- | PATCHCFG | 13 | ||||
-rw-r--r-- | patches/drm-intel-lvds.patch | 50 | ||||
-rw-r--r-- | patches/webcam-usb.patch | 46 |
3 files changed, 106 insertions, 3 deletions
@@ -10,16 +10,23 @@ SRCNAME="linux-2.6.29-ARCH" # filename%patchlevel (file must be in patches/ subdirectory) PATCHES=( # add upstream patch from 2.6.29 series - ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-2.6.29.2.bz2%1 + ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-2.6.29.3.bz2%1 # add latest fixes from stable queue, if needed # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git # fix http://bugs.archlinux.org/task/13212 - elgatedvb.patch%2 + # waiting for fixed patch! + # elgatedvb.patch%2 # add missing id http://bugs.archlinux.org/task/13990 rt2870.patch%3 + + # fix http://bugs.archlinux.org/task/14565 + drm-intel-lvds.patch%1 + + # fix http://bugs.archlinux.org/task/11778 + webcam-usb.patch%1 # add custom acpi dsdt patch, in reference to: # http://gaugusch.at/kernel.shtml @@ -35,7 +42,7 @@ PATCHES=( aufs2-20090406.patch%1 ) # Name of the resulting patch (will be bzipped afterwards) -PATCHNAME="patch-2.6.29.2-1-ARCH" +PATCHNAME="patch-2.6.29.3-1-ARCH" # Run this before applying patches pre_apply() { diff --git a/patches/drm-intel-lvds.patch b/patches/drm-intel-lvds.patch new file mode 100644 index 0000000..8960e7f --- /dev/null +++ b/patches/drm-intel-lvds.patch @@ -0,0 +1,50 @@ +commit 2b5cde2b272f56ec67b56a2af8c067d42eff7328 +Author: Li Peng <peng.li@intel.com> +Date: Fri Mar 13 10:25:07 2009 +0800 + + drm/i915: Fix LVDS dither setting + + Update bdb_lvds_options structure according to its defination in + 2D driver. Then we can parse and set 'lvds_dither' bit correctly + on non-965 chips. + + Signed-off-by: Li Peng <peng.li@intel.com> + Signed-off-by: Eric Anholt <eric@anholt.net> + +diff --git a/drivers/gpu/drm/i915/intel_bios.h b/drivers/gpu/drm/i915/intel_bios.h +index 5ea715a..de621aa 100644 +--- a/drivers/gpu/drm/i915/intel_bios.h ++++ b/drivers/gpu/drm/i915/intel_bios.h +@@ -162,13 +162,13 @@ struct bdb_lvds_options { + u8 panel_type; + u8 rsvd1; + /* LVDS capabilities, stored in a dword */ +- u8 rsvd2:1; +- u8 lvds_edid:1; +- u8 pixel_dither:1; +- u8 pfit_ratio_auto:1; +- u8 pfit_gfx_mode_enhanced:1; +- u8 pfit_text_mode_enhanced:1; + u8 pfit_mode:2; ++ u8 pfit_text_mode_enhanced:1; ++ u8 pfit_gfx_mode_enhanced:1; ++ u8 pfit_ratio_auto:1; ++ u8 pixel_dither:1; ++ u8 lvds_edid:1; ++ u8 rsvd2:1; + u8 rsvd4; + } __attribute__((packed)); + +diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c +index 0d211af..6619f26 100644 +--- a/drivers/gpu/drm/i915/intel_lvds.c ++++ b/drivers/gpu/drm/i915/intel_lvds.c +@@ -265,7 +265,7 @@ static void intel_lvds_mode_set(struct drm_encoder *encoder, + pfit_control = 0; + + if (!IS_I965G(dev)) { +- if (dev_priv->panel_wants_dither) ++ if (dev_priv->panel_wants_dither || dev_priv->lvds_dither) + pfit_control |= PANEL_8TO6_DITHER_ENABLE; + } + else diff --git a/patches/webcam-usb.patch b/patches/webcam-usb.patch new file mode 100644 index 0000000..3801b7c --- /dev/null +++ b/patches/webcam-usb.patch @@ -0,0 +1,46 @@ +From: Jani Monoses <jani@ubuntu.com> +Date: Sat, 1 Nov 2008 11:37:33 +0000 (+0200) +Subject: UBUNTU: Fix webcam having USB ID 0ac8:303b +X-Git-Tag: Ubuntu-2.6.27-12.28~143 +X-Git-Url: http://kernel.ubuntu.com/git?p=ubuntu%2Fubuntu-intrepid.git;a=commitdiff_plain;h=0feccfbc02792f9555bd77aa611b863f82974214;hp=5f4cff12e701a09044f0a87d69e8a6f3dabe57ca + +UBUNTU: Fix webcam having USB ID 0ac8:303b + +Bug: #292086 + +Make webcams with USB ID 0ac8:303b, such as the Z-Star Microelectronics +Corp. ZC0303 be handled by gspca not the zc0301 driver. The latter does +not seem to handle them anymore in Intrepid. + +Signed-off-by: Jani Monoses <jani@ubuntu.com> +Signed-off-by: Andy Whitcroft <apw@canonical.com> +Acked-by: Tim Gardner <tim.gardner@canonical.com> +Acked-by: Stefan Bader <stefan.bader@canonical.com> +--- + +diff --git a/drivers/media/video/gspca/zc3xx.c b/drivers/media/video/gspca/zc3xx.c +index d61ef72..9842dc1 100644 +--- a/drivers/media/video/gspca/zc3xx.c ++++ b/drivers/media/video/gspca/zc3xx.c +@@ -7555,9 +7555,7 @@ static const __devinitdata struct usb_device_id device_table[] = { + {USB_DEVICE(0x0ac8, 0x0301), .driver_info = SENSOR_PAS106}, + {USB_DEVICE(0x0ac8, 0x0302)}, + {USB_DEVICE(0x0ac8, 0x301b)}, +-#if !defined CONFIG_USB_ZC0301 && !defined CONFIG_USB_ZC0301_MODULE + {USB_DEVICE(0x0ac8, 0x303b)}, +-#endif + {USB_DEVICE(0x0ac8, 0x305b), .driver_info = SENSOR_TAS5130C_VF0250}, + {USB_DEVICE(0x0ac8, 0x307b)}, + {USB_DEVICE(0x10fd, 0x0128)}, +diff --git a/drivers/media/video/zc0301/zc0301_sensor.h b/drivers/media/video/zc0301/zc0301_sensor.h +index b0cd49c..2a9f02d 100644 +--- a/drivers/media/video/zc0301/zc0301_sensor.h ++++ b/drivers/media/video/zc0301/zc0301_sensor.h +@@ -61,7 +61,6 @@ zc0301_attach_sensor(struct zc0301_device* cam, struct zc0301_sensor* sensor); + #define ZC0301_ID_TABLE \ + static const struct usb_device_id zc0301_id_table[] = { \ + { ZC0301_USB_DEVICE(0x046d, 0x08ae, 0xff), }, /* PAS202 */ \ +- { ZC0301_USB_DEVICE(0x0ac8, 0x303b, 0xff), }, /* PB-0330 */ \ + { } \ + }; + |