All of lore.kernel.org
 help / color / mirror / Atom feed
* UFS API in the kernel
@ 2016-09-22 15:21 Joao Pinto
  2016-09-26 19:22 ` Shaun Tancheff
  0 siblings, 1 reply; 12+ messages in thread
From: Joao Pinto @ 2016-09-22 15:21 UTC (permalink / raw)
  To: linux-scsi, linux-kernel

Hi!

I am designing an application that has the goal to be an utility for Unipro and
UFS testing purposes. This application is going to run on top of a recent Linux
Kernel containing the new UFS stack (including the new DWC drivers).

I am considering doing the following:
a) Create a new config item called CONFIG_UFS_CHARDEV which is going to create a
char device responsible to make some IOCTL available for user-space applications
b) Create a linux/ufs.h header file that contains data structures declarations
that will be needed in user-space applications

Could you please advise me about what the correct approach should be to make it
as standard as possible and usable in the future?

Thank you very much for your help!

regards,
Joao

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: UFS API in the kernel
  2016-09-22 15:21 UFS API in the kernel Joao Pinto
@ 2016-09-26 19:22 ` Shaun Tancheff
  2016-09-27  1:10   ` Kiwoong Kim
  0 siblings, 1 reply; 12+ messages in thread
From: Shaun Tancheff @ 2016-09-26 19:22 UTC (permalink / raw)
  To: Joao Pinto; +Cc: linux-scsi, linux-kernel

On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com> wrote:
> Hi!
>
> I am designing an application that has the goal to be an utility for Unipro and
> UFS testing purposes. This application is going to run on top of a recent Linux
> Kernel containing the new UFS stack (including the new DWC drivers).
>
> I am considering doing the following:
> a) Create a new config item called CONFIG_UFS_CHARDEV which is going to create a
> char device responsible to make some IOCTL available for user-space applications
> b) Create a linux/ufs.h header file that contains data structures declarations
> that will be needed in user-space applications

I am not very familiar with UFS devices, that said you should have an
sgX chardev being created already so you can handle SG_IO requests.
There also appear to be some sysfs entries being created.

So between sg and sysfs you should be able to handle any user-space
out of band requests without resorting to making a new chardev.

Adding more sysfs entries, if you need them, should be fine.

You may find it easier to expand on the existing interfaces than to
get consensus on a new driver and ioctls.

Hope this helps,
Shaun

> Could you please advise me about what the correct approach should be to make it
> as standard as possible and usable in the future?
>
> Thank you very much for your help!
>
> regards,
> Joao
> --
> 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  https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_majordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ugl8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWYu88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=



-- 
Shaun Tancheff

^ permalink raw reply	[flat|nested] 12+ messages in thread

* RE: UFS API in the kernel
  2016-09-26 19:22 ` Shaun Tancheff
@ 2016-09-27  1:10   ` Kiwoong Kim
  2016-09-27 23:05     ` subhashj
  0 siblings, 1 reply; 12+ messages in thread
From: Kiwoong Kim @ 2016-09-27  1:10 UTC (permalink / raw)
  To: 'Shaun Tancheff', 'Joao Pinto'; +Cc: linux-scsi, linux-kernel

Hi.

If you want to declare some things for user interface,
is it be better to put those thing include/uapi/linux/ than include/linux?

Agreed with Mr. Pinto's opinion with respect to implementing additional ioctls.

Regards.

> -----Original Message-----
> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
> Sent: Tuesday, September 27, 2016 4:23 AM
> To: Joao Pinto
> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
> Subject: Re: UFS API in the kernel
> 
> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com>
> wrote:
> > Hi!
> >
> > I am designing an application that has the goal to be an utility for
> > Unipro and UFS testing purposes. This application is going to run on
> > top of a recent Linux Kernel containing the new UFS stack (including the
> new DWC drivers).
> >
> > I am considering doing the following:
> > a) Create a new config item called CONFIG_UFS_CHARDEV which is going
> > to create a char device responsible to make some IOCTL available for
> > user-space applications
> > b) Create a linux/ufs.h header file that contains data structures
> > declarations that will be needed in user-space applications
> 
> I am not very familiar with UFS devices, that said you should have an sgX
> chardev being created already so you can handle SG_IO requests.
> There also appear to be some sysfs entries being created.
> 
> So between sg and sysfs you should be able to handle any user-space out of
> band requests without resorting to making a new chardev.
> 
> Adding more sysfs entries, if you need them, should be fine.
> 
> You may find it easier to expand on the existing interfaces than to get
> consensus on a new driver and ioctls.
> 
> Hope this helps,
> Shaun
> 
> > Could you please advise me about what the correct approach should be
> > to make it as standard as possible and usable in the future?
> >
> > Thank you very much for your help!
> >
> > regards,
> > Joao
> > --
> > 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
> > https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
> > jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
> > l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
> > u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
> 
> 
> 
> --
> Shaun Tancheff
> --
> 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] 12+ messages in thread

* Re: UFS API in the kernel
  2016-09-27  1:10   ` Kiwoong Kim
@ 2016-09-27 23:05     ` subhashj
  2016-09-28  9:06         ` Joao Pinto
  0 siblings, 1 reply; 12+ messages in thread
From: subhashj @ 2016-09-27 23:05 UTC (permalink / raw)
  To: Kiwoong Kim
  Cc: 'Shaun Tancheff', 'Joao Pinto',
	linux-scsi, linux-kernel, linux-scsi-owner

Hi Joao,


On 2016-09-26 18:10, Kiwoong Kim wrote:
> Hi.
> 
> If you want to declare some things for user interface,
> is it be better to put those thing include/uapi/linux/ than 
> include/linux?
> 
> Agreed with Mr. Pinto's opinion with respect to implementing additional 
> ioctls.

Yes, "scsi_host_template" allows the LLD's to export their ioctl 
callback and then you can use the sg interface to issue UFS specific 
ioctls. We had implemented similar ioctl for our use, here is the 
reference code: 
https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791. 
This was mainly done to  export the UFS query request interface to user 
space. Declarations where exported under include/uapi/scsi/ufs/ . If you 
want to build upon this already existing functionality, i can post the 
formal patch on mailing list.

Regards,
Subhash


> 
> Regards.
> 
>> -----Original Message-----
>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>> Sent: Tuesday, September 27, 2016 4:23 AM
>> To: Joao Pinto
>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>> Subject: Re: UFS API in the kernel
>> 
>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com>
>> wrote:
>> > Hi!
>> >
>> > I am designing an application that has the goal to be an utility for
>> > Unipro and UFS testing purposes. This application is going to run on
>> > top of a recent Linux Kernel containing the new UFS stack (including the
>> new DWC drivers).
>> >
>> > I am considering doing the following:
>> > a) Create a new config item called CONFIG_UFS_CHARDEV which is going
>> > to create a char device responsible to make some IOCTL available for
>> > user-space applications
>> > b) Create a linux/ufs.h header file that contains data structures
>> > declarations that will be needed in user-space applications
>> 
>> I am not very familiar with UFS devices, that said you should have an 
>> sgX
>> chardev being created already so you can handle SG_IO requests.
>> There also appear to be some sysfs entries being created.
>> 
>> So between sg and sysfs you should be able to handle any user-space 
>> out of
>> band requests without resorting to making a new chardev.
>> 
>> Adding more sysfs entries, if you need them, should be fine.
>> 
>> You may find it easier to expand on the existing interfaces than to 
>> get
>> consensus on a new driver and ioctls.
>> 
>> Hope this helps,
>> Shaun
>> 
>> > Could you please advise me about what the correct approach should be
>> > to make it as standard as possible and usable in the future?
>> >
>> > Thank you very much for your help!
>> >
>> > regards,
>> > Joao
>> > --
>> > 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
>> > https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>> > jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>> > l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>> > u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>> 
>> 
>> 
>> --
>> Shaun Tancheff
>> --
>> 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
> 
> 
> --
> 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] 12+ messages in thread

* Re: UFS API in the kernel
  2016-09-27 23:05     ` subhashj
@ 2016-09-28  9:06         ` Joao Pinto
  0 siblings, 0 replies; 12+ messages in thread
From: Joao Pinto @ 2016-09-28  9:06 UTC (permalink / raw)
  To: subhashj, Kiwoong Kim
  Cc: 'Shaun Tancheff', 'Joao Pinto',
	linux-scsi, linux-kernel, linux-scsi-owner


Hi Subhash,

On 9/28/2016 12:05 AM, subhashj@codeaurora.org wrote:
> Hi Joao,
> 
> 
> On 2016-09-26 18:10, Kiwoong Kim wrote:
>> Hi.
>>
>> If you want to declare some things for user interface,
>> is it be better to put those thing include/uapi/linux/ than include/linux?
>>
>> Agreed with Mr. Pinto's opinion with respect to implementing additional ioctls.
> 
> Yes, "scsi_host_template" allows the LLD's to export their ioctl callback and
> then you can use the sg interface to issue UFS specific ioctls. We had
> implemented similar ioctl for our use, here is the reference code:
> https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791.
> This was mainly done to  export the UFS query request interface to user space.
> Declarations where exported under include/uapi/scsi/ufs/ . If you want to build
> upon this already existing functionality, i can post the formal patch on mailing
> list.

Yes, of course I have interest on building on top of what you have done already.
Did yu submit this patch to the kernel already? Could you please send me the
patch and kernel version to apply?

Thanks,
Joao

> 
> Regards,
> Subhash
> 
> 
>>
>> Regards.
>>
>>> -----Original Message-----
>>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>>> Sent: Tuesday, September 27, 2016 4:23 AM
>>> To: Joao Pinto
>>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>>> Subject: Re: UFS API in the kernel
>>>
>>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com>
>>> wrote:
>>> > Hi!
>>> >
>>> > I am designing an application that has the goal to be an utility for
>>> > Unipro and UFS testing purposes. This application is going to run on
>>> > top of a recent Linux Kernel containing the new UFS stack (including the
>>> new DWC drivers).
>>> >
>>> > I am considering doing the following:
>>> > a) Create a new config item called CONFIG_UFS_CHARDEV which is going
>>> > to create a char device responsible to make some IOCTL available for
>>> > user-space applications
>>> > b) Create a linux/ufs.h header file that contains data structures
>>> > declarations that will be needed in user-space applications
>>>
>>> I am not very familiar with UFS devices, that said you should have an sgX
>>> chardev being created already so you can handle SG_IO requests.
>>> There also appear to be some sysfs entries being created.
>>>
>>> So between sg and sysfs you should be able to handle any user-space out of
>>> band requests without resorting to making a new chardev.
>>>
>>> Adding more sysfs entries, if you need them, should be fine.
>>>
>>> You may find it easier to expand on the existing interfaces than to get
>>> consensus on a new driver and ioctls.
>>>
>>> Hope this helps,
>>> Shaun
>>>
>>> > Could you please advise me about what the correct approach should be
>>> > to make it as standard as possible and usable in the future?
>>> >
>>> > Thank you very much for your help!
>>> >
>>> > regards,
>>> > Joao
>>> > --
>>> > 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
>>> > https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>>> > jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>>> > l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>>> > u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>>>
>>>
>>>
>>> -- 
>>> Shaun Tancheff
>>> -- 
>>> 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
>>
>>
>> -- 
>> 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] 12+ messages in thread

* Re: UFS API in the kernel
@ 2016-09-28  9:06         ` Joao Pinto
  0 siblings, 0 replies; 12+ messages in thread
