sdk/emulator/emulator-kernel.git
10 years agoenable Tizen IVI required kernel options 51/19251/1
Stanislav Vorobiov [Thu, 3 Apr 2014 05:57:00 +0000 (09:57 +0400)]
enable Tizen IVI required kernel options

For details see
https://wiki.tizen.org/wiki/IVI/artem-kernel#Kernel_configuration

Change-Id: I49432ab6a3d66408de197e8b420ebdd915dc2527
Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
10 years agoMerge branch 'tizen_linux_3.12' into tizen_linux_3.12
SeokYeon Hwang [Wed, 9 Apr 2014 05:54:38 +0000 (14:54 +0900)]
Merge branch 'tizen_linux_3.12' into tizen_linux_3.12

Change-Id: I3ea847950cfe2991c980ebb317932a348922af16

10 years agoUsing initramfs for v86d.
SeokYeon Hwang [Wed, 9 Apr 2014 05:30:35 +0000 (14:30 +0900)]
Using initramfs for v86d.

Change-Id: I299da86a1239b6add1befa39c92d20ba4be07069
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
10 years agoRevert "enable Tizen IVI required kernel options"
Stanislav Vorobiov [Tue, 8 Apr 2014 06:31:57 +0000 (10:31 +0400)]
Revert "enable Tizen IVI required kernel options"

This reverts commit f7090f807e725b4fa5ba32a4f3bb1c2a86ad5e0d.

Change-Id: I469dc544d6e410025d97d6e7b4dba90fce478e1d
Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
10 years agoseparate kernel config for Tizen IVI
Stanislav Vorobiov [Tue, 8 Apr 2014 06:31:07 +0000 (10:31 +0400)]
separate kernel config for Tizen IVI

Change-Id: I5a66b394d3065d138605bad9727079c8a50f79cc
Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
10 years agoenable Tizen IVI required kernel options
Stanislav Vorobiov [Thu, 3 Apr 2014 05:57:00 +0000 (09:57 +0400)]
enable Tizen IVI required kernel options

For details see
https://wiki.tizen.org/wiki/IVI/artem-kernel#Kernel_configuration

Change-Id: Iaac79f8ae9ea0758666f7cf39cc98c7736026d5d
Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
10 years agomaru: disable overlay driver
Stanislav Vorobiov [Fri, 21 Mar 2014 06:28:40 +0000 (10:28 +0400)]
maru: disable overlay driver

Overlay driver currently fails to
load because video_device is being registered
without v4l2_device, so disable it for now

Change-Id: Idbec8e41c3a79fc30ffd8bf30d6c2fb52443baad
Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
10 years agoVirtGL : Add a GL passthrough device for Tizen emulator
jinhyung.jo [Mon, 17 Mar 2014 05:59:46 +0000 (14:59 +0900)]
VirtGL : Add a GL passthrough device for Tizen emulator

Add a GL passthrough device for Tizen Emulator

Change-Id: I53d455ebf433a5c648951a2e13406e2ac4470712
Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
10 years agomaru_fb : Add a framebuffer device for Tizen emulator
jinhyung.jo [Mon, 17 Mar 2014 05:51:21 +0000 (14:51 +0900)]
maru_fb : Add a framebuffer device for Tizen emulator

Add a framebuffer device for Tizen emulator

Change-Id: I2090366287fb7769bae28286a6b21384ad233d4b
Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
10 years agoemulator config updated
Stanislav Vorobiov [Mon, 17 Mar 2014 09:52:24 +0000 (13:52 +0400)]
emulator config updated

Change-Id: I6399d61b301782864e404e30b45b8feab089e147

10 years agoVIGS: Fixed for kernel 3.12
Stanislav Vorobiov [Fri, 14 Mar 2014 13:45:37 +0000 (17:45 +0400)]
VIGS: Fixed for kernel 3.12

Change-Id: Ic4ae0c0dea0e9901c5f648e1b215fd82d26cc3b2

10 years agoslp_global_lock: Fixed for kernel 3.12
Stanislav Vorobiov [Mon, 17 Mar 2014 07:59:10 +0000 (11:59 +0400)]
slp_global_lock: Fixed for kernel 3.12

Change-Id: I89f0cedba73eae66e56911b8ebcfb9010443d4bd

10 years agoYaGL: Fixed for kernel 3.12
Stanislav Vorobiov [Fri, 14 Mar 2014 11:57:02 +0000 (15:57 +0400)]
YaGL: Fixed for kernel 3.12

Change-Id: I59a6d69d7bbdfd27e046372974f7651cf52aa5fb

10 years agoYaGL/VIGS: Version bump
Stanislav Vorobiov [Thu, 6 Mar 2014 13:48:33 +0000 (17:48 +0400)]
YaGL/VIGS: Version bump

