RE: DSPLINK: MSGQ_get() with WAIT_NONE arg causes freeze

2009-04-27 Thread Kamoolkar, Mugdha
Kelby,

We found this issue recently, and it needs a fix in sync.c file. I will send it 
separately to you.

Regards,
Mugdha
 
-Original Message-
From: davinci-linux-open-source-boun...@linux.davincidsp.com 
[mailto:davinci-linux-open-source-boun...@linux.davincidsp.com] On Behalf Of 
Kelby Rogers
Sent: Monday, April 27, 2009 9:02 AM
To: davinci-linux-open-source@linux.davincidsp.com
Subject: DSPLINK: MSGQ_get() with WAIT_NONE arg causes freeze

I am having trouble getting MSGQ_get() to work when set to non-blocking, 
i.e. with the parameter WAIT_NONE. It works fine blocking.

I am using dsplink 1.60, and testing on the DM6446 EVM.

The symptom of the problem is the Linux OS freezes, requiring a reboot.

I have isolated the problem with the following changes to the GPP 
'message' sample application which is provided with dsplink.

Index: message.c
===
--- message.c   (revision 26492)
+++ message.c   (working copy)
@@ -406,7 +406,11 @@
/*
 *  Receive the message.
 */
-status = MSGQ_get (SampleGppMsgq, WAIT_FOREVER, msg) ;
+do
+{
+   status = MSGQ_get (SampleGppMsgq, WAIT_NONE, msg) ;
+} while (status == DSP_ENOTCOMPLETE);
+
if (DSP_FAILED (status)) {
MESSAGE_1Print (MSGQ_get () failed. Status = [0x%x]\n,
status) ;


If anyone has some pointers to what I am doing wrong or where to look, 
please let me know.

Regards,
Kelby



===
This email, including any attachments, is only for the intended
addressee.  It is subject to copyright, is confidential and may be
the subject of legal or other privilege, none of which is waived or
lost by reason of this transmission.
If the receiver is not the intended addressee, please accept our
apologies, notify us by return, delete all copies and perform no
other act on the email.
Unfortunately, we cannot warrant that the email has not been
 altered or corrupted during transmission.
===


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


RE: when port a software , bus error

2009-04-27 Thread Heroor, Siddharth
Hi,

On Arm, you can access only word aligned data. To access a 32 bit value, the 
address needs to be 32 bit aligned etc.. If the data is not aligned, then a bus 
error is thrown. 

I'm guessing that its because of the char m, data[] will not be aligned in 
_test_c.

Thanks and Regards,
Sid
+91-80-25099294
-Original Message-
From: zhenfeng ren [mailto:1985re...@gmail.com] 
Sent: Saturday, April 25, 2009 8:44 AM
To: davinci-linux-open-source@linux.davincidsp.com
Subject: when port a software , bus error

hi, everyone:

  Just like the code as below:

  1 #include algorithm
  2 #include stdio.h
  3
  4 #pragma pack(push, 1)
  5 typedef struct _test_c
  6 {
  7 char m;
  8 int data[10];
  9 }test_c;
 10 #pragma pack(pop)
 11
 12 int main()
 13 {
 14 printf( sizeof test_c is %d \n, sizeof(test_c));
 15 test_c test;
 16 for(int i=0; i10; i++)
 17 test.data[i] = 9-i;
 18 //int data[10]={9, 8, 7, 6, 5, 4, 2, 3, 1 , 0};
 19 std::sort(test.data, test.data+10);
 20
 21 return 1;
 22 }

  This code can work on X86, but cause bus error runing on Davinci(My
board is DM6446, GCC 3.4) .
  I know the problem is:
   std::sort(test.data, test.data+10);test.data is not 4-Bytes aligned.
  The software  I want to port uses  structs liking test_c a lot.

  Could anyone  give me  some advice ?


-- 
Thanks,
Zhenfeng Ren


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: Changing Machine ID

2009-04-27 Thread David Brownell
On Sunday 26 April 2009, Manjunatha AM wrote:
 
 Hi
 
 I downloaded latest OS (linux-davinci-2.6-historic )from source.mvsta.com
 and compiled it for Davinci DM6446 EVM with low level debug option selected.

You have a pretty old version of U-Boot there ...


 When I boot the board it gives below error;
 
 *
 Starting kernel ...
 
 Uncompressing
 Linux...
 . done, booting the kernel.
 
 Error: unrecognized/unsupported machine ID (r1 = 0x0356).
 
 Available machine support:
 
 ID (hex)NAME
 0385DaVinci DM644x EVM
 
 Please check your kernel config and/or bootloader.
 
 **
 I dont have latest Bootloader source

http://www.denx.de/wiki/U-Boot ... 2009.03 should work.
Though if you're using 1.1 silicion, I'd be paranoid
and stick with that bootloader.


 and hence I need to change the kernel 
 source to boot with same machine ID(passed by present bootloader..)which
 file I need to change??

---
 arch/arm/tools/mach-types |5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

--- a/arch/arm/tools/mach-types
+++ b/arch/arm/tools/mach-types
@@ -862,7 +862,7 @@ magpie  MACH_MAGPIE MAGPIE  
850
 mx21adsMACH_MX21ADSMX21ADS 
851
 mb87m3400  MACH_MB87M3400  MB87M3400   852
 mguard_delta   MACH_MGUARD_DELTA   MGUARD_DELTA853
-davinci_dvdp   MACH_DAVINCI_DVDP   DAVINCI_DVDP854
+#davinci_dvdp  MACH_DAVINCI_DVDP   DAVINCI_DVDP854
 htcuniversal   MACH_HTCUNIVERSAL   HTCUNIVERSAL855
 tpad   MACH_TPAD   TPAD856
 roverp3MACH_ROVERP3ROVERP3 
857
@@ -908,7 +908,8 @@ nadia2vbMACH_NADIA2VB   NADIA2VB
897
 r1000  MACH_R1000  R1000   898
 hw90250MACH_HW90250HW90250 
899
 omap_2430sdp   MACH_OMAP_2430SDP   OMAP_2430SDP900
-davinci_evmMACH_DAVINCI_EVMDAVINCI_EVM 901
+#davinci_evm   MACH_DAVINCI_EVMDAVINCI_EVM 901
+davinci_evmMACH_DAVINCI_EVMDAVINCI_EVM 854
 omap_tornado   MACH_OMAP_TORNADO   OMAP_TORNADO902
 olocreek   MACH_OLOCREEK   OLOCREEK903
 palmz72MACH_PALMZ72PALMZ72 
904


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


RE: when port a software , bus error

2009-04-27 Thread Balagopalakrishnan, Anand
Zhenfeng,

As Sid pointed out, the bus error is due to access of int32 data at non word 
aligned address. 

You have turned on structure packing with the #pragma directive. If this was 
not done, the compiler would have padded 3 bytes between the char 'm' and int 
'data'. In that case, the int 'data' would have been word aligned.

You can use #pragma pack(push, 4) to resolve the problem.

Best Regards,
Anand Balagopalakrishnan
Texas Instruments
India

-Original Message-
From: davinci-linux-open-source-bounces+anandb=ti@linux.davincidsp.com 
[mailto:davinci-linux-open-source-bounces+anandb=ti@linux.davincidsp.com] 
On Behalf Of Heroor, Siddharth
Sent: Monday, April 27, 2009 11:30 AM
To: zhenfeng ren; davinci-linux-open-source@linux.davincidsp.com
Subject: RE: when port a software , bus error

Hi,

On Arm, you can access only word aligned data. To access a 32 bit value, the 
address needs to be 32 bit aligned etc.. If the data is not aligned, then a bus 
error is thrown. 

I'm guessing that its because of the char m, data[] will not be aligned in 
_test_c.

Thanks and Regards,
Sid
+91-80-25099294
-Original Message-
From: zhenfeng ren [mailto:1985re...@gmail.com] 
Sent: Saturday, April 25, 2009 8:44 AM
To: davinci-linux-open-source@linux.davincidsp.com
Subject: when port a software , bus error

hi, everyone:

  Just like the code as below:

  1 #include algorithm
  2 #include stdio.h
  3
  4 #pragma pack(push, 1)
  5 typedef struct _test_c
  6 {
  7 char m;
  8 int data[10];
  9 }test_c;
 10 #pragma pack(pop)
 11
 12 int main()
 13 {
 14 printf( sizeof test_c is %d \n, sizeof(test_c));
 15 test_c test;
 16 for(int i=0; i10; i++)
 17 test.data[i] = 9-i;
 18 //int data[10]={9, 8, 7, 6, 5, 4, 2, 3, 1 , 0};
 19 std::sort(test.data, test.data+10);
 20
 21 return 1;
 22 }

  This code can work on X86, but cause bus error runing on Davinci(My
board is DM6446, GCC 3.4) .
  I know the problem is:
   std::sort(test.data, test.data+10);test.data is not 4-Bytes aligned.
  The software  I want to port uses  structs liking test_c a lot.

  Could anyone  give me  some advice ?


-- 
Thanks,
Zhenfeng Ren


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: Re: Changing Machine ID

2009-04-27 Thread Jaya krishnan
Title: Samsung Enterprise Portal mySingle
Manjunatha,
Both the boot loader and the Kernel should have the same machine 
ID. Otherwise  the kernel won't boot. 
--Jayakrishnan

--- Original Message ---Sender : David Brownelldavi...@pacbell.netDate   : Apr 27, 2009 15:10 (GMT+09:00)Title  : Re: Changing Machine IDOnSunday26April2009,ManjunathaAMwrote:

Hi

IdownloadedlatestOS(linux-davinci-2.6-historic)fromsource.mvsta.com
andcompileditforDavinciDM6446EVMwithlowleveldebugoptionselected.

YouhaveaprettyoldversionofU-Bootthere...


WhenIboottheboarditgivesbelowerror;

*
Startingkernel...

Uncompressing
Linux...
.done,bootingthekernel.

Error:unrecognized/unsupportedmachineID(r1=0x0356).

Availablemachinesupport:

ID(hex)NAME
0385DaVinciDM644xEVM

Pleasecheckyourkernelconfigand/orbootloader.

**
IdonthavelatestBootloadersource

http://www.denx.de/wiki/U-Boot...2009.03shouldwork.
Thoughifyoureusing1.1silicion,Idbeparanoid
andstickwiththatbootloader.


andhenceIneedtochangethekernel
sourcetobootwithsamemachineID(passedbypresentbootloader..)which
fileIneedtochange??

---
arch/arm/tools/mach-types|5+++--
1filechanged,3insertions(+),2deletions(-)

---a/arch/arm/tools/mach-types
+++b/arch/arm/tools/mach-types
@@-862,7+862,7@@magpieMACH_MAGPIEMAGPIE850
mx21adsMACH_MX21ADSMX21ADS851
mb87m3400MACH_MB87M3400MB87M3400852
mguard_deltaMACH_MGUARD_DELTAMGUARD_DELTA853
-davinci_dvdpMACH_DAVINCI_DVDPDAVINCI_DVDP854
+davinci_dvdpMACH_DAVINCI_DVDPDAVINCI_DVDP854
htcuniversalMACH_HTCUNIVERSALHTCUNIVERSAL855
tpadMACH_TPADTPAD856
roverp3MACH_ROVERP3ROVERP3857
@@-908,7+908,8@@nadia2vbMACH_NADIA2VBNADIA2VB897
r1000MACH_R1000R1000898
hw90250MACH_HW90250HW90250899
omap_2430sdpMACH_OMAP_2430SDPOMAP_2430SDP900
-davinci_evmMACH_DAVINCI_EVMDAVINCI_EVM901
+davinci_evmMACH_DAVINCI_EVMDAVINCI_EVM901
+davinci_evmMACH_DAVINCI_EVMDAVINCI_EVM854
omap_tornadoMACH_OMAP_TORNADOOMAP_TORNADO902
olocreekMACH_OLOCREEKOLOCREEK903
palmz72MACH_PALMZ72PALMZ72904


___
Davinci-linux-open-sourcemailinglist
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


About the NFS file system

2009-04-27 Thread shaofeng zhang
Hi John,

My board use the kernel Linux version 2.6.18_pro500-davinci_evm(MVL
Pro 5.0), but it cannot mount the NFS file system, that is the ERROR
message:

*IP-Config: Complete:
  device=eth0, addr=192.168.0.125, mask=255.255.255.0, gw=192.168.0.1,
 host=XJTUIPCEVM, domain=, nis-domain=(none),
 bootserver=192.168.0.238, rootserver=192.168.0.238, rootpath=
Looking up port of RPC 13/2 on 192.168.0.238
portmap: server 192.168.0.238 not responding, timed out
Root-NFS: Unable to get nfsd port number from server, using default
Looking up port of RPC 15/1 on 192.168.0.238
portmap: server 192.168.0.238 not responding, timed out
Root-NFS: Unable to get mountd port number from server, using default
mount: server 192.168.0.238 not responding, timed out
Root-NFS: Server returned error -5 while mounting /home/workdir/filesys
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device nfs or unknown-block(2,0)
Please append a correct root= boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(2,0)*

and I am sure that the NFS server computer is working well.
 Could you tell me some info about that message? Thank you ~~

Zhang
___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


McBSP DMA Event [DM355]

2009-04-27 Thread Azam Ansari
Hi,

I have enabled McBSP0 in the board-dm355-evm.c file.
I have configure McBSP0 for audio but it is not working( Currently I am
using McBSP0 for only recording purpose...).

I found that McBSP1 EDMA event is enable in mcbsp.c file by following code:
if (cpu_is_davinci_dm355()) {
__REG(EDMA_EVTMUX) = ~(0x3);/* enable EDMA event for MCBSP1 */

How do I enable EDMA event for McBSP0?

Below is configuration done for McBSP0 that I am using...

spcr2= FREE | XINTM(3),
spcr1= RINTM(3),
rcr2   = RWDLEN2(DAVINCI_MCBSP_WORD_16) | RDATDLY(1),
rcr1   = RFRLEN1(1) | RWDLEN1(DAVINCI_MCBSP_WORD_16),
xcr2  = XWDLEN2(DAVINCI_MCBSP_WORD_16) | XDATDLY(1) | XFIG,
xcr1  = XFRLEN1(1) | XWDLEN1(DAVINCI_MCBSP_WORD_16),
srgr1 = FWID(DEFAULT_BITPERSAMPLE - 1),
srgr2 = FSGM | FPER(DEFAULT_BITPERSAMPLE * 2 - 1),
/* configure McBSP to be the I2S slave */
pcr0  = CLKXP | CLKRP,


I have also tried using CLKX PIN as CLKS PIN for recoding. But it doesn't
work...


I have went through all the McBSP related email chain to get McBSP0 work but
it hasn't...
Any idea guys how to make McBSP0 work for PCM audio?

Thanks.
___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: Changing Machine ID

2009-04-27 Thread Steve Chen
On Mon, 2009-04-27 at 05:59 -0500, Steve Chen wrote:
 On Mon, 2009-04-27 at 11:06 +0530, Manjunatha AM wrote:
  Hi
  
  I downloaded latest OS (linux-davinci-2.6-historic )from source.mvsta.com
 
 On a separate note, you probably don't want to use linux-davinci-2.6

I mean linux-davinci-2.6-historic, sorry.


 since it is obsolete.  Instead take a look at the git repository from
 kernel.org at
 
 http://git.kernel.org/?p=linux/kernel/git/khilman/linux-davinci.git;a=summary
 
 Regards,
 
 Steve
 
 
 
 
 ___
 Davinci-linux-open-source mailing list
 Davinci-linux-open-source@linux.davincidsp.com
 http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: Changing Machine ID

2009-04-27 Thread Steve Chen
On Mon, 2009-04-27 at 11:06 +0530, Manjunatha AM wrote:
 Hi
 
 I downloaded latest OS (linux-davinci-2.6-historic )from source.mvsta.com

On a separate note, you probably don't want to use linux-davinci-2.6
since it is obsolete.  Instead take a look at the git repository from
kernel.org at

http://git.kernel.org/?p=linux/kernel/git/khilman/linux-davinci.git;a=summary

Regards,

Steve




___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: McBSP DMA Event [DM355]

2009-04-27 Thread Steve Chen
On Mon, 2009-04-27 at 14:20 +0530, Azam Ansari wrote:
 Hi,
 
 I have enabled McBSP0 in the board-dm355-evm.c file.
 I have configure McBSP0 for audio but it is not working( Currently I
 am using McBSP0 for only recording purpose...).

May want to check the pinmux settings.. just a thought. 

Regards,

Steve


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: McBSP DMA Event [DM355]

2009-04-27 Thread Azam Ansari
Hi Steve,

When I check /proc/pinmux it shows that Pinmux is configured for McBSP 29:34
but when I see the schematics it shows that McBSP pins are on 25:30. Can you
please tell me how do i enable event mux for McBSP0 pin 25:30?



On Mon, Apr 27, 2009 at 5:18 PM, Steve Chen sc...@mvista.com wrote:

 On Mon, 2009-04-27 at 14:20 +0530, Azam Ansari wrote:
  Hi,
 
  I have enabled McBSP0 in the board-dm355-evm.c file.
  I have configure McBSP0 for audio but it is not working( Currently I
  am using McBSP0 for only recording purpose...).

 May want to check the pinmux settings.. just a thought.

 Regards,

 Steve


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: McBSP DMA Event [DM355]

2009-04-27 Thread Steve Chen
On Mon, 2009-04-27 at 18:22 +0530, Azam Ansari wrote:
 Hi Steve,
 
 When I check /proc/pinmux it shows that Pinmux is configured for McBSP
 29:34 but when I see the schematics it shows that McBSP pins are on
 25:30. Can you please tell me how do i enable event mux for McBSP0 pin
 25:30?
 

There is a pinmux layer that is used to manage pinmux settings.  The
definitions are in In file, arch/arm/mach-davinci/mux_cfg.c.  Please
take a look at davinci_dm355_pins.  With MV kernel pinmux is setup
automatically when clk_enable is called.  You can see the actual call to
setup pinmux in arch/arm/mach-davinci/board-dm355-evm.c function
dm355_setup_pinmux.

It seems the code is setting pinmux register 3 bits 0-5 as 1's
(following code segment comes from davinci_dm355_pins in
arch/arm/mach-davinci/mux_cfg.c.
...
MUX_CFG(MCBSP0_BDX,3,   0, 1,   1, 0)
MUX_CFG(MCBSP0_X,  3,   1, 1,   1, 0)
MUX_CFG(MCBSP0_BFSX,   3,   2, 1,   1, 0)
MUX_CFG(MCBSP0_BDR,3,   3, 1,   1, 0)
MUX_CFG(MCBSP0_R,  3,   4, 1,   1, 0)
MUX_CFG(MCBSP0_BFSR,   3,   5, 1,   1, 0)
...

It is not immediately obvious looking at the datasheet that 1 is the
correct setting.  perhaps try setting to 0's and see if it works for
you.

...
MUX_CFG(MCBSP0_BDX,3,   0, 1,   0, 0)
MUX_CFG(MCBSP0_X,  3,   1, 1,   0, 0)
MUX_CFG(MCBSP0_BFSX,   3,   2, 1,   0, 0)
MUX_CFG(MCBSP0_BDR,3,   3, 1,   0, 0)
MUX_CFG(MCBSP0_R,  3,   4, 1,   0, 0)
MUX_CFG(MCBSP0_BFSR,   3,   5, 1,   0, 0)
...

If you have a scope to look at the clocks and data, it would be helpful
in debugging as well.

Regards,

Steve

 
 
 On Mon, Apr 27, 2009 at 5:18 PM, Steve Chen sc...@mvista.com wrote:
 On Mon, 2009-04-27 at 14:20 +0530, Azam Ansari wrote:
  Hi,
 
  I have enabled McBSP0 in the board-dm355-evm.c file.
  I have configure McBSP0 for audio but it is not
 working( Currently I
  am using McBSP0 for only recording purpose...).
 
 
 May want to check the pinmux settings.. just a thought.
 
 Regards,
 
 Steve
 
 


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Problem about DSP server config of DM6446

2009-04-27 Thread chensu.main
Hi all ,

In my application , I have to create one algorithm many times . 

Fistly I config DSP server's CFG file and set stack size to 16384 in 
Server.algs {} , but app can only create 7 instances of my algorithm . Then I 
fix stack to  4096 and I can create more .

My question is How many algorithm objects can I create . Which document 
describe it indetail ?


2009-04-27 



chensu.main 
___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


DaVinci pull request

2009-04-27 Thread Kevin Hilman
Minor update since v3 of posted series:
- dropped the clk_put() of clocks that are always enabled.

The following changes since commit 091069740304c979f957ceacec39c461d0192158:
  Linus Torvalds (1):
Linux 2.6.30-rc3

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci.git 
for-rmk

David Brownell (2):
  davinci: gpio bugfixes
  davinci: DM644x: NAND: update partitioning

Kevin Hilman (10):
  davinci: add default Kconfig, add HAVE_IDE
  davinci: add runtime CPU detection support
  davinci: major rework of clock, PLL, PSC infrastructure
  davinci: add arch_ioremap() which uses existing static mappings
  davinci: timers: use clk_get_rate()
  davinci: add EDMA driver
  davinci: serial: generalize for more SoCs
  davinci: update pin-multiplexing support
  davinci: DM644x: rename board file
  davinci: update DM644x support in preparation for more SoCs

Mark A. Greer (1):
  davinci: PSC: Clear bits in MDCTL reg before setting new bits

Sudhakar Rajashekhara (1):
  davinci: DM646x: add interrupt number and priorities

s-paul...@ti.com (1):
  davinci: DM355 IRQ Definitions

 arch/arm/Kconfig   |2 +
 arch/arm/configs/davinci_all_defconfig | 1784 
 arch/arm/mach-davinci/Kconfig  |   47 +-
 arch/arm/mach-davinci/Makefile |9 +-
 arch/arm/mach-davinci/board-dm644x-evm.c   |  696 
 arch/arm/mach-davinci/board-evm.c  |  440 -
 arch/arm/mach-davinci/clock.c  |  385 +++--
 arch/arm/mach-davinci/clock.h  |   87 +-
 arch/arm/mach-davinci/devices.c|7 +
 arch/arm/mach-davinci/dm644x.c |  461 +
 arch/arm/mach-davinci/dma.c| 1135 +
 arch/arm/mach-davinci/gpio.c   |   82 +-
 arch/arm/mach-davinci/id.c |   35 +-
 .../mach-davinci/include/mach/board-dm6446evm.h|   20 +
 arch/arm/mach-davinci/include/mach/clkdev.h|   13 +
 arch/arm/mach-davinci/include/mach/clock.h |1 -
 arch/arm/mach-davinci/include/mach/common.h|6 +
 arch/arm/mach-davinci/include/mach/cputype.h   |   49 +
 arch/arm/mach-davinci/include/mach/dm644x.h|   37 +
 arch/arm/mach-davinci/include/mach/edma.h  |  228 +++
 arch/arm/mach-davinci/include/mach/gpio.h  |   27 +-
 arch/arm/mach-davinci/include/mach/hardware.h  |   51 +-
 arch/arm/mach-davinci/include/mach/io.h|   20 +-
 arch/arm/mach-davinci/include/mach/irqs.h  |  103 ++-
 arch/arm/mach-davinci/include/mach/mux.h   |  220 ++-
 arch/arm/mach-davinci/include/mach/psc.h   |   53 +-
 arch/arm/mach-davinci/include/mach/serial.h|   21 +-
 arch/arm/mach-davinci/io.c |   23 +-
 arch/arm/mach-davinci/irq.c|  156 ++-
 arch/arm/mach-davinci/mux.c|  100 +-
 arch/arm/mach-davinci/mux.h|   51 +
 arch/arm/mach-davinci/psc.c|   98 +-
 arch/arm/mach-davinci/serial.c |   95 +-
 arch/arm/mach-davinci/time.c   |  103 +-
 arch/arm/mach-davinci/usb.c|2 +
 35 files changed, 5730 insertions(+), 917 deletions(-)
 create mode 100644 arch/arm/configs/davinci_all_defconfig
 create mode 100644 arch/arm/mach-davinci/board-dm644x-evm.c
 delete mode 100644 arch/arm/mach-davinci/board-evm.c
 create mode 100644 arch/arm/mach-davinci/dm644x.c
 create mode 100644 arch/arm/mach-davinci/dma.c
 create mode 100644 arch/arm/mach-davinci/include/mach/board-dm6446evm.h
 create mode 100644 arch/arm/mach-davinci/include/mach/clkdev.h
 create mode 100644 arch/arm/mach-davinci/include/mach/cputype.h
 create mode 100644 arch/arm/mach-davinci/include/mach/dm644x.h
 create mode 100644 arch/arm/mach-davinci/include/mach/edma.h
 create mode 100644 arch/arm/mach-davinci/mux.h

___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: [PATCH 3/3 v4] ARM: da830 - Add support for DA830/OMAP-L137 EVM

2009-04-27 Thread Mark A. Greer
On Fri, Apr 24, 2009 at 07:35:03PM -0700, Mark A. Greer wrote:
 From: Mark A. Greer mgr...@mvista.com

 diff --git a/arch/arm/mach-davinci/include/mach/debug-macro.S 
 b/arch/arm/mach-davinci/include/mach/debug-macro.S
 index de3fc21..1a4a1e3 100644
 --- a/arch/arm/mach-davinci/include/mach/debug-macro.S
 +++ b/arch/arm/mach-davinci/include/mach/debug-macro.S
 @@ -24,7 +24,14 @@
   tst \rx, #1 @ MMU enabled?
   moveq   \rx, #0x0100@ physical base address
   movne   \rx, #0xfe00@ virtual base
 +#if defined(CONFIG_ARCH_DAVINCI_DA830_EVM)  
 defined(CONFIG_ARCH_DAVINCI_DMx)
  

This should be 'CONFIG_MACH_DAVINCI_DA830_EVM'.

Thanks to Sergei for finding that.

Mark
--

___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: [PATCH 2/3 v4] ARM: da830 - Add base DA830/OMAP-L137 SoC support

2009-04-27 Thread Mark A. Greer
On Fri, Apr 24, 2009 at 07:34:07PM -0700, Mark A. Greer wrote:

 diff --git a/arch/arm/mach-davinci/devices-da830.c 
 b/arch/arm/mach-davinci/devices-da830.c

 +int da830_register_spi(int instance, struct davinci_i2c_platform_data *pdata)
   ^^^

This is clearly broken.

Mark
--

___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: [U-Boot] U-Boot and CONFIG_SYS_DAVINCI_BROKEN_ECC

2009-04-27 Thread David Brownell
On Monday 27 April 2009, Scott Wood wrote:
 It is for compatibility with a widely-deployed legacy ECC layout -- more
 details can be found in the list archives.

See my original query, which IMO disproves that assertion.

What this option enables differs in two ways from what the
MontaVista code does.  (Speaking here of the 1-bit HW ECC.
The 4-bit support is another mess, which would be made far
worse by needing to carry the BROKEN_ECC mode.)

One could define a MONTAVISTA_COMPAT option, but it would
not AFAICT be this BROKEN_ECC since it would only differ
from the current Linux code in *one* of those three ways.
(Which has in turn also been claimed to be broken, by
mis-reporting some multi-bit errors as single-bit ones.)

Which is why I'm wondering what that original U-Boot code
for HW ECC was trying to be compatible with, since it
clearly wasn't MontaVista Linux ... or even the U-Boot
versions I've seen be distributed with it.

- Dave

___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: [PATCH 3/3 v4] ARM: da830 - Add support for DA830/OMAP-L137 EVM

2009-04-27 Thread David Brownell
On Monday 27 April 2009, Mark A. Greer wrote:
  --- a/arch/arm/mach-davinci/include/mach/debug-macro.S
  +++ b/arch/arm/mach-davinci/include/mach/debug-macro.S
  @@ -24,7 +24,14 @@
    tst \rx, #1 @ MMU enabled?
    moveq   \rx, #0x0100@ physical base address
    movne   \rx, #0xfe00@ virtual base
  +#if defined(CONFIG_ARCH_DAVINCI_DA830_EVM)  
  defined(CONFIG_ARCH_DAVINCI_DMx)
       
 
 This should be 'CONFIG_MACH_DAVINCI_DA830_EVM'.

You man it wouldn't be applicable to DA830 boards other
than that EVM??

Same comment in a few other places.  From what you've said,
these are chip-specific issues, not board-specific ones...


___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: [U-Boot] U-Boot and CONFIG_SYS_DAVINCI_BROKEN_ECC

2009-04-27 Thread David Brownell
On Monday 27 April 2009, Scott Wood wrote:
 David Brownell wrote:
  On Monday 27 April 2009, Scott Wood wrote:
  It is for compatibility with a widely-deployed legacy ECC layout -- more
  details can be found in the list archives.
  
  See my original query, which IMO disproves that assertion.
 
 The entire mess was presented as being for compatibility in these threads:

The *non*BROKEN stuff is certainly compatible with the NAND
code in the DaVinci kernel GIT tree, which is now in mainline.

The BROKEN stuff is somewhat compatible with the MV kernels,
iff restricted to small-page support.  But ... the U-Boot with
which those kernels were shipped doesn't use 1-bit HW ECC, so
that may not be much of a concern.

(The original mainline u-boot large page support was very
broken, and wasn't MV-compatible.  So arguably there were two
separate compatibility issues:  MV, and large-page bugginess.)


 http://lists.denx.de/pipermail/u-boot/2008-June/036055.html
 http://lists.denx.de/pipermail/u-boot/2008-August/039679.html
 
 If some portions of it aren't actually needed for compatibility, then we 
 can remove them.
 
 Or we can remove the entire thing, if nobody cares anymore -- if anyone 
 out there does care and is using this, please speak up now.

I'm hoping for the nobody cares any more option...

Anyone who *does* can always use their current version
of U-Boot ... or patch it back in.  If there have been
complaints due to lack of compatibility between current
GIT kernels and the MV releases, I've not heard them.


  What this option enables differs in two ways from what the
  MontaVista code does.  (Speaking here of the 1-bit HW ECC.
  The 4-bit support is another mess, which would be made far
  worse by needing to carry the BROKEN_ECC mode.)
 
 I see no reason why new features would have to be supported on both 
 sides of the ifdef.

I was referring to a textual mess.  One clean way to add
a broken ECC mode would be as a completely different set
of functions, instead of a pile of #ifdefs.

And 4-bit will be troublesome for other reasons.


  Which is why I'm wondering what that original U-Boot code
  for HW ECC was trying to be compatible with, since it
  clearly wasn't MontaVista Linux ... or even the U-Boot
  versions I've seen be distributed with it.
 
 MV 2.6.10 was the claim.

Right.  I looked at TI's 1.20 (MV 4.0/2.6.10) and 2.0 beta
(MV 5.0/2.6.18) code, and their sibling U-Boot versions.

If that compatibilty is actually needed, the simplest way
to get it might be to define functions to mangle the the
ECC words (standard ~PQRstu --- MV PsQRtu) and use the
current *correction* code; the OOB bit pattern changes but
not the algorithm.  I think I'll add a comment about that.

- Dave


 
 -Scott
 
 



___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: [PATCH 3/3 v4] ARM: da830 - Add support for DA830/OMAP-L137 EVM

2009-04-27 Thread Mark A. Greer
On Mon, Apr 27, 2009 at 12:49:54PM -0700, David Brownell wrote:
 On Monday 27 April 2009, Mark A. Greer wrote:
   --- a/arch/arm/mach-davinci/include/mach/debug-macro.S
   +++ b/arch/arm/mach-davinci/include/mach/debug-macro.S
   @@ -24,7 +24,14 @@
     tst \rx, #1 @ MMU enabled?
     moveq   \rx, #0x0100@ physical base address
     movne   \rx, #0xfe00@ virtual base
   +#if defined(CONFIG_ARCH_DAVINCI_DA830_EVM)  
   defined(CONFIG_ARCH_DAVINCI_DMx)
        
  
  This should be 'CONFIG_MACH_DAVINCI_DA830_EVM'.
 
 You man it wouldn't be applicable to DA830 boards other
 than that EVM??

Maybe, maybe not.

 Same comment in a few other places.  From what you've said,
 these are chip-specific issues, not board-specific ones...

Well, there are lots of pinmux conflicts on the da830.  For devices
that aren't used all of the time, it makes sense to allow the driver
and the resources it requires to come and go on demand--maybe even the
console if there is a graphic console.

Either way, what uart is used for the serial console is determined by
the board not the chip.

Mark
--

___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


RE: Problem about DSP server config of DM6446

2009-04-27 Thread Tivy, Robert
I'm not sure about a document, but the number of algorithm objects that you can 
create depends on the size of the memory block from which the stacks are 
allocated.  As you've seen, cutting the stack size down allows you to create 
more.  You might be able to find a formula, but the real answer is as many as 
you have memory for.

- Rob


From: davinci-linux-open-source-boun...@linux.davincidsp.com 
[mailto:davinci-linux-open-source-boun...@linux.davincidsp.com] On Behalf Of 
chensu.main
Sent: Monday, April 27, 2009 8:03 AM
To: davinci-linux-open-source
Subject: Problem about DSP server config of DM6446

Hi all ,

In my application , I have to create one algorithm many times .

Fistly I config DSP server's CFG file and set stack size to 16384 in 
Server.algs {} , but app can only create 7 instances of my algorithm . Then I 
fix stack to  4096 and I can create more .

My question is How many algorithm objects can I create . Which document 
describe it indetail ?


2009-04-27

chensu.main
___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: when port a software , bus error

2009-04-27 Thread zhenfeng ren
hi,
   Thanks for your answers.
   Now, I have changed the member variable in struct to make sure that
the alignment is correct.


-- 
Thanks,
Zhenfeng Ren

___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: THS8200 Module and DM6446EVM Initial Setup

2009-04-27 Thread Carl Renaud
Hmmm...  Just to let you know that the EVMDM6446 and the THS8200
daughter card CAN work together to output VESA compliant signals (in
VESA slave mode).  I modified the THS8200 drivers (CDC949 pixel clock,
VPBE and THS8200 registers) to support RGB output of 1024x768 at 60
fps, with refresh rate of 65 Mhz and it worked fine.  I can hook up
the daugther card to any LCD monitor...

I had answered another reader a few months ago who wanted to interface
the THS8200 from a DM355.  I had forgotten to post the reply to the
group.  Anyway, here goes, I hope this helps:

From: Carl Renaud
Sent: 2008-12-16  22:12:02
To: zuowenping
Cc:
Subject: Re: How can i use VGA(480p) format output to ths8200 in dm355 platform

I just went through the process of supporting 1024x768 VGA on the
THS8200 evm (with a dm6446, but should be the same on dm355).
1) You will need to modify the files:
ths8200_encoder.h
ths8200_encoder.c  (for THS8200, CDCE949 and THS7303 reprogramming)
davinci_platform.c  (for VPBE VENC reprogramming)
vid_encoder_types.h
These files are located under:
workdir/lsp/ti-davinci/include/media/davinci
workdir/lsp/ti-davinci/drivers/media/video/davinci
2) Search for COMPONENT1 and VID_ENC_STD_720P_60.  Anywhere these are
used, you will need to add something for 640x480 support.
3) You will need to set timings for front and back porch, sync length
and data valid (I did not knew about these 2 weeks ago).  To get the
right timings, check the site
www.tkk.fi/Misc/Electronics/faq/vga2rgb/calc.html.  Note that the
timings depend on the pixel rate clock (and thus the refresh rate).
For example, 640x480 at 60 Hz requires a pixel clock of 25.17 MHz,
horizontal: front porch 16 pixels, sync 96 pixels, back 48
pixels...etc.  These values will need to be programmed in the VPBE
VENC AND the THS8200.
4) First you need to program the pixel clock(vpbe_clk) which will be
fed to the DM355 VBPE VENC.  For example, in 640x480 at 60 Hz you need
25.17 MHz.  This is done by the CDCE949 (on the THS8200 daughter
card).  You need to read document SCAS844A.pdf (on TI site).  You will
also need the TI clock pro application (on the CDCE949 part web page)
to get the register settings.  Note that the clock pro application is
not reliable.  I needed a 65MHz clock and the register config it gave
me generated a jittery 65MHz clock.  I did the N and M computation by
hand and then let the TI clock pro software populate the registers.
You will need to experiment...
5) I do not know about the DM355 evm, but on the DM6446, we needed to
add a wire on the DM6446 evm to route the vpbe_clk (check the
schematics).
6) You will need to read and understand all registers of the:
VPBE VENC.
THS8200
Get the documents and a lot of coffee ;-)
7) I did not make any changes to the THS7303 configuration
8) VERY IMPORTANT:
You will want to configure the THS8200 using:
  VESA slave
  input 16 bits RGB 4:4:4