From: Joao Pinto @ 2016-09-28  9:06 UTC (permalink / raw)
  To: subhashj, Kiwoong Kim
  Cc: 'Shaun Tancheff', 'Joao Pinto',
	linux-scsi, linux-kernel, linux-scsi-owner


Hi Subhash,

On 9/28/2016 12:05 AM, subhashj@codeaurora.org wrote:
> Hi Joao,
> 
> 
> On 2016-09-26 18:10, Kiwoong Kim wrote:
>> Hi.
>>
>> If you want to declare some things for user interface,
>> is it be better to put those thing include/uapi/linux/ than include/linux?
>>
>> Agreed with Mr. Pinto's opinion with respect to implementing additional ioctls.
> 
> Yes, "scsi_host_template" allows the LLD's to export their ioctl callback and
> then you can use the sg interface to issue UFS specific ioctls. We had
> implemented similar ioctl for our use, here is the reference code:
> https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791.
> This was mainly done to  export the UFS query request interface to user space.
> Declarations where exported under include/uapi/scsi/ufs/ . If you want to build
> upon this already existing functionality, i can post the formal patch on mailing
> list.

Yes, of course I have interest on building on top of what you have done already.
Did yu submit this patch to the kernel already? Could you please send me the
patch and kernel version to apply?

Thanks,
Joao

> 
> Regards,
> Subhash
> 
> 
>>
>> Regards.
>>
>>> -----Original Message-----
>>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>>> Sent: Tuesday, September 27, 2016 4:23 AM
>>> To: Joao Pinto
>>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>>> Subject: Re: UFS API in the kernel
>>>
>>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com>
>>> wrote:
>>> > Hi!
>>> >
>>> > I am designing an application that has the goal to be an utility for
>>> > Unipro and UFS testing purposes. This application is going to run on
>>> > top of a recent Linux Kernel containing the new UFS stack (including the
>>> new DWC drivers).
>>> >
>>> > I am considering doing the following:
>>> > a) Create a new config item called CONFIG_UFS_CHARDEV which is going
>>> > to create a char device responsible to make some IOCTL available for
>>> > user-space applications
>>> > b) Create a linux/ufs.h header file that contains data structures
>>> > declarations that will be needed in user-space applications
>>>
>>> I am not very familiar with UFS devices, that said you should have an sgX
>>> chardev being created already so you can handle SG_IO requests.
>>> There also appear to be some sysfs entries being created.
>>>
>>> So between sg and sysfs you should be able to handle any user-space out of
>>> band requests without resorting to making a new chardev.
>>>
>>> Adding more sysfs entries, if you need them, should be fine.
>>>
>>> You may find it easier to expand on the existing interfaces than to get
>>> consensus on a new driver and ioctls.
>>>
>>> Hope this helps,
>>> Shaun
>>>
>>> > Could you please advise me about what the correct approach should be
>>> > to make it as standard as possible and usable in the future?
>>> >
>>> > Thank you very much for your help!
>>> >
>>> > regards,
>>> > Joao
>>> > --
>>> > 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
>>> > https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>>> > jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>>> > l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>>> > u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>>>
>>>
>>>
>>> -- 
>>> Shaun Tancheff
>>> -- 
>>> 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
>>
>>
>> -- 
>> 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] 12+ messages in thread

* Re: UFS API in the kernel
  2016-09-28  9:06         ` Joao Pinto
@ 2016-09-28  9:19           ` Joao Pinto
  -1 siblings, 0 replies; 12+ messages in thread
From: Joao Pinto @ 2016-09-28  9:19 UTC (permalink / raw)
  To: subhashj, Kiwoong Kim
  Cc: 'Shaun Tancheff', 'Joao Pinto',
	linux-scsi, linux-kernel, linux-scsi-owner


Hi again!
Could you also send me an example of how you are using the IOCTL from your user
app (send/receive data)? I already have my implemented but you use a different
mechanism (I have checked your structures in uapi/scsi/ufs/) and I have to port
it! Thanks!


