Commit graph

118 commits

Author SHA1 Message Date
Fernando Guzman Lugo
4dd1944ab7 staging: tidspbridge - rename bridge_brd_mem_map/unmap to a proper name
Now these functions only map user space addresses to dsp virtual
addresses, so now the functions have a more meaningful name.
Also now user_to_dsp_map returns the mapped address.

Signed-off-by: Fernando Guzman Lugo <x0095840@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-05 15:30:57 -07:00
Fernando Guzman Lugo
0c10e91b6c staging: tidspbridge - move shared memory iommu maps to tiomap3430.c
Now iommu maps of shared memory segments are done in
bridge_brd_start and unmaped in bridge_brd_stop.

Signed-off-by: Fernando Guzman Lugo <x0095840@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-05 15:30:50 -07:00
Felipe Contreras
82d4b4776d staging: tidspbridge: use omap_dsp_platform_data
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-05 12:06:45 -07:00
Nicolas Kaiser
d5ca053c8b staging: tidspbridge: remove duplicated include
Remove duplicated include.

Signed-off-by: Nicolas Kaiser <nikai@nikai.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-05 11:42:20 -07:00
Fernando Guzman Lugo
d95ec7e2fd staging: tidspbridge: replace iommu custom for opensource implementation
Now the tidspbridge uses the API's from
iovmm module.

Signed-off-by: Fernando Guzman Lugo <x0095840@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-05 08:54:40 -07:00
Ernesto Ramos
0ee5ab30d1 staging: ti dspbridge: disable all peripherals at bridge_brd_stop
DSP Bridge needs to disable the peripheral clocks when switches to
BRD_STOPPED since that would prevent the domain to enter in OFF state.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-05 08:52:09 -07:00
Ernesto Ramos
d10009211c staging: ti dspbridge: Replace find_lcm with lcm kernel func
Resendig this patch since it was missed in the last merge...

Remove find_lcm within nldr.c and use standard
kernel function lcm().

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-05 08:52:08 -07:00
Ernesto Ramos
7d1d628344 staging: ti dspbridge: remove cmm_xlator_delete wrapper
Resending this patch since it was missed in the last merge...

Remove unnecessary cmm_xlator_delete function and use
kfree() kernel function directly.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-10-05 08:52:08 -07:00
Vasiliy Kulikov
b04462a143 staging: tidspbridge: check return code of get_user
Function get_user may fail. Check for it.

Signed-off-by: Vasiliy Kulikov <segooon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-09-05 16:59:50 -07:00
Vasiliy Kulikov
e5a7dc54ee staging: tidspbridge: check return code of kzalloc
Function kzalloc may fail. Check for it.

Signed-off-by: Vasiliy Kulikov <segooon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-09-05 16:59:49 -07:00
Uwe Kleine-König
9b0131cb24 staging/trivial: fix typos concerning "initiali[zs]e"
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-09-04 21:23:26 -07:00
Uwe Kleine-König
25a606c36a staging/trivial: fix typos concerning "address"
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-09-04 21:23:25 -07:00
Ivan Gomez Castellanos
bd5dc30e3e staging: tidspbridge: Remove services.c and services.h
The services_init() and services_exit() functions don't do anything,
so they are removed, and as these are the only two functions defined
in services.c and services.h, then these files are also removed.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:17 -07:00
Ivan Gomez Castellanos
220344f254 staging: tidspbridge: Remove cfg.c and cfg.h files
So far, the cfg.c file is empty, and the function prototypes in cfg.h
are not used in any place. So they can be removed.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:16 -07:00
Ivan Gomez Castellanos
b87561f748 staging: tidspbridge: Remove cfg_set_object()
As the services directory is going to be removed, the cfg_set_object
function has also to be removed.

Since the driver object handle is retrieved from the drv_data structure,
then the word "Registry" is replaced by "driver data" in the comments.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:16 -07:00
Ivan Gomez Castellanos
a47d4deebf staging: tidspbridge: Remove cfg_set_dev_object()
As the services directory is going to be removed, the cfg_set_dev_object
function has also to be removed.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:16 -07:00
Ivan Gomez Castellanos
73b87a9166 staging: tidspbridge: Remove cfg_get_object()
As the services directory is going to be removed, the cfg_get_object
function has also to be removed.

Since the driver object handle is retrieved from the drv_data structure,
then the word "Registry" is replaced by "driver data" in the comments.

