Commit Graph

195 Commits

Author SHA1 Message Date
Felipe Contreras
ab42abf33a staging: tidspbridge: protect dmm_map properly
We need to protect not only the dmm_map list, but the individual
map_obj's, otherwise, we might be building the scatter-gather list with
garbage. So, use the existing proc_lock for that.

I observed race conditions which caused kernel panics while running
stress tests, also, Tuomas Kulve found it happening quite often in
Gumstix Over. This patch fixes those.

Cc: Tuomas Kulve <tuomas@kulve.fi>
Signed-off-by: Felipe Contreras <felipe.contreras@nokia.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-03-14 12:22:27 -07:00
Ilia Mirkin
9f7ff701ad staging: tidspbridge: Remove NULL check before kfree
This patch was generated by the following semantic patch:
// <smpl>
@@ expression E; @@
- if (E != NULL) { kfree(E); }
+ kfree(E);

@@ expression E; @@
- if (E != NULL) { kfree(E); E = NULL; }
+ kfree(E);
+ E = NULL;
// </smpl>

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-03-14 11:57:36 -07:00
Justin P. Mattock
012983a2e8 drivers:staging:dspbridge:node.h Remove one to many n's in a word.
The Patch below removes one to many "n's" in a word..

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
CC: Greg Kroah-Hartman <gregkh@suse.de>
CC: Rene Sapiens <rene.sapiens@ti.com>
CC: devel@driverdev.osuosl.org
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-02-28 19:00:29 -08:00
Uwe Kleine-König
9e36261d45 staging/trivial: fix typos concerning "consistent"
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-02-18 13:30:10 -08:00
Rene Sapiens
fbbb4959ee staging: tidspbridge: set12 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:               Replacement:
dw_buf_size             buf_size
dw_bytes                bytes
pattr                   attr
pdw_arg                 arg
ph_cmm_mgr              cmm_mgr
ph_event                event
ph_node                 node
ph_stream               stream
pmask                   mask
pp_argv                 argv
pp_buf_va               buf_va
pstatus                 status
ul_flags                flags
ul_seg_id               seg_id
usize                   size

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:30 -06:00
Rene Sapiens
121e8f9b9f staging: tidspbridge: set11 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:               Replacement:
hio_mgr                 io_mgr
dw_api_reg_base         api_reg_base
dw_api_clk_base         api_clk_base
ap_channel              channels
pio_requests            io_requests
pio_completions         io_completions
pndb_props              ndb_props
pndb_props_size         ndb_props_size
pu_num_nodes            num_nodes
pu_num_procs            num_procs
psz_path_name           sz_path_name
pu_index                index
pargs                   args
pu_allocated            allocated
psize                   size
hnotification           notification
pp_rsv_addr             rsv_addr
prsv_addr               rsv_addr
pmpu_addr               mpu_addr
pp_map_addr             map_addr
ul_map_attr             map_attr
undb_props_size         ndb_props_size

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:28 -06:00
Rene Sapiens
ee4317f78c staging: tidspbridge: set10 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:               Replacement:
hnext                   next
hnode                   node
hprev                   prev
hroot                   root
hstream                 stream
pbuf                    buf
pcb_arg                 cb_arg
pdspheap_list           dspheap_list
pmsg                    msg
ps_name                 name
pstr_create_phase_fxn   str_create_phase_fxn
pstr_delete_phase_fxn   str_delete_phase_fxn
pstr_dev_name           str_dev_name
pstr_event_name         str_event_name
pstr_execute_phase_fxn  str_execute_phase_fxn
pstr_i_alg_name         str_i_alg_name
udma_chnl_id            dma_chnl_id
un_bufs_in_strm         bufs_in_strm
usm_buf_size            sm_buf_size

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:26 -06:00
Rene Sapiens
a534f17bd5 staging: tidspbridge: set9 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:               Replacement:
hprocessor              processor
udma_priority           dma_priority
udsp_data_mau_size      dsp_data_mau_size
udsp_heap_addr          dsp_heap_addr
udsp_heap_res_addr      dsp_heap_res_addr
udsp_heap_virt_addr     dsp_heap_virt_addr
udsp_mau_size           dsp_mau_size
udsp_word_size          dsp_word_size
ugpp_heap_addr          gpp_heap_addr
ugpp_heap_virt_addr     gpp_heap_virt_addr
us_data2                data2
us_data3                data3
uc_data4                data4
uc_data5                data5
uc_data6                data6
us_load_type            load_type
usm_length              sm_length
utimeout                timeout
uwc_deadline            wc_deadline
uwc_execution_time      wc_execution_time
uwc_period              wc_period

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:24 -06:00
Rene Sapiens
085467b8f5 staging: tidspbridge: set8 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:                Replacement:
hbridge_context          bridge_context
hchnl_mgr                chnl_mgr
hcmm_mgr                 cmm_mgr
hdcd_mgr                 dcd_mgr
hdeh_mgr                 deh_mgr
hdev_obj                 dev_obj
hdrv_obj                 drv_obj
hmgr_obj                 mgr_obj
hmsg_mgr                 msg_mgr
hnode_mgr                node_mgr
psz_last_coff            last_coff
ul_resource              resource
ul_seg_id                seg_id
ul_size                  size
ul_sm_size               sm_size
ul_total_free_size       total_free_size
ul_total_in_use_cnt      total_in_use_cnt
ul_total_seg_size        total_seg_size
ul_trace_buffer_begin    trace_buffer_begin
ul_trace_buffer_current  trace_buffer_current
ul_trace_buffer_end      trace_buffer_end
ul_unit                  unit
ul_virt_size             virt_size
us_dsp_mau_size          dsp_mau_size
us_dsp_word_size         dsp_word_size

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:22 -06:00
Rene Sapiens
6c66e948d2 staging: tidspbridge: set7 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:               Replacement:
ul_gpp_phys             gpp_phys
ul_gpp_read_pointer     gpp_read_pointer
ul_gpp_size             gpp_size
ul_gpp_va               gpp_va
ul_heap_size            heap_size
ul_internal_mem_size    internal_mem_size
ul_in_use_cnt           in_use_cnt
ul_len_max_free_block   len_max_free_block
ul_max                  max
ul_min_block_size       min_block_size
ul_min                  min
ul_mpu_addr             mpu_addr
ul_n_bytes              bytes
ul_num_alloc_blocks     num_alloc_blocks
ul_number_bytes         number_bytes
ul_num_chnls            num_chnls
ul_num_free_blocks      num_free_blocks
ul_num_gppsm_segs       num_gppsm_segs
ul_pos                  pos
ul_reserved             reserved

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:19 -06:00
Rene Sapiens
dab7f7fee0 staging: tidspbridge: set6 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:		Replacement:
pfn_write               write
pf_phase_split          phase_split
ul_alignment            alignment
ul_bufsize              bufsize
ul_bufsize_rms          bufsize_rms
ul_chnl_buf_size        chnl_buf_size
ul_chnl_offset          chnl_offset
ul_code_mem_seg_mask    code_mem_seg_mask
ul_dais_arg             dais_arg
ul_data1                data1
ul_data_mem_seg_mask    data_mem_seg_mask
ul_dsp_addr             dsp_addr
ul_dsp_res_addr         dsp_res_addr
ul_dsp_size             dsp_size
ul_dsp_va               dsp_va
ul_dsp_virt             dsp_virt
ul_entry                entry
ul_external_mem_size    external_mem_size
ul_fxn_addrs            fxn_addrs
ul_gpp_pa               gpp_pa

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:17 -06:00
Rene Sapiens
09f133045c staging: tidspbridge: set5 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:                Replacement:
pfn_dev_create           by dev_create
pfn_dev_destroy          dev_destroy
pfn_exit                 exit
pfn_get_fxn_addr         get_fxn_addr
pfn_init                 init
pfn_io_create            io_create
pfn_io_destroy           io_destroy
pfn_io_get_proc_load     io_get_proc_load
pfn_io_on_loaded         io_on_loaded
pfn_load                 load
pfn_msg_create           msg_create
pfn_msg_create_queue     msg_create_queue
pfn_msg_delete           msg_delete
pfn_msg_delete_queue     msg_delete_queue
pfn_msg_get              msg_get
pfn_msg_put              msg_put
pfn_msg_register_notify  msg_register_notify
pfn_msg_set_queue_id     msg_set_queue_id
pfn_ovly                 ovly
pfn_unload               unload

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:15 -06:00
Rene Sapiens
e17ba7f202 staging: tidspbridge: set4 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:                Replacement:
pfn_brd_set_state        brd_set_state
pfn_brd_start            brd_start
pfn_brd_status           brd_status
pfn_brd_stop             brd_stop
pfn_brd_write            brd_write
pfn_chnl_add_io_req      chnl_add_io_req
pfn_chnl_cancel_io       chnl_cancel_io
pfn_chnl_close           chnl_close
pfn_chnl_create          chnl_create
pfn_chnl_destroy         chnl_destroy
pfn_chnl_flush_io        chnl_flush_io
pfn_chnl_get_info        chnl_get_info
pfn_chnl_get_ioc         chnl_get_ioc
pfn_chnl_get_mgr_info    chnl_get_mgr_info
pfn_chnl_idle            chnl_idle
pfn_chnl_open            chnl_open
pfn_chnl_register_notify chnl_register_notify
pfn_create		 create
pfn_delete		 delete
pfn_dev_cntrl		 dev_cntrl

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:13 -06:00
Rene Sapiens
3c882de542 staging: tidspbridge: set3 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:               Replacement:
dw_seg_base_va          seg_base_va
dw_self_loop            self_loop
dw_state                state
dw_tc_endianism         tc_endianism
dw_test_base            test_base
dw_type                 type
dw_val1                 val1
dw_val2                 val2
dw_val3                 val3
dw_va                   va
dw_virt_base            virt_base
dw_vm_base              vm_base
dw_vm_size              vm_size
pfn_allocate            allocate
pfn_brd_mem_copy        brd_mem_copy
pfn_brd_mem_map         brd_mem_map
pfn_brd_mem_un_map      brd_mem_un_map
pfn_brd_mem_write       brd_mem_write
pfn_brd_monitor         brd_monitor
pfn_brd_read            brd_read

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:11 -06:00
Rene Sapiens
5108de0ae0 staging: tidspbridge: set2 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

