[PATCH]: 6a654e5049 pld/intel: remove idcodes from intel.c

2024-02-23 Thread gerrit
This is an automated email from Gerrit.

"Daniel Anselmi " just uploaded a new patch set to Gerrit, 
which you can find at https://review.openocd.org/c/openocd/+/8083

-- gerrit

commit 6a654e504944936ee80e6f13fdb7e2b376d7d4d1
Author: Daniel Anselmi 
Date:   Mon Feb 19 23:22:19 2024 +0100

pld/intel: remove idcodes from intel.c

Remove list of id codes for all families.
Maintain a list with id, bscan-length and check position
in the tcl config files for each family.

The Intel FPGA Driver option 'family' is not otional anymore.

Change-Id: I9a40a041069e84f6b4728f2cd715756a36759c89
Signed-off-by: Daniel Anselmi 

diff --git a/doc/openocd.texi b/doc/openocd.texi
index 38c8970456..ed7e8f2d92 100644
--- a/doc/openocd.texi
+++ b/doc/openocd.texi
@@ -8872,13 +8872,12 @@ For the option @option{-family} @var{name} is one of 
@var{trion|titanium}.
 @end deffn
 
 
-@deffn {FPGA Driver} {intel} [@option{-family} ]
+@deffn {FPGA Driver} {intel} @option{-family} 
 This driver can be used to load the bitstream into Intel (former Altera) FPGAs.
 The families Cyclone III, Cyclone IV, Cyclone V, Cyclone 10, Arria II are 
supported.
 @c Arria V and Arria 10, MAX II, MAX V, MAX10)
 
-For the option @option{-family} @var{name} is one of @var{cycloneiii cycloneiv 
cyclonev cyclone10 arriaii}.
-This is needed when the JTAG ID of the device is ambiguous (same ID is used 
for chips in different families).
+The option @option{-family} @var{name} is one of @var{cycloneiii cycloneiv 
cyclonev cyclone10 arriaii}.
 
 As input file format the driver supports a '.rbf' (raw bitstream file) file. 
The '.rbf' file can be generated
 from a '.sof' file with @verb{|quartus_cpf -c blinker.sof blinker.rbf|}
diff --git a/src/jtag/tcl.c b/src/jtag/tcl.c
index 7995529018..151ddec09d 100644
--- a/src/jtag/tcl.c
+++ b/src/jtag/tcl.c
@@ -667,6 +667,22 @@ COMMAND_HANDLER(handle_jtag_names)
return ERROR_OK;
 }
 
