From eca49b2d65b6a95f188ff69dd5a3995615f2d78c Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 19:32:47 +0200 Subject: [PATCH 01/12] fix(svd): wrong addressOffsets in timer registers --- ps2.xml | 77 +++++++++++++++++++++++++++++---------------------------- 1 file changed, 39 insertions(+), 38 deletions(-) diff --git a/ps2.xml b/ps2.xml index 23cac1b..56483b9 100644 --- a/ps2.xml +++ b/ps2.xml @@ -31,10 +31,26 @@ 0xB0000000 + + + T0_COUNT + Counter register + 0x0000 + 0x0000FFFF + + + + COUNT + Counter Value. The counter value is incremented according to the conditions of the clock and the gate signal specified in the Tn_MODE. + [15:0] + + + + T0_MODE Register for setting modes and reading status - 0x0000 + 0x0010 0x00000FFF @@ -242,21 +258,6 @@ - - T0_COUNT - Counter register - 0x0010 - 0x0000FFFF - - - - COUNT - Counter Value. The counter value is incremented according to the conditions of the clock and the gate signal specified in the Tn_MODE. - [15:0] - - - - T0_COMP Comparison register @@ -289,15 +290,15 @@ - - T1_MODE - Register for setting modes and reading status - 0x0800 - - T1_COUNT Counter register + 0x0800 + + + + T1_MODE + Register for setting modes and reading status 0x0810 @@ -313,17 +314,17 @@ 0x0830 - - T2_MODE - Register for setting modes and reading status - 0x1000 - - T2_COUNT Counter register + 0x1000 + + + + T2_MODE + Register for setting modes and reading status 0x1010 - + T2_COMP @@ -331,15 +332,15 @@ 0x0820 - - T3_MODE - Register for setting modes and reading status - 0x1800 - - T3_COUNT Counter register + 0x1800 + + + + T3_MODE + Register for setting modes and reading status 0x1810 @@ -464,7 +465,7 @@ VIF 0xB0003800 - + VIF0_STAT @@ -2824,7 +2825,7 @@ Set A PGIF interrupt has occurred. 1 - + @@ -3143,6 +3144,6 @@ SIF 0xB000F200 - + From 49773e1b364e4d77f4e81c2343678a23aad9ea0e Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 19:50:57 +0200 Subject: [PATCH 02/12] feat(svd): Add GIF_CTRL fields --- ps2.xml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/ps2.xml b/ps2.xml index 56483b9..0e6555e 100644 --- a/ps2.xml +++ b/ps2.xml @@ -398,6 +398,26 @@ GIF_CTRL GIF control 0x00 + + + + RST + GIF reset + [0:0] + + + NO_RESET + Does nothing. + 0 + + + RESET + When set, the GIF is reset and the internal register returns to the initial value. + 1 + + + + From fa019d1dff92bc221b25513d752dcdf4ef80cc72 Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 20:48:05 +0200 Subject: [PATCH 03/12] feat(svd): Add GIF_MODE fields --- ps2.xml | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/ps2.xml b/ps2.xml index 0e6555e..d65af54 100644 --- a/ps2.xml +++ b/ps2.xml @@ -417,6 +417,23 @@ + + PSE + Temporary transfer stop + [3:3] + + + TRANSFER_RESTART + Restarts transfer processing. When set, the other GIF registers can no longer be read. + 0 + + + TEMP_STOP + Temporarily stops transfer processing. When set, allows reading the other GIF registers for debugging. + 1 + + + @@ -424,6 +441,43 @@ GIF_MODE GIF mode setting 0x10 + + + + M3R + PATH3 MASK + [0:0] + + + MASK_CANCEL + Mask cancel(Initial value) + 0 + + + MASK + Enables the PATH3 mask. If set during a transmission, the mask is enabled after the end of transmission. + 1 + + + + + IMT + PATH3 transfer mode specification + [2:2] + + + CONTINUOUS_TRANSFER + (Initial value) Continuous transfer mode + 0 + + + INTERMITTENT_TRANSFER_MODE + Intermittent transfer mode in every 8 qwords. + 1 + + + + From 6b13ecf1710dfeb56a8a179d6838198b558ea282 Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 21:37:58 +0200 Subject: [PATCH 04/12] feat(svd): Add GIF_STAT fields --- ps2.xml | 206 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 206 insertions(+) diff --git a/ps2.xml b/ps2.xml index d65af54..8042e0d 100644 --- a/ps2.xml +++ b/ps2.xml @@ -484,6 +484,212 @@ GIF_STAT GIF status 0x20 + + + + M3R + PATH3 mask status. + [0:0] + + + ENABLE + (Initial value) Enabled. + 0 + + + DISABLE + Disabled (Masked by the MR3 flag of the GIF_MODE register.) + 1 + + + + + M3P + PATH3 VIF mask status. + [1:1] + + + ENABLE + (Initial value) Enabled. + 0 + + + DISABLE + Disabled (Masked by the VIF MASKP3 register.) + 1 + + + + + IMT + PATH3 IMT status. + [2:2] + + + CONTINUOUS_TRANSFER_MODE + (Initial value) Continuous transfer mode. + 0 + + + INTERMITTENT_TRANSFER_MODE + Intermittent transfer mode. + 1 + + + + + PSE + Temporary transfer stop. + [3:3] + + + NORMAL + (Initial value) Normal. + 0 + + + TEMP_STOP + Temporary stop state triggered by PSE flag of GIF_CTRL register. + 1 + + + + + + IP3 + Interrupted PATH3. + [5:5] + + + NO_INTERRUPT + (Initial value) No interrupted transfer via PATH3. + 0 + + + INTERRUPT + Interrupted transfer via PATH3. + 1 + + + + + P3Q + PATH3 in queue. + [6:6] + + + NO_REQUEST + (Initial value) No request to wait for processing in PATH3. + 0 + + + REQUEST + Request to wait for processing in PATH3. + 1 + + + + + P2Q + PATH2 in queue. + [7:7] + + + NO_REQUEST + (Initial value) No request to wait for processing in PATH2. + 0 + + + REQUEST + Request to wait for processing in PATH2. + 1 + + + + + P1Q + PATH1 in queue. + [8:8] + + + NO_REQUEST + (Initial value) No request to wait for processing in PATH1. + 0 + + + REQUEST + Request to wait for processing in PATH1. + 1 + + + + + OPH + Output path. + [9:9] + + + IDLE + (Initial value) Idle state. + 0 + + + OUTPUTTING + Outputting data. + 1 + + + + + APATH + Data path transferring data. + [11:10] + + + IDLE + (Initial value) Idle state. + 0 + + + PATH1 + Transferring data via PATH1. + 1 + + + PATH2 + Transferring data via PATH2. + 2 + + + PATH3 + Transferring data via PATH3. + 3 + + + + + DIR + Transfer direction. + [12:12] + + + EE_TO_GS + (Initial value) EE to GS. + 0 + + + GS_TO_EE + GS to EE. + 1 + + + + + FQC + Effective data count in GIF-FIFO (0-16: in qword units). + [28:24] + + From 81437fcfdf0913ef7541d40d76072673f1cd62bf Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 21:44:40 +0200 Subject: [PATCH 05/12] feat(svd): add GIF_TAG0 fields --- ps2.xml | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/ps2.xml b/ps2.xml index 8042e0d..64aff9a 100644 --- a/ps2.xml +++ b/ps2.xml @@ -398,6 +398,7 @@ GIF_CTRL GIF control 0x00 + write-only @@ -441,6 +442,7 @@ GIF_MODE GIF mode setting 0x10 + write-only @@ -484,6 +486,7 @@ GIF_STAT GIF status 0x20 + read-only @@ -696,8 +699,27 @@ GIF_TAG0 - GIFtag (bits 31-0) immediately before + GIFtag (bits 31-16) immediately before. Only accessible when GIF_CTRL PSE is set to 1. 0x40 + read-only + + + + NLOOP + Most recently read NLOOP field of GIFtag. + [14:0] + + + EOP + Most recently read EOP flag of GIFtag. + [15:15] + + + TAG + (Undefined) Values from bit 31 to bit 16 among most recently read GIFtag values. + [31:16] + + From 615800902d8f6c9603dd46bd87816b76f9619417 Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 22:01:57 +0200 Subject: [PATCH 06/12] feat(svd): Add GIf_TAG1 fields --- ps2.xml | 35 ++++++++++++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/ps2.xml b/ps2.xml index 64aff9a..c21adc2 100644 --- a/ps2.xml +++ b/ps2.xml @@ -699,7 +699,7 @@ GIF_TAG0 - GIFtag (bits 31-16) immediately before. Only accessible when GIF_CTRL PSE is set to 1. + GIFtag (bits 31-16) immediately before. Only accessible when GIF_CTRL PSE is set to 1. 0x40 read-only @@ -716,7 +716,7 @@ TAG - (Undefined) Values from bit 31 to bit 16 among most recently read GIFtag values. + (Undefined) Values from bit 31 to bit 16 among the most recently read GIFtag values. [31:16] @@ -724,8 +724,37 @@ GIF_TAG1 - GIFtag (bits 63-32) immediately before + GIFtag (bits 45-32) immediately before. Only accessible when GIF_CTRL PSE is set to 1. 0x50 + read-only + + + + TAG + (Undefined) Values from bit 45 to bit 32 among the most recently read GIFtag values. + [13:0] + + + PRE + Most recently read PRE flag of GIFtag. + [14:14] + + + PRIM + Most recently read PRIM field of GIFtag. + [25:15] + + + FLG + Most recently read FLG field of GIFtag. + [27:26] + + + NREG + Most recently read NREG field of GIFtag. + [31:28] + + From 7303bb9161c2c3d90b668ac752c4626d10fb9aed Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 22:04:22 +0200 Subject: [PATCH 07/12] feat(svd): Add GIF_TAG2 field --- ps2.xml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/ps2.xml b/ps2.xml index c21adc2..0fd3d01 100644 --- a/ps2.xml +++ b/ps2.xml @@ -759,8 +759,17 @@ GIF_TAG2 - GIFtag (bits 95-64) immediately before + GIFtag (bits 95-64) immediately before. Only accessible when GIF_CTRL PSE is set to 1. 0x60 + read-only + + + + REGS + Values from bit 95 to bit 64 among most recently read GIFtag values (Lower part of REGS field.) + [31:0] + + From b13860873c70b66cbb7bb2a6a42cd0a9e6623ac2 Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 22:05:29 +0200 Subject: [PATCH 08/12] feat(svd): Add GIF_TAG3 field --- ps2.xml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/ps2.xml b/ps2.xml index 0fd3d01..bb74659 100644 --- a/ps2.xml +++ b/ps2.xml @@ -774,8 +774,17 @@ GIF_TAG3 - GIFtag (bits 127-96) immediately before + GIFtag (bits 127-96) immediately before. Only accessible when GIF_CTRL PSE is set to 1. 0x70 + read-only + + + + REGS + Values from bit 127 to bit 96 among most recently read GIFtag values (Lower part of REGS field.) + [31:0] + + From ed84a22cf26bfee9022af4b0a52d9b978f84a1b2 Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 22:19:51 +0200 Subject: [PATCH 09/12] feat(svd): Add GIF_CNT fields --- ps2.xml | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/ps2.xml b/ps2.xml index bb74659..d31b220 100644 --- a/ps2.xml +++ b/ps2.xml @@ -789,8 +789,34 @@ GIF_CNT - Transfer status counter + Transfer status counter. Only accessible when GIF_CTRL PSE is set to 1. 0x80 + read-only + + + + LOOPCNT + Value of current loop counter (backward counter from GIF_TAG0 NLOOP field). Decremented when starting processing of the GIF_TAG1 NREGSth register descriptor. + [14:0] + + + REGCNT + + Register descriptor number (0-15) currently in process (Becomes indeterminate in IMAGE mode). + * 1 - Lowest significant register descriptor of REGS field. + * 2 - 2nd lowest significant register descriptor of REGS field. + .. + * 15 - 15th lowest significant register descriptor of REGS field. + * 0 - Most significant register descriptor of REGS field. + + [19-16] + + + VUADDR + Address of VU memory under transfer. + [29:20] + + From 47831fddafb35960cbc5194b73dceb5b3ef32a3c Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 22:23:20 +0200 Subject: [PATCH 10/12] feat(svd): Add GIF_P3CNT fields --- ps2.xml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ps2.xml b/ps2.xml index d31b220..5742b37 100644 --- a/ps2.xml +++ b/ps2.xml @@ -821,8 +821,18 @@ GIF_P3CNT - PATH3 transfer status counter + PATH3 transfer status counter. Only accessible when GIF_CTRL PSE is set to 1. 0x90 + read-only + + + + P3CNT + The LOOPCNT field value of the GIF_CNT register when transfer via PATH3 is interrupted. This is not updated in the event of a transfer restart. + [14:0] + + + From 1f6d53809f581a88271937fb06dbd89547c50701 Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sat, 6 Apr 2024 22:27:36 +0200 Subject: [PATCH 11/12] feat(svd): Add GIF_P3TAG fields --- ps2.xml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/ps2.xml b/ps2.xml index 5742b37..b0c2441 100644 --- a/ps2.xml +++ b/ps2.xml @@ -837,8 +837,22 @@ GIF_P3TAG - PATH3 tag value + PATH3 tag value. Only accessible when GIF_CTRL PSE is set to 1 and when PATH3 is transferring data in IMAGE mode. 0xA0 + read-only + + + + LOOPCNT + The NLOOP field value of the GIFtag read via PATH3 at the end. + [14:0] + + + EOP + The EOP flag value of the GIFtag read via PATH 3 at the end. + [15:15] + + From a19c7d49cf7499c141a42d403ac8a01e28f8a77a Mon Sep 17 00:00:00 2001 From: Zachary Cauchi Date: Sun, 7 Apr 2024 09:12:00 +0200 Subject: [PATCH 12/12] fix(svd): invalid bit range in REGCNT --- ps2.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ps2.xml b/ps2.xml index b0c2441..43bd4b5 100644 --- a/ps2.xml +++ b/ps2.xml @@ -809,7 +809,7 @@ * 15 - 15th lowest significant register descriptor of REGS field. * 0 - Most significant register descriptor of REGS field. - [19-16] + [19:16] VUADDR