On Saturday 11 August 2007, Sergei Shtylyov wrote:
> Hello.
> 
> Bartlomiej Zolnierkiewicz wrote:
> 
> >>>>Index: linux-2.6/drivers/ide/pci/hpt366.c
> >>>>===================================================================
> >>>>--- linux-2.6.orig/drivers/ide/pci/hpt366.c
> >>>>+++ linux-2.6/drivers/ide/pci/hpt366.c
> 
> [...]

> >>>IMO all HPT*_ALLOW_ATA* defines should just go away...
> 
> >>    I think it's still worth to keep 'em alive for the possible blacklist 
> >>additions.
> 
> > No strong feelings about these defines but I think that they actually make
> > the code less readable and also more complex because they control _both_
> > DPLL used (through controlling max_ultra) and the maximum UDMA mask.
> 
>     That's because the maximum UDMA mask depends on the DPLL frequency...
> 
> > Moreover they are _compile_ time options so for testing purposes we may
> > as well ask user to change UDMA mask etc.
> 
>     ... and UltraDMA/100 is *not* reachable with 66 MHz clock (it will have 
> to 
> use the same timings as UltraDMA/66 -- so changing the mask only is just not 
> enough.
> 
>     Now you can hopefully see that these #define's as they are now exist for 
> a 
> good reason... :-)

Yes but I still believe that there should be some cleaner solution... ;)

> >>>Also now that ->udma_filter is always present the initial hwif->ultra_mask
> >>>doesn't matter so as well we may set it to ATA_UDMA6 (0x7f) and cleanup
> >>>struct hpt_info (by removing max_ultra after fixing init_chipset_hpt366()
> >>>to use info->chip_type >= HPT374 check instead),
> 
> >>    It's all interesting but you've missed one aspect -- this will make the 
> >>kernel larger while the current code keeps all this logic in the init.text 
> >>section.
> 
> > We won't be adding a single line of new code:
> 
> > - the current ->udma_filter implementation does everything needed already
> 
>     Not really. It will return 0x7f for chipset not supporting it

Which is 100% correct given current values of HPT*_ALLOW_ATA133_6 defines.

> > - in init_chipset_hpt366() we simply would replace
> 
> >             if (info->max_ultra > 6)
> 
>     Actually,( info->max_ultra == 6)

Yes.
 
> >   with
> 
> >             if (info->chip_type >= HPT374)
> 
>     This is just wrong -- HPT374 does not tolarate 66 MHz clock.  You 
> probably 
> meant HPT372 (or >)?

Yes, ">".

> >   (this change depends on the current HPT3xx enums order
> >    and on removal HPT*_ALLOW_ATA* defines)
> 
>     Heh, how about doing this (pardon for the bad... er, sed language):
> 
>       default:
>               return s/0x71/drive->hwif->ultra_mask/;
> 
> without all any changes that you've proposed and being done with that fix? :-)

I hope that you meant:

        default:
                return s/0x7f/drive->hwif->ultra_mask/;

Yep, I'm fine with it.

> >>>Uh, the only real change here consists of the three lines above, the rest
> >>>is just a noise caused by removal of one tab.
> 
> >>>Such changes are really not worth it - in this case it caused rejects in
> >>>two patches from IDE quilt tree which I had to fix manually.
> 
> >>    I hope now that you've fixed it, I may leave this part intact? ;-)
> 
> > Iff you base the new patch on top of IDE quilt tree otherwise I'll have
> > to fix it _again_. ;-)
> 
>     I hope you haven't forgotten the basic rule: "the fixes come first"? :-)

The basic rule is to keep the process steady. :-)

"The fixes come first" is the 2-nd rule and becomes a bit hard to keep up
when there is almost hundred patches in the series.

>     And why fix it again, if I'm not going to drop that part?

Indeed, there is no need to fix again...

Thanks,
Bart
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to