GLESv3 merge version bump

Change-Id: I34813deb38a2c6334a2c04cb55dfd478c2041e8a

10 years agoVIGS: Support plane z-pos setting from user-space
Stanislav Vorobiov [Tue, 18 Feb 2014 13:05:46 +0000 (17:05 +0400)]
VIGS: Support plane z-pos setting from user-space

Change-Id: I72a60beac3dc23f23517f310d5bee59c6833b748

10 years agoVIGS: Implemented plane support
Stanislav Vorobiov [Mon, 10 Feb 2014 16:59:01 +0000 (20:59 +0400)]
VIGS: Implemented plane support

We now support up to 2 hardware planes
with z-ordering and scaling. This patch also
adds surface scanout flag support. Surface scanout
flag is used as a hint that helps the host to decide
how to process the surface - either upload it to texture
or continously scanout data out of surface's VRAM

Change-Id: I76f88579929efd14ea81e67d2f7a231a7dee4e9d

10 years agoVIGS: Fix fence ack losses
Stanislav Vorobiov [Thu, 20 Feb 2014 07:51:51 +0000 (11:51 +0400)]
VIGS: Fix fence ack losses

It's incorrect to have vblank enable/disable flag
in INT register, it can cause fence ack losses, consider
the following scenario:
1. Fence interrupt is set on host, fence_pending bit is
   set in INT register
2. vblank is turned off on guest, INT register is being
   written to and since fence_pending bit is 1 it's
   CLEARED on host
3. Now guest handles fence IRQ, but fence_pending bit
   is 0, thus, fence ack is lost

The solution is to have separate register - CON and
vblank enable/disable bit should be there

Change-Id: Ieb3f1a0bd1722fa05fd4e7ca425079fb8799e533

10 years agoYaGL: Support host OpenGL version report
Stanislav Vorobiov [Tue, 22 Oct 2013 10:15:56 +0000 (14:15 +0400)]
YaGL: Support host OpenGL version report

Change-Id: Ifaf7abb86f7f0a650ab6954be23ae95233261450

10 years agoYaGL: Implemented multicore rendering and fences
Stanislav Vorobiov [Thu, 28 Nov 2013 10:51:12 +0000 (14:51 +0400)]
YaGL: Implemented multicore rendering and fences

We now use multicore rendering, i.e. we offload all
rendering to a separate thread and use fences to wait
until certain parts of it are complete. This patch
implements fences via TTM sync objects, it also uses
TTM execbuffer utils to fence buffers and TTM object
files to export fences to user space

Change-Id: Ibed86c3161f3b7207725c8662ffa909d103acedf

10 years agoVIGS: Don't rely on 'no_wait_reserve' parameter when pinnin GEMs
Stanislav Vorobiov [Wed, 11 Dec 2013 09:26:13 +0000 (13:26 +0400)]
VIGS: Don't rely on 'no_wait_reserve' parameter when pinnin GEMs

'no_wait_reserve' parameter isn't accounted for in
ttm_bo_validate, so don't rely on GEM reserve wait,
just retry things instead

Change-Id: Iab57645c8ab96f30c01b943342cdff9bacac8feb

10 years agoVIGS: Fix pageflip race
Stanislav Vorobiov [Tue, 10 Dec 2013 16:52:54 +0000 (20:52 +0400)]
VIGS: Fix pageflip race

Must use event_lock, since it's being used
in vigs_finish_pageflips to lock pageflip_event_list.

Also, by the time we call drm_vblank_put the event might already
be processed, so check for that

Change-Id: I9c5de98452353c6d4f09e4e4fbd92176cfd8ee40

10 years agoYaGL: Version bump
Stanislav Vorobiov [Mon, 7 Oct 2013 11:31:29 +0000 (15:31 +0400)]
YaGL: Version bump

Change-Id: I6ecf4d3e2121cacc293af82bfde8d96bfe55dc06

10 years agoYaGL: Transport improved
Stanislav Vorobiov [Tue, 24 Sep 2013 14:48:33 +0000 (18:48 +0400)]
YaGL: Transport improved

The improvements are:

* No more mlock/munlock. We now have ioctls for locking drawable
  memory so that compile transfers could be created on host. This
  is only used by offscreen backend though
* We're now using a single buffer for marshalling instead of two: one
  for commands and one for data. Also, the buffer can now be of any
  size up to 2M, it's implemented as a page list, thus, we don't need
  to allocate contigous memory anymore

Change-Id: Ia9b716c9135df75535dc515367550c9fbcf9c737

10 years agoVIGS: Don't 'update_vram' on 'set_root_surface'
Stanislav Vorobiov [Fri, 2 Aug 2013 13:54:12 +0000 (17:54 +0400)]
VIGS: Don't 'update_vram' on 'set_root_surface'

This is now automatically happens on glFinish,
eglSwapBuffers, eglCopyBuffers, etc.

Change-Id: Ie20724ec8ce6283e8fda1248f368f00e704e0e3d

10 years agoYaGL: Version bump
Stanislav Vorobiov [Wed, 31 Jul 2013 10:32:28 +0000 (14:32 +0400)]
YaGL: Version bump

Change-Id: Ie681f7251648451d9a425e97f215a8b0b50ebbbb

10 years agoVIGS: Use BO instead of VMA in struct vigs_mman_vma
Stanislav Vorobiov [Wed, 24 Jul 2013 07:24:08 +0000 (11:24 +0400)]
VIGS: Use BO instead of VMA in struct vigs_mman_vma

It's better to use BO in struct vigs_mman_vma instead of
VMA that was allocated in mmap call

Change-Id: I883613c71bf3880dba9edb6fdaa7fd0aee83d044

10 years agoVIGS: Delay surface destruction
Stanislav Vorobiov [Tue, 23 Jul 2013 15:40:03 +0000 (19:40 +0400)]
VIGS: Delay surface destruction

We should destroy surfaces on TTM BO destruction
instead of GEM free handler. The latter may cause races
like this:
1. GEM is created
2. GEM is mapped and written to
3. GEM is freed, but not unmapped. Thus, the host gets
   a "destroy_surface" command and target frees up
   an id from IDR.
4. Another GEM is created. Thus, it's assigned a freed id, which
   is id of first GEM, the host gets "create_surface" command
5. First GEM is unmapped, host gets "update_gpu" command with
   wrong data and size and crashes

The race occured on wayland/GBM during window resize

Change-Id: Ifddab147999e450e4b4affd7144d91f29fb39534

10 years agoVIGS: Don't call TTM's vm_close
Stanislav Vorobiov [Fri, 19 Jul 2013 16:35:30 +0000 (20:35 +0400)]
VIGS: Don't call TTM's vm_close

TTM's vm_close sets vm_private_data to NULL even if VMA is
still referenced, we don't want this since this may cause
a NULL pointer dereference. And this indeed happens sometimes
on wayland

Change-Id: Idf4af80ef0d472a1a480491cb56e6cc8d9d39123

10 years agoVIGS: Fixed vigs_fb_create return values
Stanislav Vorobiov [Fri, 12 Jul 2013 12:15:38 +0000 (16:15 +0400)]
VIGS: Fixed vigs_fb_create return values

Change-Id: Ice57af4d21899080c5572343f5734697cd20e21d
VIGS: Added dummy cursor handling

10 years agoVIGS: Lock console before fb notifier chain walk
Stanislav Vorobiov [Thu, 11 Jul 2013 09:23:18 +0000 (13:23 +0400)]
VIGS: Lock console before fb notifier chain walk

This is required to work properly with fbcon

Change-Id: I641e2762e7918cd9d9147f3a44ba2911a1f50019

10 years agoVIGS: Make GEM access tracking optional
Stanislav Vorobiov [Thu, 11 Jul 2013 06:43:20 +0000 (10:43 +0400)]
VIGS: Make GEM access tracking optional

For dumb GEM API we need to have GEM access tracking
disabled and always assume that access is RW.
Thus, we make GEM access tracking optional, so that user-mode
can specify if it's wanted or not

Change-Id: Ia8be76e1c15b0b4734997c16ad245b018c6d2ba6

10 years agoVIGS: GEM access tracking implemented
Stanislav Vorobiov [Tue, 2 Jul 2013 14:51:23 +0000 (18:51 +0400)]
VIGS: GEM access tracking implemented

In order to minimize GEM data transfers between
target and host we now track GEM memory accesses for each
VMA. Thus, we only update VRAM/GPU when there's at least one
VMA that requires it

Change-Id: Ib65ff22957e6a89d83329deca4753b69cd39ca3d

10 years agoVIGS: Walk fb notifier call chain on DPMS
Stanislav Vorobiov [Mon, 1 Jul 2013 11:52:59 +0000 (15:52 +0400)]
VIGS: Walk fb notifier call chain on DPMS

Since currently maru_bl is used to control LCD power
we need a way to trigger it. fbdev does this
automatically on FB_BLANK events by walking fb notifier call
chain. DRM doesn't do this on DPMS, so we need to do this
ourselves

Change-Id: I9585b06c027b210b4b563c2332c092a3084663e2

10 years agoVIGS: Automatically update VRAM when setting new root surface
Stanislav Vorobiov [Thu, 27 Jun 2013 14:24:28 +0000 (18:24 +0400)]
VIGS: Automatically update VRAM when setting new root surface

