Lines Matching refs:ipb
277 const struct ipl_parameter_block *ipb)
284 if ((ipb->ipl_info.ccw.vm_flags & DIAG308_VM_FLAGS_VP_VALID) &&
285 (ipb->ipl_info.ccw.vm_parm_len > 0)) {
287 len = min_t(size_t, size - 1, ipb->ipl_info.ccw.vm_parm_len);
288 memcpy(dest, ipb->ipl_info.ccw.vm_parm, len);
340 const struct ipl_parameter_block *ipb)
346 count = min(size - 1, scpdata_length(ipb->ipl_info.fcp.scp_data,
347 ipb->ipl_info.fcp.scp_data_len));
353 if (!isascii(ipb->ipl_info.fcp.scp_data[i])) {
357 if (!has_lowercase && islower(ipb->ipl_info.fcp.scp_data[i]))
362 memcpy(dest, ipb->ipl_info.fcp.scp_data, count);
365 dest[i] = tolower(ipb->ipl_info.fcp.scp_data[i]);
621 static ssize_t reipl_generic_vmparm_show(struct ipl_parameter_block *ipb,
626 reipl_get_ascii_vmparm(vmparm, sizeof(vmparm), ipb);
630 static ssize_t reipl_generic_vmparm_store(struct ipl_parameter_block *ipb,
649 memset(ipb->ipl_info.ccw.vm_parm, 0, DIAG308_VMPARM_SIZE);
650 ipb->ipl_info.ccw.vm_parm_len = ip_len;
652 ipb->ipl_info.ccw.vm_flags |= DIAG308_VM_FLAGS_VP_VALID;
653 memcpy(ipb->ipl_info.ccw.vm_parm, buf, ip_len);
654 ASCEBC(ipb->ipl_info.ccw.vm_parm, ip_len);
656 ipb->ipl_info.ccw.vm_flags &= ~DIAG308_VM_FLAGS_VP_VALID;
790 static ssize_t reipl_generic_loadparm_show(struct ipl_parameter_block *ipb,
795 reipl_get_ascii_loadparm(buf, ipb);
799 static ssize_t reipl_generic_loadparm_store(struct ipl_parameter_block *ipb,
819 memset(ipb->ipl_info.ccw.load_parm, ' ', LOADPARM_LEN);
821 memcpy(ipb->ipl_info.ccw.load_parm, buf, lp_len);
822 ASCEBC(ipb->ipl_info.ccw.load_parm, LOADPARM_LEN);
884 struct ipl_parameter_block *ipb)
886 memcpy(dst, ipb->ipl_info.ccw.nss_name, NSS_NAME_SIZE);
1022 static void get_ipl_string(char *dst, struct ipl_parameter_block *ipb,
1030 reipl_get_ascii_loadparm(loadparm, ipb);
1031 reipl_get_ascii_nss_name(nss_name, ipb);
1032 reipl_get_ascii_vmparm(vmparm, sizeof(vmparm), ipb);
1036 pos = sprintf(dst, "IPL %X CLEAR", ipb->ipl_info.ccw.devno);
1103 static void reipl_block_ccw_init(struct ipl_parameter_block *ipb)
1105 ipb->hdr.len = IPL_PARM_BLK_CCW_LEN;
1106 ipb->hdr.version = IPL_PARM_BLOCK_VERSION;
1107 ipb->hdr.blk0_len = IPL_PARM_BLK0_CCW_LEN;
1108 ipb->hdr.pbt = DIAG308_IPL_TYPE_CCW;
1111 static void reipl_block_ccw_fill_parms(struct ipl_parameter_block *ipb)
1116 memcpy(ipb->ipl_info.ccw.load_parm,
1120 memset(ipb->ipl_info.ccw.load_parm, 0x40, LOADPARM_LEN);
1121 ipb->hdr.flags = DIAG308_FLAGS_LP_VALID;
1127 ipb->ipl_info.ccw.vm_flags |= DIAG308_VM_FLAGS_VP_VALID;
1128 ipb->ipl_info.ccw.vm_parm_len =
1130 memcpy(ipb->ipl_info.ccw.vm_parm,