What is the correct way to manually select SPIPS device?
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 1.2k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
Until version 2025.2, I have been using XSpiPs_SetSlaveSelect to manually select my device. This function is not used internally inside embeddedsw, so it seems to me that manual selection would be the main purpose of this function.
However, in 2025.2, in particular commit https://github.com/Xilinx/embeddedsw/commit/2d2965e7d60b9aba1f029b2c4aad2a551bb164af, adds a guard condition for manual select:
if (XSpiPs_IsManualChipSelect(InstancePtr) == FALSE) {
/*
* Read the config register, update the slave select value and write
* back to config register.
*/
ConfigReg = XSpiPs_ReadReg(InstancePtr->Config.BaseAddress,
XSPIPS_CR_OFFSET);
ConfigReg &= (u32)(~XSPIPS_CR_SSCTRL_MASK);
ConfigReg |= InstancePtr->SlaveSelect;
XSpiPs_WriteReg(InstancePtr->Config.BaseAddress, XSPIPS_CR_OFFSET,
ConfigReg);
}
If XSpiPs_SetSlaveSelect cannot be used for manual selection, what is the purpose of this function? And which API am I supposed to use for manual selection?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the definitions and call sites for XSpiPs_SetSlaveSelect and XSpiPs_IsManualChipSelect in embeddedsw, then compare them with the behavior introduced by commit 2d2965e7d60b9aba1f029b2c4aad2a551bb164af. Determine which API is intended for manual selection and clarify the purpose of XSpiPs_SetSlaveSelect in the documentation or issue response.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- embedded-iot
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100