×

Discussion Board

Results 1 to 8 of 8
  1. #1
    Registered User
    Join Date
    Jul 2003
    Posts
    190

    Question How to detect ARMv6 CPU at runtime

    How can application check at runtime if it runs on ARMv5 or ARMv6 processor?

    ARMv6 adds some interesting instructions for SIMD, which would be handy to use for multimedia application. But to keep application compatible with ARMv5 phones I need to check if CPU is ARMv6 at runtime.

    HAL doesn't seem to provide any function for checking CPU type, also CPUID using cp15 register is not possible in ARM code in user privilege mode.
    I don't know of any way how to check ARM CPU capabilities. Thanks for hints.

  2. #2
    Registered User
    Join Date
    Nov 2010
    Posts
    5

    Re: How to detect ARMv6 CPU at runtime

    hi,we come across the same problem,but can't find a right way yet;
    Did u have solved the problem? and how?

    any suggestion will be appreciate,Thanks.

  3. #3
    Regular Contributor
    Join Date
    Nov 2006
    Location
    Switzerland
    Posts
    476

    Re: How to detect ARMv6 CPU at runtime

    I came across a similar problem and created a developer contributed article in the knowledge base of Forum Nokia Wiki. Check this:
    - http://wiki.forum.nokia.com/index.ph...dition_devices
    ...and this...
    - http://wiki.forum.nokia.com/index.ph...eported_by_HAL
    Last edited by patrickfrei; 2010-11-04 at 11:19.

  4. #4
    Registered User
    Join Date
    Nov 2010
    Posts
    5

    Re: How to detect ARMv6 CPU at runtime

    yes , HAL can not work well on all device.
    so i don't know what can i do.

  5. #5
    Registered User
    Join Date
    Jul 2003
    Posts
    190

    Re: How to detect ARMv6 CPU at runtime

    I use:
    int machine_uid;
    HAL::Get(HALData::EMachineUid, machine_uid);

    Then by this machine_uid I determine processor type for particular device model.
    Occasionally I have to update the table when new phone models appear.

  6. #6
    Registered User
    Join Date
    Nov 2010
    Posts
    5

    Re: How to detect ARMv6 CPU at runtime

    i wrote assemble code to read the main id register such as "asm( "MRC p15,0,r0,c0,c0,0");".
    but it crashed when running on phone N78.

  7. #7
    Registered User
    Join Date
    Nov 2010
    Posts
    5

    Re: How to detect ARMv6 CPU at runtime

    Does anybody use "MRC " on symbian os?
    Does it work ?

  8. #8
    Registered User
    Join Date
    Nov 2010
    Posts
    5

    Re: How to detect ARMv6 CPU at runtime

    I have found out that it is prohibited to read cp15 on symbian user layer,
    but only in the kernel.

    so maybe it is the best way to create a model list.

Similar Threads

  1. Single CPU or Dual CPU??
    By denudate in forum General Development Questions
    Replies: 0
    Last Post: 2008-02-11, 15:29
  2. How to detect 3rd MR / FP1 at runtime or compile time
    By rob_savageminds in forum Symbian Tools & SDKs
    Replies: 1
    Last Post: 2007-07-18, 12:23
  3. Sun WTK 2.2 Consumes CPU
    By ravey72 in forum Mobile Java General
    Replies: 0
    Last Post: 2006-06-20, 20:26
  4. Runtime memory limits in Nokia phones
    By anand_amarsh in forum Mobile Java General
    Replies: 5
    Last Post: 2005-05-22, 16:17
  5. PC Suite not detect 6600 with Bluetooth connection
    By spinacle in forum Bluetooth Technology
    Replies: 29
    Last Post: 2004-03-15, 00:24

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
×