Search Linux Wireless

Re: SSB AI support code ([RFC3/11] SSB irqflag device op)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 02/09/2011 11:10 AM, George Kashperko wrote:
>> On 02/09/2011 08:32 AM, George Kashperko wrote:
>>> From: George Kashperko <george@xxxxxxxxxxx>
>>>
>>> SB- and AI-style buses read irq flags from different locations.
>>> SB-ones read them from TPSFLAG whereas AI-ones from core oob register.
>>> In order to support both SB- and AI-style buses transparently
>>> irq flag accessor is implemented as ssb device op.
>>> Signed-off-by: George Kashperko <george@xxxxxxxxxxx>
>>> ---
>>>  drivers/ssb/driver_mipscore.c       |    2 +-
>>>  drivers/ssb/main.c                  |    1 +
>>>  include/linux/ssb/ssb.h             |    5 +++++
>>>  include/linux/ssb/ssb_driver_mips.h |    1 +
>>>  4 files changed, 8 insertions(+), 1 deletion(-)
>>> --- linux-next-20110203.orig/drivers/ssb/driver_mipscore.c	2011-02-01 05:05:49.000000000 +0200
>>> +++ linux-next-20110203/drivers/ssb/driver_mipscore.c	2011-02-07 16:39:46.000000000 +0200
>>> @@ -47,7 +47,7 @@ static const u32 ipsflag_irq_shift[] = {
>>>  	SSB_IPSFLAG_IRQ4_SHIFT,
>>>  };
>>>  
>>> -static inline u32 ssb_irqflag(struct ssb_device *dev)
>>> +u32 ssb_irqflag_sb(struct ssb_device *dev)
>>>  {
>>>  	u32 tpsflag = ssb_read32(dev, SSB_TPSFLAG);
>>>  	if (tpsflag)
>>> --- linux-next-20110203.orig/drivers/ssb/main.c	2011-02-07 16:35:50.000000000 +0200
>>> +++ linux-next-20110203/drivers/ssb/main.c	2011-02-07 16:49:40.000000000 +0200
>>> @@ -1367,6 +1367,7 @@ static const struct ssb_bus_ops ssb_ssb_
>>>  	.device_disable		= ssb_device_disable_sb,
>>>  	.admatch_base		= ssb_admatch_base_sb,
>>>  	.admatch_size		= ssb_admatch_size_sb,
>>> +	.irqflag		= ssb_irqflag_sb,
>>>  };
>>>  
>>>  static int __init ssb_modinit(void)
>>> --- linux-next-20110203.orig/include/linux/ssb/ssb_driver_mips.h	2011-02-01 05:05:49.000000000 +0200
>>> +++ linux-next-20110203/include/linux/ssb/ssb_driver_mips.h	2011-02-07 16:39:10.000000000 +0200
>>> @@ -29,6 +29,7 @@ extern void ssb_mipscore_init(struct ssb
>>>  extern u32 ssb_cpu_clock(struct ssb_mipscore *mcore);
>>>  
>>>  extern unsigned int ssb_mips_irq(struct ssb_device *dev);
>>> +extern u32 ssb_irqflag_sb(struct ssb_device *dev);
>>>  
>>>  
>>>  #else /* CONFIG_SSB_DRIVER_MIPS */
>>> --- linux-next-20110203.orig/include/linux/ssb/ssb.h	2011-02-07 16:35:50.000000000 +0200
>>> +++ linux-next-20110203/include/linux/ssb/ssb.h	2011-02-07 16:38:34.000000000 +0200
>>> @@ -124,6 +124,7 @@ struct ssb_bus_ops {
>>>  	void (*device_disable)(struct ssb_device *dev, u32 core_specific_flags);
>>>  	u32 (*admatch_base)(struct ssb_device *dev, u32 adm);
>>>  	u32 (*admatch_size)(struct ssb_device *dev, u32 adm);
>>> +	u32 (*irqflag)(struct ssb_device *dev);
>>>  };
>>>  
>>>  
>>> @@ -485,6 +486,10 @@ static inline u32 ssb_admatch_size(struc
>>>  {
>>>  	return dev->ops->admatch_size(dev, adm);
>>>  }
>>> +static inline u32 ssb_irqflag(struct ssb_device *dev)
>>> +{
>>> +	return dev->ops->irqflag(dev);
>>> +}
>>>  
>>>  
>>>  /* The SSB DMA API. Use this API for any DMA operation on the device.
>>>
>>>
>>>
>>> --
>>
>> This one fails to compile with the following error:
>>
>> drivers/ssb/main.c:1370:14: error: âssb_irqflag_sbâ undeclared here (not in a
>> function)
>> make[1]: *** [drivers/ssb/main.o] Error 1
>> make: *** [drivers/ssb/] Error 2
>>
>> Larry
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
> Well, might the problem here is again caused with mine wrong post of <[RFC9/11] SSB modify irqflag treatment>
> Could you please remove that one and reaply whole set of patches again.
> Sorry for inconveniences.

That cannot be the problem with this one. Each patch in a series MUST compile
correctly so that anyone that is bisecting the code always can build a kernel.
The code doesn't necessarily have to work correctly - that would be nice, but it
must compile. #3 fails this test.

Larry
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux