Subject: Re: [PATCH 3/32] rt2x00: use pci_*_consistent for DMA mapping

From: Ivo van Doorn <[email-masked]>
Date: Fri, 28 Apr 2006 15:39:38 +0200

On Friday 28 April 2006 15:33, Michael Buesch wrote:
> On Friday 28 April 2006 15:24, you wrote:
> > struct data_ring{
> > 	/*
> > 	 * net_device where this ring belongs to.
> > 	 */
> > 	struct net_device			*net_dev;
> > 
> > 	/*
> > 	 * Work structure for bottom half interrupt handling.
> > 	 */
> > 	struct work_struct			irq_work;
> > 
> > 	/*
> > 	 * Base address for the device specific data entries.
> > 	 */
> > 	void					*entry;
> > 
> > 	/*
> > 	 * TX queue statistic info.
> > 	 */
> > 	struct ieee80211_tx_queue_stats_data	stats;
> > 
> > 	/*
> > 	 * TX Queue parameters.
> > 	 */
> > 	struct ieee80211_tx_queue_params	tx_params;
> > 
> > 	/*
> > 	 * Base address for data ring.
> > 	 */
> > 	dma_addr_t				data_dma;
> > 	void					*data_addr;
> > 
> > 	/*
> > 	 * Index variables.
> > 	 */
> > 	u8					index;
> > 	u8					index_done;
> > 
> > 	/*
> > 	 * Size of device specific data entry structure.
> > 	 */
> > 	u16					entry_size;
> > 
> > 	/*
> > 	 * Size of packet and descriptor in bytes.
> > 	 */
> > 	u16					data_size;
> > 	u16					desc_size;
> > } __attribute__ ((packed));
> 
> Why is this packed? I don't believe you write such a data
> structure (which contains dscape specific structs) to some
> device registers.

I can't remember actually, I believe this came from a patch we had received
last year with the legacy drivers from a user. 
Since then most structures have received the __attribute__ ((packed)) tag.
I'll create a patch to remove the tags where they are not needed.