* how to use SES driver to send SES commands?
@ 2013-11-29 10:07 Newtech Tan
2013-11-29 12:50 ` Douglas Gilbert
0 siblings, 1 reply; 5+ messages in thread
From: Newtech Tan @ 2013-11-29 10:07 UTC (permalink / raw)
To: linux-scsi
Hi friends
I subscribed the mailing list just now. Would you please to give me help?
Who can tell me how to use SES driver(linux/driver/scsi/ses.c) to send SES command(SEND DIAGNOSTIC, RECEIVE DIAGNOSTIC RESULTS) in my linux program?
(I don't want to use sg_ses.)
The following is my system info. /dev/sg2 is my SES device.
[root@tan-sl dev]# lsscsi -g
[0:0:0:0] cd/dvd HL-DT-ST DVD+-RW GSA-H53N B104 /dev/sr0 /dev/sg0
[3:0:0:0] disk ATA TOSHIBA MK8061GS ME0A /dev/sda /dev/sg1
[4:0:0:0] enclosu LSI SAS616x 0502 - /dev/sg2
[root@tan-sl enclosure]# pwd
/sys/class/enclosure
[root@tan-sl enclosure]# ls -l
total 0
lrwxrwxrwx 1 root root 0 Nov 29 14:51 4:0:0:0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0/host4/port-4:0/expan
der-4:0/port-4:0:0/end_device-4:0:0/target4:0:0/4:0:0:0/enclosure/4:0:0:0
in linux, I can't find ses device. Under /sys/class/enclosure, folder 4:0:0:0 existed.
I will apprectiate for your help.
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: how to use SES driver to send SES commands?
2013-11-29 10:07 how to use SES driver to send SES commands? Newtech Tan
@ 2013-11-29 12:50 ` Douglas Gilbert
2013-12-02 1:12 ` Newtech Tan
0 siblings, 1 reply; 5+ messages in thread
From: Douglas Gilbert @ 2013-11-29 12:50 UTC (permalink / raw)
To: Newtech Tan, linux-scsi
On 13-11-29 05:07 AM, Newtech Tan wrote:
> Hi friends
>
> I subscribed the mailing list just now. Would you please to give me help?
>
> Who can tell me how to use SES driver(linux/driver/scsi/ses.c) to send SES command(SEND DIAGNOSTIC, RECEIVE DIAGNOSTIC RESULTS) in my linux program?
> (I don't want to use sg_ses.)
Then look at the source for sg_senddiag (sg_senddiag.c).
Your SES device is either /dev/sg2 or /dev/bsg/4:0:0:0
> The following is my system info. /dev/sg2 is my SES device.
>
> [root@tan-sl dev]# lsscsi -g
> [0:0:0:0] cd/dvd HL-DT-ST DVD+-RW GSA-H53N B104 /dev/sr0 /dev/sg0
> [3:0:0:0] disk ATA TOSHIBA MK8061GS ME0A /dev/sda /dev/sg1
> [4:0:0:0] enclosu LSI SAS616x 0502 - /dev/sg2
>
> [root@tan-sl enclosure]# pwd
> /sys/class/enclosure
> [root@tan-sl enclosure]# ls -l
> total 0
> lrwxrwxrwx 1 root root 0 Nov 29 14:51 4:0:0:0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0/host4/port-4:0/expan
> der-4:0/port-4:0:0/end_device-4:0:0/target4:0:0/4:0:0:0/enclosure/4:0:0:0
>
> in linux, I can't find ses device. Under /sys/class/enclosure, folder 4:0:0:0 existed.
>
> I will apprectiate for your help.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: how to use SES driver to send SES commands?
2013-11-29 12:50 ` Douglas Gilbert
@ 2013-12-02 1:12 ` Newtech Tan
2013-12-02 14:53 ` Douglas Gilbert
0 siblings, 1 reply; 5+ messages in thread
From: Newtech Tan @ 2013-12-02 1:12 UTC (permalink / raw)
To: dgilbert; +Cc: linux-scsi
Hi Douglas
Thanks for your kind reply.
sg_senddiag is the sg_ses utility. But i want to use SES driver(linux/driver/scsi/ses.c), do you have any advice?
> On 13-11-29 05:07 AM, Newtech Tan wrote:
> > Hi friends
> >
> > I subscribed the mailing list just now. Would you please to give me help?
> >
> > Who can tell me how to use SES driver(linux/driver/scsi/ses.c) to send SES command(SEND DIAGNOSTIC, RECEIVE DIAGNOSTIC RESULTS) in my linux program?
> > (I don't want to use sg_ses.)
>
> Then look at the source for sg_senddiag (sg_senddiag.c).
> Your SES device is either /dev/sg2 or /dev/bsg/4:0:0:0
>
> > The following is my system info. /dev/sg2 is my SES device.
> >
> > [root@tan-sl dev]# lsscsi -g
> > [0:0:0:0] cd/dvd HL-DT-ST DVD+-RW GSA-H53N B104 /dev/sr0 /dev/sg0
> > [3:0:0:0] disk ATA TOSHIBA MK8061GS ME0A /dev/sda /dev/sg1
> > [4:0:0:0] enclosu LSI SAS616x 0502 - /dev/sg2
> >
> > [root@tan-sl enclosure]# pwd
> > /sys/class/enclosure
> > [root@tan-sl enclosure]# ls -l
> > total 0
> > lrwxrwxrwx 1 root root 0 Nov 29 14:51 4:0:0:0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0/host4/port-4:0/expan
> > der-4:0/port-4:0:0/end_device-4:0:0/target4:0:0/4:0:0:0/enclosure/4:0:0:0
> >
> > in linux, I can't find ses device. Under /sys/class/enclosure, folder 4:0:0:0 existed.
> >
> > I will apprectiate for your help.
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
お疲れ様です。譚です。
以上、よろしくお願いいたします。
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: how to use SES driver to send SES commands?
2013-12-02 1:12 ` Newtech Tan
@ 2013-12-02 14:53 ` Douglas Gilbert
2013-12-04 0:42 ` Newtech Tan
0 siblings, 1 reply; 5+ messages in thread
From: Douglas Gilbert @ 2013-12-02 14:53 UTC (permalink / raw)
To: Newtech Tan; +Cc: linux-scsi
I'm not sure what you expect from the ses driver
in the kernel. If it likes an SES device (and it
doesn't like some of them) then you will get a
small, but useful, set of "knobs" to twiddle and
read in sysfs. As far as I can see the ses driver does
not create any device nodes (as found in /dev). This
means there is no way to extend it by using the SG_IO
ioctl to send SCSI commands to the enclosure via
the ses driver. And there is no need since the sg and
bsg drivers already give you that capability.
Your question is vague, if by "send SES commands" you
are referring to SCSI commands then again my advice is
to look at what sg_senddiag and sg_ses do. If that is not
what you want then write something yourself using the
SG_IO ioctl on a bsg or sg device node.
Doug Gilbert
On 13-12-02 02:12 AM, Newtech Tan wrote:
> Hi Douglas
>
> Thanks for your kind reply.
>
> sg_senddiag is the sg_ses utility. But i want to use SES driver(linux/driver/scsi/ses.c), do you have any advice?
>
>
>> On 13-11-29 05:07 AM, Newtech Tan wrote:
>>> Hi friends
>>>
>>> I subscribed the mailing list just now. Would you please to give me help?
>>>
>>> Who can tell me how to use SES driver(linux/driver/scsi/ses.c) to send SES command(SEND DIAGNOSTIC, RECEIVE DIAGNOSTIC RESULTS) in my linux program?
>>> (I don't want to use sg_ses.)
>>
>> Then look at the source for sg_senddiag (sg_senddiag.c).
>> Your SES device is either /dev/sg2 or /dev/bsg/4:0:0:0
>>
>>> The following is my system info. /dev/sg2 is my SES device.
>>>
>>> [root@tan-sl dev]# lsscsi -g
>>> [0:0:0:0] cd/dvd HL-DT-ST DVD+-RW GSA-H53N B104 /dev/sr0 /dev/sg0
>>> [3:0:0:0] disk ATA TOSHIBA MK8061GS ME0A /dev/sda /dev/sg1
>>> [4:0:0:0] enclosu LSI SAS616x 0502 - /dev/sg2
>>>
>>> [root@tan-sl enclosure]# pwd
>>> /sys/class/enclosure
>>> [root@tan-sl enclosure]# ls -l
>>> total 0
>>> lrwxrwxrwx 1 root root 0 Nov 29 14:51 4:0:0:0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0/host4/port-4:0/expan
>>> der-4:0/port-4:0:0/end_device-4:0:0/target4:0:0/4:0:0:0/enclosure/4:0:0:0
>>>
>>> in linux, I can't find ses device. Under /sys/class/enclosure, folder 4:0:0:0 existed.
>>>
>>> I will apprectiate for your help.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: how to use SES driver to send SES commands?
2013-12-02 14:53 ` Douglas Gilbert
@ 2013-12-04 0:42 ` Newtech Tan
0 siblings, 0 replies; 5+ messages in thread
From: Newtech Tan @ 2013-12-04 0:42 UTC (permalink / raw)
To: dgilbert; +Cc: linux-scsi
Hi Douglas
Thanks!
I am using MIPs CPU on embedded system, after cross-compliled sg3_utils package,
I will try to use sg_senddiag to send ses command.
> I'm not sure what you expect from the ses driver
> in the kernel. If it likes an SES device (and it
> doesn't like some of them) then you will get a
> small, but useful, set of "knobs" to twiddle and
> read in sysfs. As far as I can see the ses driver does
> not create any device nodes (as found in /dev). This
> means there is no way to extend it by using the SG_IO
> ioctl to send SCSI commands to the enclosure via
> the ses driver. And there is no need since the sg and
> bsg drivers already give you that capability.
>
> Your question is vague, if by "send SES commands" you
> are referring to SCSI commands then again my advice is
> to look at what sg_senddiag and sg_ses do. If that is not
> what you want then write something yourself using the
> SG_IO ioctl on a bsg or sg device node.
>
> Doug Gilbert
>
>
> On 13-12-02 02:12 AM, Newtech Tan wrote:
> > Hi Douglas
> >
> > Thanks for your kind reply.
> >
> > sg_senddiag is the sg_ses utility. But i want to use SES driver(linux/driver/scsi/ses.c), do you have any advice?
> >
> >
> >> On 13-11-29 05:07 AM, Newtech Tan wrote:
> >>> Hi friends
> >>>
> >>> I subscribed the mailing list just now. Would you please to give me help?
> >>>
> >>> Who can tell me how to use SES driver(linux/driver/scsi/ses.c) to send SES command(SEND DIAGNOSTIC, RECEIVE DIAGNOSTIC RESULTS) in my linux program?
> >>> (I don't want to use sg_ses.)
> >>
> >> Then look at the source for sg_senddiag (sg_senddiag.c).
> >> Your SES device is either /dev/sg2 or /dev/bsg/4:0:0:0
> >>
> >>> The following is my system info. /dev/sg2 is my SES device.
> >>>
> >>> [root@tan-sl dev]# lsscsi -g
> >>> [0:0:0:0] cd/dvd HL-DT-ST DVD+-RW GSA-H53N B104 /dev/sr0 /dev/sg0
> >>> [3:0:0:0] disk ATA TOSHIBA MK8061GS ME0A /dev/sda /dev/sg1
> >>> [4:0:0:0] enclosu LSI SAS616x 0502 - /dev/sg2
> >>>
> >>> [root@tan-sl enclosure]# pwd
> >>> /sys/class/enclosure
> >>> [root@tan-sl enclosure]# ls -l
> >>> total 0
> >>> lrwxrwxrwx 1 root root 0 Nov 29 14:51 4:0:0:0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0/host4/port-4:0/expan
> >>> der-4:0/port-4:0:0/end_device-4:0:0/target4:0:0/4:0:0:0/enclosure/4:0:0:0
> >>>
> >>> in linux, I can't find ses device. Under /sys/class/enclosure, folder 4:0:0:0 existed.
> >>>
> >>> I will apprectiate for your help.
お疲れ様です。譚です。
以上、よろしくお願いいたします。
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-12-04 0:42 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-29 10:07 how to use SES driver to send SES commands? Newtech Tan
2013-11-29 12:50 ` Douglas Gilbert
2013-12-02 1:12 ` Newtech Tan
2013-12-02 14:53 ` Douglas Gilbert
2013-12-04 0:42 ` Newtech Tan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox