<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers, branch kk4.4.2_1.0.0-beta</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>ENGR00306993 revert gpu2d may cause bus hang fix</title>
<updated>2014-04-04T04:23:49+00:00</updated>
<author>
<name>Richard Liu</name>
<email>r66033@freescale.com</email>
</author>
<published>2014-04-04T04:19:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=cc459654bfe76d3172bb261769d5c45a2e32d045'/>
<id>cc459654bfe76d3172bb261769d5c45a2e32d045</id>
<content type='text'>
gpu2d hang fix has side effect, it causes flicker issue for popup window
menu on android, not integrate this fix before the side effect be fixed.

Revert "ENGR00302036-3 gpu:gpu2d may cause bus hang in some corner case"

This reverts commit 0d5505cfd0b50db4bd046270b119c4dae0a143c2.

Signed-off-by: Richard Liu &lt;r66033@freescale.com&gt;
Acked-by: Shawn Guo
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
gpu2d hang fix has side effect, it causes flicker issue for popup window
menu on android, not integrate this fix before the side effect be fixed.

Revert "ENGR00302036-3 gpu:gpu2d may cause bus hang in some corner case"

This reverts commit 0d5505cfd0b50db4bd046270b119c4dae0a143c2.

Signed-off-by: Richard Liu &lt;r66033@freescale.com&gt;
Acked-by: Shawn Guo
</pre>
</div>
</content>
</entry>
<entry>
<title>ENGR00302036-3 gpu:gpu2d may cause bus hang in some corner case</title>
<updated>2014-04-02T08:38:08+00:00</updated>
<author>
<name>Loren Huang</name>
<email>b02279@freescale.com</email>
</author>
<published>2014-03-27T06:13:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0d5505cfd0b50db4bd046270b119c4dae0a143c2'/>
<id>0d5505cfd0b50db4bd046270b119c4dae0a143c2</id>
<content type='text'>
Vivante patch name:
cl17466.17776.rls.lockup.2dhang(clear.blit)

-Updated the outstanding request limit to 12.
-Refined the 2D chip feature check.
-Refine the 2D cache flush operation
(avoid FE and PE access memory through the same port).
-Enable cache flush for filterblt.
-Dynamic enabling SPLIT_RECT by checking chip feature(disable for us)
-Use brush stretch blt for clear operation.

Date: Mar 26, 2014

Signed-off-by: Loren Huang &lt;b02279@freescale.com&gt;
Acked-by: Shawn Guo
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Vivante patch name:
cl17466.17776.rls.lockup.2dhang(clear.blit)

-Updated the outstanding request limit to 12.
-Refined the 2D chip feature check.
-Refine the 2D cache flush operation
(avoid FE and PE access memory through the same port).
-Enable cache flush for filterblt.
-Dynamic enabling SPLIT_RECT by checking chip feature(disable for us)
-Use brush stretch blt for clear operation.

Date: Mar 26, 2014

Signed-off-by: Loren Huang &lt;b02279@freescale.com&gt;
Acked-by: Shawn Guo
</pre>
</div>
</content>
</entry>
<entry>
<title>ENGR00306340 usb: ehci-arc: fix build warning</title>
<updated>2014-04-01T02:56:02+00:00</updated>
<author>
<name>Peter Chen</name>
<email>peter.chen@freescale.com</email>
</author>
<published>2014-04-01T02:49:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ba0369cf817e872d26bb9c55aaa7dd64c9d0c37c'/>
<id>ba0369cf817e872d26bb9c55aaa7dd64c9d0c37c</id>
<content type='text'>
drivers/usb/host/ehci-arc.c: In function 'ehci_fsl_drv_resume':
drivers/usb/host/ehci-arc.c:805: warning: ISO C90 forbids mixed declarations and code

Signed-off-by: Peter Chen &lt;peter.chen@freescale.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
drivers/usb/host/ehci-arc.c: In function 'ehci_fsl_drv_resume':
drivers/usb/host/ehci-arc.c:805: warning: ISO C90 forbids mixed declarations and code

