stm32 /stm32wba5 /STM32WBA50 /HSEM /HSEM_R15

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text

Interpret as HSEM_R15

31 2827 2423 2019 1615 1211 87 43 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0PROCID0LOCKID0 (B_0x0)SEC 0 (B_0x0)PRIV 0 (B_0x0)LOCK

LOCK=B_0x0, SEC=B_0x0, PRIV=B_0x0

Description

HSEM register semaphore 15

Fields

PROCID

Semaphore PROCID Written by software -When the semaphore is free and the LOCK is written to 1, and the LOCKID matches the AHB bus master ID, SEC and PRIV matches the AHB bus master definition, PROCID is set to the written data.

  • When the semaphore is unlocked, LOCK written to 0 and AHB bus master ID matched LOCKID, SEC and PRIV matches the AHB bus master protection, the PROCID is cleared to 0.
  • When the semaphore is unlocked, LOCK bit written to 0 and AHB bus master ID does not match LOCKID and/or SEC or PRIV do not match the AHB bus master definition, the PROCID is not affected.
  • Write when LOCK bit is already 1 (semaphore locked), the PROCID is not affected.
  • An authorized read returns the stored PROCID value.
LOCKID

Semaphore LOCKID Written by software

  • When the semaphore is free and the LOCK bit is at the same time written to 1 and the LOCKID matches the AHB bus master ID, SEC and PRIV matches the AHB bus master protection.
  • When the semaphore is unlocked (LOCK written to 0 and AHB bus master ID matched LOCKID, SEC and PRIV matches the AHB bus master protection, the LOCKID is cleared to 0.
  • When the semaphore is unlocked (LOCK bit written to 0 or AHB bus master ID does not match LOCKID and/or SEC or PRIV do not match AHB bus master protection, the LOCKID is not affected.
  • Write when LOCK bit is already 1 (semaphore locked), the LOCKID is not affected.
  • An authorized read returns the stored LOCKID value.
SEC

Semaphore secure Written by software

  • When the semaphore is free and the LOCK bit is at the same time written to 1, and the LOCKID matches the AHB bus master ID, SEC and PRIV matches the AHB bus master definition.
  • When the semaphore is unlocked (LOCK written to 0 and AHB bus master ID matched LOCKID, SEC and PRIV matches the AHB bus master definition, the SEC is cleared to 0.
  • When the semaphore is unlocked (LOCK bit written to 0 and AHB bus master ID does not match LOCKID and/or SEC or PRIV do not match AHB bus master definition, the SEC is not affected.
  • Write when LOCK bit is already 1 (semaphore locked), the SEC is not affected.
  • An authorized read returns the stored SEC value.

0 (B_0x0): Semaphore free or locked by non-secure compartment.

1 (B_0x1): Semaphore locked by secure compartment.

PRIV

Semaphore privilege Written by software

  • When the semaphore is free and the LOCK bit is at the same time written to 1, and the LOCKID matches the AHB bus master ID, SEC and PRIV matches the AHB bus master definition.
  • When the semaphore is unlocked (LOCK written to 0 and AHB bus master ID matched LOCKID, SEC and PRIV matches the AHB bus master definition, the PRIV is cleared to 0.
  • When the semaphore is unlocked (LOCK bit written to 0 and AHB bus master ID does not match LOCKID and/or SEC or PRIV do not match AHB bus master definition, the PRIV is not affected.
  • Write when LOCK bit is already 1 (semaphore locked), the PRIV is not affected.
  • An authorized read returns the stored PRIV value.

0 (B_0x0): Semaphore free or locked by unprivileged compartment.

1 (B_0x1): Semaphore locked by privilege compartment.

LOCK

Lock indication This bit can be written and read by software.

0 (B_0x0): On write free semaphore (only when LOCKID and PROCID match), on read semaphore is free.

1 (B_0x1): On write try to lock semaphore, on read semaphore is locked.

Links

()