linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Johannes Thumshirn <jthumshirn@suse.de>
To: Raghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com>
Cc: jejb@linux.vnet.ibm.com, martin.petersen@oracle.com,
	linux-scsi@vger.kernel.org, David.Carroll@microsemi.com,
	Gana.Sridaran@microsemi.com, Scott.Benesh@microsemi.com
Subject: Re: [PATCH V2 03/24] aacraid: added support for init_struct_8
Date: Thu, 26 Jan 2017 09:37:00 +0100	[thread overview]
Message-ID: <20170126083700.GE3591@linux-x5ow.site> (raw)
In-Reply-To: <20170125180111.25401-4-RaghavaAditya.Renukunta@microsemi.com>

On Wed, Jan 25, 2017 at 10:00:50AM -0800, Raghava Aditya Renukunta wrote:
> This  patch lays the groundwork for supporting the new HBA-1000 controller
> family.A new INIT structure INIT_STRUCT_8 has been added which allows for a
> variable size for MSI-x vectors among other things,  and is used for both
> Series-8, HBA-1000 and SmartIOC-2000.
> 
> Signed-off-by: Raghava Aditya Renukunta <raghavaaditya.renukunta@microsemi.com>
> Signed-off-by: Dave Carroll <David.Carroll@microsemi.com>
> 
> ---

[...]

> -struct aac_init
> +union aac_init
>  {
> -	__le32	InitStructRevision;
> -	__le32	Sa_MSIXVectors;
> -	__le32	fsrev;
> -	__le32	CommHeaderAddress;
> -	__le32	FastIoCommAreaAddress;
> -	__le32	AdapterFibsPhysicalAddress;
> -	__le32	AdapterFibsVirtualAddress;
> -	__le32	AdapterFibsSize;
> -	__le32	AdapterFibAlign;
> -	__le32	printfbuf;
> -	__le32	printfbufsiz;
> -	__le32	HostPhysMemPages;   /* number of 4k pages of host
> -				       physical memory */
> -	__le32	HostElapsedSeconds; /* number of seconds since 1970. */
> -	/*
> -	 * ADAPTER_INIT_STRUCT_REVISION_4 begins here
> -	 */
> -	__le32	InitFlags;	/* flags for supported features */
> +	struct _r7 {
> +		__le32	InitStructRevision;
> +		__le32	NoOfMSIXVectors;
> +		__le32	fsrev;
> +		__le32	CommHeaderAddress;
> +		__le32	FastIoCommAreaAddress;
> +		__le32	AdapterFibsPhysicalAddress;
> +		__le32	AdapterFibsVirtualAddress;
> +		__le32	AdapterFibsSize;
> +		__le32	AdapterFibAlign;
> +		__le32	printfbuf;
> +		__le32	printfbufsiz;
> +		/* number of 4k pages of host phys. mem. */
> +		__le32	HostPhysMemPages;
> +		/* number of seconds since 1970. */
> +		__le32	HostElapsedSeconds;
> +		/* ADAPTER_INIT_STRUCT_REVISION_4 begins here */
> +		__le32	InitFlags;	/* flags for supported features */
>  #define INITFLAGS_NEW_COMM_SUPPORTED	0x00000001
>  #define INITFLAGS_DRIVER_USES_UTC_TIME	0x00000010
>  #define INITFLAGS_DRIVER_SUPPORTS_PM	0x00000020
>  #define INITFLAGS_NEW_COMM_TYPE1_SUPPORTED	0x00000040
>  #define INITFLAGS_FAST_JBOD_SUPPORTED	0x00000080
>  #define INITFLAGS_NEW_COMM_TYPE2_SUPPORTED	0x00000100
> -	__le32	MaxIoCommands;	/* max outstanding commands */
> -	__le32	MaxIoSize;	/* largest I/O command */
> -	__le32	MaxFibSize;	/* largest FIB to adapter */
> -	/* ADAPTER_INIT_STRUCT_REVISION_5 begins here */
> -	__le32	MaxNumAif;	/* max number of aif */
> -	/* ADAPTER_INIT_STRUCT_REVISION_6 begins here */
> -	__le32	HostRRQ_AddrLow;
> -	__le32	HostRRQ_AddrHigh;	/* Host RRQ (response queue) for SRC */
> +#define INITFLAGS_DRIVER_SUPPORTS_HBA_MODE  0x00000400
> +		__le32	MaxIoCommands;	/* max outstanding commands */
> +		__le32	MaxIoSize;	/* largest I/O command */
> +		__le32	MaxFibSize;	/* largest FIB to adapter */
> +		/* ADAPTER_INIT_STRUCT_REVISION_5 begins here */
> +		__le32	MaxNumAif;	/* max number of aif */
> +		/* ADAPTER_INIT_STRUCT_REVISION_6 begins here */
> +		/* Host RRQ (response queue) for SRC */
> +		__le32	HostRRQ_AddrLow;
> +		__le32	HostRRQ_AddrHigh;
> +	} r7;
> +	struct _r8 {
> +		/* ADAPTER_INIT_STRUCT_REVISION_8 */
> +		__le32	InitStructRevision;
> +		__le32	RRQueueCount;
> +		__le32	HostElapsedSeconds; /* number of seconds since 1970. */
> +		__le32	InitFlags;
> +		__le32	MaxIoSize;	/* largest I/O command */
> +		__le32	MaxNumAif;	/* max number of aif */
> +		__le32	Reserved1;
> +		__le32	Reserved2;
> +		struct _rrq {
> +			__le32	Host_AddrLow;
> +			__le32	Host_AddrHigh;
> +			__le16	MSIX_Id;
> +			__le16	ElementCount;
> +			__le16	Comp_Thresh;
> +			__le16	Unused;
> +		} rrq[1];		/* up to 64 RRQ addresses */
> +	} r8;
>  };