Signed-off-by: Peter Chen &lt;peter.chen@freescale.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ENGR00306257 [#1027]fix system hang up issue caused by GPU</title>
<updated>2014-04-01T02:01:33+00:00</updated>
<author>
<name>Richard Liu</name>
<email>r66033@freescale.com</email>
</author>
<published>2014-04-01T01:58:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=85f3b137949513121a0170fc0e810922c024618a'/>
<id>85f3b137949513121a0170fc0e810922c024618a</id>
<content type='text'>
This issue happens when multiple thread is trying to idle GPU at the
same time, root cause is some wrong logic related with powerMutex which
cause cpu still access GPU AHB register after GPU is suspend(clock off),
that cause the bus lockup and make the whole system hang.

Signed-off-by: Richard Liu &lt;r66033@freescale.com&gt;
Acked-by: Jason Liu
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This issue happens when multiple thread is trying to idle GPU at the
same time, root cause is some wrong logic related with powerMutex which
cause cpu still access GPU AHB register after GPU is suspend(clock off),
that cause the bus lockup and make the whole system hang.

Signed-off-by: Richard Liu &lt;r66033@freescale.com&gt;
Acked-by: Jason Liu
</pre>
</div>
</content>
</entry>
<entry>
<title>ENGR00303543 usb: ehci-arc: do noop during resume if it is not in host mode</title>
<updated>2014-04-01T01:34:37+00:00</updated>
<author>
<name>Peter Chen</name>
<email>peter.chen@freescale.com</email>
</author>
<published>2014-03-31T05:54:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=8062f7e4af338f1520a6cd13133ff01fffd82a46'/>
<id>8062f7e4af338f1520a6cd13133ff01fffd82a46</id>
<content type='text'>
We find a bug that the usb will produce endless interrupt during the
resume after below steps:

- nothing connected at usb otg port, but enable usb gadget driver
- system enters suspend
- plug in usb cable
- system leaves suspend

The reasons of endless interrupt is: the host controller resume routine
leaves the phy low power mode, but device controller resume routine has
still not been called, so the software considers it is still at low power
mode. After this time, the vbus change interrupt comes, the wakeup routine
considers it is an wakeup interrupt, but in fact it is not. So, the endless
interrupt occurs.

The solution of this problem is do noop during host controller resume
routine if current usb mode is not host mode, and the device controller
reusme routine will handle it.

Signed-off-by: Peter Chen &lt;peter.chen@freescale.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We find a bug that the usb will produce endless interrupt during the
resume after below steps:

- nothing connected at usb otg port, but enable usb gadget driver
- system enters suspend
- plug in usb cable
- system leaves suspend

The reasons of endless interrupt is: the host controller resume routine
leaves the phy low power mode, but device controller resume routine has
still not been called, so the software considers it is still at low power
mode. After this time, the vbus change interrupt comes, the wakeup routine
considers it is an wakeup interrupt, but in fact it is not. So, the endless
interrupt occurs.

The solution of this problem is do noop during host controller resume
routine if current usb mode is not host mode, and the device controller
reusme routine will handle it.

Signed-off-by: Peter Chen &lt;peter.chen@freescale.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ENGR00305465 MXC IPUv3 fb: Fix permissions of fsl_disp_property sysfs entry</title>
<updated>2014-03-27T04:53:08+00:00</updated>
<author>
<name>Julien Olivain</name>
<email>julien.olivain@freescale.com</email>
</author>
<published>2014-03-26T17:38:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=772bc74f5065ee679ab92739460f876a8b87987e'/>
<id>772bc74f5065ee679ab92739460f876a8b87987e</id>
<content type='text'>
Set the correct permissions of the fsl_disp_property sysfs entry.

Acked-by: Liu Ying &lt;Ying.Liu@freescale.com&gt;
Signed-off-by: Julien Olivain &lt;julien.olivain@freescale.com&gt;
(cherry picked from commit 9db2d982c90b6edb3dfebe03a68f50f381bb99bb)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Set the correct permissions of the fsl_disp_property sysfs entry.

Acked-by: Liu Ying &lt;Ying.Liu@freescale.com&gt;
Signed-off-by: Julien Olivain &lt;julien.olivain@freescale.com&gt;
(cherry picked from commit 9db2d982c90b6edb3dfebe03a68f50f381bb99bb)
</pre>
</div>
</content>
</entry>
<entry>
<title>ENGR00304402 video: mxc LDB: Enable LDB channel after display controller</title>
<updated>2014-03-25T01:51:04+00:00</updated>
<author>
<name>Liu Ying</name>
<email>Ying.Liu@freescale.com</email>
</author>
<published>2014-03-24T02:39:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f53fd88eea3667e19b10b254e6d9f80b2a918da5'/>
<id>f53fd88eea3667e19b10b254e6d9f80b2a918da5</id>
<content type='text'>
In order to avoid any random pixelation issue, we should follow a correct
display controller/LDB initialization sequence, that is, LDB channel should
be enabled after its relevant display controller is enabled.  Since the
enable() callback of the mxc display driver is called after a display
controller is enabled, this patch uses the enable()/disable() callbacks
to replace the fb notifier callback implemented in the LDB driver.  Also,
we disable a LDB channel in the setup() callback of the mxc display driver
to make sure of the correct sequence in any fb set_par() function.  As the
enable()/disable() callbacks are always invoked with fb_blank(), this
patch drops the suspend()/resume() functions of the LDB driver which
do nothing but enable/disable LDB channels.  We also remove the code to
enable ldb di clocks because they can be enabled when their relevant
child pixel clocks are enabled.

Conflicts:

	drivers/video/mxc/ldb.c
	drivers/video/mxc/mxc_dispdrv.h

Signed-off-by: Liu Ying &lt;Ying.Liu@freescale.com&gt;
(cherry picked from commit 8d189a9cc067f74cc3d49757af25118b459b9726)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In order to avoid any random pixelation issue, we should follow a correct
display controller/LDB initialization sequence, that is, LDB channel should
be enabled after its relevant display controller is enabled.  Since the
enable() callback of the mxc display driver is called after a display
controller is enabled, this patch uses the enable()/disable() callbacks
to replace the fb notifier callback implemented in the LDB driver.  Also,
we disable a LDB channel in the setup() callback of the mxc display driver
to make sure of the correct sequence in any fb set_par() function.  As the
enable()/disable() callbacks are always invoked with fb_blank(), this
patch drops the suspend()/resume() functions of the LDB driver which
do nothing but enable/disable LDB channels.  We also remove the code to
enable ldb di clocks because they can be enabled when their relevant
child pixel clocks are enabled.

Conflicts:

	drivers/video/mxc/ldb.c
	drivers/video/mxc/mxc_dispdrv.h

Signed-off-by: Liu Ying &lt;Ying.Liu@freescale.com&gt;
(cherry picked from commit 8d189a9cc067f74cc3d49757af25118b459b9726)
</pre>
</div>
</content>
</entry>
<entry>
<title>ENGR00303820 [#887] refine physical address check for external memory</title>
<updated>2014-03-18T12:54:35+00:00</updated>
<author>
<name>Xianzhong</name>
<email>b07117@freescale.com</email>
</author>
<published>2014-03-18T12:40:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=7d85c98bf781eb047c2000bd82ea7559c24a2446'/>
<id>7d85c98bf781eb047c2000bd82ea7559c24a2446</id>
<content type='text'>
2G above address will cause system reboot and fixed in original patch,
error check code is added based on the original logic.

Signed-off-by: Xianzhong &lt;b07117@freescale.com&gt;
Acked-by: Jason Liu
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2G above address will cause system reboot and fixed in original patch,
error check code is added based on the original logic.

Signed-off-by: Xianzhong &lt;b07117@freescale.com&gt;
Acked-by: Jason Liu
</pre>
</div>
</content>
</entry>
<entry>
<title>rtnetlink: Compute and store minimum ifinfo dump size</title>
<updated>2014-03-10T05:57:53+00:00</updated>
<author>
<name>Greg Rose</name>
<email>gregory.v.rose@intel.com</email>
</author>
<published>2013-01-04T00:32:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=5ac366b573402e5278488fdc0216fb48e6e3ffe6'/>
<id>5ac366b573402e5278488fdc0216fb48e6e3ffe6</id>
<content type='text'>
commit c7ac8679bec9397afe8918f788cbcef88c38da54 upstream.

The message size allocated for rtnl ifinfo dumps was limited to
a single page.  This is not enough for additional interface info
available with devices that support SR-IOV and caused a bug in
which VF info would not be displayed if more than approximately
40 VFs were created per interface.

Implement a new function pointer for the rtnl_register service that will
calculate the amount of data required for the ifinfo dump and allocate
enough data to satisfy the request.

Signed-off-by: Greg Rose &lt;gregory.v.rose@intel.com&gt;
Signed-off-by: Jeff Kirsher &lt;jeffrey.t.kirsher@intel.com&gt;
Cc: Ben Hutchings &lt;bhutchings@solarflare.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit c7ac8679bec9397afe8918f788cbcef88c38da54 upstream.

The message size allocated for rtnl ifinfo dumps was limited to
a single page.  This is not enough for additional interface info
available with devices that support SR-IOV and caused a bug in
which VF info would not be displayed if more than approximately
40 VFs were created per interface.

Implement a new function pointer for the rtnl_register service that will
calculate the amount of data required for the ifinfo dump and allocate
enough data to satisfy the request.

Signed-off-by: Greg Rose &lt;gregory.v.rose@intel.com&gt;
Signed-off-by: Jeff Kirsher &lt;jeffrey.t.kirsher@intel.com&gt;
Cc: Ben Hutchings &lt;bhutchings@solarflare.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix race between starved list and device removal</title>
<updated>2014-03-04T02:09:14+00:00</updated>
<author>
<name>James Bottomley</name>
<email>JBottomley@Parallels.com</email>
</author>
<published>2013-07-02T13:05:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=272a08579db5a6a5cfc3fc41181bd8aa2ecceed8'/>
<id>272a08579db5a6a5cfc3fc41181bd8aa2ecceed8</id>
<content type='text'>
scsi_run_queue() examines all SCSI devices that are present on
the starved list. Since scsi_run_queue() unlocks the SCSI host
lock a SCSI device can get removed after it has been removed
from the starved list and before its queue is run. Protect
against that race condition by holding a reference on the
queue while running it.

Reported-by: Chanho Min &lt;chanho.min@lge.com&gt;
Reviewed-by: Bart Van Assche &lt;bvanassche@acm.org&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
scsi_run_queue() examines all SCSI devices that are present on
the starved list. Since scsi_run_queue() unlocks the SCSI host
lock a SCSI device can get removed after it has been removed
from the starved list and before its queue is run. Protect
against that race condition by holding a reference on the
queue while running it.

Reported-by: Chanho Min &lt;chanho.min@lge.com&gt;
Reviewed-by: Bart Van Assche &lt;bvanassche@acm.org&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