+COMMAND_HANDLER(handle_jtag_getid)
+{
+   if (CMD_ARGC != 1)
+   return ERROR_COMMAND_SYNTAX_ERROR;
+
+   struct jtag_tap *t = jtag_tap_by_string(CMD_ARGV[0]);
+   if (!t) {
+   command_print(CMD, "Tap '%s' could not be found", CMD_ARGV[0]);
+   return ERROR_COMMAND_ARGUMENT_INVALID;
+   }
+   uint32_t id = t->idcode;
+   command_print(CMD, "0x%8.8" PRIx32, id);
+
+   return ERROR_OK;
+}
+
 COMMAND_HANDLER(handle_jtag_init_command)
 {
if (CMD_ARGC != 0)
@@ -770,6 +786,13 @@ static const struct command_registration 
jtag_subcommand_handlers[] = {
.help = "Returns list of all JTAG tap names.",
.usage = "",
},
+   {
+   .name = "getid",
+   .mode = COMMAND_ANY,
+   .handler = handle_jtag_getid,
+   .help = "Returns the id of the given TAP.",
+   .usage = "tap_name",
+   },
{
.chain = jtag_command_handlers_to_move,
},
diff --git a/src/pld/intel.c b/src/pld/intel.c
index fe85cd62cf..a4bdabe26f 100644
--- a/src/pld/intel.c
+++ b/src/pld/intel.c
@@ -37,142 +37,11 @@ struct intel_pld_device {
enum intel_family_e family;
 };
 
-struct intel_device_parameters_elem {
-   uint32_t id;
-   unsigned int boundary_scan_length;
-   int checkpos;
-   enum intel_family_e family;
-};
-
-static const struct intel_device_parameters_elem intel_device_parameters[] = {
-   {0x020f10dd,  603,  226, INTEL_CYCLONEIII}, /* EP3C5 EP3C10 */
-   {0x020f20dd, 1080,  409, INTEL_CYCLONEIII}, /* EP3C16 */
-   {0x020f30dd,  732,  286, INTEL_CYCLONEIII}, /* EP3C25 */
-   {0x020f40dd, 1632,  604, INTEL_CYCLONEIII}, /* EP3C40 */
-   {0x020f50dd, 1164,  442, INTEL_CYCLONEIII}, /* EP3C55 */
-   {0x020f60dd, 1314,  502, INTEL_CYCLONEIII}, /* EP3C80 */
-   {0x020f70dd, 1620,  613, INTEL_CYCLONEIII}, /* EP3C120*/
-   {0x027010dd, 1314,  226, INTEL_CYCLONEIII}, /* EP3CLS70 */
-   {0x027000dd, 1314,  226, INTEL_CYCLONEIII}, /* EP3CLS100 */
-   {0x027030dd, 1314,  409, INTEL_CYCLONEIII}, /* EP3CLS150 */
-   {0x027020dd, 1314,  409, INTEL_CYCLONEIII}, /* EP3CLS200 */
-
-   {0x020f10dd,  603,  226, INTEL_CYCLONEIV}, /* EP4CE6 EP4CE10 */
-   {0x020f20dd, 1080,  409, INTEL_CYCLONEIV}, /* EP4CE15 */
-   {0x020f30dd,  732,  286, INTEL_CYCLONEIV}, /* EP4CE22 */
-   {0x020f40dd, 1632,  604, INTEL_CYCLONEIV}, /* EP4CE30 EP4CE40 */
-   {0x020f50dd, 1164,  442, INTEL_CYCLONEIV}, /* EP4CE55 */
-   {0x020f60dd, 1314,  502, INTEL_CYCLONEIV}, /* EP4CE75 */
-   {0x020f70dd, 1620,  613, INTEL_CYCLONEIV}, /* EP4CE115 */
-   {0x028010dd,  260,  229, INTEL_CYCLONEIV}, /* EP4CGX15 */
-   {0x028120dd,  494,  463, INTEL_CYCLONEIV}, /* EP4CGX22 */
-   {0x028020dd,  494,  463, INTEL_CYCLONEIV}, /* EP4CGX30 */
-   {0x028230dd, 1006,  943, INTEL_CYCLONEIV}, /* EP4CGX30 */
-   {0x028130dd, 1006,  943, INTEL_CYCLONEIV}, /* EP4CGX50 */
-   

[PATCH]: 5504f110e6 pld/intel remove duplicated code

2024-02-23 Thread gerrit
This is an automated email from Gerrit.

"Daniel Anselmi " just uploaded a new patch set to Gerrit, 
which you can find at https://review.openocd.org/c/openocd/+/8082

-- gerrit

commit 5504f110e65551ed78c8ddf7d7d7780de3ff48ed
Author: Daniel Anselmi 
Date:   Fri Feb 23 20:49:54 2024 +0100

pld/intel remove duplicated code

Change-Id: I043d16c77ce97d3e888774747ed6bfc4c7e63c04
Signed-off-by: Daniel Anselmi 

diff --git a/src/pld/intel.c b/src/pld/intel.c
index a39e16c212..fe85cd62cf 100644
--- a/src/pld/intel.c
+++ b/src/pld/intel.c
@@ -248,9 +248,6 @@ static int intel_load(struct pld_device *pld_device, const 
char *filename)
if (retval != ERROR_OK)
return retval;
 
-   if (retval != ERROR_OK)
-   return retval;
-
retval = intel_set_instr(tap, 0x002);
if (retval != ERROR_OK) {
free(bit_file.data);

-- 



[PATCH]: f3ce3845d3 pld/intel: small documentation fix.

2024-02-23 Thread gerrit
This is an automated email from Gerrit.

"Daniel Anselmi " just uploaded a new patch set to Gerrit, 
which you can find at https://review.openocd.org/c/openocd/+/8084

-- gerrit

commit f3ce3845d3ebbc1e761c622ce24d3940f8362263
Author: Daniel Anselmi 
Date:   Fri Feb 23 23:02:11 2024 +0100

pld/intel: small documentation fix.

Change-Id: I969f51c38fc0c34c6bdba98b0e618d7f28ea4052
Signed-off-by: Daniel Anselmi 

diff --git a/doc/openocd.texi b/doc/openocd.texi
index ed7e8f2d92..ae7bb097bf 100644
--- a/doc/openocd.texi
+++ b/doc/openocd.texi
@@ -8874,7 +8874,7 @@ For the option @option{-family} @var{name} is one of 
@var{trion|titanium}.
 
 @deffn {FPGA Driver} {intel} @option{-family} 
 This driver can be used to load the bitstream into Intel (former Altera) FPGAs.
-The families Cyclone III, Cyclone IV, Cyclone V, Cyclone 10, Arria II are 
supported.
+The families Cyclone III, Cyclone IV, Cyclone V, Cyclone 10 and Arria II are 
supported.
 @c Arria V and Arria 10, MAX II, MAX V, MAX10)
 
 The option @option{-family} @var{name} is one of @var{cycloneiii cycloneiv 
cyclonev cyclone10 arriaii}.

--