Re: [PATCH v5 0/7] Add TI EMIF SDRAM controller driver
On Friday 04 May 2012 05:33 AM, Greg KH wrote: On Thu, May 03, 2012 at 06:38:23PM -0400, Paul Gortmaker wrote: On Fri, Apr 27, 2012 at 8:24 AM, Santosh Shilimkar santosh.shilim...@ti.com wrote: Add a driver for the EMIF SDRAM controller used in Texas Instrument SoCs Hi Santosh, Can you send Greg a patch that adds proper dependencies to the Kconfig? I was going to simply add an ARM dependency, but perhaps you want to restrict it further to a subset of OMAP platforms? Thanks Paul for reporting the issue. At the moment it is causing build failures in other architectures. http://kisskb.ellerman.id.au/kisskb/buildresult/6243036/ I think there's a config option for readl/writel, but yes, ARM would probably be fine as well. Just send a patch [1] to Greg. EMIF driver build is restricted to ARCH_OMAP2PLUS for now and can be extended later if any other non OMAP architecture start using it. Regards Santosh [1] https://lkml.org/lkml/2012/5/4/22 -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v5 0/7] Add TI EMIF SDRAM controller driver
On Wed, May 2, 2012 at 11:33 PM, Greg KH gre...@linuxfoundation.org wrote: On Wed, May 02, 2012 at 12:20:24PM +0530, Santosh Shilimkar wrote: Greg, On Wednesday 02 May 2012 10:46 AM, Greg KH wrote: On Fri, Apr 27, 2012 at 05:54:02PM +0530, Santosh Shilimkar wrote: Add a driver for the EMIF SDRAM controller used in Texas Instrument SoCs EMIF is an SDRAM controller that supports, based on its revision, one or more of LPDDR2/DDR2/DDR3 protocols.This driver adds support for LPDDR2. The driver supports the following features: - Calculates the DDR AC timing parameters to be set in EMIF registers using data from the device data-sheets and based on the DDR frequency. If data from data-sheets is not available default timing values from the JEDEC spec are used. These will be safe, but not necessarily optimal - API for changing timings during DVFS or at boot-up - Temperature alert configuration and handling of temperature alerts, if any for LPDDR2 devices * temperature alert is based on periodic polling of MR4 mode register in DDR devices automatically performed by hardware * timings are de-rated and brought back to nominal when temperature raises and falls respectively - Cache of calculated register values to avoid re-calculating them The driver will need some minor updates when it is eventually integrated with Dynamic Voltage and Frequency Scaling (DVFS). This can not be done now as DVFS support is not available in the mainline yet. Discussions with Santosh Shilimkar santosh.shilim...@ti.com were immensely helpful in shaping up the interfaces. Vibhore Vardhan vvard...@gmail.com did the initial code snippet for thermal handling. Testing: - The driver is tested on OMAP4430 SDP. - The driver in a slightly adapted form is also tested on OMAP5. - Since mainline kernel doesn't have DVFS support yet, testing was done using a test module. - Temperature alert handling was tested with simulated interrupts and faked temperature values as testing all cases in real-life scenarios is difficult. - Tested the driver as a module Cc: Greg KH g...@kroah.com This all looks good to me now, thanks for reworking this. So, do you want me to take this through my driver tree to get to Linus for 3.5, or do you want it to go through somewhere else? If somewhere else, that's fine with me, consider this an: Acked-by: Greg Kroah-Hartman gre...@linuxfoundation.org If you want me to take it, just let me know, whichever you prefer is fine with me. Can you take this one through your 3.5 driver tree please ? Thanks for help. Ok, all now applied. Thanks !! Regards Santosh -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v5 0/7] Add TI EMIF SDRAM controller driver
On Fri, Apr 27, 2012 at 8:24 AM, Santosh Shilimkar santosh.shilim...@ti.com wrote: Add a driver for the EMIF SDRAM controller used in Texas Instrument SoCs Hi Santosh, Can you send Greg a patch that adds proper dependencies to the Kconfig? I was going to simply add an ARM dependency, but perhaps you want to restrict it further to a subset of OMAP platforms? At the moment it is causing build failures in other architectures. http://kisskb.ellerman.id.au/kisskb/buildresult/6243036/ Thanks, Paul. -- EMIF is an SDRAM controller that supports, based on its revision, one or more of LPDDR2/DDR2/DDR3 protocols.This driver adds support for LPDDR2. The driver supports the following features: - Calculates the DDR AC timing parameters to be set in EMIF registers using data from the device data-sheets and based on the DDR frequency. If data from data-sheets is not available default timing values from the JEDEC spec are used. These will be safe, but not necessarily optimal - API for changing timings during DVFS or at boot-up - Temperature alert configuration and handling of temperature alerts, if any for LPDDR2 devices * temperature alert is based on periodic polling of MR4 mode register in DDR devices automatically performed by hardware * timings are de-rated and brought back to nominal when temperature raises and falls respectively - Cache of calculated register values to avoid re-calculating them The driver will need some minor updates when it is eventually integrated with Dynamic Voltage and Frequency Scaling (DVFS). This can not be done now as DVFS support is not available in the mainline yet. Discussions with Santosh Shilimkar santosh.shilim...@ti.com were immensely helpful in shaping up the interfaces. Vibhore Vardhan vvard...@gmail.com did the initial code snippet for thermal handling. Testing: - The driver is tested on OMAP4430 SDP. - The driver in a slightly adapted form is also tested on OMAP5. - Since mainline kernel doesn't have DVFS support yet, testing was done using a test module. - Temperature alert handling was tested with simulated interrupts and faked temperature values as testing all cases in real-life scenarios is difficult. - Tested the driver as a module Cc: Greg KH g...@kroah.com v5: - Moved the EMIF driver to drivers/memory as per discussion thread [2] v4: - Converted instances of EXPORT_SYMBOL to EXPORT_SYMBOL_GPL - Removed un-necessary #ifndef __ASSEMBLY__' - Minor formatting fix v2: - Fixed a bug found in the implementation of errata i728 workaround - Fixed the value of frequency printed in debugfs - Dropped the hwmod patch as Paul has already posted a a hwmod series [1] that adds hwmod for EMIF - Converted instances of __init to __init_or_module Regards Santosh [1] http://thread.gmane.org/gmane.linux.ports.arm.omap/72855 [2] https://lkml.org/lkml/2012/4/12/173 Aneesh V (7): ddr: add LPDDR2 data from JESD209-2 memory: emif: add register definitions for EMIF memory: emif: add basic infrastructure for EMIF driver memory: emif: handle frequency and voltage change events memory: emif: add interrupt and temperature handling memory: emif: add one-time settings memory: emif: add debugfs entries for emif Documentation/memory-devices/ti-emif.txt | 57 + drivers/Kconfig | 4 + drivers/Makefile | 3 + drivers/memory/Kconfig | 22 + drivers/memory/Makefile | 5 + drivers/memory/emif.c | 1670 ++ drivers/memory/emif.h | 589 +++ include/linux/platform_data/emif_plat.h | 128 +++ include/memory/jedec_ddr.h | 175 lib/Kconfig | 8 + lib/Makefile | 2 + lib/jedec_ddr_data.c | 135 +++ 12 files changed, 2798 insertions(+), 0 deletions(-) create mode 100644 Documentation/memory-devices/ti-emif.txt create mode 100644 drivers/memory/Kconfig create mode 100644 drivers/memory/Makefile create mode 100644 drivers/memory/emif.c create mode 100644 drivers/memory/emif.h create mode 100644 include/linux/platform_data/emif_plat.h create mode 100644 include/memory/jedec_ddr.h create mode 100644 lib/jedec_ddr_data.c -- 1.7.5.4 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v5 0/7] Add TI EMIF SDRAM controller driver
On Thu, May 03, 2012 at 06:38:23PM -0400, Paul Gortmaker wrote: On Fri, Apr 27, 2012 at 8:24 AM, Santosh Shilimkar santosh.shilim...@ti.com wrote: Add a driver for the EMIF SDRAM controller used in Texas Instrument SoCs Hi Santosh, Can you send Greg a patch that adds proper dependencies to the Kconfig? I was going to simply add an ARM dependency, but perhaps you want to restrict it further to a subset of OMAP platforms? At the moment it is causing build failures in other architectures. http://kisskb.ellerman.id.au/kisskb/buildresult/6243036/ I think there's a config option for readl/writel, but yes, ARM would probably be fine as well. thanks, greg k-h -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v5 0/7] Add TI EMIF SDRAM controller driver
On Wed, May 02, 2012 at 12:20:24PM +0530, Santosh Shilimkar wrote: Greg, On Wednesday 02 May 2012 10:46 AM, Greg KH wrote: On Fri, Apr 27, 2012 at 05:54:02PM +0530, Santosh Shilimkar wrote: Add a driver for the EMIF SDRAM controller used in Texas Instrument SoCs EMIF is an SDRAM controller that supports, based on its revision, one or more of LPDDR2/DDR2/DDR3 protocols.This driver adds support for LPDDR2. The driver supports the following features: - Calculates the DDR AC timing parameters to be set in EMIF registers using data from the device data-sheets and based on the DDR frequency. If data from data-sheets is not available default timing values from the JEDEC spec are used. These will be safe, but not necessarily optimal - API for changing timings during DVFS or at boot-up - Temperature alert configuration and handling of temperature alerts, if any for LPDDR2 devices * temperature alert is based on periodic polling of MR4 mode register in DDR devices automatically performed by hardware * timings are de-rated and brought back to nominal when temperature raises and falls respectively - Cache of calculated register values to avoid re-calculating them The driver will need some minor updates when it is eventually integrated with Dynamic Voltage and Frequency Scaling (DVFS). This can not be done now as DVFS support is not available in the mainline yet. Discussions with Santosh Shilimkar santosh.shilim...@ti.com were immensely helpful in shaping up the interfaces. Vibhore Vardhan vvard...@gmail.com did the initial code snippet for thermal handling. Testing: - The driver is tested on OMAP4430 SDP. - The driver in a slightly adapted form is also tested on OMAP5. - Since mainline kernel doesn't have DVFS support yet, testing was done using a test module. - Temperature alert handling was tested with simulated interrupts and faked temperature values as testing all cases in real-life scenarios is difficult. - Tested the driver as a module Cc: Greg KH g...@kroah.com This all looks good to me now, thanks for reworking this. So, do you want me to take this through my driver tree to get to Linus for 3.5, or do you want it to go through somewhere else? If somewhere else, that's fine with me, consider this an: Acked-by: Greg Kroah-Hartman gre...@linuxfoundation.org If you want me to take it, just let me know, whichever you prefer is fine with me. Can you take this one through your 3.5 driver tree please ? Thanks for help. Ok, all now applied. greg k-h -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v5 0/7] Add TI EMIF SDRAM controller driver
On Fri, Apr 27, 2012 at 05:54:02PM +0530, Santosh Shilimkar wrote: Add a driver for the EMIF SDRAM controller used in Texas Instrument SoCs EMIF is an SDRAM controller that supports, based on its revision, one or more of LPDDR2/DDR2/DDR3 protocols.This driver adds support for LPDDR2. The driver supports the following features: - Calculates the DDR AC timing parameters to be set in EMIF registers using data from the device data-sheets and based on the DDR frequency. If data from data-sheets is not available default timing values from the JEDEC spec are used. These will be safe, but not necessarily optimal - API for changing timings during DVFS or at boot-up - Temperature alert configuration and handling of temperature alerts, if any for LPDDR2 devices * temperature alert is based on periodic polling of MR4 mode register in DDR devices automatically performed by hardware * timings are de-rated and brought back to nominal when temperature raises and falls respectively - Cache of calculated register values to avoid re-calculating them The driver will need some minor updates when it is eventually integrated with Dynamic Voltage and Frequency Scaling (DVFS). This can not be done now as DVFS support is not available in the mainline yet. Discussions with Santosh Shilimkar santosh.shilim...@ti.com were immensely helpful in shaping up the interfaces. Vibhore Vardhan vvard...@gmail.com did the initial code snippet for thermal handling. Testing: - The driver is tested on OMAP4430 SDP. - The driver in a slightly adapted form is also tested on OMAP5. - Since mainline kernel doesn't have DVFS support yet, testing was done using a test module. - Temperature alert handling was tested with simulated interrupts and faked temperature values as testing all cases in real-life scenarios is difficult. - Tested the driver as a module Cc: Greg KH g...@kroah.com This all looks good to me now, thanks for reworking this. So, do you want me to take this through my driver tree to get to Linus for 3.5, or do you want it to go through somewhere else? If somewhere else, that's fine with me, consider this an: Acked-by: Greg Kroah-Hartman gre...@linuxfoundation.org If you want me to take it, just let me know, whichever you prefer is fine with me. thanks, greg k-h -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v5 0/7] Add TI EMIF SDRAM controller driver
Greg, On Wednesday 02 May 2012 10:46 AM, Greg KH wrote: On Fri, Apr 27, 2012 at 05:54:02PM +0530, Santosh Shilimkar wrote: Add a driver for the EMIF SDRAM controller used in Texas Instrument SoCs EMIF is an SDRAM controller that supports, based on its revision, one or more of LPDDR2/DDR2/DDR3 protocols.This driver adds support for LPDDR2. The driver supports the following features: - Calculates the DDR AC timing parameters to be set in EMIF registers using data from the device data-sheets and based on the DDR frequency. If data from data-sheets is not available default timing values from the JEDEC spec are used. These will be safe, but not necessarily optimal - API for changing timings during DVFS or at boot-up - Temperature alert configuration and handling of temperature alerts, if any for LPDDR2 devices * temperature alert is based on periodic polling of MR4 mode register in DDR devices automatically performed by hardware * timings are de-rated and brought back to nominal when temperature raises and falls respectively - Cache of calculated register values to avoid re-calculating them The driver will need some minor updates when it is eventually integrated with Dynamic Voltage and Frequency Scaling (DVFS). This can not be done now as DVFS support is not available in the mainline yet. Discussions with Santosh Shilimkar santosh.shilim...@ti.com were immensely helpful in shaping up the interfaces. Vibhore Vardhan vvard...@gmail.com did the initial code snippet for thermal handling. Testing: - The driver is tested on OMAP4430 SDP. - The driver in a slightly adapted form is also tested on OMAP5. - Since mainline kernel doesn't have DVFS support yet, testing was done using a test module. - Temperature alert handling was tested with simulated interrupts and faked temperature values as testing all cases in real-life scenarios is difficult. - Tested the driver as a module Cc: Greg KH g...@kroah.com This all looks good to me now, thanks for reworking this. So, do you want me to take this through my driver tree to get to Linus for 3.5, or do you want it to go through somewhere else? If somewhere else, that's fine with me, consider this an: Acked-by: Greg Kroah-Hartman gre...@linuxfoundation.org If you want me to take it, just let me know, whichever you prefer is fine with me. Can you take this one through your 3.5 driver tree please ? Thanks for help. Regards Santosh -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v5 0/7] Add TI EMIF SDRAM controller driver
Add a driver for the EMIF SDRAM controller used in Texas Instrument SoCs EMIF is an SDRAM controller that supports, based on its revision, one or more of LPDDR2/DDR2/DDR3 protocols.This driver adds support for LPDDR2. The driver supports the following features: - Calculates the DDR AC timing parameters to be set in EMIF registers using data from the device data-sheets and based on the DDR frequency. If data from data-sheets is not available default timing values from the JEDEC spec are used. These will be safe, but not necessarily optimal - API for changing timings during DVFS or at boot-up - Temperature alert configuration and handling of temperature alerts, if any for LPDDR2 devices * temperature alert is based on periodic polling of MR4 mode register in DDR devices automatically performed by hardware * timings are de-rated and brought back to nominal when temperature raises and falls respectively - Cache of calculated register values to avoid re-calculating them The driver will need some minor updates when it is eventually integrated with Dynamic Voltage and Frequency Scaling (DVFS). This can not be done now as DVFS support is not available in the mainline yet. Discussions with Santosh Shilimkar santosh.shilim...@ti.com were immensely helpful in shaping up the interfaces. Vibhore Vardhan vvard...@gmail.com did the initial code snippet for thermal handling. Testing: - The driver is tested on OMAP4430 SDP. - The driver in a slightly adapted form is also tested on OMAP5. - Since mainline kernel doesn't have DVFS support yet, testing was done using a test module. - Temperature alert handling was tested with simulated interrupts and faked temperature values as testing all cases in real-life scenarios is difficult. - Tested the driver as a module Cc: Greg KH g...@kroah.com v5: - Moved the EMIF driver to drivers/memory as per discussion thread [2] v4: - Converted instances of EXPORT_SYMBOL to EXPORT_SYMBOL_GPL - Removed un-necessary #ifndef __ASSEMBLY__' - Minor formatting fix v2: - Fixed a bug found in the implementation of errata i728 workaround - Fixed the value of frequency printed in debugfs - Dropped the hwmod patch as Paul has already posted a a hwmod series [1] that adds hwmod for EMIF - Converted instances of __init to __init_or_module Regards Santosh [1] http://thread.gmane.org/gmane.linux.ports.arm.omap/72855 [2] https://lkml.org/lkml/2012/4/12/173 Aneesh V (7): ddr: add LPDDR2 data from JESD209-2 memory: emif: add register definitions for EMIF memory: emif: add basic infrastructure for EMIF driver memory: emif: handle frequency and voltage change events memory: emif: add interrupt and temperature handling memory: emif: add one-time settings memory: emif: add debugfs entries for emif Documentation/memory-devices/ti-emif.txt | 57 + drivers/Kconfig |4 + drivers/Makefile |3 + drivers/memory/Kconfig | 22 + drivers/memory/Makefile |5 + drivers/memory/emif.c| 1670 ++ drivers/memory/emif.h| 589 +++ include/linux/platform_data/emif_plat.h | 128 +++ include/memory/jedec_ddr.h | 175 lib/Kconfig |8 + lib/Makefile |2 + lib/jedec_ddr_data.c | 135 +++ 12 files changed, 2798 insertions(+), 0 deletions(-) create mode 100644 Documentation/memory-devices/ti-emif.txt create mode 100644 drivers/memory/Kconfig create mode 100644 drivers/memory/Makefile create mode 100644 drivers/memory/emif.c create mode 100644 drivers/memory/emif.h create mode 100644 include/linux/platform_data/emif_plat.h create mode 100644 include/memory/jedec_ddr.h create mode 100644 lib/jedec_ddr_data.c -- 1.7.5.4 -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html