summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-04-09ARM: fiq_debugger: add debug_putcColin Cross
Convert all the calls to state->pdata->uart_putc to a debug_putc helper. Change-Id: Idc007bd170ff1b51d0325e238105ae0c86d23777 Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09ARM: fiq_debugger: add support for reboot commandsColin Cross
Pass the rest of the reboot command to kernel_restart to allow reboot bootloader to work from FIQ debugger. Change-Id: I4e7b366a69268dda17ffcf4c84f2373d15cb1271 Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09ARM: fiq_debugger: fix compiling for v3.3Colin Cross
Call kernel_restart instead of arch_reset, the ARM reset handling has changed. Remove localtimer irq printing, they now show up in the regular irq stats. Change-Id: I523da343b292c5711f3e1cbfd766d32eea2da84e Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09mmc: sdhci: remove too large timeout warningTorne (Richard Coles)
Some MMC cards specify timeouts that are larger than the highest possible timeout in the host controller. sdhci is the only host controller driver which complains about this; remove the warning to match the behaviour of the other drivers. Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-04-09android: persistent_trace: fix section mismatch warningColin Cross
persistent_trace_probe can be calls persistent_ram init functions that are __devinit, mark it __devinit as well. Change-Id: I8f3cfb1bc443d143dc838b2bced2d191b3bf52d7 Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09android: persistent_ram: fix section mismatch in clientsColin Cross
persistent_ram clients will call the init functions from their probe functions, which need to be __devinit, not __init. Change the persistent_ram init functions to be __devinit. Change-Id: If92338f7c8d57dd34b286ff7705a96c078477ba4 Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09usb: gadget: adb: do not set error flag when dequeuing reqColin Cross
When an ep_out req is dequeued because of userspace freezing, don't set the error flag. Change-Id: I680f1a1059b8ac2244aaa069e7d42dc44abf98e9 Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09usb: gadget: adb: allow freezing in adb_readColin Cross
wait_event_interruptible in adb_read might return -ERESTARTSYS if userspace is frozen during adb_read or another signal is delivered to adb. If so, don't set dev->error to avoid resetting the adb connection. Change-Id: I5a7baa013a9a3a3b5305de7e6a0d18546a560018 Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09android: persistent_trace: ftrace into persistent_ramColin Cross
persistent_trace uses the ftrace infrastructure, but traces into a persistent_ram buffer instead of the regular ftrace ringbuffer. After a reset or panic, the trace can be decoded with cat /sys/kernel/debug/persistent_trace. Change-Id: Ia6025ccc323599c7844e0783af0386d32ed7419e Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09Revert "HACK: android-alarm: wakelock workaround"Colin Cross
This reverts commit 1f1a4544e5196a8e30cec7a21724e190bb51a2df. Conflicts: drivers/staging/android/alarm-dev.c drivers/staging/android/alarm.c Change-Id: I5717b7736b10de3a288613c8a7e4e5281c78fcaf
2012-04-09android-alarm: Remove unused android alarm in-kernel interfacesJohn Stultz
Now that alarm-dev.c uses the upstreamed alarmtimer interfaces, we can remove the otherwise unused in-kernel android alarm api. Signed-off-by: John Stultz <john.stultz@linaro.org>
2012-04-09android-alarm: Rework alarm-dev.c to use upstreamed alarmtimersJohn Stultz
This reworks the alarm-dev.c to use the upstreamed alarmtimers interface. Signed-off-by: John Stultz <john.stultz@linaro.org>
2012-04-09alarmtimer: Provide accessor to alarmtimer rtc deviceJohn Stultz
The Android alarm interface provides a settime call that sets both the alarmtimer RTC device and CLOCK_REALTIME to the same value. Since there may be multiple rtc devices, provide a hook to access the one the alarmtimer infrastructure is using. Signed-off-by: John Stultz <john.stultz@linaro.org>
2012-04-09android-alarm: Convert ALARM_ELAPSED_REALTIME to use CLOCK_BOOTTIMEJohn Stultz
The ALARM_ELAPSED_REALTIME clock domain in Android pointed to the need for something similar in linux system-wide (instead of limited to just the alarm interface). Thus CLOCK_BOOTTIME was introduced into the upstream kernel in 2.6.39. This patch attempts to convert the android alarm timer to utilize the kernel's CLOCK_BOOTTIME clockid for ALARM_ELAPSED_REALTIME, instead of managing it itself. Change-Id: I4867ed2823ebb29d27c53f236c6a3dbb47f3ac78 Signed-off-by: John Stultz <john.stultz@linaro.org>
2012-04-09usb: gadget: accessory: Add Android Accessory functionBenoit Goby
USB accessory mode allows users to connect USB host hardware specifically designed for Android-powered devices. The accessories must adhere to the Android accessory protocol outlined in the http://accessories.android.com documentation. This allows Android devices that cannot act as a USB host to still interact with USB hardware. When an Android device is in USB accessory mode, the attached Android USB accessory acts as the host, provides power to the USB bus, and enumerates connected devices. Signed-off-by: Mike Lockwood <lockwood@android.com>
2012-04-09usb: gadget: adb: Add ADB functionBenoit Goby
Android Debug Bridge (adb) is a command line tool that lets users communicate with a Android-powered device. It is used mainly to debug applications and tranfer files. f_adb implements the transport layer between the ADB Server (on the host) and the ADBD daemon (on the device). Signed-off-by: Mike Lockwood <lockwood@android.com>
2012-04-09usb: gadget: mtp: Add MTP/PTP functionBenoit Goby
USB gadget function driver used by the Android framework to implement the MTP and PTP protocols. It creates a character device that provides an interface for fast transfer of files and supports transferring files greater than 4GB. Signed-off-by: Mike Lockwood <lockwood@android.com>
2012-04-09usb: gadget: Add Android Composite Gadget driverBenoit Goby
The Android Gadget driver is a composite driver that allows userspace to change at runtime the list of functions enabled in its configuration and to configure these functions. It supports multiple functions: acm, adb, rndis, mtp/ptp, mass storage and accessory. It is usually controlled by a daemon that changes the configuration based on user settings. For example, rndis is enabled when the user enables sharing the phone data connection and adb (Android Debug Bridge) is only enabled when the user wants to debug applications for security reasons. As an example on how to use it, the following shell commands will make the gadget disconnect from the host and make it be re-enumerated as a composite with 1 rndis and 2 acm interfaces, and a different product id: echo 0 > /sys/class/android_usb/android0/enable echo rndis,acm > /sys/class/android_usb/android0/functions echo 2 > /sys/class/android_usb/android0/f_acm/instances echo 2d01 > /sys/class/android_usb/android0/idProduct echo 1 > /sys/class/android_usb/android0/enable The driver requires a gadget controller that supports software control of the D+ pullup and the controller driver must support disabling the pullup during composite_bind. Signed-off-by: Mike Lockwood <lockwood@android.com> Signed-off-by: Benoit Goby <benoit@android.com>
2012-04-09usb: gadget: f_rndis: Set rndis vendor parametersBenoit Goby
Add a variant of rndis_bind_config to let gadget drivers change rndis vendorID and manufacturer parameters. Signed-off-by: Benoit Goby <benoit@android.com>
2012-04-09usb: gadget: rndis: Fix re-binding f_rndisBenoit Goby
f_rndis checks if rndis_string_defs[0].id is null to setup rndis and allocate string ids when it is bound to the first configuration: /* maybe allocate device-global string IDs */ if (rndis_string_defs[0].id == 0) { /* ... and setup RNDIS itself */ status = rndis_init(); if (status < 0) return status; rndis_string_defs[0].id must be reset to 0 on unbind for rndis to be correctly initialized on the next composite_bind. Signed-off-by: Benoit Goby <benoit@android.com>
2012-04-09usb: gadget: Add variant of gether_setup to customize the device nameMike Lockwood
This is needed to avoid name collisions on SoCs that have both usb gadget and usb host, where usb0 may be the rndis interface or a usb ethernet adapter. Signed-off-by: Mike Lockwood <lockwood@android.com> Signed-off-by: Benoit Goby <benoit@android.com>
2012-04-09usb: gadget: u_serial: Allow calling gserial_setup after initBenoit Goby
Remove geserial_setup from the init section. The android gadget driver calls it after probe, after userspace has configured the gadget driver. Signed-off-by: Benoit Goby <benoit@android.com>
2012-04-09usb: gadget: composite: Initialize config->interfaceBenoit Goby
Reset config->interface in usb_add_config, as it may contain pointers to functions from a previous session if config is removed and re-added. Signed-off-by: Benoit Goby <benoit@android.com>
2012-04-09usb: gadget: composite: Add usb_remove_configBenoit Goby
Add usb_remove_config to unbind a configuration and remove it from the configs list. This allows implementing composite gadget drivers that can disconnect themself from the bus and that will later be re-enumerated with a different configuration. Gadget drivers must call usb_gadget_disconnect before calling this function to disable the pullup, disconnect the device from the host, and prevent the host from enumerating the device while we are changing the gadget configuration. Signed-off-by: Benoit Goby <benoit@android.com>
2012-04-09usb: otg: otg-wakelock: fix build for 3.3Colin Cross
Add missing module.h include Change-Id: Ib0538ca569c9e0713ceefcd1f91c6bc089d2f2ba Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09usb: otg: Temporarily grab wakelock on charger and disconnect eventsTodd Poynor
Change-Id: If995d4af4adcb08e8369009483f2956ad9627267 Signed-off-by: Todd Poynor <toddpoynor@google.com>
2012-04-09HID: Add null check for hidinput.Jaikumar Ganesh
Add null check for hidinput before calling input_register. Change-Id: Ib3fc0507e4091192360f3395d13d489db9b5a4d2 Signed-off-by: Jaikumar Ganesh <jaikumarg@android.com>
2012-04-09HID: magicmouse: Add input_register callback.Jaikumar Ganesh
The magicmouse driver needs to setup the input mapping after reports are parsed but before device is registered. Change-Id: Ic3a0ff4fc056f5d374bb7ea1bd831a175c690b0b Signed-off-by: Jaikumar Ganesh <jaikumarg@android.com>
2012-04-09HID: Add input_register callback.Jaikumar Ganesh
Add input_register callback which gets called after hid_configure_usage is called for all the reports and before the input device is registered. This allows individual drivers to do extra work like input mapping just before device registration. Based on discussions with David Herrmann <dh.herrmann@googlemail.com> Change-Id: Idab6fb4f7b1e5e569bd0410967288717e9d34c98 Signed-off-by: Jaikumar Ganesh <jaikumarg@android.com>
2012-04-09fuse: Freeze client on suspend when request sent to userspaceTodd Poynor
Suspend attempts can abort when the FUSE daemon is already frozen and a client is waiting uninterruptibly for a response, causing freezing of tasks to fail. Use the freeze-friendly wait API, but disregard other signals. Change-Id: Icefb7e4bbc718ccb76bf3c04daaa5eeea7e0e63c Signed-off-by: Todd Poynor <toddpoynor@google.com>
2012-04-09hid-multitouch: Filter collections by application usage.Jeff Brown
This change fixes two problems. First, it ensures that the hid-multitouch driver does not incorrectly map GenericDesktop usages that are intended for other applications, such as a Mouse. Second, it sets the appropriate input properties so that user-space can distinguish TouchScreen devices (INPUT_PROP_DIRECT) from TouchPad devices (INPUT_PROP_POINTER) and configure them accordingly. Change-Id: I8c2d947929186ffe7cf04b37c76e29b9abecf8cb Signed-off-by: jeffbrown@android.com
2012-04-09net: Only NET_ADMIN is allowed to fully control TUN interfaces.Chia-chi Yeh
Signed-off-by: Chia-chi Yeh <chiachi@android.com>
2012-04-09bridge: Have tx_bytes count headers like rx_bytes.Ashish Sharma
Since rx_bytes accounting does not include Ethernet Headers in br_input.c, excluding ETH_HLEN on the transmit path for consistent measurement of packet length on both the Tx and Rx chains. The clean way would be for Rx to include the eth header, but the skb len has already been adjusted by the time the br code sees the skb. This is only a temporary workaround until we can completely ignore or cleanly fix the skb->len handling. Change-Id: I910de95a4686b2119da7f1f326e2154ef31f9972 Signed-off-by: Ashish Sharma <ashishsharma@google.com>
2012-04-09netfilter: ipv6: fix crash caused by ipv6_find_hdr()JP Abgrall
When calling: ipv6_find_hdr(skb, &thoff, -1, NULL) on a fragmented packet, thoff would be left with a random value causing callers to read random memory offsets with: skb_header_pointer(skb, thoff, ...) Now we force ipv6_find_hdr() to return a failure in this case. Calling: ipv6_find_hdr(skb, &thoff, -1, &fragoff) will set fragoff as expected, and not return a failure. Change-Id: Ib474e8a4267dd2b300feca325811330329684a88 Signed-off-by: JP Abgrall <jpa@google.com>
2012-04-09netfilter: fixup the quota2, and enable.JP Abgrall
The xt_quota2 came from http://sourceforge.net/projects/xtables-addons/develop It needed tweaking for it to compile within the kernel tree. Fixed kmalloc() and create_proc_entry() invocations within a non-interruptible context. Removed useless copying of current quota back to the iptable's struct matchinfo: - those are per CPU: they will change randomly based on which cpu gets to update the value. - they prevent matching a rule: e.g. -A chain -m quota2 --name q1 --quota 123 can't be followed by -D chain -m quota2 --name q1 --quota 123 as the 123 will be compared to the struct matchinfo's quota member. Use the NETLINK NETLINK_NFLOG family to log a single message when the quota limit is reached. It uses the same packet type as ipt_ULOG, but - never copies skb data, - uses 112 as the event number (ULOG's +1) It doesn't log if the module param "event_num" is 0. Change-Id: I021d3b743db3b22158cc49acb5c94d905b501492 Signed-off-by: JP Abgrall <jpa@google.com>
2012-04-09netfilter: adding the original quota2 from xtables-addonsJP Abgrall
The original xt_quota in the kernel is plain broken: - counts quota at a per CPU level (was written back when ubiquitous SMP was just a dream) - provides no way to count across IPV4/IPV6. This patch is the original unaltered code from: http://sourceforge.net/projects/xtables-addons at commit e84391ce665cef046967f796dd91026851d6bbf3 Change-Id: I19d49858840effee9ecf6cff03c23b45a97efdeb Signed-off-by: JP Abgrall <jpa@google.com>
2012-04-09USB: OTG: Take wakelock when VBUS presentTodd Poynor
Enabled by default, can disable with: echo N > /sys/module/otg_wakelock/parameters/enabled Change-Id: I34974624c52ae23490852b44c270d2f326cf6116 Signed-off-by: Todd Poynor <toddpoynor@google.com>
2012-04-09gpu: ion: Add ION Memory ManagerRebecca Schultz Zavin
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
2012-04-09netfilter: have ip*t REJECT set the sock err when an icmp is to be sentJP Abgrall
Allow the REJECT --reject-with icmp*blabla to also set the matching error locally on the socket affected by the reject. This allows the process to see an error almost as if it received it via ICMP. It avoids the local process who's ingress packet is rejected to have to wait for a pseudo-eternity until some timeout kicks in. Ideally, this should be enabled with a new iptables flag similar to --reject-with-sock-err For now it is enabled with CONFIG_IP*_NF_TARGET_REJECT_SKERR option. Change-Id: I649a4fd5940029ec0b3233e5abb205da6984891e Signed-off-by: JP Abgrall <jpa@google.com>
2012-04-09netfilter: add xt_qtaguid matching moduleJP Abgrall
This module allows tracking stats at the socket level for given UIDs. It replaces xt_owner. If the --uid-owner is not specified, it will just count stats based on who the skb belongs to. This will even happen on incoming skbs as it looks into the skb via xt_socket magic to see who owns it. If an skb is lost, it will be assigned to uid=0. To control what sockets of what UIDs are tagged by what, one uses: echo t $sock_fd $accounting_tag $the_billed_uid \ > /proc/net/xt_qtaguid/ctrl So whenever an skb belongs to a sock_fd, it will be accounted against $the_billed_uid and matching stats will show up under the uid with the given $accounting_tag. Because the number of allocations for the stats structs is not that big: ~500 apps * 32 per app we'll just do it atomic. This avoids walking lists many times, and the fancy worker thread handling. Slabs will grow when needed later. It use netdevice and inetaddr notifications instead of hooks in the core dev code to track when a device comes and goes. This removes the need for exposed iface_stat.h. Put procfs dirs in /proc/net/xt_qtaguid/ ctrl stats iface_stat/<iface>/... The uid stats are obtainable in ./stats. Change-Id: I01af4fd91c8de651668d3decb76d9bdc1e343919 Signed-off-by: JP Abgrall <jpa@google.com>
2012-04-09nf: xt_socket: export the fancy sock finder codeJP Abgrall
The socket matching function has some nifty logic to get the struct sock from the skb or from the connection tracker. We export this so other xt_* can use it, similarly to ho how xt_socket uses nf_tproxy_get_sock. Change-Id: I11c58f59087e7f7ae09e4abd4b937cd3370fa2fd Signed-off-by: JP Abgrall <jpa@google.com>
2012-04-09net: wireless: Skip connect warning for CONFIG_CFG80211_ALLOW_RECONNECTDmitry Shmidt
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-04-09net: wireless: Fix CFG80211_ALLOW_RECONNECT option for disconnectDmitry Shmidt
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-04-09net: wireless: Add CFG80211_ALLOW_RECONNECT optionDmitry Shmidt
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-04-09net: wireless: change the expire time about each entry of scan resultsjun.ho.lee
Change-Id: I6e8d838d91bebc28f4cd09dcb8b9f1de775be13d Signed-off-by: jun.ho.lee <jun.ho.lee@samsung.com> Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-04-09net: wireless: Add CONFIG_WIFI_CONTROL_FUNC optionDmitry Shmidt
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-04-09wireless: bcmdhd: fix build for 3.3Colin Cross
ndo_set_multicast_list was replaced with ndo_set_rx_mode. Add no_cck and dont_wait_for_ack parameters to mgmt_tx. Change-Id: I56e0a924ee4417c6616336f9a8133425030b4d62 Signed-off-by: Colin Cross <ccross@android.com>
2012-04-09net: wireless: bcmdhd: Initial version based on 5.90.195.23Dmitry Shmidt
Change-Id: I91012d9adf1d9506cc0f832a683bd88684111b71 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-04-09net: wireless: Add get_country_code functionality to platformDmitry Shmidt
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-04-09network: wireless: Add get_mac_addr functionality to platformDmitry Shmidt
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>