On 9/28/2016 10:06 AM, Joao Pinto wrote:
> 
> Hi Subhash,
> 
> On 9/28/2016 12:05 AM, subhashj@codeaurora.org wrote:
>> Hi Joao,
>>
>>
>> On 2016-09-26 18:10, Kiwoong Kim wrote:
>>> Hi.
>>>
>>> If you want to declare some things for user interface,
>>> is it be better to put those thing include/uapi/linux/ than include/linux?
>>>
>>> Agreed with Mr. Pinto's opinion with respect to implementing additional ioctls.
>>
>> Yes, "scsi_host_template" allows the LLD's to export their ioctl callback and
>> then you can use the sg interface to issue UFS specific ioctls. We had
>> implemented similar ioctl for our use, here is the reference code:
>> https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791.
>> This was mainly done to  export the UFS query request interface to user space.
>> Declarations where exported under include/uapi/scsi/ufs/ . If you want to build
>> upon this already existing functionality, i can post the formal patch on mailing
>> list.
> 
> Yes, of course I have interest on building on top of what you have done already.
> Did yu submit this patch to the kernel already? Could you please send me the
> patch and kernel version to apply?
> 
> Thanks,
> Joao
> 
>>
>> Regards,
>> Subhash
>>
>>
>>>
>>> Regards.
>>>
>>>> -----Original Message-----
>>>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>>>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>>>> Sent: Tuesday, September 27, 2016 4:23 AM
>>>> To: Joao Pinto
>>>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>>>> Subject: Re: UFS API in the kernel
>>>>
>>>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com>
>>>> wrote:
>>>>> Hi!
>>>>>
>>>>> I am designing an application that has the goal to be an utility for
>>>>> Unipro and UFS testing purposes. This application is going to run on
>>>>> top of a recent Linux Kernel containing the new UFS stack (including the
>>>> new DWC drivers).
>>>>>
>>>>> I am considering doing the following:
>>>>> a) Create a new config item called CONFIG_UFS_CHARDEV which is going
>>>>> to create a char device responsible to make some IOCTL available for
>>>>> user-space applications
>>>>> b) Create a linux/ufs.h header file that contains data structures
>>>>> declarations that will be needed in user-space applications
>>>>
>>>> I am not very familiar with UFS devices, that said you should have an sgX
>>>> chardev being created already so you can handle SG_IO requests.
>>>> There also appear to be some sysfs entries being created.
>>>>
>>>> So between sg and sysfs you should be able to handle any user-space out of
>>>> band requests without resorting to making a new chardev.
>>>>
>>>> Adding more sysfs entries, if you need them, should be fine.
>>>>
>>>> You may find it easier to expand on the existing interfaces than to get
>>>> consensus on a new driver and ioctls.
>>>>
>>>> Hope this helps,
>>>> Shaun
>>>>
>>>>> Could you please advise me about what the correct approach should be
>>>>> to make it as standard as possible and usable in the future?
>>>>>
>>>>> Thank you very much for your help!
>>>>>
>>>>> regards,
>>>>> Joao
>>>>> --
>>>>> 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
>>>>> https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>>>>> jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>>>>> l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>>>>> u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>>>>
>>>>
>>>>
>>>> -- 
>>>> Shaun Tancheff
>>>> -- 
>>>> 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
>>>
>>>
>>> -- 
>>> 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] 12+ messages in thread

* Re: UFS API in the kernel
@ 2016-09-28  9:19           ` Joao Pinto
  0 siblings, 0 replies; 12+ messages in thread
From: Joao Pinto @ 2016-09-28  9:19 UTC (permalink / raw)
  To: subhashj, Kiwoong Kim
  Cc: 'Shaun Tancheff', 'Joao Pinto',
	linux-scsi, linux-kernel, linux-scsi-owner


Hi again!
Could you also send me an example of how you are using the IOCTL from your user
app (send/receive data)? I already have my implemented but you use a different
mechanism (I have checked your structures in uapi/scsi/ufs/) and I have to port
it! Thanks!


On 9/28/2016 10:06 AM, Joao Pinto wrote:
> 
> Hi Subhash,
> 
> On 9/28/2016 12:05 AM, subhashj@codeaurora.org wrote:
>> Hi Joao,
>>
>>
>> On 2016-09-26 18:10, Kiwoong Kim wrote:
>>> Hi.
>>>
>>> If you want to declare some things for user interface,
>>> is it be better to put those thing include/uapi/linux/ than include/linux?
>>>
>>> Agreed with Mr. Pinto's opinion with respect to implementing additional ioctls.
>>
>> Yes, "scsi_host_template" allows the LLD's to export their ioctl callback and
>> then you can use the sg interface to issue UFS specific ioctls. We had
>> implemented similar ioctl for our use, here is the reference code:
>> https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791.
>> This was mainly done to  export the UFS query request interface to user space.
>> Declarations where exported under include/uapi/scsi/ufs/ . If you want to build
>> upon this already existing functionality, i can post the formal patch on mailing
>> list.
> 
> Yes, of course I have interest on building on top of what you have done already.
> Did yu submit this patch to the kernel already? Could you please send me the
> patch and kernel version to apply?
> 
> Thanks,
> Joao
> 
>>
>> Regards,
>> Subhash
>>
>>
>>>
>>> Regards.
>>>
>>>> -----Original Message-----
>>>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>>>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>>>> Sent: Tuesday, September 27, 2016 4:23 AM
>>>> To: Joao Pinto
>>>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>>>> Subject: Re: UFS API in the kernel
>>>>
>>>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com>
>>>> wrote:
>>>>> Hi!
>>>>>
>>>>> I am designing an application that has the goal to be an utility for
>>>>> Unipro and UFS testing purposes. This application is going to run on
>>>>> top of a recent Linux Kernel containing the new UFS stack (including the
>>>> new DWC drivers).
>>>>>
>>>>> I am considering doing the following:
>>>>> a) Create a new config item called CONFIG_UFS_CHARDEV which is going
>>>>> to create a char device responsible to make some IOCTL available for
>>>>> user-space applications
>>>>> b) Create a linux/ufs.h header file that contains data structures
>>>>> declarations that will be needed in user-space applications
>>>>
>>>> I am not very familiar with UFS devices, that said you should have an sgX
>>>> chardev being created already so you can handle SG_IO requests.
>>>> There also appear to be some sysfs entries being created.
>>>>
>>>> So between sg and sysfs you should be able to handle any user-space out of
>>>> band requests without resorting to making a new chardev.
>>>>
>>>> Adding more sysfs entries, if you need them, should be fine.
>>>>
>>>> You may find it easier to expand on the existing interfaces than to get
>>>> consensus on a new driver and ioctls.
>>>>
>>>> Hope this helps,
>>>> Shaun
>>>>
>>>>> Could you please advise me about what the correct approach should be
>>>>> to make it as standard as possible and usable in the future?
>>>>>
>>>>> Thank you very much for your help!
>>>>>
>>>>> regards,
>>>>> Joao
>>>>> --
>>>>> 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
>>>>> https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>>>>> jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>>>>> l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>>>>> u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>>>>
>>>>
>>>>
>>>> -- 
>>>> Shaun Tancheff
>>>> -- 
>>>> 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
>>>
>>>
>>> -- 
>>> 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] 12+ messages in thread

* Re: UFS API in the kernel
  2016-09-28  9:19           ` Joao Pinto
