aboutsummaryrefslogtreecommitdiff
path: root/include/linux
AgeCommit message (Collapse)AuthorFilesLines
2012-04-21Merge tag 'mfd-for-linus-3.4' of ↵Linus Torvalds4-71/+103
git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 Pull MFD fixes from Samuel Ortiz: "We have 3 build fixes, a OMAP USB host PHY reset fix and the twl6040 conversion to an i2c driver. The latter may not sound like a fix but the twl6040 MFD driver won't probe without it, triggering an OMAP4 audio regression." * tag 'mfd-for-linus-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: mfd: Fix modular builds of rc5t583 regulator support mfd: Fix asic3_gpio_to_irq ARM: OMAP3: USB: Fix the EHCI ULPI PHY reset issue mfd: Convert twl6040 to i2c driver, and separate it from twl core mfd : Fix dbx500 compilation error
2012-04-21kill mm argument of vm_munmap()Al Viro1-1/+1
it's always current->mm Signed-off-by: Al Viro <[email protected]>
2012-04-20NFSv4: Ensure we do not reuse open owner namesTrond Myklebust1-1/+6
The NFSv4 spec is ambiguous about whether or not it is permissible to reuse open owner names, so play it safe. This patch adds a timestamp to the state_owner structure, and combines that with the IDA based uniquifier. Fixes a regression whereby the Linux server returns NFS4ERR_BAD_SEQID. Signed-off-by: Trond Myklebust <[email protected]>
2012-04-20net: Delete all remaining instances of ctl_pathEric W. Biederman1-6/+0
We don't use struct ctl_path anymore so delete the exported constants. Signed-off-by: Eric W. Biederman <[email protected]> Acked-by: Pavel Emelyanov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-20mmc: remove MMC bus legacy suspend/resume methodChuanxiao Dong1-1/+1
MMC bus is using legacy suspend/resume method, which is not compatible if runtime pm callbacks are used. In this scenario, MMC bus suspend/resume callbacks cannot be called when system entering S3. So change to use the new defined dev_pm_ops for system sleeping mode. Tested on AM335x Platform. Solves major issue/crash reported at http://www.mail-archive.com/[email protected]/msg65425.html Signed-off-by: Chuanxiao Dong <[email protected]> Tested-by: Hebbar, Gururaja <[email protected]> Acked-by: Linus Walleij <[email protected]> Acked-by: Ulf Hansson <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2012-04-20VM: add "vm_mmap()" helper functionLinus Torvalds1-17/+6
This continues the theme started with vm_brk() and vm_munmap(): vm_mmap() does the same thing as do_mmap(), but additionally does the required VM locking. This uninlines (and rewrites it to be clearer) do_mmap(), which sadly duplicates it in mm/mmap.c and mm/nommu.c. But that way we don't have to export our internal do_mmap_pgoff() function. Some day we hopefully don't have to export do_mmap() either, if all modular users can become the simpler vm_mmap() instead. We're actually very close to that already, with the notable exception of the (broken) use in i810, and a couple of stragglers in binfmt_elf. Signed-off-by: Linus Torvalds <[email protected]>
2012-04-20VM: add "vm_munmap()" helper functionLinus Torvalds1-0/+1
Like the vm_brk() function, this is the same as "do_munmap()", except it does the VM locking for the caller. Signed-off-by: Linus Torvalds <[email protected]>
2012-04-20VM: add "vm_brk()" helper functionLinus Torvalds1-1/+2
It does the same thing as "do_brk()", except it handles the VM locking too. It turns out that all external callers want that anyway, so we can make do_brk() static to just mm/mmap.c while at it. Signed-off-by: Linus Torvalds <[email protected]>
2012-04-20alarmtimer: Provide accessor to alarmtimer rtc deviceJohn Stultz1-0/+3
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. CC: Colin Cross <[email protected]> CC: Thomas Gleixner <[email protected]> CC: Android Kernel Team <[email protected]> Signed-off-by: John Stultz <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-20lib: add support for stmp-style devicesWolfram Sang1-0/+20
MX23/28 use IP cores which follow a register layout I have first seen on STMP3xxx SoCs. In this layout, every register actually has four u32: 1.) to store a value directly 2.) a SET register where every 1-bit sets the corresponding bit, others are unaffected 3.) same with a CLR register 4.) same with a TOG (toggle) register Also, the 2 MSBs in register 0 are always the same and can be used to reset the IP core. All this is strictly speaking not mach-specific (but IP core specific) and, thus, doesn't need to be in mach-mxs/include. At least mx6 also uses IP cores following this stmp-style. So: Introduce a stmp-style device, put the code and defines for that in a public place (lib/), and let drivers for stmp-style devices select that code. To avoid regressions and ease reviewing, the actual code is simply copied from mach-mxs. It definately wants updates, but those need a seperate patch series. Voila, mach dependency gone, reusable code introduced. Note that I didn't remove the duplicated code from mach-mxs yet, first the drivers have to be converted. Signed-off-by: Wolfram Sang <[email protected]> Acked-by: Shawn Guo <[email protected]> Acked-by: Dong Aisheng <[email protected]>
2012-04-20Merge tag 'for-torvalds-20120418' of ↵Linus Torvalds1-1/+3
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl Pull pinctrl fixes from Linus Walleij: - Fixed compilation errors and warnings - Stricter checks on the ops vtable * tag 'for-torvalds-20120418' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: pinctrl: implement pinctrl_check_ops pinctrl: include <linux/bug.h> to prevent compile errors pinctrl: fix compile error if not select PINMUX support
2012-04-20Merge tag 'usb-3.4-rc4' of ↵Linus Torvalds1-0/+1
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb Pull USB fixes from Greg Kroah-Hartman: "Here are a number of tiny USB fixes for 3.4-rc4. Most of them are in the USB gadget area, but a few other minor USB driver and core fixes are here as well. Signed-off-by: Greg Kroah-Hartman <[email protected]>" * tag 'usb-3.4-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (36 commits) USB: serial: cp210x: Fixed usb_control_msg timeout values USB: ehci-tegra: don't call set_irq_flags(IRQF_VALID) USB: yurex: Fix missing URB_NO_TRANSFER_DMA_MAP flag in urb USB: yurex: Remove allocation of coherent buffer for setup-packet buffer drivers/usb/misc/usbtest.c: add kfrees USB: ehci-fsl: Fix kernel crash on mpc5121e uwb: fix error handling uwb: fix use of del_timer_sync() in interrupt EHCI: always clear the STS_FLR status bit EHCI: fix criterion for resuming the root hub USB: sierra: avoid QMI/wwan interface on MC77xx usb: usbtest: avoid integer overflow in alloc_sglist() usb: usbtest: avoid integer overflow in test_ctrl_queue() USB: fix deadlock in bConfigurationValue attribute method usb: gadget: eliminate NULL pointer dereference (bugfix) usb: gadget: uvc: Remove non-required locking from 'uvc_queue_next_buffer' routine usb: gadget: rndis: fix Missing req->context assignment usb: musb: omap: fix the error check for pm_runtime_get_sync usb: gadget: udc-core: fix asymmetric calls in remove_driver usb: musb: omap: fix crash when musb glue (omap) gets initialized ...
2012-04-20Extcon: support mutually exclusive relation between cables.MyungJoo Ham1-5/+23
There could be cables that t recannot be attaches simulatenously. Extcon device drivers may express such information via mutually_exclusive in struct extcon_dev. For example, for an extcon device with 16 cables (bits 0 to 15 are available), if mutually_exclusive = { 0x7, 0xC0, 0x81, 0 }, then, the following attachments are prohibitted. {0, 1} {0, 2} {1, 2} {6, 7} {0, 7} and every attachment set that are superset of one of the above. For the detail, please refer to linux/include/linux/extcon.h. The concept is suggested by NeilBrown <[email protected]> Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> -- Changes from V5: - Updated sysfs format Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-20Extcon: support multiple states at a device.MyungJoo Ham1-0/+185
One switch device (e.g., MUIC(MAX8997, MAX77686, ...), and some 30-pin devices) may have multiple cables attached. For example, one 30-pin port may inhabit a USB cable, an HDMI cable, and a mic. Thus, one switch device requires multiple state bits each representing a type of cable. For such purpose, we use the 32bit state variable; thus, up to 32 different type of cables may be defined for a switch device. The list of possible cables is defined by the array of cable names in the switch_dev struct given to the class. Signed-off-by: Chanwoo Choi <[email protected]> Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> -- Changes from V7 - Bugfixed in _call_per_cable() (incorrect nb) (Chanwoo Choi) - Compiler error in header for !CONFIG_EXTCON (Chanwoo Choi) Changes from V5 - Sysfs style reformed: subdirectory per cable. - Updated standard cable names - Removed unnecessary printf - Bugfixes after testing Changes from V4 - Bugfixes after more testing at Exynos4412 boards with userspace processses. Changes from V3 - Bugfixes after more testing at Exynos4412 boards. Changes from V2 - State can be stored by user - Documentation updated Changes from RFC - Switch is renamed to extcon - Added kerneldoc comments - Added APIs to support "standard" cable names - Added helper APIs to support notifier block registration with cable name. - Regrouped function list in the header file. Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-20Extcon: support notification based on the state changes.Donggeun Kim1-0/+38
State changes of extcon devices have been notified via kobjet_uevent. This patch adds notifier interfaces in order to allow device drivers to get notified easily. Along with notifier interface, extcon_get_extcon_dev() function is added so that device drivers may discover a extcon_dev easily. Signed-off-by: Donggeun Kim <[email protected]> Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Mark Brown <[email protected]> -- Changes from RFC - Renamed switch to extcon - Bugfix: extcon_dev_unregister() - Bugfix: "edev->dev" is "internal" data. - Added kerneldoc comments. - Reworded comments. Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-20Extcon: support generic GPIO extcon driverMyungJoo Ham1-0/+52
The generic GPIO extcon driver (an external connector device based on GPIO control) and imported from Android kernel. switch: switch class and GPIO drivers. (splitted) Author: Mike Lockwood <[email protected]> switch: gpio: Don't call request_irq with interrupts disabled Author: Arve Hjønnevåg <[email protected]> switch_gpio: Add missing #include <linux/interrupt.h> Author: Mike Lockwood <[email protected]> Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Mark Brown <[email protected]> -- Changed from v7: - Style updates mentioned by Stephen Boyd and Mark Brown Changed from v5: - Splitted at v5 from the main extcon patch. - Added debounce time for irq handlers. - Use request_any_context_irq instead of request_irq - User needs to specify irq flags for GPIO interrupts (was fixed to IRQF_TRIGGER_LOW before) - Use module_platform_driver(). Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-20Extcon (external connector): import Android's switch class and modify.MyungJoo Ham1-0/+82
External connector class (extcon) is based on and an extension of Android kernel's switch class located at linux/drivers/switch/. This patch provides the before-extension switch class moved to the location where the extcon will be located (linux/drivers/extcon/) and updates to handle class properly. The before-extension class, switch class of Android kernel, commits imported are: switch: switch class and GPIO drivers. (splitted) Author: Mike Lockwood <[email protected]> switch: Use device_create instead of device_create_drvdata. Author: Arve Hjønnevåg <[email protected]> In this patch, upon the commits of Android kernel, we have added: - Relocated and renamed for extcon. - Comments, module name, and author information are updated - Code clean for successing patches - Bugfix: enabling write access without write functions - Class/device/sysfs create/remove handling - Added comments about uevents - Format changes for extcon_dev_register() to have a parent dev. Signed-off-by: MyungJoo Ham <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Reviewed-by: Mark Brown <[email protected]> -- Changes from v7 - Compiler error fixed when it is compiled as a module. - Removed out-of-date Kconfig entry Changes from v6 - Updated comment/strings - Revised "Android-compatible" mode. * Automatically activated if CONFIG_ANDROID && !CONFIG_ANDROID_SWITCH * Creates /sys/class/switch/*, which is a copy of /sys/class/extcon/* Changes from v5 - Split the patch - Style fixes - "Android-compatible" mode is enabled by Kconfig option. Changes from v2 - Updated name_show - Sysfs entries are handled by class itself. - Updated the method to add/remove devices for the class - Comments on uevent send - Able to become a module - Compatible with Android platform Changes from RFC - Renamed to extcon (external connector) from multistate switch - Added a seperated directory (drivers/extcon) - Added kerneldoc comments - Removed unused variables from extcon_gpio.c - Added ABI Documentation. Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-20blkcg: mass rename of blkcg APITejun Heo1-2/+2
During the recent blkcg cleanup, most of blkcg API has changed to such extent that mass renaming wouldn't cause any noticeable pain. Take the chance and cleanup the naming. * Rename blkio_cgroup to blkcg. * Drop blkio / blkiocg prefixes and consistently use blkcg. * Rename blkio_group to blkcg_gq, which is consistent with io_cq but keep the blkg prefix / variable name. * Rename policy method type and field names to signify they're dealing with policy data. * Rename blkio_policy_type to blkcg_policy. This patch doesn't cause any functional change. Signed-off-by: Tejun Heo <[email protected]> Cc: Vivek Goyal <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2012-04-20blkcg: implement per-queue policy activationTejun Heo1-0/+1
All blkcg policies were assumed to be enabled on all request_queues. Due to various implementation obstacles, during the recent blkcg core updates, this was temporarily implemented as shooting down all !root blkgs on elevator switch and policy [de]registration combined with half-broken in-place root blkg updates. In addition to being buggy and racy, this meant losing all blkcg configurations across those events. Now that blkcg is cleaned up enough, this patch replaces the temporary implementation with proper per-queue policy activation. Each blkcg policy should call the new blkcg_[de]activate_policy() to enable and disable the policy on a specific queue. blkcg_activate_policy() allocates and installs policy data for the policy for all existing blkgs. blkcg_deactivate_policy() does the reverse. If a policy is not enabled for a given queue, blkg printing / config functions skip the respective blkg for the queue. blkcg_activate_policy() also takes care of root blkg creation, and cfq_init_queue() and blk_throtl_init() are updated accordingly. This replaces blkcg_bypass_{start|end}() and update_root_blkg_pd() unnecessary. Dropped. v2: cfq_init_queue() was returning uninitialized @ret on root_group alloc failure if !CONFIG_CFQ_GROUP_IOSCHED. Fixed. Signed-off-by: Tejun Heo <[email protected]> Cc: Vivek Goyal <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2012-04-20blkcg: add request_queue->root_blkgTejun Heo1-0/+2
With per-queue policy activation, root blkg creation will be moved to blkcg core. Add q->root_blkg in preparation. For blk-throtl, this replaces throtl_data->root_tg; however, cfq needs to keep cfqd->root_group for !CONFIG_CFQ_GROUP_IOSCHED. This is to prepare for per-queue policy activation and doesn't cause any functional difference. Signed-off-by: Tejun Heo <[email protected]> Cc: Vivek Goyal <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2012-04-20blkcg: remove static policy ID enumsTejun Heo1-1/+6
Remove BLKIO_POLICY_* enums and let blkio_policy_register() allocate @pol->plid dynamically on registration. The maximum number of blkcg policies which can be registered at the same time is defined by BLKCG_MAX_POLS constant added to include/linux/blkdev.h. Note that blkio_policy_register() now may fail. Policy init functions updated accordingly and unnecessary ifdefs removed from cfq_init(). Signed-off-by: Tejun Heo <[email protected]> Cc: Vivek Goyal <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2012-04-19Revert "driver core: check start node in klist_iter_init_node"Greg Kroah-Hartman2-6/+6
This reverts commit a15d49fd3094cff90e5410ca454a870e0a722fe1 as that patch broke the build. Cc: Hannes Reinecke <[email protected]> Reported-by: Stephen Rothwell <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-19stmmac: use custom init/exit functions in pm opsFrancesco Virlinzi1-0/+1
Freeze and restore can call the custom init/exit functions. Also the patch adds a custom data field that can be used for storing platform data useful on restore the embedded setup (e.g. GPIO, SYSCFG). Signed-off-by: Francesco Virlinzi <[email protected]> Signed-off-by: Giuseppe Cavallaro <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-19KVM: Fix page-crossing MMIOAvi Kivity1-4/+27
MMIO that are split across a page boundary are currently broken - the code does not expect to be aborted by the exit to userspace for the first MMIO fragment. This patch fixes the problem by generalizing the current code for handling 16-byte MMIOs to handle a number of "fragments", and changes the MMIO code to create those fragments. Signed-off-by: Avi Kivity <[email protected]> Signed-off-by: Marcelo Tosatti <[email protected]>
2012-04-19Merge branch 'for-3.4' of git://linux-nfs.org/~bfields/linuxLinus Torvalds1-0/+1
Pull nfsd bugfixes from J. Bruce Fields: "One bugfix, and one minor header fix from Jeff Layton while we're here" * 'for-3.4' of git://linux-nfs.org/~bfields/linux: nfsd: include cld.h in the headers_install target nfsd: don't fail unchecked creates of non-special files
2012-04-19Merge branch 'linus' into queueMarcelo Tosatti16-47/+79
Merge reason: development work has dependency on kvm patches merged upstream. Conflicts: Documentation/feature-removal-schedule.txt Signed-off-by: Marcelo Tosatti <[email protected]>
2012-04-19nf_bridge: remove holes in struct nf_bridge_infoEric Dumazet1-5/+5
Put use & mask on same location to avoid two holes on 64bit arches Signed-off-by: Eric Dumazet <[email protected]> Acked-by: Stephen Hemminger <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2012-04-19ARM: 7376/1: clkdev: Implement managed clk_get()Mark Brown1-0/+32
Allow clk API users to simplify their cleanup paths by providing a managed version of clk_get() and clk_put(). Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Russell King <[email protected]>
2012-04-19ARM: 7369/1: amba: add functions to add devices dynamicallyLinus Walleij1-0/+8
Add two functions to add APB and AHB devices to the amba (PrimeCell) bus dynamically. This is modeled after the static definition macros recently introduced into <linux/amba/bus.h> and can help us in factoring out a bunch of code across the kernel. Since a lot of call sites seem to be using a returned struct amba device* pointer, let's use that. Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Russell King <[email protected]>
2012-04-19Merge git://git.kernel.org/pub/scm/virt/kvm/kvmLinus Torvalds1-0/+6
Pull KVM updates from Marcelo Tosatti. * git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: lock slots_lock around device assignment KVM: VMX: Fix kvm_set_shared_msr() called in preemptible context KVM: unmap pages from the iommu when slots are removed KVM: PMU emulation: GLOBAL_CTRL MSR should be enabled on reset
2012-04-19[media] videodev2.h: Fix VIDIOC_QUERYMENU ioctl regressionHans Verkuil1-1/+1
Fixes a regression in VIDIOC_QUERYMENU introduced when the __s64 value field was added to the union. On a 64-bit system this will change the size of this v4l2_querymenu structure from 44 to 48 bytes, thus breaking the ABI. By adding the packed attribute it is working again. Tested on both 64 and 32 bit systems. Signed-off-by: Hans Verkuil <[email protected]> Acked-by: Sakari Ailus <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2012-04-19Merge tag 'v3.4-rc3' into staging/for_v3.5Mauro Carvalho Chehab236-3501/+6673
* tag 'v3.4-rc3': (3755 commits) Linux 3.4-rc3 x86-32: fix up strncpy_from_user() sign error ARM: 7386/1: jump_label: fixup for rename to static_key ARM: 7384/1: ThumbEE: Disable userspace TEEHBR access for !CONFIG_ARM_THUMBEE ARM: 7382/1: mm: truncate memory banks to fit in 4GB space for classic MMU ARM: 7359/2: smp_twd: Only wait for reprogramming on active cpus PCI: Fix regression in pci_restore_state(), v3 SCSI: Fix error handling when no ULD is attached ARM: OMAP: clock: cleanup CPUfreq leftovers, fix build errors ARM: dts: remove blank interrupt-parent properties ARM: EXYNOS: Fix Kconfig dependencies for device tree enabled machine files do not export kernel's NULL #define to userspace ARM: EXYNOS: Remove broken config values for touchscren for NURI board ARM: EXYNOS: set fix xusbxti clock for NURI and Universal210 boards ARM: EXYNOS: fix regulator name for NURI board ARM: SAMSUNG: make SAMSUNG_PM_DEBUG select DEBUG_LL cpufreq: OMAP: fix build errors: depends on ARCH_OMAP2PLUS sparc64: Eliminate obsolete __handle_softirq() function sparc64: Fix bootup crash on sun4v. ARM: msm: Fix section mismatches in proc_comm.c ...
2012-04-19genirq: Streamline irq_actionThomas Gleixner1-4/+4
There is no need to have flags as unsigned long. Make it unsigned int and put it together with irq so it does not waste space on 64 bit. Make irq unsigned int while at it. Signed-off-by: Thomas Gleixner <[email protected]>
2012-04-19Merge branches 'sh/st-integration' and 'sh/stackprotector' into sh-latestPaul Mundt15-47/+73
2012-04-18Merge branch 'for-linus' of ↵Linus Torvalds1-1/+1
git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse Pull fuse updates from Miklos Szeredi. * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse: fuse: use flexible array in fuse.h fuse: allow nanosecond granularity fuse: O_DIRECT support for files fuse: fix nlink after unlink
2012-04-18Merge 3.4-rc3 into tty-nextGreg Kroah-Hartman14-46/+72
This allows us to pick up some changes needed for other serial patches. Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-18driver core: check start node in klist_iter_init_nodeHannes Reinecke2-6/+6
klist_iter_init_node() takes a node as a start argument. However, this node might not be valid anymore. This patch updates the klist_iter_init_node() and dependent functions to return an error if so. All calling functions have been audited to check for a return code here. Signed-off-by: Hannes Reinecke <[email protected]> Cc: Greg Kroah-Hartmann <[email protected]> Cc: Kay Sievers <[email protected]> Cc: Stable Kernel <[email protected]> Cc: Linux Kernel <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-18tegra, serial8250: add ->handle_break() uart_port opDan Williams3-0/+23
The "KT" serial port has another use case for a "received break" quirk, so before adding another special case to the 8250 core take this opportunity to push such quirks out of the core and into a uart_port op. Stephen says: "If the callback function is to no longer live in 8250.c itself, arch/arm/mach-tegra/devices.c isn't logically a good place to put it, and that file will be going away once we get rid of all the board files and move solely to device tree." ...so since 8250_pci.c houses all the quirks for pci serial devices this quirk is similarly housed in of_serial.c. Once the open firmware conversion completes the infrastructure details (include/linux/of_serial.h, and the export) can all be removed to make this self contained to of_serial.c. Cc: Nhan H Mai <[email protected]> Cc: Colin Cross <[email protected]> Cc: Olof Johansson <[email protected]> [stephen: kill CONFIG_SERIAL_TEGRA in favor just using CONFIG_ARCH_TEGRA] Cc: Grant Likely <[email protected]> Acked-by: Arnd Bergmann <[email protected]> Acked-by: Sudhakar Mamillapalli <[email protected]> Reported-by: Alan Cox <[email protected]> Acked-by: Alan Cox <[email protected]> Signed-off-by: Dan Williams <[email protected]> Acked-by: Stephen Warren <[email protected]> Tested-by: Stephen Warren <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-18Support M95040 SPI EEPROMIvo Sieben1-0/+10
Updated the generic SPI EEPROM driver AT25 for support of an additional address bit in the instruction byte. Certain EEPROMS have a size that is larger than the number of address bytes would allow (e.g. like M95040 from ST that has 512 Byte size but uses only one address byte (A0 to A7) for addressing.) For the extra address bit (A8, A16 or A24) bit 3 of the instruction byte is used. This instruction bit is normally defined as don't care for other AT25 like chips. Reviewed-by: Wolfram Sang <[email protected]> Signed-off-by: Ivo Sieben <[email protected]> Acked-by: Chris Wright <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-18usb: ehci-sh: Add PHY init function with platform dataNobuhiro Iwamatsu1-0/+28
In devices using ehci-sh, initialization of the PHY may be necessary. This adds platform data to ehci-sh and provide function to initialize PHY. Signed-off-by: Nobuhiro Iwamatsu <[email protected]> CC: Shimoda, Yoshihiro <[email protected]> Acked-by: Paul Mundt <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-18fsl/usb: Add controller version based ULPI and UTMI phy supportRamneek Mehresh1-1/+8
Add support for ULPI and UTMI PHYs based on usb controller version info read from device-tree Example of USB Controller versioning info: Version 1.2 and below : MPC8536, MPC8315, etc Version 1.6 : P1020, P1010, P2020, P5020, etc Version 2.2 : PSC9131, PSC9132, P3060, etc No changes for non-DT users Signed-off-by: Ramneek Mehresh <[email protected]> Acked-by: Li Yang <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-18USB: add EOPNOTSUPP to usb_translate_errorsJohan Hovold1-0/+1
Allow drivers to return EOPNOTSUPP to user space even when filtered through usb_translate_errors. Signed-off-by: Johan Hovold <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-18bcma: scan for extra address spaceHauke Mehrtens1-0/+1
Some cores like the USB core have two address spaces. In the USB host controller one address space is used for the OHCI and the other for the EHCI controller interface. The USB controller is the only core I found with two address spaces. This code is based on the AI scan function ai_scan() in shared/aiutils.c in the Broadcom SDK. CC: Rafał Miłecki <[email protected]> CC: [email protected] Signed-off-by: Hauke Mehrtens <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2012-04-18Merge branch 'master' of ↵John W. Linville2-2/+3
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem Conflicts: drivers/net/wireless/iwlwifi/iwl-testmode.c include/net/nfc/nfc.h net/nfc/netlink.c net/wireless/nl80211.c
2012-04-18regulator: tps65090: Use generic regmap enable/disable operationsAxel Lin1-0/+13
This patch converts tps65090 regulator driver to use generic regmap enable/disable operations. Also move struct tps65090 to include/linux/mfd/tps65090.h because the regulator driver needs to access the rmap field of struct tps65090. Signed-off-by: Axel Lin <[email protected]> Acked-by: Venu Byravarasu <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2012-04-18usb: ehci-tegra: Add vbus_gpio to platform dataStephen Warren1-0/+1
Add a vbus_gpio field to platform data. This mirrors the device tree property nvidia,vbus-gpio. This makes the VBUS GPIO handling identical between booting with board files and device tree; the driver always does it. This removes the need for board files to request and initialize the GPIO early during their boot process, perhaps even before the GPIO driver is ready to process the request. Cc: Greg Kroah-Hartman <[email protected]> Cc: Alan Stern <[email protected]> Cc: [email protected] Signed-off-by: Stephen Warren <[email protected]> Acked-by: Olof Johansson <[email protected]>
2012-04-18pinctrl: implement devm_pinctrl_get()/put()Stephen Warren1-0/+44
These functions allow the driver core to automatically clean up any allocations made by drivers, thus leading to simplified drivers. Signed-off-by: Stephen Warren <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2012-04-18pinctrl: allow pctldevs to decode pin config in debugfsStephen Warren1-0/+5
Add a pinconf op so that pin controller drivers can decode their pin config settings for debugfs. Signed-off-by: Stephen Warren <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2012-04-18dt: add property iteration helpersStephen Warren1-0/+35
This patch adds macros of_property_for_each_u32() and of_property_for_each_string(), which iterate over an array of values within a device-tree property. Usage is for example: struct property *prop; const __be32 *p; u32 u; of_property_for_each_u32(np, "propname", prop, p, u) printk("U32 value: %x\n", u); struct property *prop; const char *s; of_property_for_each_string(np, "propname", prop, s) printk("String value: %s\n", s); Based on work by Rob Herring <[email protected]> Cc: Grant Likely <[email protected]> Signed-off-by: Stephen Warren <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2012-04-18pinctrl: replace list_*() with get_*_count()Viresh Kumar2-8/+5
Most of the SoC drivers implement list_groups() and list_functions() routines for pinctrl and pinmux. These routines continue returning zero until the selector argument is greater than total count of available groups or functions. This patch replaces these list_*() routines with get_*_count() routines, which returns the number of available selection for SoC driver. pinctrl layer will use this value to check the range it can choose. This patch fixes all user drivers for this change. There are other routines in user drivers, which have checks to check validity of selector passed to them. It is also no more required and hence removed. Documentation updated as well. Acked-by: Stephen Warren <[email protected]> Signed-off-by: Viresh Kumar <[email protected]> [Folded in fix and fixed a minor merge artifact manually] Signed-off-by: Linus Walleij <[email protected]>