lkml.org 
[lkml]   [2006]   [Mar]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 8 of 18] ipath - sysfs and ipathfs support for core driver
Quoting r. Bryan O'Sullivan <bos@pathscale.com>:
> Subject: [PATCH 8 of 18] ipath - sysfs and ipathfs support for core driver
>
> The ipathfs filesystem contains files that are not appropriate for
> sysfs, because they contain binary data. The hierarchy is simple; the
> top-level directory contains driver-wide attribute files, while numbered
> subdirectories contain per-device attribute files.
>
> Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>


.....

> +static ssize_t atomic_node_info_read(struct file *file, char __user *buf,
> + size_t count, loff_t *ppos)
> +{
> + u32 nodeinfo[10];
> + struct ipath_devdata *dd;
> +
> + dd = file->f_dentry->d_inode->u.generic_ip;
> +
> + nodeinfo[0] = /* BaseVersion is SMA */
> + /* ClassVersion is SMA */
> + (1 << 8) /* NodeType */
> + | (1 << 0); /* NumPorts */
> + nodeinfo[1] = (u32) (dd->ipath_guid >> 32);
> + nodeinfo[2] = (u32) (dd->ipath_guid & 0xffffffff);
> + /* PortGUID == SystemImageGUID for us */
> + nodeinfo[3] = nodeinfo[1];
> + /* PortGUID == SystemImageGUID for us */
> + nodeinfo[4] = nodeinfo[2];
> + /* PortGUID == NodeGUID for us */
> + nodeinfo[5] = nodeinfo[3];
> + /* PortGUID == NodeGUID for us */
> + nodeinfo[6] = nodeinfo[4];
> + nodeinfo[7] = (4 << 16) /* we support 4 pkeys */
> + | (dd->ipath_deviceid << 0);
> + /* our chip version as 16 bits major, 16 bits minor */
> + nodeinfo[8] = dd->ipath_minrev | (dd->ipath_majrev << 16);
> + nodeinfo[9] = (dd->ipath_unit << 24) | (dd->ipath_vendorid << 0);
> +
> + return simple_read_from_buffer(buf, count, ppos, nodeinfo,
> + sizeof nodeinfo);

InfiniBand core already exposes these attributes to userspace, see
drivers/infiniband/core/sysfs.c

--
Michael S. Tsirkin
Staff Engineer, Mellanox Technologies
-
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/

\
 
 \ /
  Last update: 2006-03-23 07:32    [W:0.129 / U:0.216 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site