diff options
author | Saul Wold <Saul.Wold@intel.com> | 2010-09-24 15:36:24 -0700 |
---|---|---|
committer | Saul Wold <Saul.Wold@intel.com> | 2010-09-24 16:43:21 -0700 |
commit | 239a368d5715d8f5b7733f9400339c2350c49369 (patch) | |
tree | 2953f12b45e590d9e14b6f72f8e4ee7188e41508 /meta/recipes-kernel/linux/linux-netbook-2.6.33.2/linux-2.6.34-USB-otg-add-notifier-support.patch | |
parent | c5b9525263dac6844d152e40acf8cee4d27b60bc (diff) | |
download | openembedded-core-239a368d5715d8f5b7733f9400339c2350c49369.tar.gz openembedded-core-239a368d5715d8f5b7733f9400339c2350c49369.tar.bz2 openembedded-core-239a368d5715d8f5b7733f9400339c2350c49369.tar.xz openembedded-core-239a368d5715d8f5b7733f9400339c2350c49369.zip |
netbook: Correct netbook build by moving netbook configuration from moblin to meta
Signed-off-by: Saul Wold <Saul.Wold@intel.com>
Diffstat (limited to 'meta/recipes-kernel/linux/linux-netbook-2.6.33.2/linux-2.6.34-USB-otg-add-notifier-support.patch')
-rw-r--r-- | meta/recipes-kernel/linux/linux-netbook-2.6.33.2/linux-2.6.34-USB-otg-add-notifier-support.patch | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-netbook-2.6.33.2/linux-2.6.34-USB-otg-add-notifier-support.patch b/meta/recipes-kernel/linux/linux-netbook-2.6.33.2/linux-2.6.34-USB-otg-add-notifier-support.patch new file mode 100644 index 000000000..3beca4f4d --- /dev/null +++ b/meta/recipes-kernel/linux/linux-netbook-2.6.33.2/linux-2.6.34-USB-otg-add-notifier-support.patch @@ -0,0 +1,85 @@ +From 76ca24d389a3f5eaf11d94efab15d5bef11a0a74 Mon Sep 17 00:00:00 2001 +From: Felipe Balbi <felipe.balbi@nokia.com> +Date: Thu, 17 Dec 2009 13:01:36 +0200 +Subject: [PATCH 10/10] USB: otg: add notifier support + +Patch-mainline: 2.6.34 +Git-commit: e9a20171dfa0aa134d2211126d1310f2daea52cf + +The notifier will be used to communicate usb events +to other drivers like the charger chip. + +This can be used as source of information to kick +usb charger detection as described by the USB +Battery Charging Specification 1.1 and/or to +pass bMaxPower field of selected usb_configuration +to charger chip in order to use that information +as input current on the charging profile +setup. + +Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> +--- + include/linux/usb/otg.h | 25 +++++++++++++++++++++++++ + 1 files changed, 25 insertions(+), 0 deletions(-) + +diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h +index 52bb917..6c0b676 100644 +--- a/include/linux/usb/otg.h ++++ b/include/linux/usb/otg.h +@@ -9,6 +9,8 @@ + #ifndef __LINUX_USB_OTG_H + #define __LINUX_USB_OTG_H + ++#include <linux/notifier.h> ++ + /* OTG defines lots of enumeration states before device reset */ + enum usb_otg_state { + OTG_STATE_UNDEFINED = 0, +@@ -33,6 +35,14 @@ enum usb_otg_state { + OTG_STATE_A_VBUS_ERR, + }; + ++enum usb_xceiv_events { ++ USB_EVENT_NONE, /* no events or cable disconnected */ ++ USB_EVENT_VBUS, /* vbus valid event */ ++ USB_EVENT_ID, /* id was grounded */ ++ USB_EVENT_CHARGER, /* usb dedicated charger */ ++ USB_EVENT_ENUMERATED, /* gadget driver enumerated */ ++}; ++ + #define USB_OTG_PULLUP_ID (1 << 0) + #define USB_OTG_PULLDOWN_DP (1 << 1) + #define USB_OTG_PULLDOWN_DM (1 << 2) +@@ -70,6 +80,9 @@ struct otg_transceiver { + struct otg_io_access_ops *io_ops; + void __iomem *io_priv; + ++ /* for notification of usb_xceiv_events */ ++ struct blocking_notifier_head notifier; ++ + /* to pass extra port status to the root hub */ + u16 port_status; + u16 port_change; +@@ -203,6 +216,18 @@ otg_start_srp(struct otg_transceiver *otg) + return otg->start_srp(otg); + } + ++/* notifiers */ ++static inline int ++otg_register_notifier(struct otg_transceiver *otg, struct notifier_block *nb) ++{ ++ return blocking_notifier_chain_register(&otg->notifier, nb); ++} ++ ++static inline void ++otg_unregister_notifier(struct otg_transceiver *otg, struct notifier_block *nb) ++{ ++ blocking_notifier_chain_unregister(&otg->notifier, nb); ++} + + /* for OTG controller drivers (and maybe other stuff) */ + extern int usb_bus_start_enum(struct usb_bus *bus, unsigned port_num); +-- +1.6.0.4 + |