@ 2016-09-28  9:57             ` Joao Pinto
  -1 siblings, 0 replies; 12+ messages in thread
From: Joao Pinto @ 2016-09-28  9:57 UTC (permalink / raw)
  To: subhashj, Kiwoong Kim
  Cc: 'Shaun Tancheff', 'Joao Pinto',
	linux-scsi, linux-kernel, linux-scsi-owner, Carlos Palminha


I was able to get the 7 patches to have the UFS IOCTL features from your repo.
BTW, why weren't these features submitted to the kernel?
I checked lots of tweaks that you have been making to the UFS... do you
synchronize them periodically with the mainline? Thanks!

On 9/28/2016 10:19 AM, Joao Pinto wrote:
> 
> Hi again!
> Could you also send me an example of how you are using the IOCTL from your user
> app (send/receive data)? I already have my implemented but you use a different
> mechanism (I have checked your structures in uapi/scsi/ufs/) and I have to port
> it! Thanks!
> 
> 
> On 9/28/2016 10:06 AM, Joao Pinto wrote:
>>
>> Hi Subhash,
>>
>> On 9/28/2016 12:05 AM, subhashj@codeaurora.org wrote:
>>> Hi Joao,
>>>
>>>
>>> On 2016-09-26 18:10, Kiwoong Kim wrote:
>>>> Hi.
>>>>
>>>> If you want to declare some things for user interface,
>>>> is it be better to put those thing include/uapi/linux/ than include/linux?
>>>>
>>>> Agreed with Mr. Pinto's opinion with respect to implementing additional ioctls.
>>>
>>> Yes, "scsi_host_template" allows the LLD's to export their ioctl callback and
>>> then you can use the sg interface to issue UFS specific ioctls. We had
>>> implemented similar ioctl for our use, here is the reference code:
>>> https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791.
>>> This was mainly done to  export the UFS query request interface to user space.
>>> Declarations where exported under include/uapi/scsi/ufs/ . If you want to build
>>> upon this already existing functionality, i can post the formal patch on mailing
>>> list.
>>
>> Yes, of course I have interest on building on top of what you have done already.
>> Did yu submit this patch to the kernel already? Could you please send me the
>> patch and kernel version to apply?
>>
>> Thanks,
>> Joao
>>
>>>
>>> Regards,
>>> Subhash
>>>
>>>
>>>>
>>>> Regards.
>>>>
>>>>> -----Original Message-----
>>>>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>>>>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>>>>> Sent: Tuesday, September 27, 2016 4:23 AM
>>>>> To: Joao Pinto
>>>>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>>>>> Subject: Re: UFS API in the kernel
>>>>>
>>>>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com>
>>>>> wrote:
>>>>>> Hi!
>>>>>>
>>>>>> I am designing an application that has the goal to be an utility for
>>>>>> Unipro and UFS testing purposes. This application is going to run on
>>>>>> top of a recent Linux Kernel containing the new UFS stack (including the
>>>>> new DWC drivers).
>>>>>>
>>>>>> I am considering doing the following:
>>>>>> a) Create a new config item called CONFIG_UFS_CHARDEV which is going
>>>>>> to create a char device responsible to make some IOCTL available for
>>>>>> user-space applications
>>>>>> b) Create a linux/ufs.h header file that contains data structures
>>>>>> declarations that will be needed in user-space applications
>>>>>
>>>>> I am not very familiar with UFS devices, that said you should have an sgX
>>>>> chardev being created already so you can handle SG_IO requests.
>>>>> There also appear to be some sysfs entries being created.
>>>>>
>>>>> So between sg and sysfs you should be able to handle any user-space out of
>>>>> band requests without resorting to making a new chardev.
>>>>>
>>>>> Adding more sysfs entries, if you need them, should be fine.
>>>>>
>>>>> You may find it easier to expand on the existing interfaces than to get
>>>>> consensus on a new driver and ioctls.
>>>>>
>>>>> Hope this helps,
>>>>> Shaun
>>>>>
>>>>>> Could you please advise me about what the correct approach should be
>>>>>> to make it as standard as possible and usable in the future?
>>>>>>
>>>>>> Thank you very much for your help!
>>>>>>
>>>>>> regards,
>>>>>> Joao
>>>>>> --
>>>>>> 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
>>>>>> https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>>>>>> jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>>>>>> l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>>>>>> u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>>>>>
>>>>>
>>>>>
>>>>> -- 
>>>>> Shaun Tancheff
>>>>> -- 
>>>>> 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
>>>>
>>>>
>>>> -- 
>>>> 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] 12+ messages in thread

* Re: UFS API in the kernel
@ 2016-09-28  9:57             ` Joao Pinto
  0 siblings, 0 replies; 12+ messages in thread
