@@ -192,23 +192,21 @@ mega_query_adapter(adapter_t *adapter)
192192{
193193 dma_addr_t prod_info_dma_handle ;
194194 mega_inquiry3 * inquiry3 ;
195- u8 raw_mbox [ sizeof ( struct mbox_out )] ;
196- mbox_t * mbox ;
195+ struct mbox_out mbox ;
196+ u8 * raw_mbox = ( u8 * ) & mbox ;
197197 int retval ;
198198
199199 /* Initialize adapter inquiry mailbox */
200200
201- mbox = (mbox_t * )raw_mbox ;
202-
203201 memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
204- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
202+ memset (& mbox , 0 , sizeof (mbox ));
205203
206204 /*
207205 * Try to issue Inquiry3 command
208206 * if not succeeded, then issue MEGA_MBOXCMD_ADAPTERINQ command and
209207 * update enquiry3 structure
210208 */
211- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
209+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
212210
213211 inquiry3 = (mega_inquiry3 * )adapter -> mega_buffer ;
214212
@@ -232,10 +230,10 @@ mega_query_adapter(adapter_t *adapter)
232230
233231 inq = & ext_inq -> raid_inq ;
234232
235- mbox -> m_out .xferaddr = (u32 )dma_handle ;
233+ mbox .xferaddr = (u32 )dma_handle ;
236234
237235 /*issue old 0x04 command to adapter */
238- mbox -> m_out .cmd = MEGA_MBOXCMD_ADPEXTINQ ;
236+ mbox .cmd = MEGA_MBOXCMD_ADPEXTINQ ;
239237
240238 issue_scb_block (adapter , raw_mbox );
241239
@@ -262,7 +260,7 @@ mega_query_adapter(adapter_t *adapter)
262260 sizeof (mega_product_info ),
263261 DMA_FROM_DEVICE );
264262
265- mbox -> m_out .xferaddr = prod_info_dma_handle ;
263+ mbox .xferaddr = prod_info_dma_handle ;
266264
267265 raw_mbox [0 ] = FC_NEW_CONFIG ; /* i.e. mbox->cmd=0xA1 */
268266 raw_mbox [2 ] = NC_SUBOP_PRODUCT_INFO ; /* i.e. 0x0E */
@@ -3569,16 +3567,14 @@ mega_n_to_m(void __user *arg, megacmd_t *mc)
35693567static int
35703568mega_is_bios_enabled (adapter_t * adapter )
35713569{
3572- unsigned char raw_mbox [sizeof (struct mbox_out )];
3573- mbox_t * mbox ;
3574-
3575- mbox = (mbox_t * )raw_mbox ;
3570+ struct mbox_out mbox ;
3571+ unsigned char * raw_mbox = (u8 * )& mbox ;
35763572
3577- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3573+ memset (& mbox , 0 , sizeof (mbox ));
35783574
35793575 memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
35803576
3581- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3577+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
35823578
35833579 raw_mbox [0 ] = IS_BIOS_ENABLED ;
35843580 raw_mbox [2 ] = GET_BIOS ;
@@ -3600,13 +3596,11 @@ mega_is_bios_enabled(adapter_t *adapter)
36003596static void
36013597mega_enum_raid_scsi (adapter_t * adapter )
36023598{
3603- unsigned char raw_mbox [ sizeof ( struct mbox_out )] ;
3604- mbox_t * mbox ;
3599+ struct mbox_out mbox ;
3600+ unsigned char * raw_mbox = ( u8 * ) & mbox ;
36053601 int i ;
36063602
3607- mbox = (mbox_t * )raw_mbox ;
3608-
3609- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3603+ memset (& mbox , 0 , sizeof (mbox ));
36103604
36113605 /*
36123606 * issue command to find out what channels are raid/scsi
@@ -3616,7 +3610,7 @@ mega_enum_raid_scsi(adapter_t *adapter)
36163610
36173611 memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
36183612
3619- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3613+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
36203614
36213615 /*
36223616 * Non-ROMB firmware fail this command, so all channels
@@ -3655,23 +3649,21 @@ static void
36553649mega_get_boot_drv (adapter_t * adapter )
36563650{
36573651 struct private_bios_data * prv_bios_data ;
3658- unsigned char raw_mbox [ sizeof ( struct mbox_out )] ;
3659- mbox_t * mbox ;
3652+ struct mbox_out mbox ;
3653+ unsigned char * raw_mbox = ( u8 * ) & mbox ;
36603654 u16 cksum = 0 ;
36613655 u8 * cksum_p ;
36623656 u8 boot_pdrv ;
36633657 int i ;
36643658
3665- mbox = (mbox_t * )raw_mbox ;
3666-
3667- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3659+ memset (& mbox , 0 , sizeof (mbox ));
36683660
36693661 raw_mbox [0 ] = BIOS_PVT_DATA ;
36703662 raw_mbox [2 ] = GET_BIOS_PVT_DATA ;
36713663
36723664 memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
36733665
3674- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3666+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
36753667
36763668 adapter -> boot_ldrv_enabled = 0 ;
36773669 adapter -> boot_ldrv = 0 ;
@@ -3721,13 +3713,11 @@ mega_get_boot_drv(adapter_t *adapter)
37213713static int
37223714mega_support_random_del (adapter_t * adapter )
37233715{
3724- unsigned char raw_mbox [ sizeof ( struct mbox_out )] ;
3725- mbox_t * mbox ;
3716+ struct mbox_out mbox ;
3717+ unsigned char * raw_mbox = ( u8 * ) & mbox ;
37263718 int rval ;
37273719
3728- mbox = (mbox_t * )raw_mbox ;
3729-
3730- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3720+ memset (& mbox , 0 , sizeof (mbox ));
37313721
37323722 /*
37333723 * issue command
@@ -3750,13 +3740,11 @@ mega_support_random_del(adapter_t *adapter)
37503740static int
37513741mega_support_ext_cdb (adapter_t * adapter )
37523742{
3753- unsigned char raw_mbox [ sizeof ( struct mbox_out )] ;
3754- mbox_t * mbox ;
3743+ struct mbox_out mbox ;
3744+ unsigned char * raw_mbox = ( u8 * ) & mbox ;
37553745 int rval ;
37563746
3757- mbox = (mbox_t * )raw_mbox ;
3758-
3759- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3747+ memset (& mbox , 0 , sizeof (mbox ));
37603748 /*
37613749 * issue command to find out if controller supports extended CDBs.
37623750 */
@@ -3865,16 +3853,14 @@ mega_do_del_logdrv(adapter_t *adapter, int logdrv)
38653853static void
38663854mega_get_max_sgl (adapter_t * adapter )
38673855{
3868- unsigned char raw_mbox [ sizeof ( struct mbox_out )] ;
3869- mbox_t * mbox ;
3856+ struct mbox_out mbox ;
3857+ unsigned char * raw_mbox = ( u8 * ) & mbox ;
38703858
3871- mbox = (mbox_t * )raw_mbox ;
3872-
3873- memset (mbox , 0 , sizeof (raw_mbox ));
3859+ memset (& mbox , 0 , sizeof (mbox ));
38743860
38753861 memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
38763862
3877- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3863+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
38783864
38793865 raw_mbox [0 ] = MAIN_MISC_OPCODE ;
38803866 raw_mbox [2 ] = GET_MAX_SG_SUPPORT ;
@@ -3888,7 +3874,7 @@ mega_get_max_sgl(adapter_t *adapter)
38883874 }
38893875 else {
38903876 adapter -> sglen = * ((char * )adapter -> mega_buffer );
3891-
3877+
38923878 /*
38933879 * Make sure this is not more than the resources we are
38943880 * planning to allocate
@@ -3910,16 +3896,14 @@ mega_get_max_sgl(adapter_t *adapter)
39103896static int
39113897mega_support_cluster (adapter_t * adapter )
39123898{
3913- unsigned char raw_mbox [sizeof (struct mbox_out )];
3914- mbox_t * mbox ;
3915-
3916- mbox = (mbox_t * )raw_mbox ;
3899+ struct mbox_out mbox ;
3900+ unsigned char * raw_mbox = (u8 * )& mbox ;
39173901
3918- memset (mbox , 0 , sizeof (raw_mbox ));
3902+ memset (& mbox , 0 , sizeof (mbox ));
39193903
39203904 memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
39213905
3922- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3906+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
39233907
39243908 /*
39253909 * Try to get the initiator id. This command will succeed iff the
0 commit comments