When we set new root surface (for example, as part of pageflip) we
should check if that surface is GPU dirty and if it is - update VRAM.
If we don't do this we might flip stuff without QEMU display
being updated

Change-Id: I4c9c630d09f5608fb6b09ecc3b54eb30695ef574

10 years agoVIGS: DRM VBLANK handling implemented
Stanislav Vorobiov [Mon, 24 Jun 2013 12:56:12 +0000 (16:56 +0400)]
VIGS: DRM VBLANK handling implemented

VIGS: DRM pageflip handling implemented

VIGS DRM driver now supports both VBLANK events and
pageflip events

Change-Id: I98d4f89ea6f5342839f05f1ebf6085294542dbc5

10 years agoVIGS: Remove "ttm shrink disable" hack
Stanislav Vorobiov [Tue, 18 Jun 2013 06:32:00 +0000 (10:32 +0400)]
VIGS: Remove "ttm shrink disable" hack

There's a right way to do this by specifying 0 in
accounted size for a BO. That way we can allocate as much BOs
as we want with used_mem always remaining 0

Change-Id: Ic1de1b832dea90b18b3441d504118773019ce9ee

10 years agoVIGS: Support custom resolutions
Stanislav Vorobiov [Mon, 17 Jun 2013 15:29:48 +0000 (19:29 +0400)]
VIGS: Support custom resolutions

Change-Id: I779f469eb5ef9c82dbc06493cdb3a448c1c30a51

10 years agoYaGL: Version bump
Stanislav Vorobiov [Mon, 10 Jun 2013 15:37:15 +0000 (19:37 +0400)]
YaGL: Version bump

Change-Id: I3c22f8e615f28e17d73747a43c0abab381eaa207

10 years agoVIGS: VRAM <-> GPU movements are now handled via page faults
Stanislav Vorobiov [Fri, 7 Jun 2013 14:40:28 +0000 (18:40 +0400)]
VIGS: VRAM <-> GPU movements are now handled via page faults

VIGS: Fixed update_gpu command

VRAM <-> GPU movements are now handled via page faults, thus, user space
can mmap as many GEMs as it likes, they'll all be in GPU placement by
default and moved to VRAM as needed on page faults. Page fault handler will
also take care of eviction in case of there's no free space in VRAM

update_gpu command wasn't updated for last protocol change, fixed it

Change-Id: Iaab0c760e68b4cb5f29bdd77d025f655f04ebb51

10 years agoVIGS: kernel now is surface dirty aware
Stanislav Vorobiov [Thu, 6 Jun 2013 16:48:36 +0000 (20:48 +0400)]
VIGS: kernel now is surface dirty aware

kernel now knows about dirty state of each surface

Change-Id: I7f801fa84f57ee9811fbd79bcb408507439acd62

10 years agoslp_global_lock added
Stanislav Vorobiov [Mon, 3 Jun 2013 13:29:28 +0000 (17:29 +0400)]
slp_global_lock added

Conflicts:

arch/x86/configs/i386_tizen_emul_defconfig
drivers/misc/Kconfig
drivers/misc/Makefile

Change-Id: I44c9714eafc02e98d35b4a09b6135211dd4d65ab

10 years agoVIGS: Protocol updated
Stanislav Vorobiov [Mon, 27 May 2013 15:38:40 +0000 (19:38 +0400)]
VIGS: Protocol updated

Change-Id: I4946fd3bee5d63ab22e5dd8fc280b91c23d67cc5

10 years agoYaGL: Version bump
Stanislav Vorobiov [Wed, 15 May 2013 09:02:34 +0000 (13:02 +0400)]
YaGL: Version bump

Change-Id: I29b65916421e8718dddb17f357c8b928501135d0

10 years agoVIGS: Fixed GEM reserve deadlock
Stanislav Vorobiov [Mon, 6 May 2013 16:39:28 +0000 (20:39 +0400)]
VIGS: Fixed GEM reserve deadlock

Change-Id: Ic4609ff43ea4689f13a56da41696f6a500d21a64

10 years agoVIGS: Dirty flag support in vigs_surface
Stanislav Vorobiov [Mon, 6 May 2013 14:48:07 +0000 (18:48 +0400)]
VIGS: Dirty flag support in vigs_surface

Dirty flag in vigs_surface is need in order to tell the kernel
that we want contents of VRAM to be uploaded into GPU when the surface
is evicted from VRAM. The flag is automatically cleared whenever
update_gpu command is found in execbuffer

Change-Id: I78e20f541d56ba958c5ac15d00b2ed7a2c841f2d

10 years agoVIGS: Potential deadlock fixed
Stanislav Vorobiov [Tue, 30 Apr 2013 13:10:46 +0000 (17:10 +0400)]
VIGS: Potential deadlock fixed