You will need to configure the VPBE VENC using:
  output Parallel RGB 888
However note that not all Parallel RGB 888 lines are routed to the
THS8200 daughter card.  It ends up being RGB565, and thus,  the color
resolution is reduced (But it is more than OK for testing.  I've been
playing videos and it is more than fair).
9)  Expect a few days of reading/testing to get it to work.  I suggest
you write a user level application to play with the
registers/configuration.  Once you get it right, port these settings
to the driver...

Good luck

___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


Re: is there any LCD Kits for DM355 DVEVM board

2009-04-27 Thread Carl Renaud
You can use the THS8200 daughter card (sold by Spectrum), but will
need to modify the drivers to support RGB output to an LCD monitor
(not a trivial task).

On Fri, Apr 24, 2009 at 10:02 PM, weixin Li weixinl...@yahoo.com wrote:
 Hello

 I have a DM355 EVM board and want to connect an LCD. Is there any available
 LCD module can be used? Is there daughter board available with the mating
 connector to connect directly to the EVM board?

 Thanks,
 Wayne
 ___
 Davinci-linux-open-source mailing list
 Davinci-linux-open-source@linux.davincidsp.com
 http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source



___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


RE: Changing Machine ID

2009-04-27 Thread Manjunatha AM
Hi David,

Thanks for your reply, I have changed /arch/arm/tools/mach-types as per
suggestion and kernel started booting...I have some problem in mounting
filesystem..