Is this CamelCase pollution really needed? You're touching it anyways, so
wouldn't it be a great chance to run 
sed -e 's/\([A-Z]\)/_\l\1/g' -e 's/^_\([a-z]\)/\1/g'
on the new structures?

[...]

-- 
Johannes Thumshirn                                          Storage
jthumshirn@suse.de                                +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850

  reply	other threads:[~2017-01-26  8:37 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-25 18:00 [PATCH V2 00/24] aacraid: Patchset for Smart Family support Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 01/24] aacraid: Remove duplicate irq management code Raghava Aditya Renukunta
2017-01-26  8:26   ` Johannes Thumshirn
2017-01-25 18:00 ` [PATCH V2 02/24] aacraid: Added aacraid.h include guard Raghava Aditya Renukunta
2017-01-26  8:27   ` Johannes Thumshirn
2017-01-25 18:00 ` [PATCH V2 03/24] aacraid: added support for init_struct_8 Raghava Aditya Renukunta
2017-01-26  8:37   ` Johannes Thumshirn [this message]
2017-01-26 18:42     ` Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 04/24] aacraid: Added sa firmware support Raghava Aditya Renukunta
2017-01-26  8:55   ` Johannes Thumshirn
2017-01-26 18:43     ` Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 05/24] aacraid: Retrieve and update the device types Raghava Aditya Renukunta
2017-01-26  8:59   ` Johannes Thumshirn
2017-01-26 18:44     ` Raghava Aditya Renukunta
2017-01-26 21:00       ` Raghava Aditya Renukunta
2017-01-27  8:08         ` Johannes Thumshirn
2017-01-27 18:24           ` Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 06/24] aacraid: Reworked scsi command submission path Raghava Aditya Renukunta
2017-01-26  9:05   ` Johannes Thumshirn
2017-01-26 18:52     ` Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 07/24] aacraid: Process Error for response I/O Raghava Aditya Renukunta
2017-01-26  9:06   ` Johannes Thumshirn
2017-01-25 18:00 ` [PATCH V2 08/24] aacraid: Added support for response path Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 09/24] aacraid: Added support for read medium error Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 10/24] aacraid: Reworked aac_command_thread Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 11/24] aacraid: Added support for periodic wellness sync Raghava Aditya Renukunta
2017-01-25 18:00 ` [PATCH V2 12/24] aacraid: Retrieve Queue Depth from Adapter FW Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 13/24] aacraid: Added support to set QD of attached drives Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 14/24] aacraid: Added support for hotplug Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 15/24] aacraid: Include HBA direct interface Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 16/24] aacraid: Add task management functionality Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 17/24] aacraid: Added support to abort cmd and reset lun Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 18/24] aacraid: VPD 83 type3 support Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 19/24] aacraid: Added new IWBR reset Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 20/24] aacraid: Added ioctl to trigger IOP/IWBR reset Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 21/24] aacraid: Retrieve HBA host information ioctl Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 22/24] aacraid: Update copyrights Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 23/24] aacraid: Change Driver Version Prefix Raghava Aditya Renukunta
2017-01-25 18:01 ` [PATCH V2 24/24] aacraid: update version Raghava Aditya Renukunta

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170126083700.GE3591@linux-x5ow.site \
    --to=jthumshirn@suse.de \
    --cc=David.Carroll@microsemi.com \
    --cc=Gana.Sridaran@microsemi.com \
    --cc=RaghavaAditya.Renukunta@microsemi.com \
    --cc=Scott.Benesh@microsemi.com \
    --cc=jejb@linux.vnet.ibm.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).