RE: Sharing buffers between ARM-DSP on OMAP3430 over Bridge

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks Ramesh.
I was reserving and mapping buffers "every time". This was not required.
I modified the code to reserve and map a buffer only once and use the
mapped address for future.
This modification reduced the overhead.

I have one more doubt.
Does DSP use virtual-to-physical mapping for all the addresses it
accesses (including DSP's local buffers)?
Or it uses this mapping only to access shared buffers?
Wont it be a big overhead if DSP accesses all the memories through
virtual-to-physical mapping?

Regards,
Viraj



-----Original Message-----
From: Ramesh Gupta G [mailto:x0023949@xxxxxx] 
Sent: Monday, June 09, 2008 11:03 AM
To: Viraj Karandikar; linux-omap-open-source@xxxxxxxxxxxxxx
Subject: Re: Sharing buffers between ARM-DSP on OMAP3430 over Bridge

Hi Vijay,

----- Original Message ----- 
From: "Viraj Karandikar" <viraj.karandikar@xxxxxxxxxx>
To: <linux-omap-open-source@xxxxxxxxxxxxxx>
Sent: Saturday, June 07, 2008 3:45 PM
Subject: Sharing buffers between ARM-DSP on OMAP3430 over Bridge


>Hi all,

>I am working on omap3430 using bridge. I am using Dynamically Mapped
>Memory (DMM) method for sharing buffers.

>For sending buffers to DSP I am doing calls to
>DSPProcessor_ReserveMemory() and DSPProcessor_Map(). For these calls
are
>taking around 18ms (for 3-4MB buffers) which is not acceptable for the
>application. I am not able to understand why it is taking so much time?

Which version of bridge you are using?
We have optimized the code for DSPProcessor_Map(), You can see
significant
change in the
numbers with the latest code.


>My understanding of DMM method is ->


>- Use malloc() to allocate a buffer on ARM.

>- Reserve required chunk of memory from DMM pool (using
>DSPProcessor_ReserveMemory() )

>- Translate this memory to ARM virtual address space in
>DSPProcessor_Map() function.

Actually DSPProcessor_Map() maps ARM physical addresses to DSP Virtual
addresses.

>- Send the reserved memory address to DSP.



>Is this correct? I am confused about how exactly this happens.

You are correct except above point about DSPProcessor_Map().

>Also Ihave a doubt if the reserved memory address is from DSP physical
address
>space? Or is it from ARM virtual address space for DSP physical address
>space?

Reserved Memory is from DSP Virtual Address.

>Is DMM method does copy from malloc'ed address to reserved
>address in any way?

Do you mean copying the contents? No copying is involved. Only mapping
of
addresses is performed.


>It will be helpful if anybody put some light on this.

Please let me know if you see any issues.



>Regards,

>Viraj


Thanks & Regards
Ramesh Gupta G

**********************************************************************
This email and any files transmitted with it are confidential and
intended solely for the use of the individual or entity to whom they
are addressed. If you have received this email in error please notify
helpdesk@xxxxxxxxxxx
**********************************************************************

_______________________________________________
Linux-omap-open-source mailing list
Linux-omap-open-source@xxxxxxxxxxxxxx
http://linux.omap.com/mailman/listinfo/linux-omap-open-source

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux