Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions spec/std/isa/csr/dscratch0.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You are encouraged to put your own copyright here, since this is your work! :-) Here, and the other files as well, of course.

(There are plenty of examples in the repo.)

# SPDX-License-Identifier: BSD-3-Clause-Clear

# yaml-language-server: $schema=../../../schemas/csr_schema.json

$schema: "csr_schema.json#"
kind: csr
name: dscratch0
long_name: Debug scratch register
address: 0x7B2
priv_mode: D
definedBy: Sdext
length: MXLEN
description: |
Optional scratch register that can be used by implementations that need it. A debugger must
not write to this register unless hartinfo explicitly mentions it (the Debug Module may use this
register internally).
writable: true
fields:
VALUE:
location_rv32: 31-0
location_rv64: 63-0
description: |
Scratch field to hold a value used by debug routines.
type: RW-H
reset_value: 0
26 changes: 26 additions & 0 deletions spec/std/isa/csr/dscratch1.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
# SPDX-License-Identifier: BSD-3-Clause-Clear

# yaml-language-server: $schema=../../../schemas/csr_schema.json

$schema: "csr_schema.json#"
kind: csr
name: dscratch1
long_name: Debug scratch register
address: 0x7B3
priv_mode: D
definedBy: Sdext
length: MXLEN
description: |
Optional scratch register that can be used by implementations that need it. A debugger must
not write to this register unless hartinfo explicitly mentions it (the Debug Module may use this
register internally).
writable: true
fields:
VALUE:
location_rv32: 31-0
location_rv64: 63-0
description: |
Scratch field to hold a value used by debug routines.
type: RW-H
reset_value: 0
52 changes: 52 additions & 0 deletions spec/std/isa/csr/sie.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
# SPDX-License-Identifier: BSD-3-Clause-Clear

# yaml-language-server: $schema=../../../schemas/csr_schema.json

$schema: "csr_schema.json#"
kind: csr
name: sie
long_name: Supervisor interrupt-enable register
address: 0x104
priv_mode: S
definedBy: S
length: XLEN
description: Supervisor interrupt-enable register.
writable: true
fields:
SSIE:
location: 1
alias:
- mie.SSIE
Comment on lines +19 to +20
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove all of the alias attributes. "alias" means that this field actually is another means of accessing the aliased field. Here, though, the field is standalone. It corresponds to the other register's fields for convenience, but is distinct.

description: |
*Supervisor Software Interrupt Enable*
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove the * characters, here and elsewhere.

type: RW
reset_value: UNDEFINED_LEGAL
definedBy: S
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the field is definedBy the same extension as the CSR, then it does not need to be explicitly specified, so remove all definedBy: S attributes.

STIE:
location: 5
alias:
- mie.STIE
description: |
*Supervisor Timer Interrupt Enable*
type: RO-H
reset_value: UNDEFINED_LEGAL
definedBy: S
SEIE:
location: 9
alias:
- mie.SEIE
description: |
*Supervisor External Interrupt Enable*
type: RO-H
definedBy: S
reset_value: UNDEFINED_LEGAL
LCOFIE:
location: 13
alias:
- mie.LCOFIE
description: |
*Local Counter Overflow Interrupt Enable*
type: RW-H
reset_value: UNDEFINED_LEGAL
definedBy: Sscofpmf
Loading