/linux-4.4.14/drivers/gpu/drm/omapdrm/ |
H A D | tcm.h | 2 * tcm.h 42 struct tcm; 53 struct tcm *tcm; /* parent */ member in struct:tcm_area 58 struct tcm { struct 64 /* 'pvt' structure shall contain any tcm details (attr) along with 71 s32 (*reserve_2d)(struct tcm *tcm, u16 height, u16 width, u8 align, 73 s32 (*reserve_1d)(struct tcm *tcm, u32 slots, struct tcm_area *area); 74 s32 (*free) (struct tcm *tcm, struct tcm_area *area); 75 void (*deinit) (struct tcm *tcm); 94 struct tcm *sita_init(u16 width, u16 height, struct tcm_pt *attr); 100 * @param tcm Pointer to container manager. 107 static inline void tcm_deinit(struct tcm *tcm) tcm_deinit() argument 109 if (tcm) tcm_deinit() 110 tcm->deinit(tcm); tcm_deinit() 116 * @param tcm Pointer to container manager. 126 * the tcm field of the area will be set to NULL on 131 static inline s32 tcm_reserve_2d(struct tcm *tcm, u16 width, u16 height, tcm_reserve_2d() argument 135 s32 res = tcm == NULL ? -ENODEV : tcm_reserve_2d() 139 (height > tcm->height || width > tcm->width) ? -ENOMEM : 0; tcm_reserve_2d() 143 res = tcm->reserve_2d(tcm, height, width, align, area); tcm_reserve_2d() 144 area->tcm = res ? NULL : tcm; tcm_reserve_2d() 153 * @param tcm Pointer to container manager. 158 * the tcm field of the area will be set to NULL on 163 static inline s32 tcm_reserve_1d(struct tcm *tcm, u32 slots, tcm_reserve_1d() argument 167 s32 res = tcm == NULL ? -ENODEV : tcm_reserve_1d() 169 slots > (tcm->width * (u32) tcm->height) ? -ENOMEM : 0; tcm_reserve_1d() 173 res = tcm->reserve_1d(tcm, slots, area); tcm_reserve_1d() 174 area->tcm = res ? NULL : tcm; tcm_reserve_1d() 188 * @return 0 on success. Non-0 error code on failure. Also, the tcm 197 if (area && area->tcm) { tcm_free() 198 res = area->tcm->free(area->tcm, area); tcm_free() 200 area->tcm = NULL; tcm_free() 214 * fit in a 2D slice, its tcm pointer is set to NULL to mark that it is no 225 if (slice->tcm && !slice->is2d && tcm_slice() 227 (slice->p0.x || (slice->p1.x != slice->tcm->width - 1))) { tcm_slice() 229 slice->p1.x = slice->tcm->width - 1; tcm_slice() 236 parent->tcm = NULL; tcm_slice() 240 /* Verify if a tcm area is logically valid */ tcm_area_is_valid() 243 return area && area->tcm && tcm_area_is_valid() 245 area->p1.x < area->tcm->width && tcm_area_is_valid() 246 area->p1.y < area->tcm->height && tcm_area_is_valid() 250 area->p0.x < area->tcm->width && tcm_area_is_valid() 251 area->p0.x + area->p0.y * area->tcm->width <= tcm_area_is_valid() 252 area->p1.x + area->p1.y * area->tcm->width) || tcm_area_is_valid() 267 i = p->x + p->y * a->tcm->width; __tcm_is_in() 268 return i >= a->p0.x + a->p0.y * a->tcm->width && __tcm_is_in() 269 i <= a->p1.x + a->p1.y * a->tcm->width; __tcm_is_in() 291 area->tcm->width; __tcm_sizeof() 306 a->p1.x = (a->p0.x + num_pg - 1) % a->tcm->width; tcm_1d_limit() 307 a->p1.y = a->p0.y + ((a->p0.x + num_pg - 1) / a->tcm->width); tcm_1d_limit() 326 var.tcm; tcm_slice(&safe, &var))
|
H A D | tcm-sita.c | 2 * tcm-sita.c 23 #include "tcm-sita.h" 34 static s32 sita_reserve_2d(struct tcm *tcm, u16 h, u16 w, u8 align, 36 static s32 sita_reserve_1d(struct tcm *tcm, u32 slots, struct tcm_area *area); 37 static s32 sita_free(struct tcm *tcm, struct tcm_area *area); 38 static void sita_deinit(struct tcm *tcm); 43 static s32 scan_areas_and_find_fit(struct tcm *tcm, u16 w, u16 h, u16 align, 46 static s32 scan_l2r_t2b(struct tcm *tcm, u16 w, u16 h, u16 align, 49 static s32 scan_r2l_t2b(struct tcm *tcm, u16 w, u16 h, u16 align, 52 static s32 scan_r2l_b2t_one_dim(struct tcm *tcm, u32 num_slots, 60 static s32 update_candidate(struct tcm *tcm, u16 x0, u16 y0, u16 w, u16 h, 68 static void get_neighbor_stats(struct tcm *tcm, struct tcm_area *area, 71 static void fill_area(struct tcm *tcm, 80 struct tcm *sita_init(u16 width, u16 height, struct tcm_pt *attr) sita_init() 82 struct tcm *tcm; sita_init() local 90 tcm = kmalloc(sizeof(*tcm), GFP_KERNEL); sita_init() 92 if (!tcm || !pvt) sita_init() 95 memset(tcm, 0, sizeof(*tcm)); sita_init() 99 tcm->height = height; sita_init() 100 tcm->width = width; sita_init() 101 tcm->reserve_2d = sita_reserve_2d; sita_init() 102 tcm->reserve_1d = sita_reserve_1d; sita_init() 103 tcm->free = sita_free; sita_init() 104 tcm->deinit = sita_deinit; sita_init() 105 tcm->pvt = (void *)pvt; sita_init() 110 pvt->map = kmalloc(sizeof(*pvt->map) * tcm->width, GFP_KERNEL); sita_init() 114 for (i = 0; i < tcm->width; i++) { sita_init() 116 kmalloc(sizeof(**pvt->map) * tcm->height, sita_init() 126 if (attr && attr->x <= tcm->width && attr->y <= tcm->height) { sita_init() 133 pvt->div_pt.x = (tcm->width * 3) / 4; sita_init() 134 pvt->div_pt.y = (tcm->height * 3) / 4; sita_init() 139 fill_area(tcm, &area, NULL); sita_init() 141 return tcm; sita_init() 144 kfree(tcm); sita_init() 149 static void sita_deinit(struct tcm *tcm) sita_deinit() argument 151 struct sita_pvt *pvt = (struct sita_pvt *)tcm->pvt; sita_deinit() 155 area.p1.x = tcm->width - 1; sita_deinit() 156 area.p1.y = tcm->height - 1; sita_deinit() 159 fill_area(tcm, &area, NULL); sita_deinit() 162 for (i = 0; i < tcm->height; i++) sita_deinit() 177 static s32 sita_reserve_1d(struct tcm *tcm, u32 num_slots, sita_reserve_1d() argument 182 struct sita_pvt *pvt = (struct sita_pvt *)tcm->pvt; sita_reserve_1d() 187 assign(&field, tcm->width - 1, tcm->height - 1, 0, 0); sita_reserve_1d() 189 ret = scan_r2l_b2t_one_dim(tcm, num_slots, &field, area); sita_reserve_1d() 192 fill_area(tcm, area, area); sita_reserve_1d() 208 static s32 sita_reserve_2d(struct tcm *tcm, u16 h, u16 w, u8 align, sita_reserve_2d() argument 212 struct sita_pvt *pvt = (struct sita_pvt *)tcm->pvt; sita_reserve_2d() 222 ret = scan_areas_and_find_fit(tcm, w, h, align, area); sita_reserve_2d() 225 fill_area(tcm, area, area); sita_reserve_2d() 236 static s32 sita_free(struct tcm *tcm, struct tcm_area *area) sita_free() argument 238 struct sita_pvt *pvt = (struct sita_pvt *)tcm->pvt; sita_free() 247 fill_area(tcm, area, NULL); sita_free() 274 static s32 scan_r2l_t2b(struct tcm *tcm, u16 w, u16 h, u16 align, scan_r2l_t2b() argument 279 struct tcm_area ***map = ((struct sita_pvt *)tcm->pvt)->map; scan_r2l_t2b() 311 if (update_candidate(tcm, x, y, w, h, field, scan_r2l_t2b() 329 if (!best.a.tcm) scan_r2l_t2b() 348 static s32 scan_l2r_t2b(struct tcm *tcm, u16 w, u16 h, u16 align, scan_l2r_t2b() argument 353 struct tcm_area ***map = ((struct sita_pvt *)tcm->pvt)->map; scan_l2r_t2b() 387 if (update_candidate(tcm, x, y, w, h, field, scan_l2r_t2b() 405 if (!best.a.tcm) scan_l2r_t2b() 424 static s32 scan_r2l_b2t_one_dim(struct tcm *tcm, u32 num_slots, scan_r2l_b2t_one_dim() argument 429 struct sita_pvt *pvt = (struct sita_pvt *)tcm->pvt; scan_r2l_b2t_one_dim() 440 if (tcm->width != field->p0.x - field->p1.x + 1) scan_r2l_b2t_one_dim() 444 if (num_slots > tcm->width * LEN(field->p0.y, field->p1.y)) scan_r2l_b2t_one_dim() 481 x = (x ? : tcm->width) - 1; scan_r2l_b2t_one_dim() 502 static s32 scan_areas_and_find_fit(struct tcm *tcm, u16 w, u16 h, u16 align, scan_areas_and_find_fit() argument 508 struct sita_pvt *pvt = (struct sita_pvt *)tcm->pvt; scan_areas_and_find_fit() 517 boundary_x = tcm->width - 1; scan_areas_and_find_fit() 519 boundary_y = tcm->height - 1; scan_areas_and_find_fit() 522 ret = scan_l2r_t2b(tcm, w, h, align, &field, area); scan_areas_and_find_fit() 525 if (ret != 0 && (boundary_x != tcm->width - 1 || scan_areas_and_find_fit() 526 boundary_y != tcm->height - 1)) { scan_areas_and_find_fit() 528 assign(&field, 0, 0, tcm->width - 1, tcm->height - 1); scan_areas_and_find_fit() 529 ret = scan_l2r_t2b(tcm, w, h, align, &field, area); scan_areas_and_find_fit() 537 if (w > (tcm->width - pvt->div_pt.x)) scan_areas_and_find_fit() 540 boundary_y = tcm->height - 1; scan_areas_and_find_fit() 542 assign(&field, tcm->width - 1, 0, boundary_x, boundary_y); scan_areas_and_find_fit() 543 ret = scan_r2l_t2b(tcm, w, h, align, &field, area); scan_areas_and_find_fit() 547 boundary_y != tcm->height - 1)) { scan_areas_and_find_fit() 549 assign(&field, tcm->width - 1, 0, 0, tcm->height - 1); scan_areas_and_find_fit() 550 ret = scan_r2l_t2b(tcm, w, h, align, &field, scan_areas_and_find_fit() 572 static void fill_area(struct tcm *tcm, struct tcm_area *area, fill_area() argument 576 struct sita_pvt *pvt = (struct sita_pvt *)tcm->pvt; fill_area() 579 /* set area's tcm; otherwise, enumerator considers it invalid */ fill_area() 580 area->tcm = tcm; fill_area() 602 static s32 update_candidate(struct tcm *tcm, u16 x0, u16 y0, u16 w, u16 h, update_candidate() argument 619 get_neighbor_stats(tcm, &me.a, &me.n); update_candidate() 625 if (!best->a.tcm) update_candidate() 647 best->a.tcm = tcm; update_candidate() 669 static void get_neighbor_stats(struct tcm *tcm, struct tcm_area *area, get_neighbor_stats() argument 673 struct sita_pvt *pvt = (struct sita_pvt *)tcm->pvt; get_neighbor_stats() 685 if (area->p1.y == tcm->height - 1) get_neighbor_stats() 698 if (area->p1.x == tcm->width - 1) get_neighbor_stats()
|
H A D | Makefile | 19 tcm-sita.o
|
H A D | omap_dmm_priv.h | 130 struct tcm *tcm; member in struct:dmm_txn 141 struct tcm *tcm; member in struct:refill_engine 186 struct tcm **tcm; member in struct:dmm
|
H A D | omap_dmm_tiler.c | 41 static struct tcm *containers[TILFMT_NFORMATS]; 166 static struct dmm_txn *dmm_txn_init(struct dmm *dmm, struct tcm *tcm) dmm_txn_init() argument 192 engine->tcm = tcm; dmm_txn_init() 224 pat->area.y0 += engine->tcm->y_offset; dmm_txn_append() 225 pat->area.y1 += engine->tcm->y_offset; dmm_txn_append() 229 .lut_id = engine->tcm->lut_id, dmm_txn_append() 312 txn = dmm_txn_init(omap_dmm, area->tcm); fill() 424 if (block->area.tcm) tiler_release() 567 if (omap_dmm->tcm && omap_dmm->tcm[i]) omap_dmm_remove() 568 omap_dmm->tcm[i]->deinit(omap_dmm->tcm[i]); omap_dmm_remove() 569 kfree(omap_dmm->tcm); omap_dmm_remove() 729 omap_dmm->tcm = kcalloc(omap_dmm->num_lut, sizeof(*omap_dmm->tcm), omap_dmm_probe() 731 if (!omap_dmm->tcm) { omap_dmm_probe() 741 omap_dmm->tcm[i] = sita_init(omap_dmm->container_width, omap_dmm_probe() 745 if (!omap_dmm->tcm[i]) { omap_dmm_probe() 751 omap_dmm->tcm[i]->lut_id = i; omap_dmm_probe() 754 /* assign access mode containers to applicable tcm container */ omap_dmm_probe() 757 containers[TILFMT_8BIT] = omap_dmm->tcm[0]; omap_dmm_probe() 758 containers[TILFMT_16BIT] = omap_dmm->tcm[0]; omap_dmm_probe() 759 containers[TILFMT_32BIT] = omap_dmm->tcm[0]; omap_dmm_probe() 765 containers[TILFMT_PAGE] = omap_dmm->tcm[1]; omap_dmm_probe() 766 omap_dmm->tcm[1]->y_offset = OMAP5_LUT_OFFSET; omap_dmm_probe() 767 omap_dmm->tcm[1]->lut_id = 0; omap_dmm_probe() 769 containers[TILFMT_PAGE] = omap_dmm->tcm[0]; omap_dmm_probe() 773 .tcm = NULL, omap_dmm_probe() 780 area.tcm = omap_dmm->tcm[i]; omap_dmm_probe() 913 if (block->area.tcm == omap_dmm->tcm[lut_idx]) { tiler_map_show() 979 .tcm = NULL, omap_dmm_resume() 986 area.tcm = omap_dmm->tcm[i]; omap_dmm_resume()
|
H A D | omap_dmm_tiler.h | 20 #include "tcm.h"
|
H A D | tcm-sita.h | 42 #include "tcm.h"
|
/linux-4.4.14/arch/arm/include/asm/ |
H A D | tcm.h | 14 #error "You should not be including tcm.h unless you have a TCM!" 20 #define __tcmdata __section(.tcm.data) 22 #define __tcmconst __section(.tcm.rodata) 24 #define __tcmfunc __attribute__((long_call)) __section(.tcm.text) noinline 26 #define __tcmlocalfunc __section(.tcm.text)
|
/linux-4.4.14/net/sched/ |
H A D | cls_api.c | 357 struct tcmsg *tcm; tcf_fill_node() local 361 nlh = nlmsg_put(skb, portid, seq, event, sizeof(*tcm), flags); tcf_fill_node() 364 tcm = nlmsg_data(nlh); tcf_fill_node() 365 tcm->tcm_family = AF_UNSPEC; tcf_fill_node() 366 tcm->tcm__pad1 = 0; tcf_fill_node() 367 tcm->tcm__pad2 = 0; tcf_fill_node() 368 tcm->tcm_ifindex = qdisc_dev(tp->q)->ifindex; tcf_fill_node() 369 tcm->tcm_parent = tp->classid; tcf_fill_node() 370 tcm->tcm_info = TC_H_MAKE(tp->prio, tp->protocol); tcf_fill_node() 373 tcm->tcm_handle = fh; tcf_fill_node() 375 tcm->tcm_handle = 0; tcf_fill_node() 376 if (tp->ops->dump && tp->ops->dump(net, tp, fh, skb, tcm) < 0) tcf_fill_node() 433 struct tcmsg *tcm = nlmsg_data(cb->nlh); tc_dump_tfilter() local 438 if (nlmsg_len(cb->nlh) < sizeof(*tcm)) tc_dump_tfilter() 440 dev = __dev_get_by_index(net, tcm->tcm_ifindex); tc_dump_tfilter() 444 if (!tcm->tcm_parent) tc_dump_tfilter() 447 q = qdisc_lookup(dev, TC_H_MAJ(tcm->tcm_parent)); tc_dump_tfilter() 455 if (TC_H_MIN(tcm->tcm_parent)) { tc_dump_tfilter() 456 cl = cops->get(q, tcm->tcm_parent); tc_dump_tfilter() 470 if (TC_H_MAJ(tcm->tcm_info) && tc_dump_tfilter() 471 TC_H_MAJ(tcm->tcm_info) != tp->prio) tc_dump_tfilter() 473 if (TC_H_MIN(tcm->tcm_info) && tc_dump_tfilter() 474 TC_H_MIN(tcm->tcm_info) != tp->protocol) tc_dump_tfilter()
|
H A D | sch_api.c | 1113 struct tcmsg *tcm = nlmsg_data(n); tc_get_qdisc() local 1125 err = nlmsg_parse(n, sizeof(*tcm), tca, TCA_MAX, NULL); tc_get_qdisc() 1129 dev = __dev_get_by_index(net, tcm->tcm_ifindex); tc_get_qdisc() 1133 clid = tcm->tcm_parent; tc_get_qdisc() 1150 if (tcm->tcm_handle && q->handle != tcm->tcm_handle) tc_get_qdisc() 1153 q = qdisc_lookup(dev, tcm->tcm_handle); tc_get_qdisc() 1182 struct tcmsg *tcm; tc_modify_qdisc() local 1194 err = nlmsg_parse(n, sizeof(*tcm), tca, TCA_MAX, NULL); tc_modify_qdisc() 1198 tcm = nlmsg_data(n); tc_modify_qdisc() 1199 clid = tcm->tcm_parent; tc_modify_qdisc() 1202 dev = __dev_get_by_index(net, tcm->tcm_ifindex); tc_modify_qdisc() 1225 if (!q || !tcm->tcm_handle || q->handle != tcm->tcm_handle) { tc_modify_qdisc() 1226 if (tcm->tcm_handle) { tc_modify_qdisc() 1229 if (TC_H_MIN(tcm->tcm_handle)) tc_modify_qdisc() 1231 q = qdisc_lookup(dev, tcm->tcm_handle); tc_modify_qdisc() 1275 if (!tcm->tcm_handle) tc_modify_qdisc() 1277 q = qdisc_lookup(dev, tcm->tcm_handle); tc_modify_qdisc() 1298 tcm->tcm_parent, tcm->tcm_parent, tc_modify_qdisc() 1306 dev_queue = p->ops->cl_ops->select_queue(p, tcm); tc_modify_qdisc() 1313 tcm->tcm_parent, tcm->tcm_handle, tc_modify_qdisc() 1338 struct tcmsg *tcm; tc_fill_qdisc() local 1346 nlh = nlmsg_put(skb, portid, seq, event, sizeof(*tcm), flags); tc_fill_qdisc() 1349 tcm = nlmsg_data(nlh); tc_fill_qdisc() 1350 tcm->tcm_family = AF_UNSPEC; tc_fill_qdisc() 1351 tcm->tcm__pad1 = 0; tc_fill_qdisc() 1352 tcm->tcm__pad2 = 0; tc_fill_qdisc() 1353 tcm->tcm_ifindex = qdisc_dev(q)->ifindex; tc_fill_qdisc() 1354 tcm->tcm_parent = clid; tc_fill_qdisc() 1355 tcm->tcm_handle = q->handle; tc_fill_qdisc() 1356 tcm->tcm_info = atomic_read(&q->refcnt); tc_fill_qdisc() 1524 struct tcmsg *tcm = nlmsg_data(n); tc_ctl_tclass() local 1540 err = nlmsg_parse(n, sizeof(*tcm), tca, TCA_MAX, NULL); tc_ctl_tclass() 1544 dev = __dev_get_by_index(net, tcm->tcm_ifindex); tc_ctl_tclass() 1563 portid = tcm->tcm_parent; tc_ctl_tclass() 1564 clid = tcm->tcm_handle; tc_ctl_tclass() 1658 struct tcmsg *tcm; tc_fill_tclass() local 1665 nlh = nlmsg_put(skb, portid, seq, event, sizeof(*tcm), flags); tc_fill_tclass() 1668 tcm = nlmsg_data(nlh); tc_fill_tclass() 1669 tcm->tcm_family = AF_UNSPEC; tc_fill_tclass() 1670 tcm->tcm__pad1 = 0; tc_fill_tclass() 1671 tcm->tcm__pad2 = 0; tc_fill_tclass() 1672 tcm->tcm_ifindex = qdisc_dev(q)->ifindex; tc_fill_tclass() 1673 tcm->tcm_parent = q->handle; tc_fill_tclass() 1674 tcm->tcm_handle = q->handle; tc_fill_tclass() 1675 tcm->tcm_info = 0; tc_fill_tclass() 1678 if (cl_ops->dump && cl_ops->dump(q, cl, skb, tcm) < 0) tc_fill_tclass() 1735 struct tcmsg *tcm, struct netlink_callback *cb, tc_dump_tclass_qdisc() 1742 (tcm->tcm_parent && tc_dump_tclass_qdisc() 1743 TC_H_MAJ(tcm->tcm_parent) != q->handle)) { tc_dump_tclass_qdisc() 1764 struct tcmsg *tcm, struct netlink_callback *cb, tc_dump_tclass_root() 1772 if (tc_dump_tclass_qdisc(root, skb, tcm, cb, t_p, s_t) < 0) tc_dump_tclass_root() 1776 if (tc_dump_tclass_qdisc(q, skb, tcm, cb, t_p, s_t) < 0) tc_dump_tclass_root() 1785 struct tcmsg *tcm = nlmsg_data(cb->nlh); tc_dump_tclass() local 1791 if (nlmsg_len(cb->nlh) < sizeof(*tcm)) tc_dump_tclass() 1793 dev = dev_get_by_index(net, tcm->tcm_ifindex); tc_dump_tclass() 1800 if (tc_dump_tclass_root(dev->qdisc, skb, tcm, cb, &t, s_t) < 0) tc_dump_tclass() 1805 tc_dump_tclass_root(dev_queue->qdisc_sleeping, skb, tcm, cb, tc_dump_tclass() 1734 tc_dump_tclass_qdisc(struct Qdisc *q, struct sk_buff *skb, struct tcmsg *tcm, struct netlink_callback *cb, int *t_p, int s_t) tc_dump_tclass_qdisc() argument 1763 tc_dump_tclass_root(struct Qdisc *root, struct sk_buff *skb, struct tcmsg *tcm, struct netlink_callback *cb, int *t_p, int s_t) tc_dump_tclass_root() argument
|
H A D | sch_mq.c | 135 struct tcmsg *tcm) mq_select_queue() 137 unsigned int ntx = TC_H_MIN(tcm->tcm_parent); mq_select_queue() 186 struct sk_buff *skb, struct tcmsg *tcm) mq_dump_class() 190 tcm->tcm_parent = TC_H_ROOT; mq_dump_class() 191 tcm->tcm_handle |= TC_H_MIN(cl); mq_dump_class() 192 tcm->tcm_info = dev_queue->qdisc_sleeping->handle; mq_dump_class() 134 mq_select_queue(struct Qdisc *sch, struct tcmsg *tcm) mq_select_queue() argument 185 mq_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) mq_dump_class() argument
|
H A D | sch_mqprio.c | 289 struct sk_buff *skb, struct tcmsg *tcm) mqprio_dump_class() 294 tcm->tcm_parent = TC_H_ROOT; mqprio_dump_class() 295 tcm->tcm_info = 0; mqprio_dump_class() 301 tcm->tcm_parent = 0; mqprio_dump_class() 308 tcm->tcm_parent = mqprio_dump_class() 314 tcm->tcm_info = dev_queue->qdisc_sleeping->handle; mqprio_dump_class() 316 tcm->tcm_handle |= TC_H_MIN(cl); mqprio_dump_class() 288 mqprio_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) mqprio_dump_class() argument
|
H A D | sch_drr.c | 250 struct sk_buff *skb, struct tcmsg *tcm) drr_dump_class() 255 tcm->tcm_parent = TC_H_ROOT; drr_dump_class() 256 tcm->tcm_handle = cl->common.classid; drr_dump_class() 257 tcm->tcm_info = cl->qdisc->handle; drr_dump_class() 249 drr_dump_class(struct Qdisc *sch, unsigned long arg, struct sk_buff *skb, struct tcmsg *tcm) drr_dump_class() argument
|
H A D | sch_multiq.c | 343 struct sk_buff *skb, struct tcmsg *tcm) multiq_dump_class() 347 tcm->tcm_handle |= TC_H_MIN(cl); multiq_dump_class() 348 tcm->tcm_info = q->queues[cl - 1]->handle; multiq_dump_class() 342 multiq_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) multiq_dump_class() argument
|
H A D | sch_prio.c | 306 struct tcmsg *tcm) prio_dump_class() 310 tcm->tcm_handle |= TC_H_MIN(cl); prio_dump_class() 311 tcm->tcm_info = q->queues[cl-1]->handle; prio_dump_class() 305 prio_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) prio_dump_class() argument
|
H A D | sch_red.c | 300 struct sk_buff *skb, struct tcmsg *tcm) red_dump_class() 304 tcm->tcm_handle |= TC_H_MIN(1); red_dump_class() 305 tcm->tcm_info = q->qdisc->handle; red_dump_class() 299 red_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) red_dump_class() argument
|
H A D | sch_dsmark.c | 417 struct sk_buff *skb, struct tcmsg *tcm) dsmark_dump_class() 427 tcm->tcm_handle = TC_H_MAKE(TC_H_MAJ(sch->handle), cl - 1); dsmark_dump_class() 428 tcm->tcm_info = p->q->handle; dsmark_dump_class() 416 dsmark_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) dsmark_dump_class() argument
|
H A D | sch_atm.c | 587 struct sk_buff *skb, struct tcmsg *tcm) atm_tc_dump_class() 593 pr_debug("atm_tc_dump_class(sch %p,[qdisc %p],flow %p,skb %p,tcm %p)\n", atm_tc_dump_class() 594 sch, p, flow, skb, tcm); atm_tc_dump_class() 597 tcm->tcm_handle = flow->classid; atm_tc_dump_class() 598 tcm->tcm_info = flow->q->handle; atm_tc_dump_class() 586 atm_tc_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) atm_tc_dump_class() argument
|
H A D | sch_tbf.c | 490 struct sk_buff *skb, struct tcmsg *tcm) tbf_dump_class() 494 tcm->tcm_handle |= TC_H_MIN(1); tbf_dump_class() 495 tcm->tcm_info = q->qdisc->handle; tbf_dump_class() 489 tbf_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) tbf_dump_class() argument
|
H A D | sch_fq_codel.c | 550 struct sk_buff *skb, struct tcmsg *tcm) fq_codel_dump_class() 552 tcm->tcm_handle |= TC_H_MIN(cl); fq_codel_dump_class() 549 fq_codel_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) fq_codel_dump_class() argument
|
H A D | sch_cbq.c | 1566 struct sk_buff *skb, struct tcmsg *tcm) cbq_dump_class() 1572 tcm->tcm_parent = cl->tparent->common.classid; cbq_dump_class() 1574 tcm->tcm_parent = TC_H_ROOT; cbq_dump_class() 1575 tcm->tcm_handle = cl->common.classid; cbq_dump_class() 1576 tcm->tcm_info = cl->q->handle; cbq_dump_class() 1565 cbq_dump_class(struct Qdisc *sch, unsigned long arg, struct sk_buff *skb, struct tcmsg *tcm) cbq_dump_class() argument
|
H A D | sch_sfq.c | 832 struct sk_buff *skb, struct tcmsg *tcm) sfq_dump_class() 834 tcm->tcm_handle |= TC_H_MIN(cl); sfq_dump_class() 831 sfq_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) sfq_dump_class() argument
|
H A D | sch_hfsc.c | 1340 struct tcmsg *tcm) hfsc_dump_class() 1345 tcm->tcm_parent = cl->cl_parent ? cl->cl_parent->cl_common.classid : hfsc_dump_class() 1347 tcm->tcm_handle = cl->cl_common.classid; hfsc_dump_class() 1349 tcm->tcm_info = cl->qdisc->handle; hfsc_dump_class() 1339 hfsc_dump_class(struct Qdisc *sch, unsigned long arg, struct sk_buff *skb, struct tcmsg *tcm) hfsc_dump_class() argument
|
H A D | sch_htb.c | 1095 struct sk_buff *skb, struct tcmsg *tcm) htb_dump_class() 1104 tcm->tcm_parent = cl->parent ? cl->parent->common.classid : TC_H_ROOT; htb_dump_class() 1105 tcm->tcm_handle = cl->common.classid; htb_dump_class() 1107 tcm->tcm_info = cl->un.leaf.q->handle; htb_dump_class() 1094 htb_dump_class(struct Qdisc *sch, unsigned long arg, struct sk_buff *skb, struct tcmsg *tcm) htb_dump_class() argument
|
H A D | sch_qfq.c | 633 struct sk_buff *skb, struct tcmsg *tcm) qfq_dump_class() 638 tcm->tcm_parent = TC_H_ROOT; qfq_dump_class() 639 tcm->tcm_handle = cl->common.classid; qfq_dump_class() 640 tcm->tcm_info = cl->qdisc->handle; qfq_dump_class() 632 qfq_dump_class(struct Qdisc *sch, unsigned long arg, struct sk_buff *skb, struct tcmsg *tcm) qfq_dump_class() argument
|
H A D | sch_netem.c | 1080 struct sk_buff *skb, struct tcmsg *tcm) netem_dump_class() 1087 tcm->tcm_handle |= TC_H_MIN(1); netem_dump_class() 1088 tcm->tcm_info = q->qdisc->handle; netem_dump_class() 1079 netem_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) netem_dump_class() argument
|
H A D | sch_sfb.c | 597 struct sk_buff *skb, struct tcmsg *tcm) sfb_dump_class() 596 sfb_dump_class(struct Qdisc *sch, unsigned long cl, struct sk_buff *skb, struct tcmsg *tcm) sfb_dump_class() argument
|
/linux-4.4.14/arch/metag/include/asm/ |
H A D | mmu_context.h | 29 INIT_LIST_HEAD(&mm->context.tcm); init_new_context() 37 #include <asm/tcm.h> 43 list_for_each_entry_safe(pos, n, &mm->context.tcm, list) { list_for_each_entry_safe()
|
H A D | mmu.h | 16 struct list_head tcm; member in struct:__anon1831
|
/linux-4.4.14/arch/metag/kernel/ |
H A D | process.c | 28 #include <asm/tcm.h> 417 struct tcm_allocation *tcm; __metag_elf_map() local 420 tcm = kmalloc(sizeof(*tcm), GFP_KERNEL); __metag_elf_map() 421 if (!tcm) __metag_elf_map() 426 kfree(tcm); __metag_elf_map() 430 tcm->tag = tcm_tag; __metag_elf_map() 431 tcm->addr = tcm_addr; __metag_elf_map() 432 tcm->size = raw_size; __metag_elf_map() 434 list_add(&tcm->list, ¤t->mm->context.tcm); __metag_elf_map()
|
H A D | tcm.c | 14 #include <asm/tcm.h> 88 * Find the tag of the tcm memory region that contains the
|
/linux-4.4.14/drivers/net/wireless/brcm80211/brcmfmac/ |
H A D | pcie.c | 261 void __iomem *tcm; member in struct:brcmf_pciedev_info 332 void __iomem *address = devinfo->tcm + mem_offset; brcmf_pcie_read_tcm8() 341 void __iomem *address = devinfo->tcm + mem_offset; brcmf_pcie_read_tcm16() 351 void __iomem *address = devinfo->tcm + mem_offset; brcmf_pcie_write_tcm16() 379 void __iomem *address = devinfo->tcm + mem_offset; brcmf_pcie_read_tcm32() 389 void __iomem *address = devinfo->tcm + mem_offset; brcmf_pcie_write_tcm32() 398 void __iomem *addr = devinfo->tcm + devinfo->ci->rambase + mem_offset; brcmf_pcie_read_ram32() 408 void __iomem *addr = devinfo->tcm + devinfo->ci->rambase + mem_offset; brcmf_pcie_write_ram32() 418 void __iomem *address = devinfo->tcm + mem_offset; brcmf_pcie_copy_mem_todev() 459 void __iomem *address = devinfo->tcm + mem_offset; brcmf_pcie_copy_dev_tomem() 1661 devinfo->tcm = ioremap_nocache(bar1_addr, BRCMF_PCIE_TCM_MAP_SIZE); brcmf_pcie_get_resource() 1664 if (!devinfo->regs || !devinfo->tcm) { brcmf_pcie_get_resource() 1666 devinfo->tcm); brcmf_pcie_get_resource() 1672 devinfo->tcm, (unsigned long long)bar1_addr); brcmf_pcie_get_resource() 1680 if (devinfo->tcm) brcmf_pcie_release_resource() 1681 iounmap(devinfo->tcm); brcmf_pcie_release_resource()
|
/linux-4.4.14/arch/arm/kernel/ |
H A D | Makefile | 60 obj-$(CONFIG_HAVE_TCM) += tcm.o
|
H A D | vmlinux.lds.S | 297 *(.tcm.text) 298 *(.tcm.rodata) 318 *(.tcm.data)
|
/linux-4.4.14/drivers/target/ |
H A D | target_core_user.c | 869 size = snprintf(NULL, 0, "tcm-user/%u/%s/%s", hba->host_id, udev->name, tcmu_configure_device() 876 used = snprintf(str, size, "tcm-user/%u/%s", hba->host_id, udev->name); tcmu_configure_device() 904 info->mem[0].name = "tcm-user command & data buffer"; tcmu_configure_device()
|
/linux-4.4.14/drivers/scsi/qla2xxx/ |
H A D | qla_target.h | 981 * BIT_6 - tcm request to abort/Term exchange.
|
H A D | tcm_qla2xxx.c | 2 * This file contains tcm implementation using v4 configfs fabric infrastructure
|
H A D | qla_target.c | 2338 /* FUTURE: does tcm require T10CRC<->IPCKSUM conversion? */ qlt_build_ctio_crc2_pkt()
|
/linux-4.4.14/drivers/scsi/bfa/ |
H A D | bfi.h | 1101 u32 data[BFI_LMSG_PL_WSZ]; /* fill up tcm prefetch area */
|
/linux-4.4.14/arch/arm/mm/ |
H A D | mmu.c | 43 #include "tcm.h"
|