Age | Commit message (Collapse) | Author |
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
This is with respect to the change made at the deh layer.
In earlier implementation devh will always take the current pid
and use that to send the death notification.This was causing some
issue because some times the process which acquired the handle
may not the one releasing the handle,and in that case,will be
sending the wrong pid.In order to take care of this issue always
use the stored pid in driver's private data to send the notification.
Change-Id: I50efe3a135975d0d88634892c886a5c7f52ae4f6
Signed-off-by: Subin K G <subin.kg@ti.com>
Signed-off-by: Andy Gross <andy.gross@ti.com>
|
|
Implement tcm_clear and initialize TILER container to a blank
page. This eliminates problems from reading into an unmapped TILER
page that can happen with 3rd party applications.
Change-Id: I7ddc883a7b0cf1891e1ef4a2f6d3989d5e8924ed
Signed-off-by: Lajos Molnar <molnar@ti.com>
Signed-off-by: Andy Gross <andy.gross@ti.com>
|
|
This reverts commit 70c5e91a7e9ef22ab21afa068cf0b4479700af18.
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Added kfree to match allocation done in fill_page_stack
Change-Id: I1d4ca837901c0941880a0dfc2402154b0243f99f
Signed-off-by: Andy Gross <andy.gross@ti.com>
|
|
get_user_pages is not effective for kernel allocated buffers. We fall back
to virt2phys() for those.
Change-Id: I262996e206a80f7d542deadeae5dd151596560bc
Signed-off-by: Lajos Molnar <molnar@ti.com>
Signed-off-by: Andy Gross <andy.gross@ti.com>
|
|
This will be used by map_block to be able to map kernel allocated
buffers.
Change-Id: Ic2169e005ad189cb5368fd189a3b30ed3d389594
Signed-off-by: Lajos Molnar <molnar@ti.com>
Signed-off-by: Andy Gross <andy.gross@ti.com>
|
|
get_user_pages sets page to NULL for kernel allocated buffers, which
we dereferenced. This patch fixes this.
Change-Id: Ic426912713423187b0d8c3402948db4f93220f69
Signed-off-by: Lajos Molnar <molnar@ti.com>
Signed-off-by: Andy Gross <andy.gross@ti.com>
|
|
Change-Id: I18c59a620f9e5aa2aede79605ad0f7c53a144f6c
|
|
Signed-off-by: Rob Clark <rob@ti.com>
Acked-by: Lajos Molnar <molnar@ti.com>
Acked-by: David Sin <davidsin@ti.com>
|
|
New assemblers need -march=armv7-a+sec on command line or
.arch_extension sec inline to enable use of the smc instruction.
This patch uses as-instr to check the latter to conditionally
enable the former in AFLAGS for files that use smc.
Checked on both old and new binutils to verify that it does
not break old versions.
Signed-off-by: John Rigby <john.rigby@linaro.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
This enable custom flush operation for wrapped memory regions
Signed-off-by: Gowtham Tammana <g-tammana@ti.com>
Signed-off-by: Eric Luong <x0119002@ti.com>
Change-Id: Ibe89944e7d34123bc4263c49383af9b4ec195938
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
The set_multicast operation performs asynchronous writes to the
device, with some addresses pointing to the stack. Bad things may
happen, and this is trapped CONFIG_DMA_API_DEBUG:
[ 5.237762] WARNING: at /build/buildd/linux-linaro-omap-2.6.38/lib/dma-debug.c:867 check_for_stack+0xd4/0x100()
[ 5.237792] ehci-omap ehci-omap.0: DMA-API: device driver maps memory fromstack [addr=d9c77dec]
[ 5.237792] Modules linked in: smsc95xx(+) usbnet twl6030_usb twl4030_pwrbutton leds_gpio omap_wdt omap2_mcspi
[ 5.237854] [<c006d618>] (unwind_backtrace+0x0/0xf8) from [<c00a6a14>] (warn_slowpath_common+0x54/0x64)
[ 5.237884] [<c00a6a14>] (warn_slowpath_common+0x54/0x64) from [<c00a6ab8>] (warn_slowpath_fmt+0x30/0x40)
[ 5.237915] [<c00a6ab8>] (warn_slowpath_fmt+0x30/0x40) from [<c034e9d8>] (check_for_stack+0xd4/0x100)
[ 5.237915] [<c034e9d8>] (check_for_stack+0xd4/0x100) from [<c034fea8>] (debug_dma_map_page+0xb4/0xdc)
[ 5.237976] [<c034fea8>] (debug_dma_map_page+0xb4/0xdc) from [<c04242f0>] (map_urb_for_dma+0x26c/0x304)
[ 5.237976] [<c04242f0>] (map_urb_for_dma+0x26c/0x304) from [<c0424594>] (usb_hcd_submit_urb+0x78/0x19c)
[ 5.238037] [<c0424594>] (usb_hcd_submit_urb+0x78/0x19c) from [<bf049c5c>] (smsc95xx_write_reg_async+0xb4/0x130 [smsc95xx])
[ 5.238067] [<bf049c5c>] (smsc95xx_write_reg_async+0xb4/0x130 [smsc95xx]) from [<bf049dd4>] (smsc95xx_set_multicast+0xfc/0x148 [smsc95xx])
[ 5.238098] [<bf049dd4>] (smsc95xx_set_multicast+0xfc/0x148 [smsc95xx]) from [<bf04a118>] (smsc95xx_reset+0x2f8/0x68c [smsc95xx])
[ 5.238128] [<bf04a118>] (smsc95xx_reset+0x2f8/0x68c [smsc95xx]) from [<bf04a8cc>] (smsc95xx_bind+0xcc/0x188 [smsc95xx])
[ 5.238159] [<bf04a8cc>] (smsc95xx_bind+0xcc/0x188 [smsc95xx]) from [<bf03ef1c>] (usbnet_probe+0x204/0x4c4 [usbnet])
[ 5.238220] [<bf03ef1c>] (usbnet_probe+0x204/0x4c4 [usbnet]) from [<c0429078>] (usb_probe_interface+0xe4/0x1c4)
[ 5.238250] [<c0429078>] (usb_probe_interface+0xe4/0x1c4) from [<c03a8770>] (really_probe+0x64/0x160)
[ 5.238250] [<c03a8770>] (really_probe+0x64/0x160) from [<c03a8a30>] (driver_probe_device+0x48/0x60)
[ 5.238281] [<c03a8a30>] (driver_probe_device+0x48/0x60) from [<c03a8ad4>] (__driver_attach+0x8c/0x90)
[ 5.238311] [<c03a8ad4>] (__driver_attach+0x8c/0x90) from [<c03a7b24>] (bus_for_each_dev+0x50/0x7c)
[ 5.238311] [<c03a7b24>] (bus_for_each_dev+0x50/0x7c) from [<c03a82ec>] (bus_add_driver+0x190/0x250)
[ 5.238311] [<c03a82ec>] (bus_add_driver+0x190/0x250) from [<c03a8cf8>] (driver_register+0x78/0x13c)
[ 5.238433] [<c03a8cf8>] (driver_register+0x78/0x13c) from [<c0428040>] (usb_register_driver+0x78/0x13c)
[ 5.238464] [<c0428040>] (usb_register_driver+0x78/0x13c) from [<c005b680>] (do_one_initcall+0x34/0x188)
[ 5.238494] [<c005b680>] (do_one_initcall+0x34/0x188) from [<c00e11f0>] (sys_init_module+0xb0/0x1c0)
[ 5.238525] [<c00e11f0>] (sys_init_module+0xb0/0x1c0) from [<c0065c40>] (ret_fast_syscall+0x0/0x30)
Move the two offenders to the private structure which is kmalloc-ed,
and thus safe.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 3c0f3c605b2572c740f66ea39fe2d125399b20aa)
|
|
The smsc95xx driver currently generates a new random MAC address
every time the interface is brought up. This makes it impossible to
override using the standard `ifconfig hw ether` approach.
Past patches tried to make the MAC address a module parameter or
base it off the die ID, but it seems to me much simpler (and
hopefully less controversial) to stick with the current random
generation scheme, but allow the user to change the address.
This patch does exactly that - it moves the random address
generation from smsc95xx_reset() into smsc95xx_bind(), so that it is
done once on module load, not on every ifup. The user can then
override this using the standard mechanisms.
Applies against 2.6.35 and linux-2.6 head.
Signed-off-by: Bernard Blackham <b-omap@largestprime.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
HSI is muxed with USB host, that is used on pandaboard.
Since we do not need HSI, deactivate it to avoid any risk of border
effect with pandaboard USB HOST.
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
This SW WA shall be removed when building both omap4430sdp and pandaboard
support in a single image
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
The SMSC 3320 USB PHY on the OMAP4 Pandaboard needs a 19.2 MHz
reference clock. This clock is provided from the OMAP4's fref_clk3
pad.
Recent changes to clock44xx_data.c made the clock framework aware
of the existence of these fref_clk[i] lines. If the option
CONFIG_OMAP_RESET_CLOCKS is enabled in the kernel, then the
clock framework will turn these clocks off during bootup.
Explicitly request and keep this clock enabled at init for the
Pandaboard, so that the PHY receives this clock at all times.
Reported-by: Ming Lei <tom.leiming@gmail.com>
Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Reviewed-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Define a new module parameter 'macaddr' to override the MAC address
fetched either from eeprom, or randomly generated.
The expected MAC address shall be in the 01:23:45:67:89:AB format.
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
The blaze board does not expose any USB host. So remove this driver
registration from the blaze/sdp board file.
Collateral effect: loose this peripheral on SDP, but SDP4430 is not
supported on this code line.
With this fix, the EHCI can be re-activated (no issues seen with
reboot or instabilities during image install).
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
This patch reduces PB heap size to allow more mapping space in General
Heap.
Change-Id: I80fe1f3bf014ffbc94a07fd97f9836e20fe80930
Signed-off-by: Hemant Hariyani <hemanthariyani@ti.com>
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
HSI is muxed with USB host, that is used on pandaboard.
Since we do not need HSI, deactivate it to avoid any risk of border
effect with pandaboard USB HOST.
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Changing device name to pvrsrvkm_pvr.
Signed-off-by: Hemant Hariyani <hemanthariyani@ti.com>
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
For the benefit of displays that do not have an EDID, add support to
get the dimensions from the connector.
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Default value should be assigned to x_inc & y_inc
for bpp < 16, only when GFX plane is used.
Signed-off-by: Mayuresh Janorkar <mayur@ti.com>
|
|
Decimation constraints/formulas from architecture
Signed-off-by: Frederic Turgis <f-turgis@ti.com>
Signed-off-by: Xavier Boudet <x-boudet@ti.com>
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
On Blaze and SDP, we can have 2 LCD + HDMI. The previous configuration
enables them all, but there is a conflict because we expect to be able
to use 2 v4l2 pipes. With the new config, we now have:
- ovl0 -> LCD
- ovl1 -> HDMI
- ovl2 -> /dev/video1
- ovl3 -> /dev/video2
Signed-off-by: Nicolas Dechesne <n-dechesne@ti.com>
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
Use deferred-io mechanism to flush changes from userspace to mmap'd
framebuffer to display. This will enable (without panning) support
for manual update displays for clients that are expecting writes to
mmap'd framebuffer to be reflected on the display.
|
|
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
|
|
Depending on whether kernel is built with omapfb or omapgpu, it needs to
consider CONFIG_FB_OMAP2_NUM_FBS or CONFIG_DRM_OMAP_NUM_CRTCS to know how
many DSS pipes are used for framebuffers.
|
|
Alpha blending is the default behavior with color formats that have
an alpha channel. But if the alphablender bits are enabled, that
puts DSS in a omap3 legacy mode which disabled z-order.
|
|
Android is still using the old pvrsrvkm driver name, and I'm not sure
how to rebuild userspace to fix this.. so for now a hack to use the
old name..
|
|
Register multiple drm devices and use platform_data to configure who
uses which dss pipes/managers/devices.
|
|
Associate a handle to display-class devices, so visibility can be restricted
to certain drm_device instances. So now, you can build kernel with two
drm_device instances, and two corresponding framebuffer instances. And when
userspace enumerates the DC devices it will see only the one corresponding
to the drm_device that it has opened.
So now you can either build the kernel with one drm_device, with the fb
possibly spanning multiple independent displays, but acting as a single
virtual display. Or with multiple drm_devices acting as multiple independent
displays. In either case, when userspace enumerates the display-class
devices, they see only a single device corresponding to the single fbdev
associated with that drm_device.
|
|
Includes a new ioctl cmd to re-sync state with display, to properly handle
resizing of frame-buffer.
Signed-off-by: Sebastien Jan <s-jan@ti.com>
|
|
A DSS based DRM display driver, which provides a plugin interface for
3d/2d accelerators to register. The core driver handles construction
of CRTC/encoder/connectors to represent the hardware, and support KMS.
This driver replaces omapfb.. omap_gpu drm driver allocates framebuffer
memory and implements (with the help of drm_fb_helper) the legacy fbdev
interface.
The driver maps CRTCs to overlays, encoders to overlay-managers, and
connectors to dssdev's.
To set vram on the command-line (bootargs):
omapgpu.vram=0:32M
(same syntax as omapfb but use omapgpu module name instead)
To set default resolution on command-line, use the normal video= line,
such as:
video=HDMI Type A-1:800x600@60
note: sometimes there is an issue with the hdmi driver overriding the
set resolution when it gets a hotplug event and reads the EDID. The
hdmi driver will need to be tamed so that it does not override the
currently set timings, at least not as long as they are still a valid
choice according to the EDID.
And of course, to enable debug:
drm.debug=7
The omap_gpu drm driver supports using platform_data to configure which
omap_gpu devices are assigned which overlays/managers/devices. If
multiple devices are registered, each one creates it's own framebuffer
and fbdev. This allows for multiple independent display contexts (like
with the old omapfb driver) in cases where you don't want to share one
virtual framebuffer across multiple displays.
|
|
|
|
If there is an alpha channel, need to mask in 1's in the alpha channel
to prevent the fb from being completely transparent.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Main change is to avoid automatically picking timings. Now the driver
defaults to a safe 640x480, and leaves it to the upper layer (drm driver)
to pick the desired resolution based on what the user selects and the
drm infrastucture's parsing of the EDID.
Note: some of this may need to be checked w/ S3D team, and other use cases
where android is using the HDMI display.. it is still the correct approach
for the HDMI driver to not automatically pick timings, but possibly there
needs to be something in userspace to do this if x11 is not running. See
the modetest test app coming from libdrm tree.. something like this could
be used to set the modeline from userspace.
|
|
The API should return whether the device is detected, and if applicable
whether the cable is plugged in. For non-hot-plug devices, it simply
means "is the display/panel present". For hot-plug devices it means "is
the cable plugged in".
|
|
|