RE: [EXTERNAL] OMAP2430 kernel hangs on ioremap of IVA2.1 addresses

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

 



Guess: this bit in JTAG script used for IVA tests probably is missing and needs to be worked in.  The generic linux-omap clock code probably handles the IVA clock but maybe not the resets.

   /*  Enable IVA-ss functional clock (set bit 0) */
   (*(int*)0x49006800) |= 0x1;

   /* Release l3s_idle_req  */
   (*(int*)0x49006810) |= (1 << 1);

   /* Release L3S reset and power-on reset (clear bit 1) at the same time */
   (*(int*)0x49006850) &= ~(( 1 << 1));

Regards,
Richard W.

-----Original Message-----
From: David Russell <david.russell73@xxxxxxxxx> 
Sent: Monday, June 07, 2021 10:01 AM
To: tony@xxxxxxxxxxx
Cc: linux-omap@xxxxxxxxxxxxxxx
Subject: [EXTERNAL] OMAP2430 kernel hangs on ioremap of IVA2.1 addresses

Good morning,

I have a legacy project that runs on an OMAP2430 and is based on the linux-omap repo (tag v2.6.28-omap1).  I am in the process of upgrading the project to mainline v5.10; I have been able to get most issues resolved (e.g., USB DMA still fails, but PIO works for now), but have a difficult problem that I am hoping someone might lend an idea to.  We have a custom DSP driver that is responsible for resetting the DSP, downloading the firmware, setting up the mailbox and then managing the communication between the ARM and DSP.  I have the driver mostly ported (i.e., compiling) and am working through the behavior.  At probe-time there are several ioremap’s of IVA2.1 memory (0x5c800000 and 0x5d000000 — the internal SRAM and the MMU).  The ioremap’s succeed without error, but as soon as I simply try to read the revision register at 0x5d000000 the ARM hangs (i.e., not even a kernel panic message is presented, the console just freezes).  I assume that I am missing a clock or some module is powered-down, but am not sure.  Interestingly, in arch/arm/mach-omap2/iomap.h it is explicitly noted that the 2430 IVA2.1 is not mapped — I attempted to add these mappings to the 2430 table which resulted in zero console output of the kernel boot (i.e., I can see the x-loader console output getting ready to launch the kernel, and then nothing).

This is a challenging problem with the console simply freezing on the memory access.  I would very much appreciate any ideas as to this issue.

Regards,

Dave





[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