From: Joao Pinto @ 2016-09-28  9:57 UTC (permalink / raw)
  To: subhashj, Kiwoong Kim
  Cc: 'Shaun Tancheff', 'Joao Pinto',
	linux-scsi, linux-kernel, linux-scsi-owner, Carlos Palminha


I was able to get the 7 patches to have the UFS IOCTL features from your repo.
BTW, why weren't these features submitted to the kernel?
I checked lots of tweaks that you have been making to the UFS... do you
synchronize them periodically with the mainline? Thanks!

On 9/28/2016 10:19 AM, Joao Pinto wrote:
> 
> Hi again!
> Could you also send me an example of how you are using the IOCTL from your user
> app (send/receive data)? I already have my implemented but you use a different
> mechanism (I have checked your structures in uapi/scsi/ufs/) and I have to port
> it! Thanks!
> 
> 
> On 9/28/2016 10:06 AM, Joao Pinto wrote:
>>
>> Hi Subhash,
>>
>> On 9/28/2016 12:05 AM, subhashj@codeaurora.org wrote:
>>> Hi Joao,
>>>
>>>
>>> On 2016-09-26 18:10, Kiwoong Kim wrote:
>>>> Hi.
>>>>
>>>> If you want to declare some things for user interface,
>>>> is it be better to put those thing include/uapi/linux/ than include/linux?
>>>>
>>>> Agreed with Mr. Pinto's opinion with respect to implementing additional ioctls.
>>>
>>> Yes, "scsi_host_template" allows the LLD's to export their ioctl callback and
>>> then you can use the sg interface to issue UFS specific ioctls. We had
>>> implemented similar ioctl for our use, here is the reference code:
>>> https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791.
>>> This was mainly done to  export the UFS query request interface to user space.
>>> Declarations where exported under include/uapi/scsi/ufs/ . If you want to build
>>> upon this already existing functionality, i can post the formal patch on mailing
>>> list.
>>
>> Yes, of course I have interest on building on top of what you have done already.
>> Did yu submit this patch to the kernel already? Could you please send me the
>> patch and kernel version to apply?
>>
>> Thanks,
>> Joao
>>
>>>
>>> Regards,
>>> Subhash
>>>
>>>
>>>>
>>>> Regards.
>>>>
>>>>> -----Original Message-----
>>>>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>>>>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>>>>> Sent: Tuesday, September 27, 2016 4:23 AM
>>>>> To: Joao Pinto
>>>>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>>>>> Subject: Re: UFS API in the kernel
>>>>>
>>>>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto <Joao.Pinto@synopsys.com>
>>>>> wrote:
>>>>>> Hi!
>>>>>>
>>>>>> I am designing an application that has the goal to be an utility for
>>>>>> Unipro and UFS testing purposes. This application is going to run on
>>>>>> top of a recent Linux Kernel containing the new UFS stack (including the
>>>>> new DWC drivers).
>>>>>>
>>>>>> I am considering doing the following:
>>>>>> a) Create a new config item called CONFIG_UFS_CHARDEV which is going
>>>>>> to create a char device responsible to make some IOCTL available for
>>>>>> user-space applications
>>>>>> b) Create a linux/ufs.h header file that contains data structures
>>>>>> declarations that will be needed in user-space applications
>>>>>
>>>>> I am not very familiar with UFS devices, that said you should have an sgX
>>>>> chardev being created already so you can handle SG_IO requests.
>>>>> There also appear to be some sysfs entries being created.
>>>>>
>>>>> So between sg and sysfs you should be able to handle any user-space out of
>>>>> band requests without resorting to making a new chardev.
>>>>>
>>>>> Adding more sysfs entries, if you need them, should be fine.
>>>>>
>>>>> You may find it easier to expand on the existing interfaces than to get
>>>>> consensus on a new driver and ioctls.
>>>>>
>>>>> Hope this helps,
>>>>> Shaun
>>>>>
>>>>>> Could you please advise me about what the correct approach should be
>>>>>> to make it as standard as possible and usable in the future?
>>>>>>
>>>>>> Thank you very much for your help!
>>>>>>
>>>>>> regards,
>>>>>> Joao
>>>>>> --
>>>>>> 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
>>>>>> https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>>>>>> jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>>>>>> l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>>>>>> u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>>>>>
>>>>>
>>>>>
>>>>> -- 
>>>>> Shaun Tancheff
>>>>> -- 
>>>>> 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
>>>>
>>>>
>>>> -- 
>>>> 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] 12+ messages in thread

* Re: UFS API in the kernel
  2016-09-28  9:57             ` Joao Pinto
  (?)
@ 2016-09-28 22:46             ` subhashj
  -1 siblings, 0 replies; 12+ messages in thread
From: subhashj @ 2016-09-28 22:46 UTC (permalink / raw)
  To: Joao Pinto
  Cc: Kiwoong Kim, 'Shaun Tancheff',
	linux-scsi, linux-kernel, linux-scsi-owner, Carlos Palminha

On 2016-09-28 02:57, Joao Pinto wrote:
> I was able to get the 7 patches to have the UFS IOCTL features from 
> your repo.
> BTW, why weren't these features submitted to the kernel?
> I checked lots of tweaks that you have been making to the UFS... do you
> synchronize them periodically with the mainline? Thanks!

We had mainlined quite a lot UFS patches in past and I am also planning 
to push out the remaining deltas to mainline over next couple of months. 
Thanks.