Change-Id: I6e7bfc824fc637bcc77896919c504da17eddfe2b

10 years agoVIGS: Command list patching implemented
Stanislav Vorobiov [Mon, 29 Apr 2013 14:02:11 +0000 (18:02 +0400)]
VIGS: Command list patching implemented

It's necessary to patch commands such as update_vram and update_gpu
in kernel since only kernel knows about VRAM offset of a surface

Change-Id: Ia4a0f53e768d40d8323cebfe101b8e86c4c21261

10 years agoVIGS: Return some more info for GEMs
Stanislav Vorobiov [Fri, 26 Apr 2013 13:46:03 +0000 (17:46 +0400)]
VIGS: Return some more info for GEMs

Change-Id: Ia7b4ce407e64f36063b21d987c602af6c5ffbc16

10 years agoVIGS: We now send commands to host again
Stanislav Vorobiov [Fri, 26 Apr 2013 10:53:59 +0000 (14:53 +0400)]
VIGS: We now send commands to host again

Host side code is fixed to work via new protocol

Change-Id: I4fd731e07e451923e649d1ba8bda3dd903b94023

10 years agoVIGS: Introduce an idr to generate surface ids
Stanislav Vorobiov [Fri, 26 Apr 2013 06:08:48 +0000 (10:08 +0400)]
VIGS: Introduce an idr to generate surface ids

Using mmap offsets as surface ids is not good since they're 64-bit

Change-Id: I03356f4f5de67153d87cdb73e4c0102b67883793

10 years agoVIGS: Refactoring for DRI2
Stanislav Vorobiov [Wed, 24 Apr 2013 06:48:55 +0000 (10:48 +0400)]
VIGS: Refactoring for DRI2

In order to support DRI2 we must move surfaces from X.Org
into kernel. This implies having additional TTM placement - GPU placement.
We must support eviction in vigs_mman in order to be able to create
surfaces that don't occupy VRAM (Now this is done in X.Org).
Also, command execution must be moved from userland to kernel as well
and we also want to add ability to batch several commands in order
to minimize user-kernel transitions and target-host transitions.

Change-Id: I0a5d3c7627b262c0011c485d8918d125775e9a53

10 years agoYaGL: bump version
Igor Mitsyanko [Fri, 18 Jan 2013 17:20:28 +0000 (21:20 +0400)]
YaGL: bump version

Change-Id: I0ce50b9a42ce26f9dabc519a06cbc4fb2cff7ed5
Signed-off-by: Igor Mitsyanko <i.mitsyanko@samsung.com>
10 years agoVIGS: Protocol updated
Stanislav Vorobiov [Fri, 11 Jan 2013 08:20:10 +0000 (12:20 +0400)]
VIGS: Protocol updated

Change-Id: If8e47f16448a39d5e6e1722fe0f497c03db3d154

10 years agoVIGS: Replace "Virtual" connector with "LVDS"
Stanislav Vorobiov [Wed, 9 Jan 2013 17:09:57 +0000 (21:09 +0400)]
VIGS: Replace "Virtual" connector with "LVDS"

e17 devicemgr seems to depend on it

Change-Id: I0bbe82c5c6ea28a1af69189ab05e4189545f8b1e

10 years agoVIGS: Implemented first version
Stanislav Vorobiov [Tue, 25 Dec 2012 14:29:17 +0000 (18:29 +0400)]
VIGS: Implemented first version

Conflicts:

drivers/gpu/drm/Kconfig
drivers/gpu/drm/Makefile

Change-Id: I5ef50259bb6820083274baf5088cee236f7a4bf4

10 years agoYaGL: bump version
Igor Mitsyanko [Thu, 13 Dec 2012 13:26:29 +0000 (17:26 +0400)]
YaGL: bump version

Bump version after GLES1 support was merged to QEMU and target parts.

Change-Id: I11e266c393297a9fc2f4212c46000ae77d980f92
Signed-off-by: Igor Mitsyanko <i.mitsyanko@samsung.com>
10 years agoYaGL: Version bump
Stanislav Vorobiov [Wed, 12 Dec 2012 08:01:38 +0000 (12:01 +0400)]
YaGL: Version bump

Change-Id: I117206cb1ba1eae0bf86e482b41bdd52c075458e

10 years agoYaGL: We now report render type to user space
Stanislav Vorobiov [Fri, 7 Dec 2012 09:20:23 +0000 (13:20 +0400)]
YaGL: We now report render type to user space

Change-Id: Iedf70ba5452640a76b68dcbe08dc0e9cdff321ea

10 years agoYaGL: Version bump
Stanislav Vorobiov [Fri, 21 Sep 2012 08:41:53 +0000 (12:41 +0400)]
YaGL: Version bump