Also, the hdrv_obj is not used in function omap34_xx_bridge_remove(), so
it is removed.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:15 -07:00
Ivan Gomez Castellanos
315a1a20aa staging: tidspbridge: Remove cfg_get_exec_file()
As the services directory is going to be removed, the cfg_get_exec_file
function has also to be removed.

This patch also avoids a possible NULL pointer dereference in function
cfg_get_exec_file(), when drv_datap is checked for NULL and then pass
drv_datap->base_img as argument to strlen().

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:15 -07:00
Ivan Gomez Castellanos
e8184e6c2d staging: tidspbridge: Remove cfg_get_dev_object() and do a trivial cleanup
The cfg_get_dev_object function is only used in one place and because of
its simplicity, it can be removed.

The parameter *value can be left uninitialized if the strcmp() returns a
nonzero value, so in the function dev_remove_device(), the hdev_obj could
be used uninitialized and could be dereferenced in dev_destroy_device().
This patch fixes this issue, and also removes the dev_obj pointer which
is not used.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:15 -07:00
Ivan Gomez Castellanos
345c8bec42 staging: tidspbridge: Remove cfg_init() and cfg_exit()
The functions cfg_init() and cfg_exit() do nothing, so they are removed.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:15 -07:00
Ivan Gomez Castellanos
4a6595625c staging: tidspbridge: Remove cfg_get_auto_start()
As the services directory is going to be removed, this patch is needed.

The function cfg_get_auto_start() only assigns a value to the flag
tmp, and it is only called by the function api_init_complete2(). So
the function cfg_get_auto_start() is not required.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:14 -07:00
Ivan Gomez Castellanos
27e7f23f64 staging: tidspbridge: Remove ntfy.c
As the services directory is going to be removed, this patch is needed.

ntfy.c only contained the function dsp_notifier_event(), and since this
function calls sync_set_event(), then the dsp_notifier_event() is moved
to the sync.c file.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:14 -07:00
Ivan Gomez Castellanos
3aa1e0e6c7 staging: tidspbridge: Move sync.c from services to core
As the services directory is going to be removed, the file sync.c is moved
from services to core.

Signed-off-by: Ivan Gomez Castellanos <ivan.gomez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:23:14 -07:00
Andrea Gelmini
42cd0f56b7 drivers: staging: tidspbridge: gen: gb.c: Removed duplicated #include
Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-31 11:22:18 -07:00
Ernesto Ramos
084f70ee09 staging: ti dspbridge: avoid errors if stream id is zero
As 'zero' can be a perfectly good id, it can be picked up as
a NULL from userspace, avoid issues in API and user apps if stream
handle is zero.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-02 17:11:03 -07:00
Ernesto Ramos
4ec09714a0 staging: ti dspbridge: use stream id instead of kernel address
Send stream ids to the user instead of handles, then when
the id is coming from user dspbridge can retrive the handle
using id and avoid using invalid handles.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-02 17:11:03 -07:00
Ernesto Ramos
6bcc9beed2 staging: ti dspbridge: use processor handle from context instead of user's
Make sure dspbridge driver uses a valid processor handle by
using the handle stored in process context.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-02 17:11:03 -07:00
Ernesto Ramos
8df327c390 staging: ti dspbridge: avoid errors if node handle is zero
As 'zero' can be a perfectly good id, it can be picked up as
a NULL from userspace, avoid issues in API and user apps if node
handle is zero.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-02 17:11:02 -07:00
Ernesto Ramos
0624f52f77 staging: ti dspbridge: use node id instead of kernel address
Use idr kernel library to send/receive node ids to the
user instead of kernel address.
This id will be use to access the node handles at the
kernel side, if id does not match to any handle
error -EFAULT is returned.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-02 17:11:02 -07:00
Ernesto Ramos
35f338e4f2 staging: ti dspbridge: avoid possible NULL dereference panic
When dsp_notifications array is received from user,
dspbridge verifies the array has valid pointers
and dsp_notification structures. However, these
structures contain pointers that need to be
checked for valid handles.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-02 17:11:00 -07:00
Ernesto Ramos
0c4a938ed4 staging:ti dspbridge: remove find_gcf from nldr.c
Remove find_gcf from nldr.c and use kernel function
gcd().

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:23:35 -07:00
Ernesto Ramos
7c9305b80c staging:ti dspbridge: remove bridge_brd_delete function
Remove bridge_brd_delete() function since it is
doing the same that bridge_brd_stop().