Original:               Replacement:
dw_dsp_base_addr        dsp_base_addr
dw_dmmu_base            dmmu_base
dw_index                index
dw_int_addr             int_addr
dw_internal_size        internal_size
dw_last_output          last_output
dw_mem_base             mem_base
dw_mem_length           mem_length
dw_mem_phys             mem_phys
dw_mode                 mode
dw_num_chnls            num_chnls
dw_offset_for_monitor   offset_for_monitor
dw_output_mask          output_mask
dw_page_size            page_size
dw_pa                   pa
dw_per_base             per_base
dw_per_pm_base          per_pm_base
dw_public_rhea          public_rhea
dw_seg_base_pa          seg_base_pa

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:09 -06:00
Rene Sapiens
b4da7fc381 staging: tidspbridge: set1 remove hungarian from structs
hungarian notation will be removed from the elements inside
structures, the next varibles will be renamed:

dw_api_reg_base         api_reg_base
dw_brd_state            brd_state
dw_chnl_buf_size        chnl_buf_size
dw_chnl_offset          chnl_offset
dw_cmd                  cmd
dw_core_pm_base         core_pm_base
dw_dsp_base             dsp_base
dw_dsp_base_va          dsp_base_va
dw_dsp_bufs             dsp_bufs
dw_dsp_buf_size         dsp_buf_size
dw_dsp_clk_m2_base      dsp_clk_m2_base
dw_dsp_ext_base_addr    dsp_ext_base_addr
dw_dsp_phys_addr_offset dsp_phys_addr_offset
dw_dsp_start_add        dsp_start_add
dw_err_mask             err_mask
dw_gpp_base_pa          gpp_base_pa
dw_api_clk_base         api_clk_base
dw_api_reg_base         api_reg_base
dw_arg                  arg
dw_arg1                 arg1
dw_arg2                 arg2
dw_chnl_buf_size        chnl_buf_size

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:07 -06:00
Ramos Falcon, Ernesto
92d0293038 staging: tidspbridge: remove code referred by OPT_ZERO_COPY_LOADER
Remove code referred by OPT_ZERO_COPY_LOADER since it is
not used.

Signed-off-by: Ernesto Ramos <ernesto@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:05 -06:00
Armando Uribe
157bc26dac staging: tidspbridge: Remove trivial header files
Remove the header files that contains few declarations
and can be merged onto more generic headers.

Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:02 -06:00
Armando Uribe
7792724074 staging: tidspbridge: Remove unused typedefs
Unsed typedefs are removed, because of there are not
used or because previous clean ups.

Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:12:00 -06:00
Armando Uribe
5db9e2bf44 staging: tidspbridge: Remove unused structs
Remove unused structs and its dependencies, like references
in other structs or as arguments of certain functions.

Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:58 -06:00
Armando Uribe
57e6a9f2a8 staging: tidspbridge: Remove unused functions
Remove functions that are not used at all, also remove the dependencies
of this functions like struct members, comments and calls.

Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:56 -06:00
Armando Uribe
2c36fac485 staging: tidspbridge: Remove unused defined constants
Remove defined constants not being used.

Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:54 -06:00
Laurent Pinchart
c378204afa staging: tidspbridge: Fix atoi to support hexadecimal numbers correctly
For some strange reason, the DSP base image node/object properties
description string stores hexadecimal numbers with a 'h' or 'H' suffix
instead of a '0x' prefix. This causes parsing issue because the
dspbridge atoi() implementation relies on strict_strtoul(), which will
return an error because of the trailing 'h' character.