Thanks

Manjuntah.AM

-Original Message-
From: David Brownell [mailto:davi...@pacbell.net]
Sent: Monday, April 27, 2009 11:41 AM
To: davinci-linux-open-source@linux.davincidsp.com;
manjunat...@tataelxsi.co.in
Subject: Re: Changing Machine ID


On Sunday 26 April 2009, Manjunatha AM wrote:

 Hi

 I downloaded latest OS (linux-davinci-2.6-historic )from source.mvsta.com
 and compiled it for Davinci DM6446 EVM with low level debug option
selected.

You have a pretty old version of U-Boot there ...


 When I boot the board it gives below error;

 *
 Starting kernel ...

 Uncompressing

Linux...
 . done, booting the kernel.

 Error: unrecognized/unsupported machine ID (r1 = 0x0356).

 Available machine support:

 ID (hex)NAME
 0385DaVinci DM644x EVM

 Please check your kernel config and/or bootloader.

 **
 I dont have latest Bootloader source

http://www.denx.de/wiki/U-Boot ... 2009.03 should work.
Though if you're using 1.1 silicion, I'd be paranoid
and stick with that bootloader.


 and hence I need to change the kernel
 source to boot with same machine ID(passed by present bootloader..)which
 file I need to change??

---
 arch/arm/tools/mach-types |5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

