Lines Matching +defs:a +defs:link
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
122 #define DRMACH_PA_TO_SLICE(a) (((a) >> 37) & DRMACH_SLICE_MASK)
127 * There must be a distinction between the available and usable do to a
287 void *a;
288 sbd_error_t *(*found)(void *a, const char *, int, drmachid_t);
317 * The following global is read as a boolean value, non-zero is true.
332 * There is a known HW bug where a Jaguar CPU in Safari port 0 (SBX/P0)
333 * can fail to receive an XIR. To workaround this issue until a hardware
358 * retired on this board prior to a board disconnect.
363 * By default, DR of non-Panther procs is not allowed into a Panther
779 * Check if a CPU node is part of a CMP.
815 * held, or it will be the child of a CMP. In either
1080 * We held this branch earlier, so at a minimum its
1134 /* every node is expected to have a name */
1146 * Not a node of interest to dr - including "cmp",
1155 * Derive a best-guess unit number from the portid value.
1246 * issuing a showboard message. If it's connected, we just
1327 struct drmach_msglist *prev; /* link to previous entry */
1328 struct drmach_msglist *next; /* link to next entry */
1329 struct drmach_msglist *link; /* link to related entry */
1377 * Delay (in seconds) used after receiving a non-transient error indication from
1621 * Callback function passed to taskq_dispatch when a mailbox reinitialization
1625 * otherwise ignored, since any situation that requires a mailbox initialization
1668 * protocol, we use a buffer that is large enough to receive the largest message
1670 * large, allocating it on the stack is a bad idea. Fortunately, this function
1673 * that is the case, we can use a static buffer.
1699 /* schedule a reinit handshake if one isn't pending */
1725 /* schedule a reinit handshake if one isn't pending */
1740 /* anything else will be a log_sysevent call */
1850 /* get a reply message */
1860 * the "error" is really just a normal, transient
1862 * Any other error suggests a more serious problem,
1863 * ranging from a message being too big for our buffer
1868 * we'll sleep for a while before retrying.
1887 /* schedule a reinit handshake if one isn't pending */
2112 drmach_msglist_t *link)
2126 listp->link = link;
2175 * If link is set for this entry, check to see if
2179 * wherein a check is made for the TESTBOARD reply when
2183 if (link) {
2184 mutex_enter(&link->g_lock);
2187 * received, clear the existing link->f_error,
2190 if (link->m_reply == 0) {
2191 link->f_error = 0;
2194 while (link->m_reply == 0 && link->f_error == 0) {
2195 crv = cv_timedwait(&link->g_cv, &link->g_lock,
2200 "!link msgid=0x%x reply timed out",
2201 link->msgid);
2202 link->f_error = ETIMEDOUT;
2208 mutex_exit(&link->g_lock);
2420 * been aborted due to a signal received after mboxsc_putmsg()
2421 * has succeeded in sending the message, a DRMSG_ABORT_TEST
2786 * To avoid a circular patch dependency between DR and AXQ, the AXQ
2955 * The latter is returned when drmach_rename fails to idle a Panther MC and
3037 * produced only if this is a Panther processor on the source or
3162 uint64_t a = *q++;
3164 DRMACH_PR("0x%lx\n", a);
3517 * Make a good-faith effort to notify the SC about the copy-rename, but
3518 * don't worry if it fails, since a subsequent claim/unconfig/unclaim
3610 * Execute copy-rename under on_trap to protect against a panic due
3661 * performing thread synchronization at a time when all but
3662 * one processors are paused. This is a potential deadlock
3677 * bcopy32_il is implemented as a series of ldxa/stxa via
3691 * the case of a cheetah processor when the E$ flush area
3692 * is included within the copied region. In such a case,
3699 * those of a cheetah processor. All lines of a cheetah
3706 * A single instance of such a condition will cause loss of
3722 * In the case of a cheetah processor, the E$ remains
3732 * on a cheetah+ processor.
3738 * maintained. Any line in a cache that is in the valid
3813 * Fix up unit number so that Leaf A has a lower unit number
3994 * This Safari port passed POST and represents a
4097 cmn_err(CE_WARN, "Domain shutdown is required to add a non-"
4132 * been set by a concurrent drmach_board_status() thread
4234 * find a slice that routes to expander e. If no match
4237 * The CASM is a routing table indexed by slice number.
4239 * a destination expander number and a valid bit. The
4261 * If a cpu/mem board is present in the same expander, use slice
4549 * UNCLAIM, it will cause a dstop for domain transgression error.
4561 * If disconnecting a board from a Panther domain, wait a fixed-
4566 * controllers. Since Panther supports read-bypass-write, a
4655 * If the device is a CPU without a 'portid' property,
4656 * it is a CMP core. For such cases, the parent node
4671 * This is a helper function to determine if a given
4672 * node should be considered for a dr operation according
4674 * Formal Parameter : The name of a device node.
4675 * Return Value: -1, name does not map to a valid dr type.
4676 * A value greater or equal to 0, name is a valid dr type.
4692 /* Determine if the node's name correspond to a predefined type. */
4722 * if the node does not have a portid property, then
4730 /* The node must have a name */
4736 * or that their name property is not mapped to a valid
4744 * Create a device data structure from this node data.
4775 data->err = (*data->found)(data->a, device->type, device->unum, id);
4780 drmach_board_find_devices(drmachid_t id, void *a,
4781 sbd_error_t *(*found)(void *a, const char *, int, drmachid_t))
4804 data.a = a;
5148 * If the node does not have a portid property,
5149 * it represents a CMP device. For a CMP, the reg
5187 * A return value of 1 indicates success and 0 indicates a failure
5217 * If a CPU does not have a portid property, it must
5218 * be a CMP device with a cpuid property.
5294 * Jaguar/Panther boards) is shared by all cpus in a Safari port
5374 * bus traffic a bit which makes the tick sync
5451 * spinning in a safe place. The requirement is that the system will not
5458 * 1) Create a locked mapping to the STARDRB data buffer located
5461 * Each Safari port pair shares the CPU SRAM on a Serengeti CPU/MEM
5508 /* a parking spot for the stack pointer */
6113 * We held the branch rooted at dip earlier, so at a minimum the
6300 * a drmachid of zero.
6488 /* prime the result with a default value */
6599 * Offset the pa by a doubleword
6600 * to avoid confusing a pa value of
6729 /* try to choose a proc on the target board */
7075 * drmach_unconfigure() is always called on a configured branch.
7085 /* The node must have a name */
7123 * If we were unconfiguring an IO board, a call was
7204 * Start up a cpu. It is possible that we're attempting to restart
7207 * Under normal circumstances the cpu will be coming from a previous
7264 * This prevents blocking when doing prom IEEE-1275 calls at a
7349 #define ALIGN(x, a) ((a) == 0 ? (uintptr_t)(x) : \
7350 (((uintptr_t)(x) + (uintptr_t)(a) - 1l) & ~((uintptr_t)(a) - 1l)))
7456 * There is a known HW bug where a Jaguar CPU in Safari port 0 (SBX/P0)
7457 * can fail to receive an XIR. To workaround this issue until a hardware
7460 * Once a fix is implemented in hardware, this code should be updated
7535 * a single CMP device. Non CMP devices can be handled as a
7536 * single core CMP by passing in a one element list.
7552 * Walk the list of CPU devices (cores of a CMP)
7577 * Make a best effort attempt to return any cores
7705 * of a CMP device:
7707 * 1. All cores of a CMP are grouped together
7710 * 2. There will only be a maximum of two cores
7776 * Setup an iocage by acquiring a cpu and memory.
7927 * the slot 1 pause data structures for a boardset when its
7974 * Tree walk callback routine. If dip represents a Schizo PCI leaf,
8031 * the slot 1 pause data structures for a boardset when its
8116 * Each PCI leaf has a set of mapping registers for all
8233 * bus) is not used. intr_mask is a bit mask representing the 4 possible
8310 * on each Schizo PCI leaf. Called if Schizo has logged a Safari bus
8614 * the array may have a double-linked ring list of driver
8672 * Log a DR sysevent.
8734 * Initialize the mem_slice portion of a claim/unconfig/unclaim mailbox message.
8756 * Initialize the mem_regs portion of a claim/unconfig/unclaim mailbox message.
8804 * install the cache line as owned/dirty as a result of the RTSR transaction.
8809 * rename. If these cache lines are owned due to a RTSR, a system error can
8810 * occur following the rename when these cache lines are evicted and a writeback
8813 * Incoming parameter represents either the copy-rename source or a candidate