As the atoi() return value is never checked for an error anyway, replace
strict_strtoul() with simple_strtoul() to ignore the suffix.

This fix gets rid of the following assertion failed messages that were
printed when running the dsp-dummy test application.

drivers/staging/tidspbridge/rmgr/nldr.c, line 1691:
Assertion (segid == MEMINTERNALID || segid == MEMEXTERNALID) failed.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:51 -06:00
Ionut Nicu
57104f0fbe staging: tidspbridge: rmgr/node.c code cleanup
Reorganized some code in rmgr/node.c to increase its
readability. Most of the changes reduce the code
indentation level and simplifiy the code. No functional
changes were done.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:49 -06:00
Omar Ramirez Luna
a994b051b6 staging: tidspbridge: use the right type for list_is_last
Removes the following warning:

  CC [M]  drivers/staging/tidspbridge/rmgr/rmm.o
drivers/staging/tidspbridge/rmgr/rmm.c: In function 'rmm_alloc':
drivers/staging/tidspbridge/rmgr/rmm.c:147: warning: passing
	argument 1 of 'list_is_last' from incompatible pointer type
include/linux/list.h:170: note: expected 'const struct list_head *'
	but argument is of type 'struct rmm_ovly_sect *'

Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Ionut Nicu <ionut.nicu@mindbit.ro>
2011-02-04 20:11:47 -06:00
Ionut Nicu
ba44df6f88 staging: tidspbridge: pmgr code cleanup
Reorganized some code in the pmgr module to increase
its readability. No functional changes were done.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:45 -06:00
Ionut Nicu
d65c14b361 staging: tidspbridge: core code cleanup
Reorganized some code in the core module to increase its
readability. Most of the changes reduce the code
indentation level and simplifiy the code. No functional
changes were done.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:43 -06:00
Ionut Nicu
edbeef9647 staging: tidspbridge: remove custom linked list
Now that all users of lst_list have been converted to the
standard linux list_head API, we can remove the associated
header file.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:41 -06:00
Ionut Nicu
0005391f30 staging: tidspbridge: convert rmgr to list_head
Convert the rmgr module of the tidspbridge driver
to use struct list_head instead of struct lst_list.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:39 -06:00
Ionut Nicu
5fb45dac37 staging: tidspbridge: convert pmgr to list_head
Convert the pmgr module of the tidspbridge driver
to use struct list_head instead of struct lst_list.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:37 -06:00
Ionut Nicu
3c6bf30f1e staging: tidspbridge: convert core to list_head
Convert the core module of the tidspbridge driver
to use struct list_head instead of struct lst_list.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:35 -06:00
Ionut Nicu
6d7e925b88 staging: tidspbridge: remove gb bitmap implementation
Now that all users of gb have been converted to the
standard linux bitmap API, we can remove it from the
gen library.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:33 -06:00
Ionut Nicu
b5a38abad0 staging: tidspbridge: switch to linux bitmap API
Replace the tidspbridge generic bitmap operations
with the linux standard bitmap implementation.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:30 -06:00
Ionut Nicu
ad4adcc495 staging: tidspbridge: remove utildefs
Remove a header file that was not very useful to
the dspbridge driver.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:28 -06:00
Ionut Nicu
31de278078 staging: tidspbridge: remove gs memory allocator
Remove unnecessary wrappers for linux kernel memory
allocation primitives.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:26 -06:00
Ionut Nicu
74c2d1f63f staging: tidspbridge: fix kernel oops in bridge_io_get_proc_load
The DSP shared memory area gets initialized only when
a COFF file is loaded.

If bridge_io_get_proc_load is called before loading a base
image into the DSP, the shared_mem member of the io manager
will be NULL, resulting in a kernel oops when it's dereferenced.

