On Wed, May 20, 2015 at 01:44:58PM -0500, Zhi Li wrote: > On Wed, May 20, 2015 at 1:30 PM, Russell King - ARM Linux > <linux@xxxxxxxxxxxxxxxx> wrote: > > Looking at the RTC code, it would be pretty trivial to do. > > > > Rather than passing around struct regmap, pass around the private data > > structure. > > > > Rename the regmap_* function calls to be private accessors. Implement > > a set of new accessors - if the private data has the regmap, use the > > regmap API. Otherwise, use the old method, and print a warning that an > > old DT is being used. > > This method work. But code will become ugly and complex. I seach > whole dts tree. > Only imx6 use this driver. > > Does it really valuable to keep compatiblity with cost of complex driver code? Let me put this a different way. Would you be upset if you installed a new kernel, rebooted and found that the system then fscked your filesystem, stamping a date of 1 Jan 1970 on it. Then you use a later dtb, and you have to go through another fsck of your filesystem because it's apparently been more than "31 days" or so since it was last fscked, and all this caused by the RTC vanishing because we couldn't be bothered with backward compatibility? There are real products out there which use iMX6 today. In production, being sold. Do not break existing DTBs unless there really is no other choice. And I don't think it makes the code ugly, though it does make it _slightly_ more complex. That's a price worth paying for keeping stuff working. -- FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up according to speedtest.net. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html