diff options
Diffstat (limited to 'recipes')
6 files changed, 158 insertions, 5 deletions
diff --git a/recipes/images/base-image.bb b/recipes/images/base-image.bb index 295e0ed449..ee1f115e35 100644 --- a/recipes/images/base-image.bb +++ b/recipes/images/base-image.bb @@ -20,7 +20,8 @@ IMAGE_PREPROCESS_COMMAND = "create_etc_timestamp" DISTRO_SSH_DAEMON ?= "dropbear" -DISTRO_PACKAGE_MANAGER ?= "ipkg ipkg-collateral" +IPKG_VARIANT ?= "opkg" +DISTRO_PACKAGE_MANAGER ?= "${IPKG_VARIANT}" # FIXME: We need a distro-indendent way of specifying feed configs. # Once the RFC for the DISTRO_FEED_CONFIGS variable name is approved, diff --git a/recipes/linux/linux-omap-psp-2.6.32/cam/0001-omap3beagle-Partial-revert-HACK-try-to-poweron-stuff.patch b/recipes/linux/linux-omap-psp-2.6.32/cam/0001-omap3beagle-Partial-revert-HACK-try-to-poweron-stuff.patch new file mode 100644 index 0000000000..4c5b76edbe --- /dev/null +++ b/recipes/linux/linux-omap-psp-2.6.32/cam/0001-omap3beagle-Partial-revert-HACK-try-to-poweron-stuff.patch @@ -0,0 +1,40 @@ +From d10aa1882d560d968dd61fb49ad1eeab5df84079 Mon Sep 17 00:00:00 2001 +From: Sergio Aguirre <saaguirre@ti.com> +Date: Thu, 22 Jul 2010 17:29:20 -0500 +Subject: [PATCH 1/3] omap3beagle: Partial revert "HACK: try to poweron stuff on xM rev A" + +In this commit: + + commit 0e0b2c1a7a3212e47e2fb07116f1b31914152f76 + Author: Koen Kooi <koen@dominion.thruhere.net> + Date: Tue May 4 17:04:27 2010 +0200 + + HACK: try to poweron stuff on xM rev A + +There is a change introduced to modify the gpio init value after +setting its mode to output. + +This was breaking somehow the camera. The sensor powerup sequence +was returning -EBUSY. + +Signed-off-by: Sergio Aguirre <saaguirre@ti.com> +--- + arch/arm/mach-omap2/board-omap3beagle.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c +index 9bca9fa..3d05bfa 100644 +--- a/arch/arm/mach-omap2/board-omap3beagle.c ++++ b/arch/arm/mach-omap2/board-omap3beagle.c +@@ -387,7 +387,7 @@ static int beagle_twl_gpio_setup(struct device *dev, + + /* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */ + gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR"); +- gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0); ++ gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1); + } + else { + /* DVI reset GPIO is different between revisions */ +-- +1.6.6.1 + diff --git a/recipes/linux/linux-omap-psp-2.6.32/cam/0002-omap3beagle-camera-Fix-dual-sensor-registration.patch b/recipes/linux/linux-omap-psp-2.6.32/cam/0002-omap3beagle-camera-Fix-dual-sensor-registration.patch new file mode 100644 index 0000000000..ef266d3fe7 --- /dev/null +++ b/recipes/linux/linux-omap-psp-2.6.32/cam/0002-omap3beagle-camera-Fix-dual-sensor-registration.patch @@ -0,0 +1,43 @@ +From b5412a27380f0c8d571181ba2ab719574fce796a Mon Sep 17 00:00:00 2001 +From: Sergio Aguirre <saaguirre@ti.com> +Date: Thu, 22 Jul 2010 11:03:33 -0500 +Subject: [PATCH 2/3] omap3beagle: camera: Fix dual sensor registration + +dev_index should be different, which represents an internal index +in the master camera driver. + +Also, make device video nodes be alloted with the "first free", by setting +dev_minor to -1. + +Signed-off-by: Sergio Aguirre <saaguirre@ti.com> +--- + arch/arm/mach-omap2/board-omap3beagle-camera.c | 6 +++--- + 1 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/arch/arm/mach-omap2/board-omap3beagle-camera.c b/arch/arm/mach-omap2/board-omap3beagle-camera.c +index 520e1d8..c0218e3 100644 +--- a/arch/arm/mach-omap2/board-omap3beagle-camera.c ++++ b/arch/arm/mach-omap2/board-omap3beagle-camera.c +@@ -107,7 +107,7 @@ static int mt9v113_ifparm(struct v4l2_ifparm *p) + + static struct omap34xxcam_hw_config mt9v113_hwc = { + .dev_index = 0, +- .dev_minor = 0, ++ .dev_minor = -1, + .dev_type = OMAP34XXCAM_SLAVE_SENSOR, + .u.sensor.sensor_isp = 1, + .u.sensor.capture_mem = MT9V113_MAX_FRAME_SIZE * 2, +@@ -259,8 +259,8 @@ static int mt9t112_ifparm(struct v4l2_ifparm *p) + + #if defined(CONFIG_VIDEO_OMAP3) || defined(CONFIG_VIDEO_OMAP3_MODULE) + static struct omap34xxcam_hw_config mt9t112_hwc = { +- .dev_index = 0, +- .dev_minor = 0, ++ .dev_index = 1, ++ .dev_minor = -1, + .dev_type = OMAP34XXCAM_SLAVE_SENSOR, + .u.sensor.sensor_isp = 0, + .u.sensor.capture_mem = MT9T112_BIGGEST_FRAME_BYTE_SIZE, +-- +1.6.6.1 + diff --git a/recipes/linux/linux-omap-psp-2.6.32/cam/0003-mt9v113-Fix-State-variable-handling.patch b/recipes/linux/linux-omap-psp-2.6.32/cam/0003-mt9v113-Fix-State-variable-handling.patch new file mode 100644 index 0000000000..45b54b841e --- /dev/null +++ b/recipes/linux/linux-omap-psp-2.6.32/cam/0003-mt9v113-Fix-State-variable-handling.patch @@ -0,0 +1,68 @@ +From ff2a80a1bef6f7215221812eab381f4303fffce8 Mon Sep 17 00:00:00 2001 +From: Sergio Aguirre <saaguirre@ti.com> +Date: Thu, 22 Jul 2010 13:29:16 -0500 +Subject: [PATCH 3/3] mt9v113: Fix State variable handling + +State variable was misused, and was running detection all the +time the sensor was powered back on. + +Reason? power off code was putting it to "not detected" always. + +Signed-off-by: Sergio Aguirre <saaguirre@ti.com> +--- + drivers/media/video/mt9v113.c | 23 ++++++++++++++--------- + 1 files changed, 14 insertions(+), 9 deletions(-) + +diff --git a/drivers/media/video/mt9v113.c b/drivers/media/video/mt9v113.c +index 6714240..37e3e19 100644 +--- a/drivers/media/video/mt9v113.c ++++ b/drivers/media/video/mt9v113.c +@@ -1251,7 +1251,6 @@ static int ioctl_s_power(struct v4l2_int_device *s, enum v4l2_power on) + /* Disable mux for mt9v113 data path */ + if (decoder->pdata->power_set) + err |= decoder->pdata->power_set(s, on); +- decoder->state = STATE_NOT_DETECTED; + break; + + case V4L2_POWER_STANDBY: +@@ -1260,23 +1259,29 @@ static int ioctl_s_power(struct v4l2_int_device *s, enum v4l2_power on) + break; + + case V4L2_POWER_ON: +- /* Enable mux for mt9v113 data path */ +- if (decoder->state == STATE_NOT_DETECTED) { +- +- if (decoder->pdata->power_set) +- err = decoder->pdata->power_set(s, on); ++ if (decoder->pdata->power_set) { ++ err = decoder->pdata->power_set(s, on); ++ if (err) ++ return err; ++ } + ++ if (decoder->state == STATE_NOT_DETECTED) { + /* Detect the sensor is not already detected */ +- err |= mt9v113_detect(decoder); ++ err = mt9v113_detect(decoder); + if (err) { + v4l_err(decoder->client, + "Unable to detect decoder\n"); ++ WARN_ON(1); + return err; + } + } + /* Only VGA mode for now */ +- err |= mt9v113_configure(decoder); +- err |= mt9v113_vga_mode(decoder); ++ err = mt9v113_configure(decoder); ++ if (err) ++ return err; ++ err = mt9v113_vga_mode(decoder); ++ if (err) ++ return err; + break; + + default: +-- +1.6.6.1 + diff --git a/recipes/linux/linux-omap-psp_2.6.32.bb b/recipes/linux/linux-omap-psp_2.6.32.bb index c9a6d06cd5..c052fdce08 100644 --- a/recipes/linux/linux-omap-psp_2.6.32.bb +++ b/recipes/linux/linux-omap-psp_2.6.32.bb @@ -128,6 +128,9 @@ SRC_URI = "git://arago-project.org/git/people/sriram/ti-psp-omap.git;protocol=gi file://cam/0069-mt9t112-Fix-pll-p-dividers-abstraction.patch \ file://cam/0070-mt9t112-Adjust-50-60Hz-flickering-settings.patch \ file://cam/0071-mt9t112-Trigger-autofocus-at-the-end-of-context-swit.patch \ + file://cam/0001-omap3beagle-Partial-revert-HACK-try-to-poweron-stuff.patch \ + file://cam/0002-omap3beagle-camera-Fix-dual-sensor-registration.patch \ + file://cam/0003-mt9v113-Fix-State-variable-handling.patch \ file://0001-BeagleBoard-Adjust-USER-button-pin-for-xM.patch \ file://defconfig" diff --git a/recipes/uclibc/uclibc-config.inc b/recipes/uclibc/uclibc-config.inc index 5a6fbe82e9..ef4385ed4f 100644 --- a/recipes/uclibc/uclibc-config.inc +++ b/recipes/uclibc/uclibc-config.inc @@ -94,10 +94,8 @@ def uclibc_cfg(feature, features, tokens, cnf, rem): # Map distro and machine features to config settings def features_to_uclibc_settings(d): cnf, rem = ([], []) - distro_features = bb.data.getVar('DISTRO_FEATURES', d).split() - if bb.data.getVar('THUMB_INTERWORKING', d, 1) == "yes": - distro_features += "thumb-interworking" - #machine_features = bb.data.getVar('MACHINE_FEATURES', d).split() + distro_features = bb.data.getVar('DISTRO_FEATURES', d, True).split() + #machine_features = bb.data.getVar('MACHINE_FEATURES', d, True).split() uclibc_cfg('ipv4', distro_features, 'UCLIBC_HAS_IPV4', cnf, rem) uclibc_cfg('ipv6', distro_features, 'UCLIBC_HAS_IPV6', cnf, rem) uclibc_cfg('largefile', distro_features, 'UCLIBC_HAS_LFS', cnf, rem) |