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 netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to