Home
last modified time | relevance | path

Searched refs:op (Results 1 – 25 of 851) sorted by relevance

12345678910>>...35

/drivers/hwtracing/coresight/
Dcoresight-etm4x.h261 #define ETE_ONLY_SYSREG_LIST(op, val) \ argument
262 CASE_##op((val), TRCRSR) \
263 CASE_##op((val), TRCEXTINSELRn(1)) \
264 CASE_##op((val), TRCEXTINSELRn(2)) \
265 CASE_##op((val), TRCEXTINSELRn(3))
268 #define ETM4x_ONLY_SYSREG_LIST(op, val) \ argument
269 CASE_##op((val), TRCPROCSELR) \
270 CASE_##op((val), TRCOSLAR)
272 #define ETM_COMMON_SYSREG_LIST(op, val) \ argument
273 CASE_##op((val), TRCPRGCTLR) \
[all …]
/drivers/xen/
Defi.c42 #define efi_data(op) (op.u.efi_runtime_call) argument
46 struct xen_platform_op op = INIT_EFI_OP(get_time); in xen_efi_get_time() local
48 if (HYPERVISOR_platform_op(&op) < 0) in xen_efi_get_time()
52 BUILD_BUG_ON(sizeof(*tm) != sizeof(efi_data(op).u.get_time.time)); in xen_efi_get_time()
53 memcpy(tm, &efi_data(op).u.get_time.time, sizeof(*tm)); in xen_efi_get_time()
57 tc->resolution = efi_data(op).u.get_time.resolution; in xen_efi_get_time()
58 tc->accuracy = efi_data(op).u.get_time.accuracy; in xen_efi_get_time()
59 tc->sets_to_zero = !!(efi_data(op).misc & in xen_efi_get_time()
63 return efi_data(op).status; in xen_efi_get_time()
68 struct xen_platform_op op = INIT_EFI_OP(set_time); in xen_efi_set_time() local
[all …]
/drivers/net/dsa/sja1105/
Dsja1105_static_config.c57 size_t len, enum packing_op op) in sja1105_packing() argument
59 int rc = packing(buf, val, start, end, len, op, QUIRK_LSW32_IS_FIRST); in sja1105_packing()
95 enum packing_op op) in sja1105et_avb_params_entry_packing() argument
100 sja1105_packing(buf, &entry->destmeta, 95, 48, size, op); in sja1105et_avb_params_entry_packing()
101 sja1105_packing(buf, &entry->srcmeta, 47, 0, size, op); in sja1105et_avb_params_entry_packing()
106 enum packing_op op) in sja1105pqrs_avb_params_entry_packing() argument
111 sja1105_packing(buf, &entry->cas_master, 126, 126, size, op); in sja1105pqrs_avb_params_entry_packing()
112 sja1105_packing(buf, &entry->destmeta, 125, 78, size, op); in sja1105pqrs_avb_params_entry_packing()
113 sja1105_packing(buf, &entry->srcmeta, 77, 30, size, op); in sja1105pqrs_avb_params_entry_packing()
118 enum packing_op op) in sja1105et_general_params_entry_packing() argument
[all …]
Dsja1105_dynamic_config.c200 enum packing_op op) in sja1105et_vl_lookup_cmd_packing() argument
204 sja1105_packing(buf, &cmd->valid, 31, 31, size, op); in sja1105et_vl_lookup_cmd_packing()
205 sja1105_packing(buf, &cmd->errors, 30, 30, size, op); in sja1105et_vl_lookup_cmd_packing()
206 sja1105_packing(buf, &cmd->rdwrset, 29, 29, size, op); in sja1105et_vl_lookup_cmd_packing()
207 sja1105_packing(buf, &cmd->index, 9, 0, size, op); in sja1105et_vl_lookup_cmd_packing()
213 enum packing_op op) in sja1105pqrs_vl_lookup_cmd_packing() argument
218 sja1105_packing(p, &cmd->valid, 31, 31, size, op); in sja1105pqrs_vl_lookup_cmd_packing()
219 sja1105_packing(p, &cmd->errors, 30, 30, size, op); in sja1105pqrs_vl_lookup_cmd_packing()
220 sja1105_packing(p, &cmd->rdwrset, 29, 29, size, op); in sja1105pqrs_vl_lookup_cmd_packing()
221 sja1105_packing(p, &cmd->index, 9, 0, size, op); in sja1105pqrs_vl_lookup_cmd_packing()
[all …]
/drivers/acpi/acpica/
Dpsobject.c157 union acpi_parse_object **op) in acpi_ps_build_named_op() argument
215 walk_state->op = NULL; in acpi_ps_build_named_op()
217 status = walk_state->descending_callback(walk_state, op); in acpi_ps_build_named_op()
226 if (!*op) { in acpi_ps_build_named_op()
230 status = acpi_ps_next_parse_state(walk_state, *op, status); in acpi_ps_build_named_op()
238 acpi_ps_append_arg(*op, unnamed_op->common.value.arg); in acpi_ps_build_named_op()
244 (*op)->common.inline_comment = unnamed_op->common.inline_comment; in acpi_ps_build_named_op()
245 (*op)->common.end_node_comment = unnamed_op->common.end_node_comment; in acpi_ps_build_named_op()
246 (*op)->common.close_brace_comment = in acpi_ps_build_named_op()
248 (*op)->common.name_comment = unnamed_op->common.name_comment; in acpi_ps_build_named_op()
[all …]
Ddswload.c106 union acpi_parse_object *op; in acpi_ds_load1_begin_op() local
113 ACPI_FUNCTION_TRACE_PTR(ds_load1_begin_op, walk_state->op); in acpi_ds_load1_begin_op()
115 op = walk_state->op; in acpi_ds_load1_begin_op()
116 ACPI_DEBUG_PRINT((ACPI_DB_DISPATCH, "Op=%p State=%p\n", op, in acpi_ds_load1_begin_op()
121 if (op) { in acpi_ds_load1_begin_op()
123 *out_op = op; in acpi_ds_load1_begin_op()
129 if (op->common.node) { in acpi_ds_load1_begin_op()
130 *out_op = op; in acpi_ds_load1_begin_op()
142 "State=%p Op=%p [%s]\n", walk_state, op, in acpi_ds_load1_begin_op()
163 acpi_dm_add_op_to_external_list(op, path, in acpi_ds_load1_begin_op()
[all …]
Dpsutils.c56 void acpi_ps_init_op(union acpi_parse_object *op, u16 opcode) in acpi_ps_init_op() argument
60 op->common.descriptor_type = ACPI_DESC_TYPE_PARSER; in acpi_ps_init_op()
61 op->common.aml_opcode = opcode; in acpi_ps_init_op()
63 ACPI_DISASM_ONLY_MEMBERS(acpi_ut_safe_strncpy(op->common.aml_op_name, in acpi_ps_init_op()
66 sizeof(op->common. in acpi_ps_init_op()
87 union acpi_parse_object *op; in acpi_ps_alloc_op() local
111 op = acpi_os_acquire_object(acpi_gbl_ps_node_cache); in acpi_ps_alloc_op()
115 op = acpi_os_acquire_object(acpi_gbl_ps_node_ext_cache); in acpi_ps_alloc_op()
120 if (op) { in acpi_ps_alloc_op()
121 acpi_ps_init_op(op, opcode); in acpi_ps_alloc_op()
[all …]
Ddswexec.c78 status = acpi_ds_create_operand(walk_state, walk_state->op, 0); in acpi_ds_get_predicate_value()
148 walk_state->op)); in acpi_ds_get_predicate_value()
186 union acpi_parse_object *op; in acpi_ds_exec_begin_op() local
192 op = walk_state->op; in acpi_ds_exec_begin_op()
193 if (!op) { in acpi_ds_exec_begin_op()
199 op = *out_op; in acpi_ds_exec_begin_op()
200 walk_state->op = op; in acpi_ds_exec_begin_op()
201 walk_state->opcode = op->common.aml_opcode; in acpi_ds_exec_begin_op()
203 acpi_ps_get_opcode_info(op->common.aml_opcode); in acpi_ds_exec_begin_op()
211 op)); in acpi_ds_exec_begin_op()
[all …]
Dpsloop.c33 u8 * aml_op_start, union acpi_parse_object *op);
51 u8 * aml_op_start, union acpi_parse_object *op) in acpi_ps_get_arguments() argument
60 op->common.aml_op_name)); in acpi_ps_get_arguments()
62 switch (op->common.aml_opcode) { in acpi_ps_get_arguments()
74 op); in acpi_ps_get_arguments()
81 op, in acpi_ps_get_arguments()
98 switch (op->common.aml_opcode) { in acpi_ps_get_arguments()
123 acpi_ps_append_arg(op, arg); in acpi_ps_get_arguments()
136 switch (op->common.aml_opcode) { in acpi_ps_get_arguments()
144 op->named.data = walk_state->parser_state.aml; in acpi_ps_get_arguments()
[all …]
Ddswload2.c41 union acpi_parse_object *op; in acpi_ds_load2_begin_op() local
50 op = walk_state->op; in acpi_ds_load2_begin_op()
51 ACPI_DEBUG_PRINT((ACPI_DB_DISPATCH, "Op=%p State=%p\n", op, in acpi_ds_load2_begin_op()
54 if (op) { in acpi_ds_load2_begin_op()
79 buffer_ptr = op->common.value.string; in acpi_ds_load2_begin_op()
89 buffer_ptr = ACPI_CAST_PTR(char, &op->named.name); in acpi_ds_load2_begin_op()
103 "State=%p Op=%p Type=%X\n", walk_state, op, in acpi_ds_load2_begin_op()
131 if (op && (op->named.node == acpi_gbl_root_node)) { in acpi_ds_load2_begin_op()
132 node = op->named.node; in acpi_ds_load2_begin_op()
237 if (op && op->common.node) { in acpi_ds_load2_begin_op()
[all …]
Dpstree.c21 union acpi_parse_object *acpi_ps_get_child(union acpi_parse_object *op);
37 union acpi_parse_object *acpi_ps_get_arg(union acpi_parse_object *op, u32 argn) in acpi_ps_get_arg() argument
52 op_info = acpi_ps_get_opcode_info(op->common.aml_opcode); in acpi_ps_get_arg()
71 arg = op->common.value.arg; in acpi_ps_get_arg()
94 acpi_ps_append_arg(union acpi_parse_object *op, union acpi_parse_object *arg) in acpi_ps_append_arg() argument
101 if (!op) { in acpi_ps_append_arg()
107 op_info = acpi_ps_get_opcode_info(op->common.aml_opcode); in acpi_ps_append_arg()
113 op->common.aml_opcode)); in acpi_ps_append_arg()
128 if (op->common.value.arg) { in acpi_ps_append_arg()
132 prev_arg = op->common.value.arg; in acpi_ps_append_arg()
[all …]
Dpsparse.c101 union acpi_parse_object *op) in acpi_ps_complete_this_op() argument
109 ACPI_FUNCTION_TRACE_PTR(ps_complete_this_op, op); in acpi_ps_complete_this_op()
113 if (!op) { in acpi_ps_complete_this_op()
117 acpi_ex_stop_trace_opcode(op, walk_state); in acpi_ps_complete_this_op()
129 if (op->common.parent) { in acpi_ps_complete_this_op()
130 prev = op->common.parent->common.value.arg; in acpi_ps_complete_this_op()
143 acpi_ps_get_opcode_info(op->common.parent->common. in acpi_ps_complete_this_op()
158 op->common.aml); in acpi_ps_complete_this_op()
169 if ((op->common.parent->common.aml_opcode == in acpi_ps_complete_this_op()
171 || (op->common.parent->common.aml_opcode == in acpi_ps_complete_this_op()
[all …]
Dpswalk.c31 union acpi_parse_object *op = subtree_root; in acpi_ps_delete_parse_tree() local
42 while (op) { in acpi_ps_delete_parse_tree()
43 if (op != parent) { in acpi_ps_delete_parse_tree()
54 acpi_ps_get_opcode_name(op-> in acpi_ps_delete_parse_tree()
57 op); in acpi_ps_delete_parse_tree()
59 if (op->named.aml_opcode == AML_INT_NAMEPATH_OP) { in acpi_ps_delete_parse_tree()
61 op->common.value.string); in acpi_ps_delete_parse_tree()
63 if (op->named.aml_opcode == AML_STRING_OP) { in acpi_ps_delete_parse_tree()
65 op->common.value.string); in acpi_ps_delete_parse_tree()
72 next = acpi_ps_get_arg(op, 0); in acpi_ps_delete_parse_tree()
[all …]
Ddsobject.c37 union acpi_parse_object *op, in acpi_ds_build_internal_object() argument
46 if (op->common.aml_opcode == AML_INT_NAMEPATH_OP) { in acpi_ds_build_internal_object()
52 if (!op->common.node) { in acpi_ds_build_internal_object()
56 if ((op->common.parent->common.aml_opcode == in acpi_ds_build_internal_object()
58 || (op->common.parent->common.aml_opcode == in acpi_ds_build_internal_object()
69 op->common.value.string, in acpi_ds_build_internal_object()
78 &(op->common.node))); in acpi_ds_build_internal_object()
82 op->common.value. in acpi_ds_build_internal_object()
95 (op->common.aml_opcode))-> in acpi_ds_build_internal_object()
102 acpi_ds_init_object_from_op(walk_state, op, op->common.aml_opcode, in acpi_ds_build_internal_object()
[all …]
/drivers/crypto/allwinner/sun4i-ss/
Dsun4i-ss-hash.c20 struct sun4i_tfm_ctx *op = crypto_tfm_ctx(tfm); in sun4i_hash_crainit() local
25 memset(op, 0, sizeof(struct sun4i_tfm_ctx)); in sun4i_hash_crainit()
28 op->ss = algt->ss; in sun4i_hash_crainit()
30 err = pm_runtime_resume_and_get(op->ss->dev); in sun4i_hash_crainit()
41 struct sun4i_tfm_ctx *op = crypto_tfm_ctx(tfm); in sun4i_hash_craexit() local
43 pm_runtime_put(op->ss->dev); in sun4i_hash_craexit()
49 struct sun4i_req_ctx *op = ahash_request_ctx(areq); in sun4i_hash_init() local
54 memset(op, 0, sizeof(struct sun4i_req_ctx)); in sun4i_hash_init()
57 op->mode = algt->mode; in sun4i_hash_init()
64 struct sun4i_req_ctx *op = ahash_request_ctx(areq); in sun4i_hash_export_md5() local
[all …]
Dsun4i-ss-cipher.c18 struct sun4i_tfm_ctx *op = crypto_skcipher_ctx(tfm); in sun4i_ss_opti_poll() local
19 struct sun4i_ss_ctx *ss = op->ss; in sun4i_ss_opti_poll()
62 for (i = 0; i < op->keylen / 4; i++) in sun4i_ss_opti_poll()
63 writesl(ss->base + SS_KEY0 + i * 4, &op->key[i], 1); in sun4i_ss_opti_poll()
151 struct sun4i_tfm_ctx *op = crypto_skcipher_ctx(tfm); in sun4i_ss_cipher_poll_fallback() local
162 skcipher_request_set_tfm(&ctx->fallback_req, op->fallback_tfm); in sun4i_ss_cipher_poll_fallback()
179 struct sun4i_tfm_ctx *op = crypto_skcipher_ctx(tfm); in sun4i_ss_cipher_poll() local
180 struct sun4i_ss_ctx *ss = op->ss; in sun4i_ss_cipher_poll()
254 for (i = 0; i < op->keylen / 4; i++) in sun4i_ss_cipher_poll()
255 writesl(ss->base + SS_KEY0 + i * 4, &op->key[i], 1); in sun4i_ss_cipher_poll()
[all …]
/drivers/spi/
Dspi-mem.c37 const struct spi_mem_op *op, in spi_controller_dma_map_mem_op_data() argument
42 if (!op->data.nbytes) in spi_controller_dma_map_mem_op_data()
45 if (op->data.dir == SPI_MEM_DATA_OUT && ctlr->dma_tx) in spi_controller_dma_map_mem_op_data()
47 else if (op->data.dir == SPI_MEM_DATA_IN && ctlr->dma_rx) in spi_controller_dma_map_mem_op_data()
55 return spi_map_buf(ctlr, dmadev, sgt, op->data.buf.in, op->data.nbytes, in spi_controller_dma_map_mem_op_data()
56 op->data.dir == SPI_MEM_DATA_IN ? in spi_controller_dma_map_mem_op_data()
83 const struct spi_mem_op *op, in spi_controller_dma_unmap_mem_op_data() argument
88 if (!op->data.nbytes) in spi_controller_dma_unmap_mem_op_data()
91 if (op->data.dir == SPI_MEM_DATA_OUT && ctlr->dma_tx) in spi_controller_dma_unmap_mem_op_data()
93 else if (op->data.dir == SPI_MEM_DATA_IN && ctlr->dma_rx) in spi_controller_dma_unmap_mem_op_data()
[all …]
Dspi-wpcm-fiu.c136 bool (*match)(const struct spi_mem_op *op);
137 int (*exec)(struct spi_mem *mem, const struct spi_mem_op *op);
140 static bool wpcm_fiu_normal_match(const struct spi_mem_op *op) in wpcm_fiu_normal_match() argument
143 if (op->cmd.opcode == 0x0b) in wpcm_fiu_normal_match()
146 return (op->addr.nbytes == 0 || op->addr.nbytes == 3) && in wpcm_fiu_normal_match()
147 op->dummy.nbytes == 0 && op->data.nbytes <= 4; in wpcm_fiu_normal_match()
150 static int wpcm_fiu_normal_exec(struct spi_mem *mem, const struct spi_mem_op *op) in wpcm_fiu_normal_exec() argument
155 wpcm_fiu_set_opcode(fiu, op->cmd.opcode); in wpcm_fiu_normal_exec()
156 wpcm_fiu_set_addr(fiu, op->addr.val); in wpcm_fiu_normal_exec()
157 if (op->data.dir == SPI_MEM_DATA_OUT) in wpcm_fiu_normal_exec()
[all …]
Dspi-mtk-nor.c163 static void mtk_nor_set_addr(struct mtk_nor *sp, const struct spi_mem_op *op) in mtk_nor_set_addr() argument
165 u32 addr = op->addr.val; in mtk_nor_set_addr()
172 if (op->addr.nbytes == 4) { in mtk_nor_set_addr()
180 static bool need_bounce(struct mtk_nor *sp, const struct spi_mem_op *op) in need_bounce() argument
182 return ((uintptr_t)op->data.buf.in & MTK_NOR_DMA_ALIGN_MASK); in need_bounce()
185 static bool mtk_nor_match_read(const struct spi_mem_op *op) in mtk_nor_match_read() argument
189 if (op->dummy.nbytes) in mtk_nor_match_read()
190 dummy = op->dummy.nbytes * BITS_PER_BYTE / op->dummy.buswidth; in mtk_nor_match_read()
192 if ((op->data.buswidth == 2) || (op->data.buswidth == 4)) { in mtk_nor_match_read()
193 if (op->addr.buswidth == 1) in mtk_nor_match_read()
[all …]
/drivers/gpu/drm/nouveau/
Dnouveau_uvmm.c62 enum vm_bind_op op; member
457 struct drm_gpuva_op *op = last; in nouveau_uvmm_sm_prepare_unwind() local
462 drm_gpuva_for_each_op_from_reverse(op, ops) { in nouveau_uvmm_sm_prepare_unwind()
463 switch (op->op) { in nouveau_uvmm_sm_prepare_unwind()
468 struct drm_gpuva_op_remap *r = &op->remap; in nouveau_uvmm_sm_prepare_unwind()
480 op_unmap_prepare_unwind(op->unmap.va); in nouveau_uvmm_sm_prepare_unwind()
493 drm_gpuva_for_each_op(op, ops) { in nouveau_uvmm_sm_prepare_unwind()
494 switch (op->op) { in nouveau_uvmm_sm_prepare_unwind()
504 struct drm_gpuva_op_remap *r = &op->remap; in nouveau_uvmm_sm_prepare_unwind()
522 struct drm_gpuva_op_unmap *u = &op->unmap; in nouveau_uvmm_sm_prepare_unwind()
[all …]
/drivers/xen/xen-pciback/
Dpciback_ops.c143 struct pci_dev *dev, struct xen_pci_op *op) in xen_pcibk_enable_msi() argument
158 op->value = 0; in xen_pcibk_enable_msi()
165 op->value = dev->irq ? xen_pirq_from_irq(dev->irq) : 0; in xen_pcibk_enable_msi()
167 dev_dbg(&dev->dev, "MSI: %d\n", op->value); in xen_pcibk_enable_msi()
178 struct pci_dev *dev, struct xen_pci_op *op) in xen_pcibk_disable_msi() argument
189 op->value = dev->irq ? xen_pirq_from_irq(dev->irq) : 0; in xen_pcibk_disable_msi()
191 dev_dbg(&dev->dev, "MSI: %d\n", op->value); in xen_pcibk_disable_msi()
198 struct pci_dev *dev, struct xen_pci_op *op) in xen_pcibk_enable_msix() argument
207 if (op->value > SH_INFO_MAX_VEC) in xen_pcibk_enable_msix()
222 entries = kmalloc_array(op->value, sizeof(*entries), GFP_KERNEL); in xen_pcibk_enable_msix()
[all …]
/drivers/crypto/ccp/
Dccp-dev-v3.c74 static int ccp_do_cmd(struct ccp_op *op, u32 *cr, unsigned int cr_count) in ccp_do_cmd() argument
76 struct ccp_cmd_queue *cmd_q = op->cmd_q; in ccp_do_cmd()
90 | (op->jobid << REQ0_JOBID_SHIFT) in ccp_do_cmd()
93 if (op->soc) in ccp_do_cmd()
97 if (op->ioc || !cmd_q->free_slots) in ccp_do_cmd()
122 | op->jobid; in ccp_do_cmd()
131 } else if (op->soc) { in ccp_do_cmd()
135 | op->jobid; in ccp_do_cmd()
148 static int ccp_perform_aes(struct ccp_op *op) in ccp_perform_aes() argument
154 | (op->u.aes.type << REQ1_AES_TYPE_SHIFT) in ccp_perform_aes()
[all …]
Dccp-ops.c343 struct ccp_op *op, unsigned int block_size, in ccp_prepare_data() argument
371 op->soc = 0; in ccp_prepare_data()
379 op->soc = 1; in ccp_prepare_data()
380 op->src.u.dma.address = src->dm_wa.dma.address; in ccp_prepare_data()
381 op->src.u.dma.offset = 0; in ccp_prepare_data()
382 op->src.u.dma.length = (blocksize_op) ? block_size : cp_len; in ccp_prepare_data()
387 op->src.u.dma.address = sg_dma_address(src->sg_wa.dma_sg); in ccp_prepare_data()
388 op->src.u.dma.offset = src->sg_wa.sg_used; in ccp_prepare_data()
389 op->src.u.dma.length = op_len & ~(block_size - 1); in ccp_prepare_data()
391 ccp_update_sg_workarea(&src->sg_wa, op->src.u.dma.length); in ccp_prepare_data()
[all …]
Dccp-dev-v5.c277 static int ccp5_perform_aes(struct ccp_op *op) in ccp5_perform_aes() argument
281 u32 key_addr = op->sb_key * LSB_ITEM_SIZE; in ccp5_perform_aes()
283 op->cmd_q->total_aes_ops++; in ccp5_perform_aes()
290 CCP5_CMD_SOC(&desc) = op->soc; in ccp5_perform_aes()
292 CCP5_CMD_INIT(&desc) = op->init; in ccp5_perform_aes()
293 CCP5_CMD_EOM(&desc) = op->eom; in ccp5_perform_aes()
297 CCP_AES_ENCRYPT(&function) = op->u.aes.action; in ccp5_perform_aes()
298 CCP_AES_MODE(&function) = op->u.aes.mode; in ccp5_perform_aes()
299 CCP_AES_TYPE(&function) = op->u.aes.type; in ccp5_perform_aes()
300 CCP_AES_SIZE(&function) = op->u.aes.size; in ccp5_perform_aes()
[all …]
/drivers/sbus/char/
Dopenprom.c130 static int opromgetprop(void __user *argp, struct device_node *dp, struct openpromio *op, int bufsi… in opromgetprop() argument
136 !(pval = of_get_property(dp, op->oprom_array, &len)) || in opromgetprop()
138 return copyout(argp, op, sizeof(int)); in opromgetprop()
140 memcpy(op->oprom_array, pval, len); in opromgetprop()
141 op->oprom_array[len] = '\0'; in opromgetprop()
142 op->oprom_size = len; in opromgetprop()
144 return copyout(argp, op, sizeof(int) + bufsize); in opromgetprop()
147 static int opromnxtprop(void __user *argp, struct device_node *dp, struct openpromio *op, int bufsi… in opromnxtprop() argument
153 return copyout(argp, op, sizeof(int)); in opromnxtprop()
154 if (op->oprom_array[0] == '\0') { in opromnxtprop()
[all …]

12345678910>>...35