With OMAP3530 on BeagleBoard we like to read OMAP3's CONTROL_RAND_KEY_0 (0x4800 2318) register with something like

printf ("attempting cpu_uid read\n");
u32 cpu_uid = *((u32 *) 0x48002318);
/* u32 cpu_uid = readl(&ctrl_base->randkey_0); */
printf ("cpu_uid read done\n");

This does hang after first printf, second printf is never printed. Both, the direct register access and the readl style doesn't work. Access to other system control module register in the same address range works fine, though.

Any idea or hint?

For details see spruf98b.pdf page 960 and

http://www.sakoman.net/cgi-bin/gitweb.cgi?p=u-boot-omap3.git;a=blobdiff;f=cpu/arm_cortexa8/omap3/sys_info.c;h=347e8ba24b03d5a4c3a37878cf6fc9f6868066c7;hp=67955531f3f0782b2f3f7e587472e0bef08c921c;hb=292a36ca0271c4a93196f4efd118640b11a65482;hpb=0b043b4ac2144a517d2a5d24ffff7c957b9178f7

Yes, this isn't Linux, but for U-Boot. But as a lot OMAP experts are here and same might happen if reading this registers from Linux, we'd like to ask here.

Thanks

Dirk






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

Reply via email to