> 
> On 9/28/2016 10:19 AM, Joao Pinto wrote:
>> 
>> Hi again!
>> Could you also send me an example of how you are using the IOCTL from 
>> your user
>> app (send/receive data)? I already have my implemented but you use a 
>> different
>> mechanism (I have checked your structures in uapi/scsi/ufs/) and I 
>> have to port
>> it! Thanks!
>> 
>> 
>> On 9/28/2016 10:06 AM, Joao Pinto wrote:
>>> 
>>> Hi Subhash,
>>> 
>>> On 9/28/2016 12:05 AM, subhashj@codeaurora.org wrote:
>>>> Hi Joao,
>>>> 
>>>> 
>>>> On 2016-09-26 18:10, Kiwoong Kim wrote:
>>>>> Hi.
>>>>> 
>>>>> If you want to declare some things for user interface,
>>>>> is it be better to put those thing include/uapi/linux/ than 
>>>>> include/linux?
>>>>> 
>>>>> Agreed with Mr. Pinto's opinion with respect to implementing 
>>>>> additional ioctls.
>>>> 
>>>> Yes, "scsi_host_template" allows the LLD's to export their ioctl 
>>>> callback and
>>>> then you can use the sg interface to issue UFS specific ioctls. We 
>>>> had
>>>> implemented similar ioctl for our use, here is the reference code:
>>>> https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791.
>>>> This was mainly done to  export the UFS query request interface to 
>>>> user space.
>>>> Declarations where exported under include/uapi/scsi/ufs/ . If you 
>>>> want to build
>>>> upon this already existing functionality, i can post the formal 
>>>> patch on mailing
>>>> list.
>>> 
>>> Yes, of course I have interest on building on top of what you have 
>>> done already.
>>> Did yu submit this patch to the kernel already? Could you please send 
>>> me the
>>> patch and kernel version to apply?
>>> 
>>> Thanks,
>>> Joao
>>> 
>>>> 
>>>> Regards,
>>>> Subhash
>>>> 
>>>> 
>>>>> 
>>>>> Regards.
>>>>> 
>>>>>> -----Original Message-----
>>>>>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>>>>>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>>>>>> Sent: Tuesday, September 27, 2016 4:23 AM
>>>>>> To: Joao Pinto
>>>>>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>>>>>> Subject: Re: UFS API in the kernel
>>>>>> 
>>>>>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto 
>>>>>> <Joao.Pinto@synopsys.com>
>>>>>> wrote:
>>>>>>> Hi!
>>>>>>> 
>>>>>>> I am designing an application that has the goal to be an utility 
>>>>>>> for
>>>>>>> Unipro and UFS testing purposes. This application is going to run 
>>>>>>> on
>>>>>>> top of a recent Linux Kernel containing the new UFS stack 
>>>>>>> (including the
>>>>>> new DWC drivers).
>>>>>>> 
>>>>>>> I am considering doing the following:
>>>>>>> a) Create a new config item called CONFIG_UFS_CHARDEV which is 
>>>>>>> going
>>>>>>> to create a char device responsible to make some IOCTL available 
>>>>>>> for
>>>>>>> user-space applications
>>>>>>> b) Create a linux/ufs.h header file that contains data structures
>>>>>>> declarations that will be needed in user-space applications
>>>>>> 
>>>>>> I am not very familiar with UFS devices, that said you should have 
>>>>>> an sgX
>>>>>> chardev being created already so you can handle SG_IO requests.
>>>>>> There also appear to be some sysfs entries being created.
>>>>>> 
>>>>>> So between sg and sysfs you should be able to handle any 
>>>>>> user-space out of
>>>>>> band requests without resorting to making a new chardev.
>>>>>> 
>>>>>> Adding more sysfs entries, if you need them, should be fine.
>>>>>> 
>>>>>> You may find it easier to expand on the existing interfaces than 
>>>>>> to get
>>>>>> consensus on a new driver and ioctls.
>>>>>> 
>>>>>> Hope this helps,
>>>>>> Shaun
>>>>>> 
>>>>>>> Could you please advise me about what the correct approach should 
>>>>>>> be
>>>>>>> to make it as standard as possible and usable in the future?
>>>>>>> 
>>>>>>> Thank you very much for your help!
>>>>>>> 
>>>>>>> regards,
>>>>>>> Joao
>>>>>>> --
>>>>>>> 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
>>>>>>> https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>>>>>>> jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>>>>>>> l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>>>>>>> u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> --
>>>>>> Shaun Tancheff
>>>>>> --
>>>>>> 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
>>>>> 
>>>>> 
>>>>> --
>>>>> 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
>>> 
>> 
> 
> --
> 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] 12+ messages in thread

* Re: UFS API in the kernel
  2016-09-28  9:19           ` Joao Pinto
  (?)
  (?)
@ 2016-09-28 23:04           ` subhashj
  -1 siblings, 0 replies; 12+ messages in thread
From: subhashj @ 2016-09-28 23:04 UTC (permalink / raw)
  To: Joao Pinto
  Cc: Kiwoong Kim, 'Shaun Tancheff',
	linux-scsi, linux-kernel, linux-scsi-owner

On 2016-09-28 02:19, Joao Pinto wrote:
> Hi again!
> Could you also send me an example of how you are using the IOCTL from 
> your user
> app (send/receive data)? I already have my implemented but you use a 
> different
> mechanism (I have checked your structures in uapi/scsi/ufs/) and I have 
> to port
> it! Thanks!

You may use the SG_IO ioctl with sg device node for any data read/write 
operations.
http://www.tldp.org/HOWTO/SCSI-Generic-HOWTO/sg_io.html has some 
details.

> 
> 
> On 9/28/2016 10:06 AM, Joao Pinto wrote:
>> 
>> Hi Subhash,
>> 
>> On 9/28/2016 12:05 AM, subhashj@codeaurora.org wrote:
>>> Hi Joao,
>>> 
>>> 
>>> On 2016-09-26 18:10, Kiwoong Kim wrote:
>>>> Hi.
>>>> 
>>>> If you want to declare some things for user interface,
>>>> is it be better to put those thing include/uapi/linux/ than 
>>>> include/linux?
>>>> 
>>>> Agreed with Mr. Pinto's opinion with respect to implementing 
>>>> additional ioctls.
>>> 
>>> Yes, "scsi_host_template" allows the LLD's to export their ioctl 
>>> callback and
>>> then you can use the sg interface to issue UFS specific ioctls. We 
>>> had
>>> implemented similar ioctl for our use, here is the reference code:
>>> https://source.codeaurora.org/quic/la/kernel/msm-3.18/tree/drivers/scsi/ufs/ufshcd.c?h=LA.HB.1.1.1.c2#n6791.
>>> This was mainly done to  export the UFS query request interface to 
>>> user space.
>>> Declarations where exported under include/uapi/scsi/ufs/ . If you 
>>> want to build
>>> upon this already existing functionality, i can post the formal patch 
>>> on mailing
>>> list.
>> 
>> Yes, of course I have interest on building on top of what you have 
>> done already.
>> Did yu submit this patch to the kernel already? Could you please send 
>> me the
>> patch and kernel version to apply?
>> 
>> Thanks,
>> Joao
>> 
>>> 
>>> Regards,
>>> Subhash
>>> 
>>> 
>>>> 
>>>> Regards.
>>>> 
>>>>> -----Original Message-----
>>>>> From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-
>>>>> owner@vger.kernel.org] On Behalf Of Shaun Tancheff
>>>>> Sent: Tuesday, September 27, 2016 4:23 AM
>>>>> To: Joao Pinto
>>>>> Cc: linux-scsi@vger.kernel.org; linux-kernel@vger.kernel.org
>>>>> Subject: Re: UFS API in the kernel
>>>>> 
>>>>> On Thu, Sep 22, 2016 at 10:21 AM, Joao Pinto 
>>>>> <Joao.Pinto@synopsys.com>
>>>>> wrote:
>>>>>> Hi!
>>>>>> 
>>>>>> I am designing an application that has the goal to be an utility 
>>>>>> for
>>>>>> Unipro and UFS testing purposes. This application is going to run 
>>>>>> on
>>>>>> top of a recent Linux Kernel containing the new UFS stack 
>>>>>> (including the
>>>>> new DWC drivers).
>>>>>> 
>>>>>> I am considering doing the following:
>>>>>> a) Create a new config item called CONFIG_UFS_CHARDEV which is 
>>>>>> going
>>>>>> to create a char device responsible to make some IOCTL available 
>>>>>> for
>>>>>> user-space applications
>>>>>> b) Create a linux/ufs.h header file that contains data structures
>>>>>> declarations that will be needed in user-space applications
>>>>> 
>>>>> I am not very familiar with UFS devices, that said you should have 
>>>>> an sgX
>>>>> chardev being created already so you can handle SG_IO requests.
>>>>> There also appear to be some sysfs entries being created.
>>>>> 
>>>>> So between sg and sysfs you should be able to handle any user-space 
>>>>> out of
>>>>> band requests without resorting to making a new chardev.
>>>>> 
>>>>> Adding more sysfs entries, if you need them, should be fine.
>>>>> 
>>>>> You may find it easier to expand on the existing interfaces than to 
>>>>> get
>>>>> consensus on a new driver and ioctls.
>>>>> 
>>>>> Hope this helps,
>>>>> Shaun
>>>>> 
>>>>>> Could you please advise me about what the correct approach should 
>>>>>> be
>>>>>> to make it as standard as possible and usable in the future?
>>>>>> 
>>>>>> Thank you very much for your help!
>>>>>> 
>>>>>> regards,
>>>>>> Joao
>>>>>> --
>>>>>> 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
>>>>>> https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_ma
>>>>>> jordomo-2Dinfo.html&d=DQICaQ&c=IGDlg0lD0b-nebmJJ0Kp8A&r=Wg5NqlNlVTT7Ug
>>>>>> l8V50qIHLe856QW0qfG3WVYGOrWzA&m=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWY
>>>>>> u88nM&s=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc&e=
>>>>> 
>>>>> 
>>>>> 
>>>>> --
>>>>> Shaun Tancheff
>>>>> --
>>>>> 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
>>>> 
>>>> 
>>>> --
>>>> 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] 12+ messages in thread

end of thread, other threads:[~2016-09-28 23:04 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-22 15:21 UFS API in the kernel Joao Pinto
2016-09-26 19:22 ` Shaun Tancheff
2016-09-27  1:10   ` Kiwoong Kim
2016-09-27 23:05     ` subhashj
2016-09-28  9:06       ` Joao Pinto
2016-09-28  9:06         ` Joao Pinto
2016-09-28  9:19         ` Joao Pinto
2016-09-28  9:19           ` Joao Pinto
2016-09-28  9:57           ` Joao Pinto
2016-09-28  9:57             ` Joao Pinto
2016-09-28 22:46             ` subhashj
2016-09-28 23:04           ` subhashj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.