Lines Matching defs:hw_fib
135 struct hw_fib *hw_fib;
156 hw_fib = (struct hw_fib *)((unsigned char *)dev->hw_fib_va +
160 hw_fib = (struct hw_fib *)((unsigned char *)hw_fib +
174 fibptr->hw_fib_va = hw_fib;
179 hw_fib->header.XferState = cpu_to_le32(0xffffffff);
180 hw_fib->header.SenderSize =
192 hw_fib = (struct hw_fib *)((unsigned char *)hw_fib +
315 struct hw_fib *hw_fib = fibptr->hw_fib_va;
317 memset(&hw_fib->header, 0, sizeof(struct aac_fibhdr));
318 hw_fib->header.StructType = FIB_MAGIC;
319 hw_fib->header.Size = cpu_to_le16(fibptr->dev->max_fib_size);
320 hw_fib->header.XferState = cpu_to_le32(HostOwned | FibInitialized | FibEmpty | FastResponseCapable);
321 hw_fib->header.u.ReceiverFibAddress = cpu_to_le32(fibptr->hw_fib_pa);
322 hw_fib->header.SenderSize = cpu_to_le16(fibptr->dev->max_fib_size);
335 struct hw_fib *hw_fib = fibptr->hw_fib_va;
336 hw_fib->header.XferState = 0;
410 * @hw_fib: Fib to associate with the queue entry
421 int aac_queue_get(struct aac_dev * dev, u32 * index, u32 qid, struct hw_fib * hw_fib, int wait, struct fib * fibptr, unsigned long *nonotify)
434 entry->size = cpu_to_le32(le16_to_cpu(hw_fib->header.Size));
443 entry->size = cpu_to_le32(le16_to_cpu(hw_fib->header.Size));
444 entry->addr = hw_fib->header.SenderFibAddress;
446 hw_fib->header.u.ReceiverFibAddress = hw_fib->header.SenderFibAddress; /* Let the adapter now where to find its data */
488 struct hw_fib * hw_fib = fibptr->hw_fib_va;
493 if (!(hw_fib->header.XferState & cpu_to_le32(HostOwned)))
496 if (hw_fib->header.XferState & cpu_to_le32(AdapterProcessed))
514 hw_fib->header.XferState |= cpu_to_le32(Async | ResponseExpected);
517 hw_fib->header.XferState |= cpu_to_le32(NoResponseExpected);
520 hw_fib->header.XferState |= cpu_to_le32(ResponseExpected);
527 hw_fib->header.SenderFibAddress =
533 hw_fib->header.Handle =
543 hw_fib->header.Command = cpu_to_le16(command);
544 hw_fib->header.XferState |= cpu_to_le32(SentFromHost);
548 hw_fib->header.Size = cpu_to_le16(sizeof(struct aac_fibhdr) + size);
549 if (le16_to_cpu(hw_fib->header.Size) > le16_to_cpu(hw_fib->header.SenderSize)) {
556 hw_fib->header.XferState |= cpu_to_le32(NormalPriority);
573 dprintk((KERN_DEBUG " Command = %d.\n", le32_to_cpu(hw_fib->header.Command)));
575 dprintk((KERN_DEBUG " XferState = %x.\n", le32_to_cpu(hw_fib->header.XferState)));
576 dprintk((KERN_DEBUG " hw_fib va being sent=%p\n",fibptr->hw_fib_va));
577 dprintk((KERN_DEBUG " hw_fib pa being sent=%lx\n",(ulong)fibptr->hw_fib_pa));
873 struct hw_fib * hw_fib = fibptr->hw_fib_va;
882 kfree(hw_fib);
886 if (hw_fib->header.XferState == 0) {
888 kfree(hw_fib);
894 if (hw_fib->header.StructType != FIB_MAGIC &&
895 hw_fib->header.StructType != FIB_MAGIC2 &&
896 hw_fib->header.StructType != FIB_MAGIC2_64) {
898 kfree(hw_fib);
908 if (hw_fib->header.XferState & cpu_to_le32(SentFromAdapter)) {
910 kfree (hw_fib);
913 hw_fib->header.XferState |= cpu_to_le32(HostProcessed);
916 if (size > le16_to_cpu(hw_fib->header.SenderSize))
918 hw_fib->header.Size = cpu_to_le16(size);
922 aac_queue_get(dev, &index, AdapNormRespQueue, hw_fib, 1, NULL, &nointr);
945 struct hw_fib * hw_fib = fibptr->hw_fib_va;
957 if (hw_fib->header.XferState == 0 || fibptr->done == 2)
963 if (hw_fib->header.StructType != FIB_MAGIC &&
964 hw_fib->header.StructType != FIB_MAGIC2 &&
965 hw_fib->header.StructType != FIB_MAGIC2_64)
974 if((hw_fib->header.XferState & cpu_to_le32(SentFromHost)) &&
975 (hw_fib->header.XferState & cpu_to_le32(AdapterProcessed)))
979 else if(hw_fib->header.XferState & cpu_to_le32(SentFromHost))
986 } else if(hw_fib->header.XferState & cpu_to_le32(HostOwned)) {
1064 struct hw_fib * hw_fib = fibptr->hw_fib_va;
1065 struct aac_aifcmd * aifcmd = (struct aac_aifcmd *)hw_fib->data;
1740 struct hw_fib * hw_fib;
1768 hw_fib = kzalloc(sizeof(struct hw_fib), GFP_ATOMIC);
1770 if (fib && hw_fib) {
1773 fib->hw_fib_va = hw_fib;
1778 fib->data = hw_fib->data;
1779 aif = (struct aac_aifcmd *)hw_fib->data;
1801 kfree(hw_fib);
2016 / sizeof(struct hw_fib); /* some extra */
2028 static int fillup_pools(struct aac_dev *dev, struct hw_fib **hw_fib_pool,
2032 struct hw_fib **hw_fib_p;
2038 *(hw_fib_p) = kmalloc(sizeof(struct hw_fib), GFP_KERNEL);
2059 struct hw_fib **hw_fib_pool,
2062 struct hw_fib *hw_fib,
2067 struct hw_fib **hw_fib_p;
2070 struct hw_fib *hw_newfib;
2131 memcpy(hw_newfib, hw_fib, sizeof(struct hw_fib));
2151 *(__le32 *)hw_fib->data = cpu_to_le32(ST_OK);
2159 struct hw_fib *hw_fib;
2171 struct hw_fib **hw_fib_pool, **hw_fib_p;
2183 hw_fib = fib->hw_fib_va;
2199 fib->hw_fib_va = hw_fib;
2200 fib->data = hw_fib->data;
2206 aifcmd = (struct aac_aifcmd *) hw_fib->data;
2210 *(__le32 *)hw_fib->data = cpu_to_le32(ST_OK);
2232 hw_fib_pool = kmalloc_array(num, sizeof(struct hw_fib *),
2254 fib, hw_fib, num);