Lines Matching refs:mr_table

199 		if (mthca_table_get_range(dev, dev->mr_table.mtt_table, seg,  in mthca_alloc_mtt_range()
237 return __mthca_alloc_mtt(dev, size, &dev->mr_table.mtt_buddy); in mthca_alloc_mtt()
247 mthca_table_put_range(dev, dev->mr_table.mtt_table, in mthca_free_mtt()
268 mtt_entry[0] = cpu_to_be64(dev->mr_table.mtt_base + in __mthca_write_mtt()
301 if (dev->mr_table.fmr_mtt_buddy != &dev->mr_table.mtt_buddy || in mthca_write_mtt_size()
322 mtts = dev->mr_table.tavor_fmr.mtt_base + mtt->first_seg * dev->limits.mtt_seg_size + in mthca_tavor_write_mtt_seg()
343 mtts = mthca_table_find(dev->mr_table.mtt_table, mtt->first_seg + in mthca_arbel_write_mtt_seg()
364 if (dev->mr_table.fmr_mtt_buddy != &dev->mr_table.mtt_buddy || in mthca_write_mtt()
440 key = mthca_alloc(&dev->mr_table.mpt_alloc); in mthca_mr_alloc()
447 err = mthca_table_get(dev, dev->mr_table.mpt_table, key); in mthca_mr_alloc()
477 cpu_to_be64(dev->mr_table.mtt_base + in mthca_mr_alloc()
505 mthca_table_put(dev, dev->mr_table.mpt_table, key); in mthca_mr_alloc()
508 mthca_free(&dev->mr_table.mpt_alloc, key); in mthca_mr_alloc()
547 mthca_table_put(dev, dev->mr_table.mpt_table, in mthca_free_region()
550 mthca_free(&dev->mr_table.mpt_alloc, key_to_hw_index(dev, lkey)); in mthca_free_region()
588 key = mthca_alloc(&dev->mr_table.mpt_alloc); in mthca_fmr_alloc()
597 err = mthca_table_get(dev, dev->mr_table.mpt_table, key); in mthca_fmr_alloc()
601 mr->mem.arbel.mpt = mthca_table_find(dev->mr_table.mpt_table, key, NULL); in mthca_fmr_alloc()
604 mr->mem.tavor.mpt = dev->mr_table.tavor_fmr.mpt_base + in mthca_fmr_alloc()
607 mr->mtt = __mthca_alloc_mtt(dev, list_len, dev->mr_table.fmr_mtt_buddy); in mthca_fmr_alloc()
616 mr->mem.arbel.mtts = mthca_table_find(dev->mr_table.mtt_table, in mthca_fmr_alloc()
621 mr->mem.tavor.mtts = dev->mr_table.tavor_fmr.mtt_base + mtt_seg; in mthca_fmr_alloc()
641 mpt_entry->mtt_seg = cpu_to_be64(dev->mr_table.mtt_base + mtt_seg); in mthca_fmr_alloc()
671 mthca_table_put(dev, dev->mr_table.mpt_table, key); in mthca_fmr_alloc()
674 mthca_free(&dev->mr_table.mpt_alloc, key); in mthca_fmr_alloc()
831 err = mthca_alloc_init(&dev->mr_table.mpt_alloc, in mthca_init_mr_table()
846 err = mthca_buddy_init(&dev->mr_table.mtt_buddy, in mthca_init_mr_table()
852 dev->mr_table.tavor_fmr.mpt_base = NULL; in mthca_init_mr_table()
853 dev->mr_table.tavor_fmr.mtt_base = NULL; in mthca_init_mr_table()
873 dev->mr_table.mpt_base); in mthca_init_mr_table()
875 dev->mr_table.tavor_fmr.mpt_base = in mthca_init_mr_table()
878 if (!dev->mr_table.tavor_fmr.mpt_base) { in mthca_init_mr_table()
886 dev->mr_table.mtt_base); in mthca_init_mr_table()
888 dev->mr_table.tavor_fmr.mtt_base = in mthca_init_mr_table()
890 if (!dev->mr_table.tavor_fmr.mtt_base) { in mthca_init_mr_table()
898 err = mthca_buddy_init(&dev->mr_table.tavor_fmr.mtt_buddy, fls(mtts - 1)); in mthca_init_mr_table()
903 err = mthca_buddy_alloc(&dev->mr_table.mtt_buddy, fls(mtts - 1)); in mthca_init_mr_table()
907 dev->mr_table.fmr_mtt_buddy = in mthca_init_mr_table()
908 &dev->mr_table.tavor_fmr.mtt_buddy; in mthca_init_mr_table()
910 dev->mr_table.fmr_mtt_buddy = &dev->mr_table.mtt_buddy; in mthca_init_mr_table()
917 dev->mr_table.fmr_mtt_buddy) == -1) { in mthca_init_mr_table()
919 dev->mr_table.fmr_mtt_buddy->max_order); in mthca_init_mr_table()
930 mthca_buddy_cleanup(&dev->mr_table.tavor_fmr.mtt_buddy); in mthca_init_mr_table()
933 if (dev->mr_table.tavor_fmr.mtt_base) in mthca_init_mr_table()
934 iounmap(dev->mr_table.tavor_fmr.mtt_base); in mthca_init_mr_table()
937 if (dev->mr_table.tavor_fmr.mpt_base) in mthca_init_mr_table()
938 iounmap(dev->mr_table.tavor_fmr.mpt_base); in mthca_init_mr_table()
941 mthca_buddy_cleanup(&dev->mr_table.mtt_buddy); in mthca_init_mr_table()
944 mthca_alloc_cleanup(&dev->mr_table.mpt_alloc); in mthca_init_mr_table()
953 mthca_buddy_cleanup(&dev->mr_table.tavor_fmr.mtt_buddy); in mthca_cleanup_mr_table()
955 mthca_buddy_cleanup(&dev->mr_table.mtt_buddy); in mthca_cleanup_mr_table()
957 if (dev->mr_table.tavor_fmr.mtt_base) in mthca_cleanup_mr_table()
958 iounmap(dev->mr_table.tavor_fmr.mtt_base); in mthca_cleanup_mr_table()
959 if (dev->mr_table.tavor_fmr.mpt_base) in mthca_cleanup_mr_table()
960 iounmap(dev->mr_table.tavor_fmr.mpt_base); in mthca_cleanup_mr_table()
962 mthca_alloc_cleanup(&dev->mr_table.mpt_alloc); in mthca_cleanup_mr_table()