Commit Graph

16959 Commits

Author SHA1 Message Date
Matt Sealey
ac1b2eb6ff RT3070 driver update
1) remove mainline (net/wireless/usb versions) from config since they don't do anything but associate
2) port drivers/staging/ ralink drivers from Linus' tree to here
   includes update to hexdump.c and kernel.h for hex_to_bin (replaces nibble, ABI change)
   includes update to ralink driver source to modify usb_alloc/free_coherent to old usb_buffer_alloc/free
   add it to the defconfig

You will need to grab the "Firmware RT28XX/RT30XX USB series" firmware (v 22 or above) from

http://www.ralink.com.tw/support.php?s=2

Unzip the zip file, inside is a license and rt2870.bin (an 8192 byte file). Copy this to
/lib/firmware/rt3070.bin (note the name change!) and the driver should load and work. Tested
with multiple pings, traceroutes, file copies (SCP and CIFS), YouTube..
2010-08-24 13:14:49 -05:00
Richard Zhu
b6c9ffc709 ENGR00125052-1 Common codes changes when enable the eMMC44 DDR
The modifications of linux kernel common codes
when enable the eMMC44 DDR mode

Signed-off-by: Richard Zhu <r65037@freescale.com>
2010-08-10 11:51:52 -05:00
Robby Cai
8208b24706 ENGR00125175 Add pxp_dma.h into include/linux/KBuild
Add pxp_dma.h into KBuild

Signed-off-by: Robby Cai <R63905@freescale.com>
2010-08-10 11:51:41 -05:00
Danny Nold
ff97ec543b ENGR00124814-1 fb: Add i.MX EPDC fb driver
Added basic EPDC driver, including support for PXP conversions (rotation,
auto-waveform selection, CSC).  Self-clock gating also supported.

Signed-off-by: Danny Nold <dannynold@freescale.com>
2010-08-10 11:51:36 -05:00
Robby Cai
9c91622d90 ENGR00125034 [MX50] Add PxP DMA-Engine and PxP client driver
Use Common DMA-Engine framework to implement ePXP driver
Use a dma client driver to access ePxP staff.

Signed-off-by: Danny Nold <dannynold@freescale.com>
Signed-off-by: Robby Cai <R63905@freescale.com>
2010-08-10 11:51:35 -05:00
Danny Nold
2ac9e0c059 ENGR00124812-1: Support Maxim E-Ink PMIC
Added new regulator driver to control voltage supplies for
E-Ink panel.

Signed-off-by: Danny Nold <dannynold@freescale.com>
2010-08-10 11:51:34 -05:00
mark gutman
0fbba7a43f ENGR00124942 MX51: YUV422 output for 720P data
Ignore UGDE using for non YUYV output formats

Signed-off-by: Mark Gutman <r58412@freescale.com>
2010-08-10 11:51:33 -05:00
Hu hui
8917d92d1a ENGR00124963 USB: add vbus enable/disable
support imx53 evk board OTG and Host1 vbus active
and inactive to low the power consume, fix fsl_otg.c
build failt, add vbus power control function pointer
in struct fsl_usb2_platform_data.

Signed-off-by: Hu hui <b29976@freescale.com>
2010-08-10 11:51:32 -05:00
Liu Ying
ab9b6e2c7a ENGR00124569 IPUv3:Change for support VDI in IPU lib
1) Support select VDI input channel buffer ioctrl.
2) Add VDI input channels' EOF interrupt.

Signed-off-by: Liu Ying <b17645@freescale.com>
2010-08-10 11:51:13 -05:00
mark gutman
e65a92ffe5 ENGR00119736 MX51: YUV422 output for 720P data
The support for YUV422 different combinations are added
	The YUV422 is supported for DI1 interface for 720P frames with 16bits bus  only:
	di1_primary video=mxcdi1fb:YUYV16,720P60
	To define required YUV422 format use one of:
	YUYV16
	YVYU16
	UYVY16
	VYUY16

	Signed-off-by: Mark Gutman <r58412@freescale.com>
2010-08-10 11:51:06 -05:00
Anton Vorontsov
c1771bf6cb ahci: Add platform driver
This can be used for AHCI-compatible interfaces implemented inside
System-On-Chip solutions, or AHCI devices connected via localbus.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2010-08-10 11:51:04 -05:00
Shaohua Li
1a42e346d6 [libata] add DMA setup FIS auto-activate feature
Hopefully results in fewer on-the-wire FIS's and no breakage.  We'll see!

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
2010-08-10 11:50:50 -05:00
Jason Chen
4fd83bff23 ENGR00124023 v4l2 output:modify the operation of ic-bypass mode
/unit_test//unit_tests/mxc_v4l2_output.out -iw 1920 -ih 1080 -ow 1920
-oh 1080 -d 3 -l 600 -fr 80 /dev/shm/1920_1080_E18_c2.yuv

Error information:
It report the following error:
video4linux video16: unable to update buffer 0 address rc=-13

Fix above issue by modify the operation of ic-bypass mode.

Signed-off-by: Jason Chen <b02280@freescale.com>
2010-08-10 11:50:48 -05:00
Jason Chen
07d5c4bc52 ENGR00123512 ipu: fix ipu lib compile error
Fix ipu lib compile error after 4-stripes resize patch pushed.

Signed-off-by: Jason Chen <b02280@freescale.com>
2010-08-10 11:50:25 -05:00
mark gutman
b70ba43911 ENGR00123294 MX53: 4 stripes algorithm for support resizing for big screen
The updated algorithm allows output frame size up to 2048x2048

Signed-off-by: Mark Gutman <Mark.Gutman@freescale.com>
2010-08-10 11:50:24 -05:00
Anton Vorontsov
8e982ef543 phylib: Move workqueue initialization to a proper place
commit 541cd3ee00a4fe975b22fac6a3bc846bacef37f7 ("phylib: Fix deadlock
on resume") caused TI DaVinci EMAC ethernet driver to oops upon resume:

 PM: resume of devices complete after 237.098 msecs
 Restarting tasks ... done.
 kernel BUG at kernel/workqueue.c:354!
 Unable to handle kernel NULL pointer dereference at virtual address 00000000
 [...]
 Backtrace:
 [<c002c598>] (__bug+0x0/0x2c) from [<c0052a54>] (queue_delayed_work_on+0x74/0xf8)
 [<c00529e0>] (queue_delayed_work_on+0x0/0xf8) from [<c0052b30>] (queue_delayed_work+0x2c/0x30)

The oops pops up because TI DaVinci EMAC driver detaches PHY on
suspend and attaches it back on resume. Attaching makes phylib call
phy_start_machine() that initializes a workqueue. On the other hand,
PHY's resume routine will call phy_start_machine() again, and that
will cause the oops since we just destroyed the already scheduled
workqueue.

This patch fixes the issue by moving workqueue initialization to
phy_device_create().

p.s. We don't see this oops with ucc_geth and gianfar drivers because
they perform a fine-grained suspend, i.e. they just stop the PHYs
without detaching.

Reported-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Tested-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2010-08-10 11:50:22 -05:00
Anton Vorontsov
d78f3d35b3 phylib: Properly reinitialize PHYs after hibernation
Since hibernation assumes power loss, we should fully reinitialize
PHYs (including platform fixups), as if PHYs were just attached.

This patch factors phy_init_hw() out of phy_attach_direct(), then
converts mdio_bus to dev_pm_ops and adds an appropriate restore()
callback.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2010-08-10 11:50:21 -05:00
Anish Trivedi
1ecce52493 ENGR00123280 MX5x SRTC: Add ioctls for time set notification
Implement RTC_READ_TIME_47BIT and RTC_WAIT_FOR_TIME_SET ioctls.
Updates based on review comments.

Signed-off-by: Anish Trivedi <anish@freescale.com>
2010-08-10 11:50:19 -05:00
Liu Ying
46fcac840e ENGR00122216-2 Support LDB driver
This patch adds LDB driver support.

Signed-off-by: Liu Ying <b17645@freescale.com>
2010-08-10 11:50:18 -05:00
Niu Xule
dcb6d4440a ENGR00123078-1 MX28: Add L2 Switch resources definition
L2 Switch resources definition for MX28

Signed-off-by: Niu Xule <b23300@freescale.com>
2010-08-10 11:50:16 -05:00
Patrick Turley
0b7e7c7578 ENGR00122964 Second pass at unified i.MX23/i.MX28 NAND Flash driver
Deleted the old drivers.

Broke the driver into separate files, for readability and to isolate
hardware dependencies.

Fixed bad block problems in the boot area for the i.MX23.

At this writing, UBI can't handle MTDs larger than 2GiB. If the
general use partition is larger than 2GiB, the driver will create
sub-partitions, none of which are larger than 2GiB.

Updated the default configs for the i.MX23 and i.MX28.

Other, miscellaneous changes.

Signed-off-by: Patrick Turley <patrick.turley@freescale.com>
2010-08-10 11:49:55 -05:00
Patrick Turley
fcb50ee09c ENGR00122629 Unified i.MX23/i.MX28 NAND Flash Driver
This driver unifies the i.MX23 and i.MX28 NAND Flash drivers into a single
driver that supports both SoC's.

Signed-off-by: Patrick Turley <patrick.turley@freescale.com>
2010-08-10 11:49:42 -05:00
Frank Li
0c13648cb8 ENGR00122124 iMX23 enable USB otg pin detect
iMX23 evk RevC using gpio as usb id.
usb_id pin is conflict with mmcsd detection pin

Signed-off-by: Frank Li <Frank.Li@freescale.com>
2010-08-10 11:48:53 -05:00
Frank Li
1f1c8202e8 ENGR00121497-2 MX28 USB 100mA current draw
Add USB 100mA limitation feature for mx28 to mach usb 2.0 current requirment

Signed-off-by: Frank Li <Frank.li@freescale.com>
2010-08-10 11:48:51 -05:00
Albert Chen
28827b46d3 ENGR00117742-1 add usb support for mx28
add usb support for mx28
	include usb host and usb device

Signed-off-by: Albert Chen <r65187@freescale.com>
2010-08-10 11:47:35 -05:00
Jason
f61cc66aea ENGR00117744-2 i.MX28 EVK ENET(Single) support
FEC driver support for i.MX28

Signed-off-by:Jason Liu <r64343@freescale.com>
2010-08-10 11:47:31 -05:00
Liu Ying
6f8c313e76 ENGR00119169 V4L2 capture:enable CSI after PRP channels are setup
To preview with V4L2 overlay and capture at the same time may fail.
This patch implements workaround for this issue by enabling CSI after
PRP channels are setup.

Signed-off-by: Liu Ying <b17645@freescale.com>
2010-08-10 11:47:00 -05:00
Sammy He
3ac11765fb ENGR00120615-1 Add IPU_CSC_UPDATE case for ipu ioctl
Add IPU_CSC_UPDATE case for ipu ioctl.

Signed-off-by: Sammy He <r62914@freescale.com>
2010-08-10 11:46:58 -05:00
Rob Herring
2e5bce78c9 ENGR00120393-1 imx: Add iram allocator functions
Add iram allocation functions using GENERIC_ALLOCATOR. The
allocation size is 4KB multiples to guarantee alignment.

Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-08-10 11:46:51 -05:00
Jason Chen
d8b8e1e7d9 ENGR00120428 v4l2 output: jitter after blank/unblank fb
blank/unblank fb during v4l2 playback, unblank will cause current buffer
of display channel to be 1. This patch make the sequence of select
display buffer correct.

Signed-off-by: Jason Chen <b02280@freescale.com>
2010-08-10 11:46:38 -05:00
Jason Chen
6a73a12e8e ENGR00120370 v4l2 output: fix display fail for blank fb during video play
1. Blank BG during video play on FG:
./mxc_v4l2_output.out -iw 320 -ih 240 -ow 1024 -oh 768 -d 3 qvga.yuv
echo 1 > /sys/class/graphics/fb0/blank
echo 0 > /sys/class/graphics/fb0/blank

2. The same input and output (ic_bypass):
./mxc_v4l2_output.out -iw 320 -ih 240 -ow 320 -oh 240 -d 3 qvga.yuv
echo 1 > /sys/class/graphics/fb0/blank
echo 0 > /sys/class/graphics/fb0/blank

Signed-off-by: Jason Chen <b02280@freescale.com>
2010-08-10 11:46:36 -05:00
Liu Ying
74c4be6d23 ENGR00119070 IPUv3 FB:Support DP local alpha in pixel
Modify MXCFB_SET_LOC_ALPHA ioctrl to support DP local alpha with
alpha value contained in pixel.

Signed-off-by: Liu Ying <b17645@freescale.com>
2010-08-10 11:46:22 -05:00
Jason Chen
1ca0ec7611 ENGR00119136 ipuv3: support 720p for ipu lib
To support 720p output for ipu lib.

Signed-off-by: Jason Chen <b02280@freescale.com>
2010-08-10 11:46:18 -05:00
Jun Li
69d4c12178 ENGR00117147-1 USB clock gating and PHY low power mode.
If there is no usb devices connectted or all connectted usb
devices are in suspend state, usb host can suspend its whole bus,
then put the PHY into low power mode and close all usb clocks.
(The patch is splitted 2 patches, this is common code part.)

Signed-off-by: Li Jun <r65092@freescale.com>
2010-08-10 11:45:59 -05:00
Anish Trivedi
4f239af29f ENGR00118729 MX51 SCC: Change SMN_STATUS_SMN_ERROR offset to 0x4000
Changed bit definition from 0x8000 to 0x4000

Signed-off-by: Anish Trivedi <anish@freescale.com>
2010-08-10 11:45:52 -05:00
Jason Chen
b5f8385ac7 ENGR00116313 ipuv3: DP gamma support
Support DP gamma by setting piecewise linear approximation,
application need set coefficient const[k] and slope[k]. The algorithm to
calculate these coefficient pls refer to unit test.

Signed-off-by: Jason Chen <b02280@freescale.com>
2010-08-10 11:45:43 -05:00
Patrick Turley
6416aff019 ENGR00116517 [MX233_BSP] Port ThreadX SDK NAND Flash device identification
Added the device identification and timing database. Adjusted the GPMI
NAND Flash driver to use this information.

Signed-off-by: Patrick Turley <patrick.turley@freescale.com>
2010-08-10 11:45:36 -05:00
Mark Brown
2d37bc6144 regulator: Allow consumer supplies to be set up with dev_name()
Follow the approach suggested by Russell King and implemented by him in
the clkdev API and allow consumer device supply mapings to be set up
using the dev_name() for the consumer instead of the struct device.
In order to avoid making existing machines instabuggy and creating merge
issues the use of struct device is still supported for the time being.

This resolves problems working with buses such as I2C which make the
struct device available late providing that the final device name is
known, which is the case for most embedded systems with fixed setups.

Consumers must still use the struct device when calling regulator_get().

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-10 11:45:17 -05:00
Lily Zhang
2442956258 ENGR00117843 Missing i.MX headers for kernel headers_install
Add i.MX specific files into include/linux/Kbuild

Signed-off-by: Lily Zhang <r58066@freescale.com>
2010-08-10 11:45:10 -05:00
Raj Rajasekaran
d7c01ef724 ENGR00116798:MX51: Add support to handle potential hang on SCC HW failute.
-Added kernel error message to handle hang due to SCC HW failure.
-Eliminated unwanted sleeps.
-Kernel error message to handle the case when SCC key fuses are not blown.

Signed-off-by: Raj Rajasekaran <b10872@freescale.com>
2010-08-10 11:44:56 -05:00
Mark Gutman
732aceb787 ENGR00115576 ipuv3: support for 720P upsizing
A new feature is added to support to upsizing by horizontal stripes
via IC PP channels double using.

Signed-off-by: Mark Gutman <r58412@freescale.com>
2010-08-10 11:44:54 -05:00
Rob Herring
df6a3db108 ENGR00116558: MX233: USB pin detect
MX233: Restructure the STMP378xxx USB Host and Gadget device structures
to be similar to MXC structures. Enable fsl_otg_arc driver to work on
MX233 platform. Remove FSL_USB2_DONT_REMAP requirement.

Signed-off-by: Dinh Nguyen <Dinh.Nguyen@freescale.com>

Conflicts:

	arch/arm/mach-stmp3xxx/Kconfig
	arch/arm/mach-stmp3xxx/Makefile
	arch/arm/mach-stmp3xxx/devices.c
	arch/arm/mach-stmp3xxx/include/mach/stmp3xxx.h
	arch/arm/mach-stmp3xxx/stmp378x_devb.c
2010-08-10 11:44:52 -05:00
Albert Chen
94af0e7844 ENGR00115875 add USB gadget low power mode feature.
USB will enter low power mode if no vbus power supply.
	Only finished this feature in Mx37.
	1. When enter low power mode, driver will close usb related clocks
		as possible as could.
		set usb IP to stop.
		Set PHY to low power suspend by setting PHCD bit of portsc.
	2. This patch doesn't support low power mode in OTG mode yet.

Signed-off-by: Albert Chen <r65187@freescale.com>
2010-08-10 11:44:49 -05:00
Rob Herring
be0524d38f ENGR00117389 Port 5.0.0 release to 2.6.31
This is i.MX BSP 5.0.0 release ported to 2.6.31

Signed-off-by: Rob Herring <r.herring@freescale.com>
Signed-off-by: Alan Tull <r80115@freescale.com>
Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2010-08-10 11:44:41 -05:00
Rob Herring
e86dae7d10 nand: export symbols needed for stmp3xxx nand
nand: increase max nand page and oob sizes

Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-08-10 11:44:32 -05:00
Michal Ludvig
16da9e7485 ENGR00112200 Add cryptodev device
Linux driver for /dev/crypto (aka CryptoDev)
See http://www.logix.cz/michal/devel/cryptodev for details.

Signed-off-by: Michal Ludvig <mludvig@suse.cz>
Signed-off-by: Rob Herring <r.herring@freescale.com>
2010-08-10 11:44:23 -05:00
Linus Torvalds
daba0e9518 Split 'flush_old_exec' into two functions
commit 221af7f87b97431e3ee21ce4b0e77d5411cf1549 upstream.

'flush_old_exec()' is the point of no return when doing an execve(), and
it is pretty badly misnamed.  It doesn't just flush the old executable
environment, it also starts up the new one.

Which is very inconvenient for things like setting up the new
personality, because we want the new personality to affect the starting
of the new environment, but at the same time we do _not_ want the new
personality to take effect if flushing the old one fails.

As a result, the x86-64 '32-bit' personality is actually done using this
insane "I'm going to change the ABI, but I haven't done it yet" bit
(TIF_ABI_PENDING), with SET_PERSONALITY() not actually setting the
personality, but just the "pending" bit, so that "flush_thread()" can do
the actual personality magic.

This patch in no way changes any of that insanity, but it does split the
'flush_old_exec()' function up into a preparatory part that can fail
(still called flush_old_exec()), and a new part that will actually set
up the new exec environment (setup_new_exec()).  All callers are changed
to trivially comply with the new world order.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
2010-04-01 15:55:56 -07:00
Jan Beulich
236638ad88 mm: replace various uses of num_physpages by totalram_pages
commit 4481374ce88ba8f460c8b89f2572027bd27057d0 upstream.

Sizing of memory allocations shouldn't depend on the number of physical
pages found in a system, as that generally includes (perhaps a huge amount
of) non-RAM pages.  The amount of what actually is usable as storage
should instead be used as a basis here.

Some of the calculations (i.e.  those not intending to use high memory)
should likely even use (totalram_pages - totalhigh_pages).

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
Acked-by: Ingo Molnar <mingo@elte.hu>
Cc: Dave Airlie <airlied@linux.ie>
Cc: Kyle McMartin <kyle@mcmartin.ca>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Cc: Hugh Dickins <hugh.dickins@tiscali.co.uk>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Patrick McHardy <kaber@trash.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-04-01 15:55:50 -07:00
James Bottomley
d3f1c54adc SCSI: enclosure: fix oops while iterating enclosure_status array
commit cc9b2e9f6603190c009e5d2629ce8e3f99571346 upstream.

Based on patch originally by Jeff Mahoney <jeffm@suse.com>

 enclosure_status is expected to be a NULL terminated array of strings
 but isn't actually NULL terminated. When writing an invalid value to
 /sys/class/enclosure/.../.../status, it goes off the end of the array
 and Oopses.


Fix by making the assumption true and adding NULL at the end.

Reported-by: Artur Wojcik <artur.wojcik@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-04-01 15:55:39 -07:00
Evgeniy Polyakov
fdbb0a82d7 connector: Delete buggy notification code.
commit f98bfbd78c37c5946cc53089da32a5f741efdeb7 upstream.

On Tue, Feb 02, 2010 at 02:57:14PM -0800, Greg KH (gregkh@suse.de) wrote:
> > There are at least two ways to fix it: using a big cannon and a small
> > one. The former way is to disable notification registration, since it is
> > not used by anyone at all. Second way is to check whether calling
> > process is root and its destination group is -1 (kind of priveledged
> > one) before command is dispatched to workqueue.
>
> Well if no one is using it, removing it makes the most sense, right?
>
> No objection from me, care to make up a patch either way for this?

Getting it is not used, let's drop support for notifications about
(un)registered events from connector.
Another option was to check credentials on receiving, but we can always
restore it without bugs if needed, but genetlink has a wider code base
and none complained, that userspace can not get notification when some
other clients were (un)registered.

Kudos for Sebastian Krahmer <krahmer@suse.de>, who found a bug in the
code.

Signed-off-by: Evgeniy Polyakov <zbr@ioremap.net>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-04-01 15:55:30 -07:00