Messages in this thread | | | Date | Fri, 18 Aug 2006 19:06:00 +0400 | From | Alexey Dobriyan <> | Subject | Re: [2.6.19 PATCH 2/7] ehea: pHYP interface |
| |
On Fri, Aug 18, 2006 at 01:30:21PM +0200, Jan-Bernd Themann wrote: > --- linux-2.6.18-rc4-orig/drivers/net/ehea/ehea_phyp.c > +++ kernel/drivers/net/ehea/ehea_phyp.c
> + hret = ehea_hcall_9arg_9ret(H_QUERY_HEA_QP, > + hcp_adapter_handle, /* R4 */ > + qp_category, /* R5 */ > + qp_handle, /* R6 */ > + sel_mask, /* R7 */ > + virt_to_abs(cb_addr), /* R8 */ > + 0, 0, 0, 0, /* R9-R12 */ > + &dummy, /* R4 */ > + &dummy, /* R5 */ > + &dummy, /* R6 */ > + &dummy, /* R7 */ > + &dummy, /* R8 */ > + &dummy, /* R9 */ > + &dummy, /* R10 */ > + &dummy, /* R11 */ > + &dummy); /* R12 */
I asked SO to recount arguments and we've come to a conclusion that there're in fact 19 args not 18 as the name suggests. 19 args is I-N-S-A-N-E.
> +u64 ehea_h_register_rpage_eq(const u64 hcp_adapter_handle, > + const u64 eq_handle, > + const u8 pagesize, > + const u8 queue_type, > + const u64 log_pageaddr, const u64 count) > +{ > + u64 hret = H_ADAPTER_PARM; > + > + if (count != 1) > + return H_PARAMETER; > + > + hret = ehea_h_register_rpage(hcp_adapter_handle, pagesize, queue_type, > + eq_handle, log_pageaddr, count); > + return hret;
Just
return ehea_h_register_rpage(...);
> +u64 ehea_h_register_rpage_cq(const u64 hcp_adapter_handle, > + const u64 cq_handle, > + const u8 pagesize, > + const u8 queue_type, > + const u64 log_pageaddr, > + const u64 count, const struct h_epa epa) > +{ > + u64 hret = H_ADAPTER_PARM; > + > + if (count != 1) > + return H_PARAMETER; > + > + hret = ehea_h_register_rpage(hcp_adapter_handle, pagesize, queue_type, > + cq_handle, log_pageaddr, count); > + return hret;
Ditto.
> +u64 ehea_h_register_rpage_qp(const u64 hcp_adapter_handle, > + const u64 qp_handle, > + const u8 pagesize, > + const u8 queue_type, > + const u64 log_pageaddr, > + const u64 count, struct h_epa epa) > +{ > + u64 hret = H_ADAPTER_PARM; > + > + if (count != 1) > + return H_PARAMETER; > + > + hret = ehea_h_register_rpage(hcp_adapter_handle, pagesize, queue_type, > + qp_handle, log_pageaddr, count); > + return hret; > +}
Ditto.
> +static inline int hcp_epas_ctor(struct h_epas *epas, u64 paddr_kernel, > + u64 paddr_user) > +{ > + epas->kernel.fw_handle = (u64) ioremap(paddr_kernel, PAGE_SIZE); > + epas->user.fw_handle = paddr_user; > + return 0; > +} > + > +static inline int hcp_epas_dtor(struct h_epas *epas) > +{ > + > + if (epas->kernel.fw_handle) > + iounmap((void *)epas->kernel.fw_handle); > + epas->user.fw_handle = epas->kernel.fw_handle = 0; > + return 0; > +}
Always returns 0;
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |