From 239a368d5715d8f5b7733f9400339c2350c49369 Mon Sep 17 00:00:00 2001 From: Saul Wold Date: Fri, 24 Sep 2010 15:36:24 -0700 Subject: netbook: Correct netbook build by moving netbook configuration from moblin to meta Signed-off-by: Saul Wold --- ...linux-2.6.34-USB-otg-add-notifier-support.patch | 85 ++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 meta/recipes-kernel/linux/linux-netbook-2.6.33.2/linux-2.6.34-USB-otg-add-notifier-support.patch (limited to 'meta/recipes-kernel/linux/linux-netbook-2.6.33.2/linux-2.6.34-USB-otg-add-notifier-support.patch') 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 +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 +Signed-off-by: Greg Kroah-Hartman +--- + 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 ++ + /* 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 + -- cgit v1.2.3