Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

ata_slave_link_init(9) [centos man page]

ATA_SLAVE_LINK_INIT(9)						  libata Library					    ATA_SLAVE_LINK_INIT(9)

NAME
ata_slave_link_init - initialize slave link SYNOPSIS
int ata_slave_link_init(struct ata_port * ap); ARGUMENTS
ap port to initialize slave link for DESCRIPTION
Create and initialize slave link for ap. This enables slave link handling on the port. In libata, a port contains links and a link contains devices. There is single host link but if a PMP is attached to it, there can be multiple fan-out links. On SATA, there's usually a single device connected to a link but PATA and SATA controllers emulating TF based interface can have two - master and slave. However, there are a few controllers which don't fit into this abstraction too well - SATA controllers which emulate TF interface with both master and slave devices but also have separate SCR register sets for each device. These controllers need separate links for physical link handling (e.g. onlineness, link speed) but should be treated like a traditional M/S controller for everything else (e.g. command issue, softreset). slave_link is libata's way of handling this class of controllers without impacting core layer too much. For anything other than physical link handling, the default host link is used for both master and slave. For physical link handling, separate ap->slave_link is used. All dirty details are implemented inside libata core layer. From LLD's POV, the only difference is that prereset, hardreset and postreset are called once more for the slave link, so the reset sequence looks like the following. prereset(M) -> prereset(S) -> hardreset(M) -> hardreset(S) -> softreset(M) -> postreset(M) -> postreset(S) Note that softreset is called only for the master. Softreset resets both M/S by definition, so SRST on master should handle both (the standard method will work just fine). LOCKING
Should be called before host is registered. RETURNS
0 on success, -errno on failure. AUTHOR
Jeff Garzik Author. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 ATA_SLAVE_LINK_INIT(9)

Check Out this Related Man Page

BOCA(4) 						   BSD Kernel Interfaces Manual 						   BOCA(4)

NAME
boca -- multiplexing serial communications interface SYNOPSIS
For 4-port BB1004 boards: boca0 at isa? port 0x100 irq 5 com2 at boca? slave ? com3 at boca? slave ? com4 at boca? slave ? com5 at boca? slave ? For 8-port BB1008 boards: boca0 at isa? port 0x100 irq 5 com2 at boca? slave ? com3 at boca? slave ? com4 at boca? slave ? com5 at boca? slave ? com6 at boca? slave ? com7 at boca? slave ? com8 at boca? slave ? com9 at boca? slave ? For 16-port BB2016 boards: boca0 at isa? port 0x100 irq 5 com2 at boca? slave ? com3 at boca? slave ? com4 at boca? slave ? com5 at boca? slave ? com6 at boca? slave ? com7 at boca? slave ? com8 at boca? slave ? com9 at boca? slave ? boca1 at isa? port 0x140 irq 5 com10 at boca? slave ? com11 at boca? slave ? com12 at boca? slave ? com13 at boca? slave ? com14 at boca? slave ? com15 at boca? slave ? com16 at boca? slave ? com17 at boca? slave ? (The BB2016 is functionally equivalent to two BB1008 boards, and is configured as such.) DESCRIPTION
The boca driver provides support for BOCA Research BB1004, BB1008 and BB2016 boards that multiplex together up to four, eight or sixteen EIA RS-232C (CCITT V.28) communications interfaces. Each boca device is the master device for up to eight com devices. The kernel configuration specifies these com devices as slave devices of the boca device, as shown in the synopsis. The slave ID given for each com device determines which bit in the interrupt multiplexing regis- ter is tested to find interrupts for that device. The port specification for the boca device is used to compute the base addresses for the com subdevices and the port for the interrupt multiplexing register. FILES
/dev/tty?? SEE ALSO
com(4) HISTORY
The boca driver was written by Charles Hannum, based on the ast driver and source code from David Muir Sharnoff. David wishes to acknowledge the assistance of Jason Venner in determining how to use the BOCA boards. BSD
January 3, 1995 BSD
Man Page