On Mon, Jan 10, 2011 at 11:24 PM, Trilok Soni <tsoni@xxxxxxxxxxxxxx> wrote: > Hi Rakesh, > > On 1/11/2011 2:41 AM, Rakesh Iyer wrote: >> Thanks for the review. >> >> A quick response regarding the following comment. >> >>> >>>> + >>>> +#include <linux/module.h> >>>> +#include <linux/input.h> >>>> +#include <linux/platform_device.h> >>>> +#include <linux/delay.h> >>>> +#include <linux/io.h> >>>> +#include <linux/interrupt.h> >>>> +#include <linux/clk.h> >>>> +#include <linux/slab.h> >>>> +#include <mach/clk.h> >>> >>> You may not need this. >>> >> >> The mach/clk.h file contains declarations for tegra_periph_reset_assert and tegra_periph_reset_deassert which are needed. > > It is really bad if it can't be addressed through clk framework. I will check this, but this > keyboard controller is on-chip so we should be fine I guess. The clk framework will deassert reset when a clock is enabled, but it cannot assert reset when a clock is disabled because some blocks need to turn of clocks when the block is not in use without reinitializing the whole block for the next transaction. If a driver wants to reset the block, it must call tegra_periph_assert_reset. Most drivers have no need to manually reset the block, and do not use these apis at all. > I hope that these APIs are not required for device drivers which are on external bus like I2C. These apis set registers internal to Tegra, they have no use for drivers for external devices. -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html