Change-Id: Ie977471bf45db15bce21b8fcbe1c6e937c2ef75c

10 years agoYaGL: We can now allocate more than one page for marshalling buffer
Stanislav Vorobiov [Mon, 17 Sep 2012 09:19:58 +0000 (13:19 +0400)]
YaGL: We can now allocate more than one page for marshalling buffer

Change-Id: Ic5d41b2c75248e2440c85be29ab34183d4a26849

10 years agoYaGL: Allow user to specify marshal buffer size
Stanislav Vorobiov [Thu, 13 Sep 2012 13:30:18 +0000 (17:30 +0400)]
YaGL: Allow user to specify marshal buffer size

It still has to be 1 page, to be fixed later

Change-Id: I5c1d8a276922008621a468485f61e69566abd0c6

10 years agoYaGL: version bump
Stanislav Vorobiov [Thu, 13 Sep 2012 07:05:02 +0000 (11:05 +0400)]
YaGL: version bump

Change-Id: I975a676573c24188e96d0066193233e43a9ecd03

10 years agoYaGL: passthrough device added
Stanislav Vorobiov [Mon, 10 Sep 2012 10:10:19 +0000 (14:10 +0400)]
YaGL: passthrough device added

Conflicts:

arch/arm/configs/tizen_defconfig
drivers/gpu/Makefile

Change-Id: I76daea09e8d27338b763109dbfffa674f400e626

10 years agomaru_camera : Add new camera device for Tizen emulator
jinhyung.jo [Thu, 13 Mar 2014 10:05:11 +0000 (19:05 +0900)]
maru_camera : Add new camera device for Tizen emulator

Add new camera device for Tizen emulator

Change-Id: Ie909aad4e7e4ae9009f92f76a1458a37efd93998
Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
10 years agomaru_overlay : Add new overlay device for Tizen emulator
jinhyung.jo [Thu, 13 Mar 2014 09:48:28 +0000 (18:48 +0900)]
maru_overlay : Add new overlay device for Tizen emulator

Add new overlay device for Tizen emulator

Change-Id: I0bcb64e69d6152b9b1bf3cac1322ab840970ec6c
Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
10 years agomaru_bl : Add new backlight device for Tizen emulator
jinhyung.jo [Thu, 13 Mar 2014 09:16:29 +0000 (18:16 +0900)]
maru_bl : Add new backlight device for Tizen emulator

Add new backlight(& lcd) device for Tizen emulator

Change-Id: I76299ceac5d347fb69d8f4c6f7c60097d95b9b2a
Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
10 years agoSENSOR: removed the warning of __ATTR_RW duplication
Jinhyung Choi [Thu, 27 Feb 2014 08:17:33 +0000 (17:17 +0900)]
SENSOR: removed the warning of __ATTR_RW duplication

Change-Id: Ib77bec32159781acf034c6be8f33ab7907d163f0
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
10 years agomaru: replace virtqueue_add_buf function
GiWoong Kim [Thu, 27 Feb 2014 07:37:53 +0000 (16:37 +0900)]
maru: replace virtqueue_add_buf function

replace virtqueue_add_buf function with add_inbuf
or add_outbuf

Change-Id: I09224954e1d603ea723bc6e4b7c9d64b9f5fa3df
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
10 years agosensor driver: added virtio sensor device
Jinhyung Choi [Thu, 23 Jan 2014 07:59:42 +0000 (16:59 +0900)]
sensor driver: added virtio sensor device

Change-Id: Id68afed696a04c622c84deb1dc9f70e69fbdf355
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
10 years agovdpram: merge vdpram driver.
Sooyoung Ha [Wed, 22 Jan 2014 05:27:51 +0000 (14:27 +0900)]
vdpram: merge vdpram driver.

merge drivers/char/vdpram.c to 3.10 branch.

Change-Id: I3498343fc7811230c7911f7b219ead917938c91a
Signed-off-by: Sooyoung Ha <yoosah.ha@samsung.com>
10 years agomaru: add NFC, EVDI driver
Munkyu Im [Tue, 21 Jan 2014 08:43:17 +0000 (17:43 +0900)]
maru: add NFC, EVDI driver

Change-Id: Ibe28c591a31039609a5ad1a10ac99cb471e0099b
Signed-off-by: Munkyu Im <munkyu.im@samsung.com>
10 years agobrillcodec: remove deprecated attributes.
Kitae Kim [Tue, 14 Jan 2014 03:09:00 +0000 (12:09 +0900)]
brillcodec: remove deprecated attributes.

The attributes such as __devinit causes compilation errors.
In addition, VM_IO flag is removed because it is set by remap_pfn_range().

Change-Id: I33d69322b304679186fb767948347929600623a4
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: changed module name and config file.
Kitae Kim [Mon, 30 Sep 2013 02:43:50 +0000 (11:43 +0900)]
brillcodec: changed module name and config file.