Also made some coding style changes to bridge_io_create.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:24 -06:00
Ionut Nicu
59403c21af staging: tidspbridge: mgr_enum_node_info cleanup
Reorganized mgr_enum_node_info code to increase its
readability.

Signed-off-by: Ionut Nicu <ionut.nicu@mindbit.ro>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:22 -06:00
Felipe Contreras
d723818e7c staging: tidspbridge: fix mgr_enum_node_info
The current code was always returning a non-zero status value
to userspace applications when this ioctl was called.

The error code was ENODATA, which isn't actually an error,
it's always returned by dcd_enumerate_object() when it hits the
end of list.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:20 -06:00
Armando Uribe
81ea18ec22 staging: tidspbridge: Eliminate direct manipulation of OMAP_SYSC_BASE
Eliminates Bridge direct manipulation of OMAP_SYSC_BASE registers

Signed-off-by: Armando Uribe <x0095078@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:16 -06:00
Sapiens, Rene
98d0ba8925 staging: tidspbridge: overwrite DSP error codes
When calling the DSP's remote functions, the DSP returns error
codes different from the ones managed by the kernel, the
function's return value is shared with the MPU using a shared
structure. This patch overwrites those error codes by kernel
specifics and deletes unnecessary code.

Signed-off-by: Rene Sapiens <rene.sapiens@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:11 -06:00
Guzman Lugo, Fernando
4097c4968c staging: tidspbridge: make sync_wait_on_event interruptible
So that avoid non-killable process.

Signed-off-by: Fernando Guzman Lugo <x0095840@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2011-02-04 20:11:08 -06:00
Omar Ramirez Luna
85d139c977 staging: tidspbridge: replace mbox callback with notifier_call
Lately, mailbox callbacks have been replaced by notifier block
call chains, this needs to be changed in the users of mailbox,
otherwise compilation will break due to missing parameters.

For this new change to work, io_mbox_msg needs to be compatible
with the notifier_call definition.

Reported-by: Hari Kanigeri <h-kanigeri2@ti.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-01-20 12:19:47 -08:00
Guzman Lugo, Fernando
8e290fd41a staging: tidspbridge: configure full L1 MMU range
IVA MMU can manage up to 4GB of address space through its page tables,
given that it's L1 is divided into 1MB sections it requires at least
16KB for its table which represents 4096 entries of 32 bits each.

Previously, only 1GB was being handled by setting the page table size
to 4KB, any virtual address beyond of the L1 size used, would fall
into memory that does not belong to L1 translation tables, leading to
unpredictable results.

So, set the L1 table size to cover the entire MMU range (4GB) whether
is meant to be used or not.

Reported-by: Felipe Contreras <felipe.contreras@nokia.com>
Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com>
Signed-off-by: Felipe Contreras <felipe.contreras@nokia.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-01-20 12:01:24 -08:00
Linus Torvalds
949f6711b8 Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6
* 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: (510 commits)
  staging: speakup: fix failure handling
  staging: usbip: remove double giveback of URB
  Staging: batman-adv: Remove batman-adv from staging
  Staging: hv: Use only one txf buffer per channel and kmalloc/GFP_KERNEL on initialize
  staging: hv: remove unneeded osd_schedule_callback
  staging: hv: convert channel_mgmt.c to not call osd_schedule_callback
  staging: hv: convert vmbus_on_msg_dpc to not call osd_schedule_callback
  staging: brcm80211: Fix WL_<type> logging macros
  Staging: IIO: DDS: AD9833 / AD9834 driver
  Staging: IIO: dds.h convenience macros
  Staging: IIO: Direct digital synthesis abi documentation
  staging: brcm80211: Convert ETHER_TYPE_802_1X to ETH_P_PAE
  staging: brcm80211: Remove unused ETHER_TYPE_<foo> #defines
  staging: brcm80211: Remove ETHER_HDR_LEN, use ETH_HLEN
  staging: brcm80211: Convert ETHER_ADDR_LEN to ETH_ALEN
  staging: brcm80211: Convert ETHER_IS<FOO> to is_<foo>_ether_addr
  staging: brcm80211: Remove unused ether_<foo> #defines and struct
  staging: brcm80211: Convert ETHER_IS_MULTI to is_multicast_ether_addr
  staging: brcm80211: Remove unused #defines ETHER_<foo>_LOCALADDR
  Staging: comedi: Fix checkpatch.pl issues in file s526.c
  ...

