PSoC 6 Programming - IPC_INTR_STRUCT_INTR_MASK_OFFSET value

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
OmSa_4786791
Level 3
Level 3
25 sign-ins 10 replies posted 10 sign-ins

Hello,

I am trying to implement a programmer device, so I will be able to program PSoC 6 devices using my own SW.
I am following PSoC 6 programming specifications (this document, from this page).

The second stage of the programming algorithm (5.5 identify silicon), uses the subroutine CallSromApi, which is defined in the subroutine section (5.2.2, pages 32-33).
This function uses the define IPC_INTR_STRUCT_INTR_MASK_OFFSET, which I can't figure the value of.
As far as I can see, this variable is referenced only in this function. I could not find any place that says what the value of this define should be. I also looked in a PSoC project (as some of the other defines exist there as well), but could not find any reference to this variable.

All the other defines that I have encountered exist in the constants part of the document (section 5.2.1), but this define is not there.

What should be the value of this variable?
Am I missing some more documents/information that I should use in order to implement this program?

 

Any help will be greatly appreciated,
With Kind Regards,
Omri

0 Likes
1 Solution

Hi @OmSa_4786791 ,

Apologies for the delay , but I was confirming this with my internal team, and you are right , it points to structure 0 (IPC_INTR_STRUCT0) so the value of IPC_INTR_STRUCT_INTR_MASK_OFFSET  will be 0x08. Please go ahead with the same.

I have also raised an internal ticket with the our internal team to update the documents constants section so as to include the definition for this macro as well.

Thanks & Regards
Alen

View solution in original post

0 Likes
6 Replies
AlenAn14
Moderator
Moderator
Moderator
500 replies posted 100 solutions authored 250 replies posted

Hi @OmSa_4786791 ,

I too am observing this irregularity.
Will check on this and get back to you.
thank you for your patience.

Regards
Alen

0 Likes
AlenAn14
Moderator
Moderator
Moderator
500 replies posted 100 solutions authored 250 replies posted

HI @OmSa_4786791 ,

This is the offset value that has to be defined by the user to access the corresponding IPC_INTR_STRUCTx_INTR_MASK register shown in the below image.

In page 379, of the PSoC 62 Register Technical Manual, you can see the following:

AlenAn14_0-1638531117105.png

In the above image you can observe that to access IPC_INTR_STRUCT1_INTR_MASK, there should be an offset of 0x28 from the IPC_INTR_STRUCT0_INTR (Which is at address 0x40231000).

This is what is done in the PSoC 6 Programming Specification as shown in below image:

AlenAn14_1-1638531587226.png

where the value of IPC_INTR_STRUCT is 0x40231000 as defined in the constants section (same as IPC_INTR_STRUCT0_INTR in above image).
Hence the value of IPC_INTR_STRUCT_INTR_MASK_OFFSET should be 0x28 to access the IPC_INTR_STRUCT1_INTR_MASK.

Hope this helps.
Regards
Alen

 

0 Likes

Hi @AlenAn14,

 

Thank you for your reply.

Which of the struct is this offset should be set to?
From the code, I guessed that it should be for IPC_INTR_STRUCT0, but in your reply, you wrote IPC_INTR_STRUCT1. Moreover, the code is using IPC_INTR_STRUCT[ipcAddr] for most of the operations in this function (though not for reading/writing this mask), is it possible this value should be the offset from this struct?

 

With Kind Regards,
Omri

0 Likes

Hi @OmSa_4786791 ,

Apologies for the delay , but I was confirming this with my internal team, and you are right , it points to structure 0 (IPC_INTR_STRUCT0) so the value of IPC_INTR_STRUCT_INTR_MASK_OFFSET  will be 0x08. Please go ahead with the same.

I have also raised an internal ticket with the our internal team to update the documents constants section so as to include the definition for this macro as well.

Thanks & Regards
Alen

0 Likes

Hi @AlenAn14,

 

Thank you very much for your thorough investigation and information.
I'll update my code accordingly.

 

With Kind Regards,
Omri

0 Likes

Happy to help.

Please feel free to post any queries or issues you may face on our products in the community again.

Warm Regards
Alen

0 Likes