Change-Id: Idfd67412afcd17bef283bc08867ed409285bd79e
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: add memory disposal routine.
Kitae Kim [Thu, 28 Nov 2013 09:45:28 +0000 (18:45 +0900)]
brillcodec: add memory disposal routine.

When a process has been killed, occupied memory blocks have to be disposed.
In addition to this, add memory disposal routine in case of deinit
to check if there are unleased memory blocks or not.

Change-Id: I6396595497d760cd07290904f4c446838396e7a8
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: fix release memory routine.
Kitae Kim [Thu, 28 Nov 2013 07:27:00 +0000 (16:27 +0900)]
brillcodec: fix release memory routine.

If release memory occurs twice with the same memory offset,
it might cause an error.
semaphore for memory block should be increased in the if-statement.

Change-Id: Ic332eec1e64d5b134b8671b38552b470196e01a0
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: remove unnecessary I/O command.
Kitae Kim [Fri, 22 Nov 2013 10:53:33 +0000 (19:53 +0900)]
brillcodec: remove unnecessary I/O command.

Since file_index is not used to identify codec context,
its i/o command is removed.

Change-Id: Ied7ec997c08eabe9dd981f6bdc359eafc2df81f9
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: unified I/O commands between gst-plugins-emulator and this driver.
Kitae Kim [Wed, 20 Nov 2013 08:13:59 +0000 (17:13 +0900)]
brillcodec: unified I/O commands between gst-plugins-emulator and this driver.

Include write operation in ioctl operation as per its functionality because
using both ioctl and write operation might be confusing to understand control flow.

Change-Id: Iac5445f0e15282f40561cfb62f01db90af803c7e
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: added functions to manage context_id.
Kitae Kim [Tue, 19 Nov 2013 06:53:24 +0000 (15:53 +0900)]
brillcodec: added functions to manage context_id.

This driver does not need to use struct file pointer as a unique id,
because applications derived from gst-plugins-emulator use one file descriptor per a process,
So, it needs to manage id of codec context per a process.

Change-Id: I1a15a602674e5abe0fec9899adfa447222fbc360
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: Change a way to protect critical section.
SeokYeon Hwang [Fri, 15 Nov 2013 10:01:46 +0000 (19:01 +0900)]
brillcodec: Change a way to protect critical section.

Change-Id: Ib63f099bb6d2993da6c946bb70123e454b327b8b
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
10 years agobrillcodec: Avoid some multi-threading unsafe issue.
SeokYeon Hwang [Wed, 13 Nov 2013 06:01:51 +0000 (15:01 +0900)]
brillcodec: Avoid some multi-threading unsafe issue.

Change-Id: Idc46d39b0c5044b54ef3a2d5778d2bdb19c98a1e
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
10 years agobrillcodec: Remove unused command.
SeokYeon Hwang [Tue, 12 Nov 2013 10:34:55 +0000 (19:34 +0900)]
brillcodec: Remove unused command.

Change-Id: I5a41a14300c0028fef15798cfa272ecf351741b0
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
10 years agobrillcodec: enhancement logic about using direct buffer.
SeokYeon Hwang [Tue, 12 Nov 2013 08:15:09 +0000 (17:15 +0900)]
brillcodec: enhancement logic about using direct buffer.

Use a device buffer wisely.
Adjust numbers of buffers.

Change-Id: I726c76ddee4c99d12f7a3b6f629508e227ad4d62
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
10 years agobrillcodec: change major ioctl command.
SeokYeon Hwang [Wed, 6 Nov 2013 07:29:37 +0000 (16:29 +0900)]
brillcodec: change major ioctl command.

1. Memory block is chosen by device driver depending on buffer size.
2. Reduce number of ioctl commands.
3. Introduce "try_secure_mem" and source clean-up.

Change-Id: Ie67cb2c2e382322cc842a0bb3af5aca42286577b
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
10 years agobrillcodec: source clean-up and store each codec information
Kitae Kim [Thu, 24 Oct 2013 16:44:40 +0000 (01:44 +0900)]
brillcodec: source clean-up and store each codec information

When a process tried to use codec at first, codec device from qemu
copied codec information such as name, media type and etc.
In addtion to this, codec set is determined at libav compile time.
That's why driver stores codec information as a cache.

Change-Id: I4c4734301bc12419ee92d789ddd35d2bc3348cc3
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: disable debug messages.
Kitae Kim [Thu, 24 Oct 2013 05:30:20 +0000 (14:30 +0900)]
brillcodec: disable debug messages.

Debug messages might affect performance, especially on Windows
even if the messages are not printed into klog file.

