Skip to content

Specify /cpus/cpu@* unit address format #86

Description

@dramforever

Presently, there seems to be some confusion in the community about the format of unit addresses for /cpus/cpu@* nodes for a CPU with ID > 9, e.g.

    cpu@??? {
        reg = <10>;
        /* reg = <0xa>; */ /* This should be equivalent */
    }

Should this be a decimal cpu@10, or hexadecimal cpu@a? I can't find any explicit specification:

As of current usage:

It could be a good idea to have this standardized, like all other unit addresses.

DTSpec says:

The binding for a particular bus may specify additional, more specific requirements for the format of reg and the unit-address.

Since /cpus and /cpus/cpu@* are generically defined in DTSpec and specialized for various architectures, I believe this is the right place to start standardizing this. Even if arch-specific definitions are required, at least DTSpec can give a recommendation on whether to use decimal or hexadecimal.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions