@@ -192,23 +192,21 @@ mega_query_adapter(adapter_t *adapter)
192
192
{
193
193
dma_addr_t prod_info_dma_handle ;
194
194
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 ;
197
197
int retval ;
198
198
199
199
/* Initialize adapter inquiry mailbox */
200
200
201
- mbox = (mbox_t * )raw_mbox ;
202
-
203
201
memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
204
- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
202
+ memset (& mbox , 0 , sizeof (mbox ));
205
203
206
204
/*
207
205
* Try to issue Inquiry3 command
208
206
* if not succeeded, then issue MEGA_MBOXCMD_ADAPTERINQ command and
209
207
* update enquiry3 structure
210
208
*/
211
- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
209
+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
212
210
213
211
inquiry3 = (mega_inquiry3 * )adapter -> mega_buffer ;
214
212
@@ -232,10 +230,10 @@ mega_query_adapter(adapter_t *adapter)
232
230
233
231
inq = & ext_inq -> raid_inq ;
234
232
235
- mbox -> m_out .xferaddr = (u32 )dma_handle ;
233
+ mbox .xferaddr = (u32 )dma_handle ;
236
234
237
235
/*issue old 0x04 command to adapter */
238
- mbox -> m_out .cmd = MEGA_MBOXCMD_ADPEXTINQ ;
236
+ mbox .cmd = MEGA_MBOXCMD_ADPEXTINQ ;
239
237
240
238
issue_scb_block (adapter , raw_mbox );
241
239
@@ -262,7 +260,7 @@ mega_query_adapter(adapter_t *adapter)
262
260
sizeof (mega_product_info ),
263
261
DMA_FROM_DEVICE );
264
262
265
- mbox -> m_out .xferaddr = prod_info_dma_handle ;
263
+ mbox .xferaddr = prod_info_dma_handle ;
266
264
267
265
raw_mbox [0 ] = FC_NEW_CONFIG ; /* i.e. mbox->cmd=0xA1 */
268
266
raw_mbox [2 ] = NC_SUBOP_PRODUCT_INFO ; /* i.e. 0x0E */
@@ -3569,16 +3567,14 @@ mega_n_to_m(void __user *arg, megacmd_t *mc)
3569
3567
static int
3570
3568
mega_is_bios_enabled (adapter_t * adapter )
3571
3569
{
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 ;
3576
3572
3577
- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3573
+ memset (& mbox , 0 , sizeof (mbox ));
3578
3574
3579
3575
memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
3580
3576
3581
- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3577
+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
3582
3578
3583
3579
raw_mbox [0 ] = IS_BIOS_ENABLED ;
3584
3580
raw_mbox [2 ] = GET_BIOS ;
@@ -3600,13 +3596,11 @@ mega_is_bios_enabled(adapter_t *adapter)
3600
3596
static void
3601
3597
mega_enum_raid_scsi (adapter_t * adapter )
3602
3598
{
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 ;
3605
3601
int i ;
3606
3602
3607
- mbox = (mbox_t * )raw_mbox ;
3608
-
3609
- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3603
+ memset (& mbox , 0 , sizeof (mbox ));
3610
3604
3611
3605
/*
3612
3606
* issue command to find out what channels are raid/scsi
@@ -3616,7 +3610,7 @@ mega_enum_raid_scsi(adapter_t *adapter)
3616
3610
3617
3611
memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
3618
3612
3619
- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3613
+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
3620
3614
3621
3615
/*
3622
3616
* Non-ROMB firmware fail this command, so all channels
@@ -3655,23 +3649,21 @@ static void
3655
3649
mega_get_boot_drv (adapter_t * adapter )
3656
3650
{
3657
3651
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 ;
3660
3654
u16 cksum = 0 ;
3661
3655
u8 * cksum_p ;
3662
3656
u8 boot_pdrv ;
3663
3657
int i ;
3664
3658
3665
- mbox = (mbox_t * )raw_mbox ;
3666
-
3667
- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3659
+ memset (& mbox , 0 , sizeof (mbox ));
3668
3660
3669
3661
raw_mbox [0 ] = BIOS_PVT_DATA ;
3670
3662
raw_mbox [2 ] = GET_BIOS_PVT_DATA ;
3671
3663
3672
3664
memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
3673
3665
3674
- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3666
+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
3675
3667
3676
3668
adapter -> boot_ldrv_enabled = 0 ;
3677
3669
adapter -> boot_ldrv = 0 ;
@@ -3721,13 +3713,11 @@ mega_get_boot_drv(adapter_t *adapter)
3721
3713
static int
3722
3714
mega_support_random_del (adapter_t * adapter )
3723
3715
{
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 ;
3726
3718
int rval ;
3727
3719
3728
- mbox = (mbox_t * )raw_mbox ;
3729
-
3730
- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3720
+ memset (& mbox , 0 , sizeof (mbox ));
3731
3721
3732
3722
/*
3733
3723
* issue command
@@ -3750,13 +3740,11 @@ mega_support_random_del(adapter_t *adapter)
3750
3740
static int
3751
3741
mega_support_ext_cdb (adapter_t * adapter )
3752
3742
{
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 ;
3755
3745
int rval ;
3756
3746
3757
- mbox = (mbox_t * )raw_mbox ;
3758
-
3759
- memset (& mbox -> m_out , 0 , sizeof (raw_mbox ));
3747
+ memset (& mbox , 0 , sizeof (mbox ));
3760
3748
/*
3761
3749
* issue command to find out if controller supports extended CDBs.
3762
3750
*/
@@ -3865,16 +3853,14 @@ mega_do_del_logdrv(adapter_t *adapter, int logdrv)
3865
3853
static void
3866
3854
mega_get_max_sgl (adapter_t * adapter )
3867
3855
{
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 ;
3870
3858
3871
- mbox = (mbox_t * )raw_mbox ;
3872
-
3873
- memset (mbox , 0 , sizeof (raw_mbox ));
3859
+ memset (& mbox , 0 , sizeof (mbox ));
3874
3860
3875
3861
memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
3876
3862
3877
- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3863
+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
3878
3864
3879
3865
raw_mbox [0 ] = MAIN_MISC_OPCODE ;
3880
3866
raw_mbox [2 ] = GET_MAX_SG_SUPPORT ;
@@ -3888,7 +3874,7 @@ mega_get_max_sgl(adapter_t *adapter)
3888
3874
}
3889
3875
else {
3890
3876
adapter -> sglen = * ((char * )adapter -> mega_buffer );
3891
-
3877
+
3892
3878
/*
3893
3879
* Make sure this is not more than the resources we are
3894
3880
* planning to allocate
@@ -3910,16 +3896,14 @@ mega_get_max_sgl(adapter_t *adapter)
3910
3896
static int
3911
3897
mega_support_cluster (adapter_t * adapter )
3912
3898
{
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 ;
3917
3901
3918
- memset (mbox , 0 , sizeof (raw_mbox ));
3902
+ memset (& mbox , 0 , sizeof (mbox ));
3919
3903
3920
3904
memset ((void * )adapter -> mega_buffer , 0 , MEGA_BUFFER_SIZE );
3921
3905
3922
- mbox -> m_out .xferaddr = (u32 )adapter -> buf_dma_handle ;
3906
+ mbox .xferaddr = (u32 )adapter -> buf_dma_handle ;
3923
3907
3924
3908
/*
3925
3909
* Try to get the initiator id. This command will succeed iff the
0 commit comments