Change-Id: I11ee2dc9d3173e64267de1c6076f0dd3b0d599e9
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: handle flush_buffer routine.
Kitae Kim [Fri, 18 Oct 2013 02:52:02 +0000 (11:52 +0900)]
brillcodec: handle flush_buffer routine.

Change-Id: I414167e8e14145a1b71d892e8492da60de8983c4
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agobrillcodec: Source clean-up and rename device name.
Kitae Kim [Wed, 11 Sep 2013 11:42:50 +0000 (20:42 +0900)]
brillcodec: Source clean-up and rename device name.

Changed the driver name from newcodec to brillcodec.

Change-Id: I5630c18507c31e79995ed29bd6a736bdcaff10ba
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: source clean-up.
Kitae Kim [Thu, 5 Sep 2013 02:39:10 +0000 (11:39 +0900)]
new_codec: source clean-up.

Change-Id: Iebc004176bef6ce96edd0aa1eba75c00f30372a7
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: modified the method of memory usage to improve performance.
Kitae Kim [Sun, 1 Sep 2013 13:32:28 +0000 (22:32 +0900)]
new_codec: modified the method of memory usage to improve performance.

Separate the memory to use effectively from several regions
when processing mutli contexts.

Change-Id: I4e4269d31aac6ad5ba53e76eedb7c4733e8e95db
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: changed a way to look up available memory block.
Kitae Kim [Thu, 22 Aug 2013 05:31:07 +0000 (14:31 +0900)]
new_codec: changed a way to look up available memory block.

Use a list instead of an array to manage device memory.
In addition, remove useless source in this moudle.

Change-Id: I2f421c8d786ae5edb623713922279d64fe9f8ba2
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: changed cmd messages and source clean-up.
Kitae Kim [Thu, 16 May 2013 01:30:30 +0000 (10:30 +0900)]
new_codec: changed cmd messages and source clean-up.

get version of device module during probing driver.
And remove or change cmd messages.

Change-Id: I09964c7b5a1bdda90b19d6b742f903245e102ef2
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: improved performance as codec reduced the number of memory copies.
SeokYeon Hwang [Wed, 15 May 2013 12:34:54 +0000 (21:34 +0900)]
new_codec: improved performance as codec reduced the number of memory copies.

When giving decoded outbuffer to plugin of user process from device,
use device memory region directly as an buffer to reduce memcpy overheads.

Change-Id: If440dcf304affc47ca4ec2d596a60e2e51963fef
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
10 years agonew_codec: change lock routine between user and kernel.
Kitae Kim [Sat, 11 May 2013 08:56:21 +0000 (17:56 +0900)]
new_codec: change lock routine between user and kernel.

Change-Id: Ic82cd689872b862c875a04368a0228313cfa9147
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: modified wrong value assignment.
Kitae Kim [Fri, 10 May 2013 05:02:04 +0000 (14:02 +0900)]
new_codec: modified wrong value assignment.

Change-Id: I6794d820c4b58538bf4ffa6d125460f4dca48f38
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: change device_id
Kitae Kim [Fri, 10 May 2013 02:55:11 +0000 (11:55 +0900)]
new_codec: change device_id

pci_device_id was wrong.

Change-Id: I79f9bb8d124cafd390d4e362a7f3087a7546ed90
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: changed a way to copy data between guest and host.
Kitae Kim [Fri, 10 May 2013 02:24:15 +0000 (11:24 +0900)]
new_codec: changed a way to copy data between guest and host.

Use mutex to reduce frequent context switching from user to kernel.
And removed a routine that occupies device memory exclusively.

Change-Id: I4cb8e0a255bafb3fec6b01307ad31ddc6666ce64
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: change log macro.
Kitae Kim [Wed, 8 May 2013 14:27:29 +0000 (23:27 +0900)]
new_codec: change log macro.

Change-Id: Ia04178bcfa80ab8904bc62c36b0d293539ec31ef
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: source clean-up
Kitae Kim [Fri, 19 Apr 2013 02:52:00 +0000 (11:52 +0900)]
new_codec: source clean-up

Removed unnecessary sources and added a way to check null pointer.

Change-Id: Ib8fef0c7d63921d31265dc12e5e9ca07b893816c
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: remove unnecessary whitespaces and code.
Kitae Kim [Thu, 28 Mar 2013 03:06:48 +0000 (12:06 +0900)]
new_codec: remove unnecessary whitespaces and code.

Change-Id: Ie5f8351ea4ee783c2e78b121326bad9e21658c12
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
10 years agonew_codec: added new codec driver module.
Kitae Kim [Tue, 12 Mar 2013 10:50:04 +0000 (19:50 +0900)]
new_codec: added new codec driver module.

Change-Id: I11f4959d4abbddd4aff33aea5812fe700aafdb72
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>