sci_port_is_phy_mask_valid(9)
π NAME π
sci_port_is_phy_mask_valid β okay so bestie, the NAME line literally ends in a dash and then nothing. No description, no little tagline, just sci_port_is_phy_mask_valid - and then silence. Iconic of it honestly. We're in the <pink>Kernel API Manual</pink>, section 9, and this is the girl who tells you whether a PHY mask is valid for a port. That's the whole vibe. π
β¨ SYNOPSIS β¨
bool sci_port_is_phy_mask_valid (struct isci_port *iport , u32 phy_mask
);
She takes two things and hands you back a bool. Lowkey the simplest little signature ever. π«Ά
πΈ ARGUMENTS πΈ
iportβ the port object πͺ β this is the port you're asking about, like "hey can this specific port handle the mask". It's astruct isci_port *.phy_maskβ the PHY mask that belongs to this port π β the thing you're getting the validity check on, au32.
π DESCRIPTION π
So this method returns a true value if the port's phy mask can actually be supported by the <purple>SCU</purple>. That's it, that's the job. β¨
Here's the list of valid PHY mask configurations for each port β memorize it, flashcard it, put it on your wall, no cap π:
- Port 0 β
[[3 2] 1] 0 - Port 1 β
[1] - Port 2 β
[[3] 2] - Port 3 β
[3]
(yes, Port 0 really does have two spaces in there. Copy it exactly. Don't be cute with it π)
Heads up: those bracket nestings are literal β keep them character for character or the whole vibe check fails.
This method returns a boolean indication specifying if the phy mask can be supported πββοΈ:
trueβ this is a valid phy assignment for the port β slayfalseβ this is not a valid phy assignment for the port β not slay
π¦ SEE ALSO π¦
Kernel file ./drivers/scsi/isci/port.c β that's the main character file right there π
And her whole friend group, all in (9):
sci_port_get_properties(9)isci_port_link_down(9)isci_port_hard_reset_complete(9)sci_port_construct_dummy_rnc(9)sci_port_general_link_up_handler(9)sci_port_is_wide(9)sci_port_link_detected(9)sci_port_post_dummy_request(9)sci_port_abort_dummy_request(9)sci_port_resume_port_task_scheduler(9)sci_port_ready_substate_operational_exit(9)sci_port_add_phy(9)sci_port_remove_phy(9)
Okay that's the whole page, bestie π β sign-off time: this one lives in ./drivers/scsi/isci, it's dated <cyan>October 2026</cyan>, and it's filed under sci_port_is_phy_mask_valid(9). Go off, kernel girlies ππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms