AUX_SMPH

Instance: AUX_SMPH
Component: AUX_SMPH
Base address: 0x400c8000

 

AUX Semaphore Controller

 

TOP:AUX_SMPH Register Summary

Register Name

Type

Register Width (Bits)

Register Reset

Address Offset

Physical Address

SMPH0

RW

32

0x0000 0001

0x0000 0000

0x400C 8000

SMPH1

RW

32

0x0000 0001

0x0000 0004

0x400C 8004

SMPH2

RW

32

0x0000 0001

0x0000 0008

0x400C 8008

SMPH3

RW

32

0x0000 0001

0x0000 000C

0x400C 800C

SMPH4

RW

32

0x0000 0001

0x0000 0010

0x400C 8010

SMPH5

RW

32

0x0000 0001

0x0000 0014

0x400C 8014

SMPH6

RW

32

0x0000 0001

0x0000 0018

0x400C 8018

SMPH7

RW

32

0x0000 0001

0x0000 001C

0x400C 801C

AUTOTAKE

RW

32

0x0000 0000

0x0000 0020

0x400C 8020

TOP:AUX_SMPH Register Descriptions

TOP:AUX_SMPH:SMPH0

Address offset

0x0000 0000

Physical address

0x400C 8000

Instance

AUX_SMPH

Description

Semaphore 0

Type

RW

Bits

Field Name

Description

Type

Reset

31:1

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

0

STAT

Status when reading:

0: Semaphore was already taken
1: Semaphore was available and hence taken by this read access

Reading the register causes it to change value to 0. Releasing the semaphore is done by writing 1

RW

1



TOP:AUX_SMPH:SMPH1

Address offset

0x0000 0004

Physical address

0x400C 8004

Instance

AUX_SMPH

Description

Semaphore 1

Type

RW

Bits

Field Name

Description

Type

Reset

31:1

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

0

STAT

Status when reading:

0: Semaphore was already taken
1: Semaphore was available and hence taken by this read access

Reading the register causes it to change value to 0. Releasing the semaphore is done by writing 1

RW

1



TOP:AUX_SMPH:SMPH2

Address offset

0x0000 0008

Physical address

0x400C 8008

Instance

AUX_SMPH

Description

Semaphore 2

Type

RW

Bits

Field Name

Description

Type

Reset

31:1

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

0

STAT

Status when reading:

0: Semaphore was already taken
1: Semaphore was available and hence taken by this read access

Reading the register causes it to change value to 0. Releasing the semaphore is done by writing 1

RW

1



TOP:AUX_SMPH:SMPH3

Address offset

0x0000 000C

Physical address

0x400C 800C

Instance

AUX_SMPH

Description

Semaphore 3

Type

RW

Bits

Field Name

Description

Type

Reset

31:1

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

0

STAT

Status when reading:

0: Semaphore was already taken
1: Semaphore was available and hence taken by this read access

Reading the register causes it to change value to 0. Releasing the semaphore is done by writing 1

RW

1



TOP:AUX_SMPH:SMPH4

Address offset

0x0000 0010

Physical address

0x400C 8010

Instance

AUX_SMPH

Description

Semaphore 4

Type

RW

Bits

Field Name

Description

Type

Reset

31:1

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

0

STAT

Status when reading:

0: Semaphore was already taken
1: Semaphore was available and hence taken by this read access

Reading the register causes it to change value to 0. Releasing the semaphore is done by writing 1

RW

1



TOP:AUX_SMPH:SMPH5

Address offset

0x0000 0014

Physical address

0x400C 8014

Instance

AUX_SMPH

Description

Semaphore 5

Type

RW

Bits

Field Name

Description

Type

Reset

31:1

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

0

STAT

Status when reading:

0: Semaphore was already taken
1: Semaphore was available and hence taken by this read access

Reading the register causes it to change value to 0. Releasing the semaphore is done by writing 1

RW

1



TOP:AUX_SMPH:SMPH6

Address offset

0x0000 0018

Physical address

0x400C 8018

Instance

AUX_SMPH

Description

Semaphore 6

Type

RW

Bits

Field Name

Description

Type

Reset

31:1

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

0

STAT

Status when reading:

0: Semaphore was already taken
1: Semaphore was available and hence taken by this read access

Reading the register causes it to change value to 0. Releasing the semaphore is done by writing 1

RW

1



TOP:AUX_SMPH:SMPH7

Address offset

0x0000 001C

Physical address

0x400C 801C

Instance

AUX_SMPH

Description

Semaphore 7

Type

RW

Bits

Field Name

Description

Type

Reset

31:1

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

0

STAT

Status when reading:

0: Semaphore was already taken
1: Semaphore was available and hence taken by this read access

Reading the register causes it to change value to 0. Releasing the semaphore is done by writing 1

RW

1



TOP:AUX_SMPH:AUTOTAKE

Address offset

0x0000 0020

Physical address

0x400C 8020

Instance

AUX_SMPH

Description

Sticky Request For Single Semaphore

Type

RW

Bits

Field Name

Description

Type

Reset

31:3

Reserved

Software should not rely on the value of a reserved. Writing any other value than the reset value may result in undefined behavior.(RO std text)

RO

0x0000 0000

2:0

SMPH_ID

Requesting a certain semaphore is done by writing the corresponding semaphore ID, 0x0-0x7, to SMPH_ID. The request is sticky and once the semaphore becomes available it will be taken. At the same time, SMPH_AUTOTAKE_DONE event is asserted. This event is deasserted when SW releases the semaphore or a new ID is written to SMPH_ID.

Note: SW must wait until SMPH_AUTOTAKE_DONE event is triggered before writing a new ID to SMPH_ID . Failing to do so might lead to permanently lost semaphores as the owners may be unknown

RW

0x0