--- a/arch/arm/tools/mach-types
+++ b/arch/arm/tools/mach-types
@@ -862,7 +862,7 @@ magpie  MACH_MAGPIE MAGPIE  
850
 mx21adsMACH_MX21ADSMX21ADS 
851
 mb87m3400  MACH_MB87M3400  MB87M3400   852
 mguard_delta   MACH_MGUARD_DELTA   MGUARD_DELTA853
-davinci_dvdp   MACH_DAVINCI_DVDP   DAVINCI_DVDP854
+#davinci_dvdp  MACH_DAVINCI_DVDP   DAVINCI_DVDP854
 htcuniversal   MACH_HTCUNIVERSAL   HTCUNIVERSAL855
 tpad   MACH_TPAD   TPAD856
 roverp3MACH_ROVERP3ROVERP3 
857
@@ -908,7 +908,8 @@ nadia2vbMACH_NADIA2VB   NADIA2VB
897
 r1000  MACH_R1000  R1000   898
 hw90250MACH_HW90250HW90250 
899
 omap_2430sdp   MACH_OMAP_2430SDP   OMAP_2430SDP900
-davinci_evmMACH_DAVINCI_EVMDAVINCI_EVM 901
+#davinci_evm   MACH_DAVINCI_EVMDAVINCI_EVM 901
+davinci_evmMACH_DAVINCI_EVMDAVINCI_EVM 854
 omap_tornado   MACH_OMAP_TORNADO   OMAP_TORNADO902
 olocreek   MACH_OLOCREEK   OLOCREEK903
 palmz72MACH_PALMZ72PALMZ72 
904


The information contained in this electronic message and any attachments to 
this message are intended for the exclusive 
use of the addressee(s) and may contain proprietary, confidential or privileged 
information. If you are not the intended
 recipient, you should not disseminate, distribute or copy this e-mail. Please 
notify the sender immediately and destroy
 all copies of this message and any attachments contained in it.



___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source