/linux/arch/x86/kernel/ |
H A D | machine_kexec_32.c | 43 static void machine_kexec_free_page_tables(struct kimage *image) in machine_kexec_free_page_tables() argument 45 free_pages((unsigned long)image->arch.pgd, PGD_ALLOCATION_ORDER); in machine_kexec_free_page_tables() 46 image->arch.pgd = NULL; in machine_kexec_free_page_tables() 48 free_page((unsigned long)image->arch.pmd0); in machine_kexec_free_page_tables() 49 image->arch.pmd0 = NULL; in machine_kexec_free_page_tables() 50 free_page((unsigned long)image->arch.pmd1); in machine_kexec_free_page_tables() 51 image->arch.pmd1 = NULL; in machine_kexec_free_page_tables() 53 free_page((unsigned long)image->arch.pte0); in machine_kexec_free_page_tables() 54 image->arch.pte0 = NULL; in machine_kexec_free_page_tables() 55 free_page((unsigned long)image->arch.pte1); in machine_kexec_free_page_tables() [all …]
|
H A D | machine_kexec_64.c | 137 static void free_transition_pgtable(struct kimage *image) in free_transition_pgtable() argument 139 free_page((unsigned long)image->arch.p4d); in free_transition_pgtable() 140 image->arch.p4d = NULL; in free_transition_pgtable() 141 free_page((unsigned long)image->arch.pud); in free_transition_pgtable() 142 image->arch.pud = NULL; in free_transition_pgtable() 143 free_page((unsigned long)image->arch.pmd); in free_transition_pgtable() 144 image->arch.pmd = NULL; in free_transition_pgtable() 145 free_page((unsigned long)image->arch.pte); in free_transition_pgtable() 146 image->arch.pte = NULL; in free_transition_pgtable() 149 static int init_transition_pgtable(struct kimage *image, pgd_t *pgd) in init_transition_pgtable() argument [all …]
|
H A D | crash.c | 276 static int memmap_exclude_ranges(struct kimage *image, struct crash_mem *cmem, in memmap_exclude_ranges() argument 287 start = image->elf_load_addr; in memmap_exclude_ranges() 288 end = start + image->elf_headers_sz - 1; in memmap_exclude_ranges() 293 int crash_setup_memmap_entries(struct kimage *image, struct boot_params *params) in crash_setup_memmap_entries() argument 340 ret = memmap_exclude_ranges(image, cmem, crashk_res.start, crashk_res.end); in crash_setup_memmap_entries() 360 int crash_load_segments(struct kimage *image) in crash_load_segments() argument 364 struct kexec_buf kbuf = { .image = image, .buf_min = 0, in crash_load_segments() 372 image->elf_headers = kbuf.buffer; in crash_load_segments() 373 image->elf_headers_sz = kbuf.bufsz; in crash_load_segments() 390 image->elfcorehdr_index = image->nr_segments; in crash_load_segments() [all …]
|
/linux/kernel/ |
H A D | kexec_core.c | 104 static struct page *kimage_alloc_page(struct kimage *image, 108 int sanity_check_segment_list(struct kimage *image) in sanity_check_segment_list() argument 111 unsigned long nr_segments = image->nr_segments; in sanity_check_segment_list() 131 mstart = image->segment[i].mem; in sanity_check_segment_list() 132 mend = mstart + image->segment[i].memsz; in sanity_check_segment_list() 150 mstart = image->segment[i].mem; in sanity_check_segment_list() 151 mend = mstart + image->segment[i].memsz; in sanity_check_segment_list() 155 pstart = image->segment[j].mem; in sanity_check_segment_list() 156 pend = pstart + image->segment[j].memsz; in sanity_check_segment_list() 169 if (image->segment[i].bufsz > image->segment[i].memsz) in sanity_check_segment_list() [all …]
|
H A D | kexec_file.c | 41 static int kexec_calculate_store_digests(struct kimage *image); 51 int kexec_image_probe_default(struct kimage *image, void *buf, in kexec_image_probe_default() argument 60 image->fops = *fops; in kexec_image_probe_default() 68 static void *kexec_image_load_default(struct kimage *image) in kexec_image_load_default() argument 70 if (!image->fops || !image->fops->load) in kexec_image_load_default() 73 return image->fops->load(image, image->kernel_buf, in kexec_image_load_default() 74 image->kernel_buf_len, image->initrd_buf, in kexec_image_load_default() 75 image->initrd_buf_len, image->cmdline_buf, in kexec_image_load_default() 76 image->cmdline_buf_len); in kexec_image_load_default() 79 int kexec_image_post_load_cleanup_default(struct kimage *image) in kexec_image_post_load_cleanup_default() argument [all …]
|
H A D | kexec.c | 28 struct kimage *image; in kimage_alloc_init() local 41 image = do_kimage_alloc_init(); in kimage_alloc_init() 42 if (!image) in kimage_alloc_init() 45 image->start = entry; in kimage_alloc_init() 46 image->nr_segments = nr_segments; in kimage_alloc_init() 47 memcpy(image->segment, segments, nr_segments * sizeof(*segments)); in kimage_alloc_init() 52 image->control_page = crashk_res.start; in kimage_alloc_init() 53 image->type = KEXEC_TYPE_CRASH; in kimage_alloc_init() 57 ret = sanity_check_segment_list(image); in kimage_alloc_init() 67 image->control_code_page = kimage_alloc_control_pages(image, in kimage_alloc_init() [all …]
|
/linux/drivers/staging/vme_user/ |
H A D | vme_user.c | 101 static struct image_desc image[VME_DEVS]; variable 127 if (count > image[minor].size_buf) in resource_to_user() 128 count = image[minor].size_buf; in resource_to_user() 130 copied = vme_master_read(image[minor].resource, image[minor].kern_buf, in resource_to_user() 135 if (copy_to_user(buf, image[minor].kern_buf, (unsigned long)copied)) in resource_to_user() 144 if (count > image[minor].size_buf) in resource_from_user() 145 count = image[minor].size_buf; in resource_from_user() 147 if (copy_from_user(image[minor].kern_buf, buf, (unsigned long)count)) in resource_from_user() 150 return vme_master_write(image[minor].resource, image[minor].kern_buf, in resource_from_user() 159 image_ptr = image[minor].kern_buf + *ppos; in buffer_to_user() [all …]
|
/linux/drivers/video/fbdev/core/ |
H A D | fb_logo.c | 211 struct fb_image *image, int rotate) in fb_rotate_logo() argument 216 fb_rotate_logo_ud(image->data, dst, image->width, in fb_rotate_logo() 217 image->height); in fb_rotate_logo() 218 image->dx = info->var.xres - image->width - image->dx; in fb_rotate_logo() 219 image->dy = info->var.yres - image->height - image->dy; in fb_rotate_logo() 221 fb_rotate_logo_cw(image->data, dst, image->width, in fb_rotate_logo() 222 image->height); in fb_rotate_logo() 223 swap(image->width, image->height); in fb_rotate_logo() 224 tmp = image->dy; in fb_rotate_logo() 225 image->dy = image->dx; in fb_rotate_logo() [all …]
|
H A D | bitblit.c | 80 struct fb_image *image, u8 *buf, u8 *dst) in bit_putcs_aligned() argument 97 image->height); in bit_putcs_aligned() 100 image->height); in bit_putcs_aligned() 105 info->fbops->fb_imageblit(info, image); in bit_putcs_aligned() 112 struct fb_image *image, u8 *buf, in bit_putcs_unaligned() argument 131 image->height, shift_high, in bit_putcs_unaligned() 139 info->fbops->fb_imageblit(info, image); in bit_putcs_unaligned() 147 struct fb_image image; in bit_putcs() local 157 image.fg_color = fg; in bit_putcs() 158 image.bg_color = bg; in bit_putcs() [all …]
|
H A D | fbcon_ud.c | 88 struct fb_image *image, u8 *buf, u8 *dst) in ud_putcs_aligned() argument 105 image->height); in ud_putcs_aligned() 108 image->height); in ud_putcs_aligned() 113 info->fbops->fb_imageblit(info, image); in ud_putcs_aligned() 120 struct fb_image *image, u8 *buf, in ud_putcs_unaligned() argument 139 image->height, shift_high, in ud_putcs_unaligned() 147 info->fbops->fb_imageblit(info, image); in ud_putcs_unaligned() 155 struct fb_image image; in ud_putcs() local 171 image.fg_color = fg; in ud_putcs() 172 image.bg_color = bg; in ud_putcs() [all …]
|
H A D | fbcon_ccw.c | 101 struct fb_image *image, u8 *buf, u8 *dst) in ccw_putcs_aligned() argument 126 info->fbops->fb_imageblit(info, image); in ccw_putcs_aligned() 133 struct fb_image image; in ccw_putcs() local 148 image.fg_color = fg; in ccw_putcs() 149 image.bg_color = bg; in ccw_putcs() 150 image.dx = yy * vc->vc_font.height; in ccw_putcs() 151 image.dy = vyres - ((xx + count) * vc->vc_font.width); in ccw_putcs() 152 image.width = vc->vc_font.height; in ccw_putcs() 153 image.depth = 1; in ccw_putcs() 169 image.height = vc->vc_font.width * cnt; in ccw_putcs() [all …]
|
H A D | fbcon_cw.c | 86 struct fb_image *image, u8 *buf, u8 *dst) in cw_putcs_aligned() argument 111 info->fbops->fb_imageblit(info, image); in cw_putcs_aligned() 118 struct fb_image image; in cw_putcs() local 133 image.fg_color = fg; in cw_putcs() 134 image.bg_color = bg; in cw_putcs() 135 image.dx = vxres - ((yy + 1) * vc->vc_font.height); in cw_putcs() 136 image.dy = xx * vc->vc_font.width; in cw_putcs() 137 image.width = vc->vc_font.height; in cw_putcs() 138 image.depth = 1; in cw_putcs() 152 image.height = vc->vc_font.width * cnt; in cw_putcs() [all …]
|
H A D | softcursor.c | 28 struct fb_image *image; in soft_cursor() local 34 s_pitch = (cursor->image.width + 7) >> 3; in soft_cursor() 35 dsize = s_pitch * cursor->image.height; in soft_cursor() 49 image = (struct fb_image *)ops->cursor_src; in soft_cursor() 50 *image = cursor->image; in soft_cursor() 53 size = d_pitch * image->height + buf_align; in soft_cursor() 61 src[i] = image->data[i] ^ cursor->mask[i]; in soft_cursor() 66 src[i] = image->data[i] & cursor->mask[i]; in soft_cursor() 70 memcpy(src, image->data, dsize); in soft_cursor() 72 fb_pad_aligned_buffer(dst, d_pitch, src, s_pitch, image->height); in soft_cursor() [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/bios/ |
H A D | image.c | 30 nvbios_imagen(struct nvkm_bios *bios, struct nvbios_image *image) in nvbios_imagen() argument 39 switch ((data = nvbios_rd16(bios, image->base + 0x00))) { in nvbios_imagen() 46 image->base, data); in nvbios_imagen() 50 if (!(data = nvbios_pcirTp(bios, image->base, &ver, &hdr, &pcir))) in nvbios_imagen() 52 image->size = pcir.image_size; in nvbios_imagen() 53 image->type = pcir.image_type; in nvbios_imagen() 54 image->last = pcir.last; in nvbios_imagen() 56 if (image->type != 0x70) { in nvbios_imagen() 57 if (!(data = nvbios_npdeTp(bios, image->base, &npde))) in nvbios_imagen() 59 image->size = npde.image_size; in nvbios_imagen() [all …]
|
/linux/arch/s390/kernel/ |
H A D | machine_kexec_file.c | 84 static int kexec_file_update_purgatory(struct kimage *image, in kexec_file_update_purgatory() argument 90 if (image->type == KEXEC_TYPE_CRASH) { in kexec_file_update_purgatory() 98 ret = kexec_purgatory_get_set_symbol(image, "kernel_entry", &entry, in kexec_file_update_purgatory() 103 ret = kexec_purgatory_get_set_symbol(image, "kernel_type", &type, in kexec_file_update_purgatory() 109 if (image->type == KEXEC_TYPE_CRASH) { in kexec_file_update_purgatory() 112 ret = kexec_purgatory_get_set_symbol(image, "crash_start", in kexec_file_update_purgatory() 120 ret = kexec_purgatory_get_set_symbol(image, "crash_size", in kexec_file_update_purgatory() 129 static int kexec_file_add_purgatory(struct kimage *image, in kexec_file_add_purgatory() argument 135 buf.image = image; in kexec_file_add_purgatory() 140 if (image->type == KEXEC_TYPE_CRASH) in kexec_file_add_purgatory() [all …]
|
H A D | machine_kexec.c | 48 struct kimage *image = data; in __do_machine_kdump() local 52 purgatory = (purgatory_t)image->start; in __do_machine_kdump() 78 static noinline void __machine_kdump(void *image) in __machine_kdump() argument 114 store_status(__do_machine_kdump, image); in __machine_kdump() 122 static bool kdump_csum_valid(struct kimage *image) in kdump_csum_valid() argument 125 purgatory_t purgatory = (purgatory_t)image->start; in kdump_csum_valid() 190 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() argument 194 if (image->type == KEXEC_TYPE_CRASH) in machine_kexec_prepare() 198 if (image->type != KEXEC_TYPE_DEFAULT) in machine_kexec_prepare() 202 reboot_code_buffer = page_to_virt(image->control_code_page); in machine_kexec_prepare() [all …]
|
/linux/drivers/gpu/drm/qxl/ |
H A D | qxl_image.c | 35 struct qxl_drm_image *image, in qxl_allocate_chunk() argument 51 list_add_tail(&chunk->head, &image->chunk_list); in qxl_allocate_chunk() 61 struct qxl_drm_image *image; in qxl_image_alloc_objects() local 64 image = kmalloc(sizeof(struct qxl_drm_image), GFP_KERNEL); in qxl_image_alloc_objects() 65 if (!image) in qxl_image_alloc_objects() 68 INIT_LIST_HEAD(&image->chunk_list); in qxl_image_alloc_objects() 70 ret = qxl_alloc_bo_reserved(qdev, release, sizeof(struct qxl_image), &image->bo); in qxl_image_alloc_objects() 72 kfree(image); in qxl_image_alloc_objects() 76 ret = qxl_allocate_chunk(qdev, release, image, sizeof(struct qxl_data_chunk) + stride * height); in qxl_image_alloc_objects() 78 qxl_bo_unref(&image->bo); in qxl_image_alloc_objects() [all …]
|
/linux/arch/riscv/kernel/ |
H A D | machine_kexec.c | 31 machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() argument 33 struct kimage_arch *internal = &image->arch; in machine_kexec_prepare() 40 for (i = 0; i < image->nr_segments; i++) { in machine_kexec_prepare() 41 if (image->segment[i].memsz <= sizeof(fdt)) in machine_kexec_prepare() 44 if (image->file_mode) in machine_kexec_prepare() 45 memcpy(&fdt, image->segment[i].buf, sizeof(fdt)); in machine_kexec_prepare() 46 else if (copy_from_user(&fdt, image->segment[i].buf, sizeof(fdt))) in machine_kexec_prepare() 52 internal->fdt_addr = (unsigned long) image->segment[i].mem; in machine_kexec_prepare() 62 if (image->type != KEXEC_TYPE_CRASH) { in machine_kexec_prepare() 63 control_code_buffer = page_address(image->control_code_page); in machine_kexec_prepare() [all …]
|
H A D | elf_kexec.c | 25 int arch_kimage_file_post_load_cleanup(struct kimage *image) in arch_kimage_file_post_load_cleanup() argument 27 kvfree(image->arch.fdt); in arch_kimage_file_post_load_cleanup() 28 image->arch.fdt = NULL; in arch_kimage_file_post_load_cleanup() 30 vfree(image->elf_headers); in arch_kimage_file_post_load_cleanup() 31 image->elf_headers = NULL; in arch_kimage_file_post_load_cleanup() 32 image->elf_headers_sz = 0; in arch_kimage_file_post_load_cleanup() 34 return kexec_image_post_load_cleanup_default(image); in arch_kimage_file_post_load_cleanup() 37 static int riscv_kexec_elf_load(struct kimage *image, struct elfhdr *ehdr, in riscv_kexec_elf_load() argument 47 kbuf.image = image; in riscv_kexec_elf_load() 76 static int elf_find_pbase(struct kimage *image, unsigned long kernel_len, in elf_find_pbase() argument [all …]
|
/linux/arch/sh/kernel/ |
H A D | machine_kexec.c | 41 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() argument 46 void machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() argument 50 static void kexec_info(struct kimage *image) in kexec_info() argument 54 for (i = 0; i < image->nr_segments; i++) { in kexec_info() 57 (unsigned int)image->segment[i].mem, in kexec_info() 58 (unsigned int)image->segment[i].mem + in kexec_info() 59 image->segment[i].memsz, in kexec_info() 60 (unsigned int)image->segment[i].memsz); in kexec_info() 62 printk(" start : 0x%08x\n\n", (unsigned int)image->start); in kexec_info() 69 void machine_kexec(struct kimage *image) in machine_kexec() argument [all …]
|
/linux/arch/arm64/kernel/ |
H A D | machine_kexec_file.c | 30 int arch_kimage_file_post_load_cleanup(struct kimage *image) in arch_kimage_file_post_load_cleanup() argument 32 kvfree(image->arch.dtb); in arch_kimage_file_post_load_cleanup() 33 image->arch.dtb = NULL; in arch_kimage_file_post_load_cleanup() 35 vfree(image->elf_headers); in arch_kimage_file_post_load_cleanup() 36 image->elf_headers = NULL; in arch_kimage_file_post_load_cleanup() 37 image->elf_headers_sz = 0; in arch_kimage_file_post_load_cleanup() 39 return kexec_image_post_load_cleanup_default(image); in arch_kimage_file_post_load_cleanup() 91 int load_other_segments(struct kimage *image, in load_other_segments() argument 100 orig_segments = image->nr_segments; in load_other_segments() 103 kbuf.image = image; in load_other_segments() [all …]
|
/linux/drivers/video/fbdev/savage/ |
H A D | savagefb_accel.c | 92 void savagefb_imageblit(struct fb_info *info, const struct fb_image *image) in savagefb_imageblit() argument 97 u32 *src = (u32 *) image->data; in savagefb_imageblit() 99 if (!image->width || !image->height) in savagefb_imageblit() 102 if (image->depth != 1) { in savagefb_imageblit() 103 cfb_imageblit(info, image); in savagefb_imageblit() 108 fg = image->fg_color; in savagefb_imageblit() 109 bg = image->bg_color; in savagefb_imageblit() 111 fg = ((u32 *)info->pseudo_palette)[image->fg_color]; in savagefb_imageblit() 112 bg = ((u32 *)info->pseudo_palette)[image->bg_color]; in savagefb_imageblit() 122 width = (image->width + 31) & ~31; in savagefb_imageblit() [all …]
|
/linux/arch/powerpc/kexec/ |
H A D | elf_64.c | 28 static void *elf64_load(struct kimage *image, char *kernel_buf, in elf64_load() argument 42 struct kexec_buf kbuf = { .image = image, .buf_min = 0, in elf64_load() 44 struct kexec_buf pbuf = { .image = image, .buf_min = 0, in elf64_load() 52 if (IS_ENABLED(CONFIG_CRASH_DUMP) && image->type == KEXEC_TYPE_CRASH) { in elf64_load() 60 ret = kexec_elf_load(image, &ehdr, &elf_info, &kbuf, &kernel_load_addr); in elf64_load() 66 ret = kexec_load_purgatory(image, &pbuf); in elf64_load() 75 if (IS_ENABLED(CONFIG_CRASH_DUMP) && image->type == KEXEC_TYPE_CRASH) { in elf64_load() 76 ret = load_crashdump_segments_ppc64(image, &kbuf); in elf64_load() 83 modified_cmdline = setup_kdump_cmdline(image, cmdline, in elf64_load() 111 fdt = of_kexec_alloc_and_setup_fdt(image, initrd_load_addr, in elf64_load() [all …]
|
/linux/drivers/gpu/ipu-v3/ |
H A D | ipu-cpmem.c | 764 int ipu_cpmem_set_image(struct ipuv3_channel *ch, struct ipu_image *image) in ipu_cpmem_set_image() argument 766 struct v4l2_pix_format *pix = &image->pix; in ipu_cpmem_set_image() 774 ipu_cpmem_set_resolution(ch, image->rect.width, image->rect.height); in ipu_cpmem_set_image() 781 offset = Y_OFFSET(pix, image->rect.left, image->rect.top); in ipu_cpmem_set_image() 782 u_offset = image->u_offset ? in ipu_cpmem_set_image() 783 image->u_offset : U_OFFSET(pix, image->rect.left, in ipu_cpmem_set_image() 784 image->rect.top) - offset; in ipu_cpmem_set_image() 785 v_offset = image->v_offset ? in ipu_cpmem_set_image() 786 image->v_offset : V_OFFSET(pix, image->rect.left, in ipu_cpmem_set_image() 787 image->rect.top) - offset; in ipu_cpmem_set_image() [all …]
|
/linux/drivers/video/fbdev/mb862xx/ |
H A D | mb862xxfb_accel.c | 71 u32 bgcolor, const struct fb_image *image, in mb86290fb_imageblit1() argument 90 line = image->data; in mb86290fb_imageblit1() 91 bytes = (image->width + 7) >> 3; in mb86290fb_imageblit1() 120 u32 bgcolor, const struct fb_image *image, in mb86290fb_imageblit8() argument 133 line = image->data; in mb86290fb_imageblit8() 134 bytes = image->width; in mb86290fb_imageblit8() 159 u32 bgcolor, const struct fb_image *image, in mb86290fb_imageblit16() argument 167 line = image->data; in mb86290fb_imageblit16() 168 bytes = image->width << 1; in mb86290fb_imageblit16() 183 const struct fb_image *image) in mb86290fb_imageblit() argument [all …]
|