Signed-off-by: Ernesto Ramos <ernesto@ernesto-desktop.(none)>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:23:20 -07:00
Ernesto Ramos
a2205e487e staging:ti dspbridge: make sure IVA2 is OFF when dev is created
Regardless the IVA2 power state before bridgedriver is
installed, the driver must ensure that IVA2 power
state is OFF when the device driver is created.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:23:20 -07:00
Ernesto Ramos
cfccf244a7 staging:ti dspbridge: proc_load/start should set IVA2 to OFF in case of failure
When a base image is being loaded or started and by some reason
the process fails, the IVA2 should be switched OFF.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:23:20 -07:00
Ernesto Ramos
a2c2272194 staging:ti dspbridge: fix bridge_brd_stop so IVA2 is set OFF
right now, bridge_brd_stop is not changing the IVA2 power state
to OFF since PM_PWSTST_IVA2 is not 0 after calling this function.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:23:19 -07:00
Ernesto Ramos
3a8965fda9 staging:ti dspbridge: remove DSP_FAILED macro definition
Since status succeeded is now 0 macro DSP_FAILED
is not necessary anymore. This patch removes this
define.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:43 -07:00
Ernesto Ramos
82f575e5bb staging:ti dspbridge: remove DSP_FAILED macro from services
Since status succeeded is 0, DSP_FAILED macro
is not necessary anymore.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:43 -07:00
Ernesto Ramos
b66e0986f9 staging:ti dspbridge: remove DSP_FAILED macro from rmgr
Since status succeeded is 0, DSP_FAILED macro
is not necessary anymore.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:43 -07:00
Ernesto Ramos
51d5e099cc staging:ti dspbridge: remove DSP_FAILED macro from pmgr
Since status succeeded is 0, DSP_FAILED macro
is not necessary anymore.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:43 -07:00
Ernesto Ramos
d1b2216d13 staging:ti dspbridge: remove DSP_FAILED macro from core
Since status succeeded is 0, DSP_FAILED macro
is not necessary anymore.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:43 -07:00
Ernesto Ramos
54621f031c staging:ti dspbridge: remove DSP_SUCCEEDED macro definition
Since status succeeded is now 0 macro DSP_SUCCEEDED
is not necessary anymore. This patch removes this
define.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:42 -07:00
Ernesto Ramos
95bd64a893 staging:ti dspbridge: remove DSP_SUCCEEDED macro from services
Since status succeeded is now 0 macro DSP_SUCCEEDED
is not necessary anymore.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:42 -07:00
Ernesto Ramos
a741ea6efc staging:ti dspbridge: remove DSP_SUCCEEDED macro from rmgr
Since status succeeded is now 0 macro DSP_SUCCEEDED
is not necessary anymore.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:42 -07:00
Ernesto Ramos
157990f0d7 staging:ti dspbridge: remove DSP_SUCCEEDED macro from pmgr
Since status succeeded is now 0 macro DSP_SUCCEEDED
is not necessary anymore.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:42 -07:00
Ernesto Ramos
e6486d8cee staging:ti dspbridge: remove DSP_SUCCEEDED macro from core
Since status succeeded is now 0 macro DSP_SUCCEEDED
is not necessary anymore.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:41 -07:00
Ernesto Ramos
ecd3d0ca40 staging:ti dspbridge: replace simple_strtoul by strict_strtoul
Replace simple_strtoul by strict_strtoul in atoi function.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:05 -07:00
Ernesto Ramos
b3c8aef0a2 staging:ti dspbridge: remove unnecessary volatile variables
Remove unnecessary volatile variables; use accessor
functions __raw_readl/__raw_writel instead when applicable.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:04 -07:00
Ernesto Ramos
74ea8ff93b staging:ti dspbridge: remove function delete_strm_mgr
Remove function delete_strm_mgr in strm.c and
use kfree instead.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:04 -07:00
Ernesto Ramos
3448c5481c staging:ti dspbridge: remove unnecessary check for NULL pointer in cmm.c
Remove unnecessary check for NULL pointer in cmm.c.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:04 -07:00
Ernesto Ramos
3fee78f6be staging:ti dspbridge: remove unused typedef REG16
Remove unused typedef REG16 in dspbridge.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-07-28 08:22:04 -07:00