Fix up trivial conflict in drivers/video/udlfb.c
2011-01-10 16:04:53 -08:00
Paul Walmsley
72e06d0872 OMAP2+: powerdomain: move header file from plat-omap to mach-omap2
The OMAP powerdomain code and data is all OMAP2+-specific.  This seems
unlikely to change any time soon.  Move plat-omap/include/plat/powerdomain.h
to mach-omap2/powerdomain.h.  The primary point of doing this is to remove
the temptation for unrelated upper-layer code to access powerdomain code
and data directly.

As part of this process, remove the references to powerdomain data
from the GPIO "driver" and the OMAP PM no-op layer, both in plat-omap.
Change the DSPBridge code to point to the new location for the
powerdomain headers.  The DSPBridge code should not be including the
powerdomain headers; these should be removed.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Kevin Hilman <khilman@deeprootsystems.com>
Cc: Omar Ramirez Luna <omar.ramirez@ti.com>
Cc: Felipe Contreras <felipe.contreras@gmail.com>
Cc: Greg Kroah-Hartman <greg@kroah.com>
2010-12-21 21:05:16 -07:00
Paul Walmsley
1540f21406 OMAP2+: clockdomain: move header file from plat-omap to mach-omap2
The OMAP clockdomain code and data is all OMAP2+-specific.  This seems
unlikely to change any time soon.  Move plat-omap/include/plat/clockdomain.h
to mach-omap2/clockdomain.h.  The primary point of doing this is to remove
the temptation for unrelated upper-layer code to access clockdomain code
and data directly.

DSPBridge also uses the clockdomain headers for some reason, so,
modify it also. The DSPBridge code should not be including the
clockdomain headers; these should be removed.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Kevin Hilman <khilman@deeprootsystems.com>
Cc: Omar Ramirez Luna <omar.ramirez@ti.com>
Cc: Felipe Contreras <felipe.contreras@gmail.com>
Cc: Greg Kroah-Hartman <greg@kroah.com>
Tested-by: Rajendra Nayak <rnayak@ti.com>
Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
2010-12-21 21:05:15 -07:00
Paul Walmsley
59fb659b06 OMAP2/3: PRCM: split OMAP2/3-specific PRCM code into OMAP2/3-specific files
In preparation for adding OMAP4-specific PRCM accessor/mutator
functions, split the existing OMAP2/3 PRCM code into OMAP2/3-specific
files.  Most of what was in mach-omap2/{cm,prm}.{c,h} has now been
moved into mach-omap2/{cm,prm}2xxx_3xxx.{c,h}, since it was
OMAP2xxx/3xxx-specific.

This process also requires the #includes in each of these files to be
changed to reference the new file name.  As part of doing so, add some
comments into plat-omap/sram.c and plat-omap/mcbsp.c, which use
"sideways includes", to indicate that these users of the PRM/CM includes
should not be doing so.

Thanks to Felipe Contreras <felipe.contreras@gmail.com> for comments on this
patch.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Jarkko Nikula <jhnikula@gmail.com>
Cc: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Cc: Liam Girdwood <lrg@slimlogic.co.uk>
Cc: Omar Ramirez Luna <omar.ramirez@ti.com>
Acked-by: Omar Ramirez Luna <omar.ramirez@ti.com>
Cc: Felipe Contreras <felipe.contreras@gmail.com>
Acked-by: Felipe Contreras <felipe.contreras@gmail.com>
Cc: Greg Kroah-Hartman <greg@kroah.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Reviewed-by: Kevin Hilman <khilman@deeprootsystems.com>
Tested-by: Kevin Hilman <khilman@deeprootsystems.com>
Tested-by: Rajendra Nayak <rnayak@ti.com>
Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
2010-12-21 20:01:55 -07:00
Joe Perches
859171ca92 drivers/staging: Remove unnecessary semicolons
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-16 12:06:47 -08:00
Felipe Contreras
50ad26f4c9 Revert "staging: tidspbridge: replace iommu custom for opensource implementation"
This reverts commit d95ec7e2fd.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2010-11-10 18:34:44 -06:00
Felipe Contreras
1cf3fb2d35 Revert "staging: tidspbridge - move shared memory iommu maps to tiomap3430.c"
This reverts commit 0c10e91b6c.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Omar Ramirez Luna <omar.ramirez@ti.com>
2010-11-10 18:34:44 -06:00