/kernel/linux/linux-5.10/arch/powerpc/platforms/cell/spufs/ |
H A D | switch.c | 169 struct spu_priv2 __iomem *priv2 = spu->priv2; in save_mfc_cntl() local 174 switch (in_be64(&priv2->mfc_control_RW) & in save_mfc_cntl() 177 POLL_WHILE_FALSE((in_be64(&priv2->mfc_control_RW) & in save_mfc_cntl() 183 csa->priv2.mfc_control_RW = in save_mfc_cntl() 184 in_be64(&priv2->mfc_control_RW) | in save_mfc_cntl() 188 out_be64(&priv2->mfc_control_RW, MFC_CNTL_SUSPEND_DMA_QUEUE); in save_mfc_cntl() 189 POLL_WHILE_FALSE((in_be64(&priv2->mfc_control_RW) & in save_mfc_cntl() 193 csa->priv2.mfc_control_RW = in save_mfc_cntl() 194 in_be64(&priv2 in save_mfc_cntl() 249 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_stopped_status() local 265 struct spu_priv2 __iomem *priv2 = spu->priv2; halt_mfc_decr() local 335 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_queues() local 403 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_csr_tsq() local 415 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_csr_cmd() local 427 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_csr_ato() local 458 struct spu_priv2 __iomem *priv2 = spu->priv2; purge_mfc_queue() local 472 struct spu_priv2 __iomem *priv2 = spu->priv2; wait_purge_complete() local 513 struct spu_priv2 __iomem *priv2 = spu->priv2; save_spu_privcntl() local 523 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_spu_privcntl() local 535 struct spu_priv2 __iomem *priv2 = spu->priv2; save_spu_lslr() local 545 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_spu_lslr() local 557 struct spu_priv2 __iomem *priv2 = spu->priv2; save_spu_cfg() local 607 struct spu_priv2 __iomem *priv2 = spu->priv2; save_ppuint_mb() local 617 struct spu_priv2 __iomem *priv2 = spu->priv2; save_ch_part1() local 643 struct spu_priv2 __iomem *priv2 = spu->priv2; save_spu_mb() local 661 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_cmd() local 674 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_ch() local 694 struct spu_priv2 __iomem *priv2 = spu->priv2; resume_mfc_queue() local 964 struct spu_priv2 __iomem *priv2 = spu->priv2; suspend_mfc_and_halt_decr() local 978 struct spu_priv2 __iomem *priv2 = spu->priv2; wait_suspend_mfc_complete() local 1067 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_ch_part1() local 1092 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_ch_part2() local 1312 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_spu_privcntl() local 1386 struct spu_priv2 __iomem *priv2 = spu->priv2; suspend_mfc() local 1418 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_queues() local 1474 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_csr_tsq() local 1486 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_csr_cmd() local 1499 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_csr_ato() local 1559 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_ch_part1() local 1578 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_ch_part2() local 1601 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_spu_lslr() local 1612 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_spu_cfg() local 1642 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_spu_mb() local 1674 struct spu_priv2 __iomem *priv2 = spu->priv2; check_ppuint_mb_stat() local 1729 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_cntl() local 1876 struct spu_priv2 __iomem *priv2 = spu->priv2; force_spu_isolate_exit() local [all...] |
H A D | hw_ops.c | 86 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_hw_ibox_read() local 92 *data = in_be64(&priv2->puint_mb_R); in spu_hw_ibox_read() 137 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_hw_signal1_type_set() local 141 tmp = in_be64(&priv2->spu_cfg_RW); in spu_hw_signal1_type_set() 146 out_be64(&priv2->spu_cfg_RW, tmp); in spu_hw_signal1_type_set() 152 return ((in_be64(&ctx->spu->priv2->spu_cfg_RW) & 1) != 0); in spu_hw_signal1_type_get() 158 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_hw_signal2_type_set() local 302 struct spu_priv2 __iomem *priv2 = ctx->spu->priv2; spu_hw_restart_dma() local [all...] |
H A D | backing_ops.c | 29 * Reads/writes to various problem and priv2 registers require 125 *data = ctx->csa.priv2.puint_mb_R; in spu_backing_ibox_read() 178 if (ctx->csa.priv2.spu_cfg_RW & 0x1) in spu_backing_signal1_write() 195 if (ctx->csa.priv2.spu_cfg_RW & 0x2) in spu_backing_signal2_write() 209 tmp = ctx->csa.priv2.spu_cfg_RW; in spu_backing_signal1_type_set() 214 ctx->csa.priv2.spu_cfg_RW = tmp; in spu_backing_signal1_type_set() 220 return ((ctx->csa.priv2.spu_cfg_RW & 1) != 0); in spu_backing_signal1_type_get() 228 tmp = ctx->csa.priv2.spu_cfg_RW; in spu_backing_signal2_type_set() 233 ctx->csa.priv2.spu_cfg_RW = tmp; in spu_backing_signal2_type_set() 239 return ((ctx->csa.priv2 in spu_backing_signal2_type_get() [all...] |
H A D | file.c | 1803 ctx->csa.priv2.mfc_control_RW |= MFC_CNTL_DECREMENTER_RUNNING; in spufs_decr_status_set() 1805 ctx->csa.priv2.mfc_control_RW &= ~MFC_CNTL_DECREMENTER_RUNNING; in spufs_decr_status_set() 1813 if (ctx->csa.priv2.mfc_control_RW & MFC_CNTL_DECREMENTER_RUNNING) in spufs_decr_status_get() 1915 return ctx->csa.priv2.spu_lslr_RW; in spufs_lslr_get() 1994 return spufs_dump_emit(cprm, &ctx->csa.priv2.puint_mb_R, in spufs_ibox_info_dump() 1995 sizeof(ctx->csa.priv2.puint_mb_R)); in spufs_ibox_info_dump() 2010 data = ctx->csa.priv2.puint_mb_R; in spufs_ibox_info_read() 2070 info->dma_info_type = ctx->csa.priv2.spu_tag_status_query_RW; in spufs_get_dma_info() 2077 struct mfc_cq_sr *spuqp = &ctx->csa.priv2.spuq[i]; in spufs_get_dma_info() 2131 struct mfc_cq_sr *puqp = &ctx->csa.priv2 in spufs_get_proxydma_info() 2496 struct spu_priv2 __iomem *priv2 = spu->priv2; spufs_show_ctx() local [all...] |
H A D | run.c | 104 mfc_cntl = &ctx->spu->priv2->mfc_control_RW; in spu_setup_isolated()
|
/kernel/linux/linux-6.6/arch/powerpc/platforms/cell/spufs/ |
H A D | switch.c | 169 struct spu_priv2 __iomem *priv2 = spu->priv2; in save_mfc_cntl() local 174 switch (in_be64(&priv2->mfc_control_RW) & in save_mfc_cntl() 177 POLL_WHILE_FALSE((in_be64(&priv2->mfc_control_RW) & in save_mfc_cntl() 183 csa->priv2.mfc_control_RW = in save_mfc_cntl() 184 in_be64(&priv2->mfc_control_RW) | in save_mfc_cntl() 188 out_be64(&priv2->mfc_control_RW, MFC_CNTL_SUSPEND_DMA_QUEUE); in save_mfc_cntl() 189 POLL_WHILE_FALSE((in_be64(&priv2->mfc_control_RW) & in save_mfc_cntl() 193 csa->priv2.mfc_control_RW = in save_mfc_cntl() 194 in_be64(&priv2 in save_mfc_cntl() 249 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_stopped_status() local 265 struct spu_priv2 __iomem *priv2 = spu->priv2; halt_mfc_decr() local 335 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_queues() local 403 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_csr_tsq() local 415 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_csr_cmd() local 427 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_csr_ato() local 458 struct spu_priv2 __iomem *priv2 = spu->priv2; purge_mfc_queue() local 472 struct spu_priv2 __iomem *priv2 = spu->priv2; wait_purge_complete() local 513 struct spu_priv2 __iomem *priv2 = spu->priv2; save_spu_privcntl() local 523 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_spu_privcntl() local 535 struct spu_priv2 __iomem *priv2 = spu->priv2; save_spu_lslr() local 545 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_spu_lslr() local 557 struct spu_priv2 __iomem *priv2 = spu->priv2; save_spu_cfg() local 607 struct spu_priv2 __iomem *priv2 = spu->priv2; save_ppuint_mb() local 617 struct spu_priv2 __iomem *priv2 = spu->priv2; save_ch_part1() local 643 struct spu_priv2 __iomem *priv2 = spu->priv2; save_spu_mb() local 661 struct spu_priv2 __iomem *priv2 = spu->priv2; save_mfc_cmd() local 674 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_ch() local 694 struct spu_priv2 __iomem *priv2 = spu->priv2; resume_mfc_queue() local 964 struct spu_priv2 __iomem *priv2 = spu->priv2; suspend_mfc_and_halt_decr() local 978 struct spu_priv2 __iomem *priv2 = spu->priv2; wait_suspend_mfc_complete() local 1067 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_ch_part1() local 1092 struct spu_priv2 __iomem *priv2 = spu->priv2; reset_ch_part2() local 1312 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_spu_privcntl() local 1386 struct spu_priv2 __iomem *priv2 = spu->priv2; suspend_mfc() local 1418 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_queues() local 1474 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_csr_tsq() local 1486 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_csr_cmd() local 1499 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_csr_ato() local 1559 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_ch_part1() local 1578 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_ch_part2() local 1601 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_spu_lslr() local 1612 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_spu_cfg() local 1642 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_spu_mb() local 1673 struct spu_priv2 __iomem *priv2 = spu->priv2; check_ppuint_mb_stat() local 1727 struct spu_priv2 __iomem *priv2 = spu->priv2; restore_mfc_cntl() local 1874 struct spu_priv2 __iomem *priv2 = spu->priv2; force_spu_isolate_exit() local [all...] |
H A D | hw_ops.c | 86 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_hw_ibox_read() local 92 *data = in_be64(&priv2->puint_mb_R); in spu_hw_ibox_read() 137 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_hw_signal1_type_set() local 141 tmp = in_be64(&priv2->spu_cfg_RW); in spu_hw_signal1_type_set() 146 out_be64(&priv2->spu_cfg_RW, tmp); in spu_hw_signal1_type_set() 152 return ((in_be64(&ctx->spu->priv2->spu_cfg_RW) & 1) != 0); in spu_hw_signal1_type_get() 158 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_hw_signal2_type_set() local 302 struct spu_priv2 __iomem *priv2 = ctx->spu->priv2; spu_hw_restart_dma() local [all...] |
H A D | backing_ops.c | 29 * Reads/writes to various problem and priv2 registers require 125 *data = ctx->csa.priv2.puint_mb_R; in spu_backing_ibox_read() 178 if (ctx->csa.priv2.spu_cfg_RW & 0x1) in spu_backing_signal1_write() 195 if (ctx->csa.priv2.spu_cfg_RW & 0x2) in spu_backing_signal2_write() 209 tmp = ctx->csa.priv2.spu_cfg_RW; in spu_backing_signal1_type_set() 214 ctx->csa.priv2.spu_cfg_RW = tmp; in spu_backing_signal1_type_set() 220 return ((ctx->csa.priv2.spu_cfg_RW & 1) != 0); in spu_backing_signal1_type_get() 228 tmp = ctx->csa.priv2.spu_cfg_RW; in spu_backing_signal2_type_set() 233 ctx->csa.priv2.spu_cfg_RW = tmp; in spu_backing_signal2_type_set() 239 return ((ctx->csa.priv2 in spu_backing_signal2_type_get() [all...] |
H A D | file.c | 1803 ctx->csa.priv2.mfc_control_RW |= MFC_CNTL_DECREMENTER_RUNNING; in spufs_decr_status_set() 1805 ctx->csa.priv2.mfc_control_RW &= ~MFC_CNTL_DECREMENTER_RUNNING; in spufs_decr_status_set() 1813 if (ctx->csa.priv2.mfc_control_RW & MFC_CNTL_DECREMENTER_RUNNING) in spufs_decr_status_get() 1915 return ctx->csa.priv2.spu_lslr_RW; in spufs_lslr_get() 1994 return spufs_dump_emit(cprm, &ctx->csa.priv2.puint_mb_R, in spufs_ibox_info_dump() 1995 sizeof(ctx->csa.priv2.puint_mb_R)); in spufs_ibox_info_dump() 2010 data = ctx->csa.priv2.puint_mb_R; in spufs_ibox_info_read() 2070 info->dma_info_type = ctx->csa.priv2.spu_tag_status_query_RW; in spufs_get_dma_info() 2077 struct mfc_cq_sr *spuqp = &ctx->csa.priv2.spuq[i]; in spufs_get_dma_info() 2131 struct mfc_cq_sr *puqp = &ctx->csa.priv2 in spufs_get_proxydma_info() 2496 struct spu_priv2 __iomem *priv2 = spu->priv2; spufs_show_ctx() local [all...] |
H A D | run.c | 104 mfc_cntl = &ctx->spu->priv2->mfc_control_RW; in spu_setup_isolated()
|
/kernel/linux/linux-5.10/arch/powerpc/platforms/cell/ |
H A D | spu_base.c | 68 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_invalidate_slbs() local 73 out_be64(&priv2->slb_invalidate_all_W, 0UL); in spu_invalidate_slbs() 125 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_restart_dma() local 128 out_be64(&priv2->mfc_control_RW, MFC_CNTL_RESTART_DMA_COMMAND); in spu_restart_dma() 137 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_load_slb() local 142 out_be64(&priv2->slb_index_W, slbe); in spu_load_slb() 144 out_be64(&priv2 in spu_load_slb() 453 struct spu_priv2 __iomem *priv2; spu_init_channels() local [all...] |
H A D | spu_manage.c | 62 iounmap(spu->priv2); in spu_unmap() 150 spu->priv2 = spu_map_prop_old(spu, node, "priv2"); in spu_map_device_old() 151 if (!spu->priv2) in spu_map_device_old() 232 ret = spu_map_resource(spu, 2, (void __iomem**)&spu->priv2, NULL); in spu_map_device() 251 pr_debug(" priv2 : 0x%p\n", spu->priv2); in spu_map_device() 333 spu->priv2, spu->number); in of_create_spu()
|
/kernel/linux/linux-6.6/arch/powerpc/platforms/cell/ |
H A D | spu_base.c | 67 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_invalidate_slbs() local 72 out_be64(&priv2->slb_invalidate_all_W, 0UL); in spu_invalidate_slbs() 124 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_restart_dma() local 127 out_be64(&priv2->mfc_control_RW, MFC_CNTL_RESTART_DMA_COMMAND); in spu_restart_dma() 136 struct spu_priv2 __iomem *priv2 = spu->priv2; in spu_load_slb() local 141 out_be64(&priv2->slb_index_W, slbe); in spu_load_slb() 143 out_be64(&priv2 in spu_load_slb() 446 struct spu_priv2 __iomem *priv2; spu_init_channels() local [all...] |
H A D | spu_manage.c | 64 iounmap(spu->priv2); in spu_unmap() 152 spu->priv2 = spu_map_prop_old(spu, node, "priv2"); in spu_map_device_old() 153 if (!spu->priv2) in spu_map_device_old() 234 ret = spu_map_resource(spu, 2, (void __iomem**)&spu->priv2, NULL); in spu_map_device() 253 pr_debug(" priv2 : 0x%p\n", spu->priv2); in spu_map_device() 335 spu->priv2, spu->number); in of_create_spu()
|
/kernel/linux/linux-5.10/arch/powerpc/platforms/ps3/ |
H A D | spu.c | 99 * @priv2_addr: lpar address of spe priv2 area returned by 123 static void _dump_areas(unsigned int spe_id, unsigned long priv2, in _dump_areas() argument 128 pr_debug("%s:%d: priv2: %lxh\n", func, line, priv2); in _dump_areas() 177 iounmap(spu->priv2); in spu_unmap() 218 spu->priv2 = ioremap(spu_pdata(spu)->priv2_addr, in setup_areas() 221 if (!spu->priv2) { in setup_areas() 222 pr_debug("%s:%d: ioremap priv2 failed\n", __func__, __LINE__); in setup_areas() 229 dump_areas(spu_pdata(spu)->spe_id, (unsigned long)spu->priv2, in setup_areas()
|
/kernel/linux/linux-6.6/arch/powerpc/platforms/ps3/ |
H A D | spu.c | 99 * @priv2_addr: lpar address of spe priv2 area returned by 123 static void _dump_areas(unsigned int spe_id, unsigned long priv2, in _dump_areas() argument 128 pr_debug("%s:%d: priv2: %lxh\n", func, line, priv2); in _dump_areas() 177 iounmap(spu->priv2); in spu_unmap() 218 spu->priv2 = ioremap(spu_pdata(spu)->priv2_addr, in setup_areas() 221 if (!spu->priv2) { in setup_areas() 222 pr_debug("%s:%d: ioremap priv2 failed\n", __func__, __LINE__); in setup_areas() 229 dump_areas(spu_pdata(spu)->spe_id, (unsigned long)spu->priv2, in setup_areas()
|
/kernel/linux/linux-5.10/arch/powerpc/include/asm/ |
H A D | spu_csa.h | 213 * @priv2: Collapsed Privileged 2 Area, w/o pads. 233 struct spu_priv2_collapsed priv2; member
|
H A D | spu.h | 114 struct spu_priv2 __iomem *priv2; member
|
/kernel/linux/linux-6.6/arch/powerpc/include/asm/ |
H A D | spu_csa.h | 213 * @priv2: Collapsed Privileged 2 Area, w/o pads. 233 struct spu_priv2_collapsed priv2; member
|
H A D | spu.h | 114 struct spu_priv2 __iomem *priv2; member
|
/kernel/linux/linux-5.10/drivers/usb/gadget/function/ |
H A D | uvc_configfs.c | 2035 * @priv2: an "inout" parameter (the caller might want to see the changes to it) 2040 void *priv2, void *priv3, in __uvcg_iter_strm_cls() 2053 ret = fun(h, priv2, priv3, 0, UVCG_HEADER); in __uvcg_iter_strm_cls() 2057 ret = fun(f->fmt, priv2, priv3, i++, UVCG_FORMAT); in __uvcg_iter_strm_cls() 2063 ret = fun(frm, priv2, priv3, j++, UVCG_FRAME); in __uvcg_iter_strm_cls() 2076 * @priv2: inout parameter, accumulated size of the array 2080 static int __uvcg_cnt_strm(void *priv1, void *priv2, void *priv3, int n, in __uvcg_cnt_strm() argument 2083 size_t *size = priv2; in __uvcg_cnt_strm() 2133 * @priv2: inout parameter, pointer into a block of memory 2136 static int __uvcg_fill_strm(void *priv1, void *priv2, voi argument 2039 __uvcg_iter_strm_cls(struct uvcg_streaming_header *h, void *priv2, void *priv3, int (*fun)(void *, void *, void *, int, enum uvcg_strm_type type)) __uvcg_iter_strm_cls() argument [all...] |
/kernel/linux/linux-6.6/drivers/usb/gadget/function/ |
H A D | uvc_configfs.c | 2877 * @priv2: an "inout" parameter (the caller might want to see the changes to it) 2882 void *priv2, void *priv3, in __uvcg_iter_strm_cls() 2895 ret = fun(h, priv2, priv3, 0, UVCG_HEADER); in __uvcg_iter_strm_cls() 2899 ret = fun(f->fmt, priv2, priv3, i++, UVCG_FORMAT); in __uvcg_iter_strm_cls() 2905 ret = fun(frm, priv2, priv3, j++, UVCG_FRAME); in __uvcg_iter_strm_cls() 2910 ret = fun(f->fmt->color_matching, priv2, priv3, 0, in __uvcg_iter_strm_cls() 2923 * @priv2: inout parameter, accumulated size of the array 2927 static int __uvcg_cnt_strm(void *priv1, void *priv2, void *priv3, int n, in __uvcg_cnt_strm() argument 2930 size_t *size = priv2; in __uvcg_cnt_strm() 2986 * @priv2 2881 __uvcg_iter_strm_cls(struct uvcg_streaming_header *h, void *priv2, void *priv3, int (*fun)(void *, void *, void *, int, enum uvcg_strm_type type)) __uvcg_iter_strm_cls() argument 2989 __uvcg_fill_strm(void *priv1, void *priv2, void *priv3, int n, enum uvcg_strm_type type) __uvcg_fill_strm() argument [all...] |
/kernel/linux/linux-5.10/include/trace/events/ |
H A D | ext4.h | 2841 TP_PROTO(struct super_block *sb, int tag, int ino, int priv1, int priv2), 2843 TP_ARGS(sb, tag, ino, priv1, priv2), 2850 __field(int, priv2) 2858 __entry->priv2 = priv2; 2863 __entry->tag, __entry->ino, __entry->priv1, __entry->priv2)
|
/kernel/linux/linux-6.6/include/trace/events/ |
H A D | ext4.h | 2702 TP_PROTO(struct super_block *sb, int tag, int ino, int priv1, int priv2), 2704 TP_ARGS(sb, tag, ino, priv1, priv2), 2711 __field(int, priv2) 2719 __entry->priv2 = priv2; 2724 __entry->tag, __entry->ino, __entry->priv1, __entry->priv2)
|
/kernel/linux/linux-5.10/arch/powerpc/xmon/ |
H A D | xmon.c | 4213 DUMP_FIELD(spu, "0x%p", priv2); in dump_spu_fields()
|