All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [RFC PATCH v2 0/13] Enable driver model for GPIOs on Tegra
@ 2014-05-05 16:08 Simon Glass
  2014-05-05 16:08 ` [U-Boot] [RFC PATCH v2 01/13] Add an I/O tracing feature Simon Glass
                   ` (12 more replies)
  0 siblings, 13 replies; 32+ messages in thread
From: Simon Glass @ 2014-05-05 16:08 UTC (permalink / raw)
  To: u-boot

Now that driver model is part of U-Boot, the task of converting drivers over
to it begins. GPIO is one of the easiest to convert, since it already has a
sandbox driver and a uclass driver.

The Tegra GPIO driver is relatively simple since it has a linear numbering
and already uses the generic GPIO framework.

Along the way some minor deficiencies were found with driver model - these
are corrected in this series.

Also it was difficult to exhaustively test the new driver against the old,
so a new 'iotrace' framework was created to make this easier for future
driver authors.

This series has been tested on Trimslice (Tegra 20). I will try it on a
beaver also.

Changes in v2:
- Add a new patch for an I/O tracing feature
- Add a new patch to enable iotrace for arm
- Add a new patch to enable iotrace for sandbox
- Add new patch to support include files for .dts files
- Add new patch to bring in Tegra device tree files from linux
- Update README to encourage conversion to driver model
- Add new patch to use case-insensitive comparison for GPIO banks
- Add new patch to add missing header files in lists and root
- Add new patch to deal with const-ness of the global_data pointer
- Add new patch to allow driver model tests only for sandbox
- Add new patch to fix printf() strings in the 'dm' command
- Split out a separate patch to enable driver model for tegra
- Split out driver model changes into separate patches
- Correct bugs found during testing

Simon Glass (13):
  Add an I/O tracing feature
  arm: Support iotrace feature
  sandbox: Support iotrace feature
  Makefile: Support include files for .dts files
  tegra: dts: Bring in GPIO bindings from linux
  dm: Update README to encourage conversion to driver model
  dm: Use case-insensitive comparison for GPIO banks
  dm: Add missing header files in lists and root
  dm: Case away the const-ness of the global_data pointer
  dm: Allow driver model tests only for sandbox
  dm: Fix printf() strings in the 'dm' command
  tegra: Enable driver model
  tegra: Convert tegra GPIO driver to use driver model

 README                                             |  28 ++
 arch/arm/dts/tegra20.dtsi                          |  15 +-
 arch/arm/include/asm/arch-tegra/gpio.h             |  14 +-
 arch/arm/include/asm/io.h                          |   3 +
 arch/sandbox/include/asm/io.h                      |  10 +
 board/nvidia/seaboard/seaboard.c                   |   2 +-
 common/Makefile                                    |   2 +
 common/cmd_iotrace.c                               |  73 ++++
 common/iotrace.c                                   | 169 +++++++++
 drivers/core/lists.c                               |   1 +
 drivers/core/root.c                                |   7 +-
 drivers/core/uclass.c                              |   2 +-
 drivers/gpio/gpio-uclass.c                         |   2 +-
 drivers/gpio/tegra_gpio.c                          | 393 ++++++++++++++++-----
 include/configs/sandbox.h                          |   3 +
 include/configs/tegra-common.h                     |   4 +
 include/dm/device-internal.h                       |   4 +
 include/dt-bindings/gpio/gpio.h                    |  15 +
 include/dt-bindings/gpio/tegra-gpio.h              |  51 +++
 include/dt-bindings/interrupt-controller/arm-gic.h |  22 ++
 include/dt-bindings/interrupt-controller/irq.h     |  19 +
 include/iotrace.h                                  | 102 ++++++
 scripts/Makefile.lib                               |   1 +
 test/dm/Makefile                                   |   2 +
 test/dm/cmd_dm.c                                   |  19 +-
 25 files changed, 848 insertions(+), 115 deletions(-)
 create mode 100644 common/cmd_iotrace.c
 create mode 100644 common/iotrace.c
 create mode 100644 include/dt-bindings/gpio/gpio.h
 create mode 100644 include/dt-bindings/gpio/tegra-gpio.h
 create mode 100644 include/dt-bindings/interrupt-controller/arm-gic.h
 create mode 100644 include/dt-bindings/interrupt-controller/irq.h
 create mode 100644 include/iotrace.h

-- 
1.9.1.423.g4596e3a

^ permalink raw reply	[flat|nested] 32+ messages in thread
* [U-Boot] [RFC PATCH v2 0/13] Enable driver model for GPIOs on Tegra
@ 2014-05-09 17:28 Simon Glass
  2014-05-09 17:28 ` [U-Boot] [RFC PATCH v2 06/13] dm: Update README to encourage conversion to driver model Simon Glass
  0 siblings, 1 reply; 32+ messages in thread
From: Simon Glass @ 2014-05-09 17:28 UTC (permalink / raw)
  To: u-boot

Now that driver model is part of U-Boot, the task of converting drivers over
to it begins. GPIO is one of the easiest to convert, since it already has a
sandbox driver and a uclass driver.

The Tegra GPIO driver is relatively simple since it has a linear numbering
and already uses the generic GPIO framework.

Along the way some minor deficiencies were found with driver model - these
are corrected in this series.

Also it was difficult to exhaustively test the new driver against the old,
so a new 'iotrace' framework was created to make this easier for future
driver authors.

This series has been tested on Trimslice (Tegra 20). I will try it on a
beaver also.

Changes in v3:
- Remove use of bool in header file to avoid exynos5 build failure
- Create a symlink for each arch to dt-bindings
- Bring in GPIO bindings for tegra{30,114,124} also
- Fix typo in commit subject
- Enable dm command in this patch instead of the next
- Move dm command enable to previous patch
- Use gpio number for the internal helper functions

Changes in v2:
- Add a new patch for an I/O tracing feature
- Add a new patch to enable iotrace for arm
- Add a new patch to enable iotrace for sandbox
- Add new patch to support include files for .dts files
- Add new patch to bring in Tegra device tree files from linux
- Update README to encourage conversion to driver model
- Add new patch to use case-insensitive comparison for GPIO banks
- Add new patch to add missing header files in lists and root
- Add new patch to deal with const-ness of the global_data pointer
- Add new patch to allow driver model tests only for sandbox
- Add new patch to fix printf() strings in the 'dm' command
- Split out a separate patch to enable driver model for tegra
- Split out driver model changes into separate patches
- Correct bugs found during testing

Simon Glass (13):
  Add an I/O tracing feature
  arm: Support iotrace feature
  sandbox: Support iotrace feature
  Makefile: Support include files for .dts files
  tegra: dts: Bring in GPIO bindings from linux
  dm: Update README to encourage conversion to driver model
  dm: Use case-insensitive comparison for GPIO banks
  dm: Add missing header files in lists and root
  dm: Cast away the const-ness of the global_data pointer
  dm: Allow driver model tests only for sandbox
  dm: Fix printf() strings in the 'dm' command
  tegra: Enable driver model
  tegra: Convert tegra GPIO driver to use driver model

 README                                             |  28 ++
 arch/arm/dts/include/dt-bindings                   |   1 +
 arch/arm/dts/tegra114.dtsi                         |  21 +-
 arch/arm/dts/tegra124.dtsi                         |  23 +-
 arch/arm/dts/tegra20.dtsi                          |  15 +-
 arch/arm/dts/tegra30.dtsi                          |  21 +-
 arch/arm/include/asm/arch-tegra/gpio.h             |  14 +-
 arch/arm/include/asm/io.h                          |   3 +
 arch/microblaze/dts/include/dt-bindings            |   1 +
 arch/sandbox/dts/include/dt-bindings               |   1 +
 arch/sandbox/include/asm/io.h                      |  10 +
 arch/x86/dts/include/dt-bindings                   |   1 +
 board/nvidia/seaboard/seaboard.c                   |   2 +-
 common/Makefile                                    |   2 +
 common/cmd_iotrace.c                               |  73 +++++
 common/iotrace.c                                   | 169 +++++++++++
 drivers/core/lists.c                               |   1 +
 drivers/core/root.c                                |   7 +-
 drivers/core/uclass.c                              |   2 +-
 drivers/gpio/gpio-uclass.c                         |   2 +-
 drivers/gpio/tegra_gpio.c                          | 313 +++++++++++++++++----
 include/configs/sandbox.h                          |   3 +
 include/configs/tegra-common.h                     |   4 +
 include/dm/device-internal.h                       |   4 +
 include/dt-bindings/gpio/gpio.h                    |  15 +
 include/dt-bindings/gpio/tegra-gpio.h              |  51 ++++
 include/dt-bindings/interrupt-controller/arm-gic.h |  22 ++
 include/dt-bindings/interrupt-controller/irq.h     |  19 ++
 include/iotrace.h                                  | 104 +++++++
 scripts/Makefile.lib                               |   1 +
 test/dm/Makefile                                   |   2 +
 test/dm/cmd_dm.c                                   |  19 +-
 32 files changed, 849 insertions(+), 105 deletions(-)
 create mode 120000 arch/arm/dts/include/dt-bindings
 create mode 120000 arch/microblaze/dts/include/dt-bindings
 create mode 120000 arch/sandbox/dts/include/dt-bindings
 create mode 120000 arch/x86/dts/include/dt-bindings
 create mode 100644 common/cmd_iotrace.c
 create mode 100644 common/iotrace.c
 create mode 100644 include/dt-bindings/gpio/gpio.h
 create mode 100644 include/dt-bindings/gpio/tegra-gpio.h
 create mode 100644 include/dt-bindings/interrupt-controller/arm-gic.h
 create mode 100644 include/dt-bindings/interrupt-controller/irq.h
 create mode 100644 include/iotrace.h

-- 
1.9.1.423.g4596e3a

^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2014-05-09 17:28 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-05 16:08 [U-Boot] [RFC PATCH v2 0/13] Enable driver model for GPIOs on Tegra Simon Glass
2014-05-05 16:08 ` [U-Boot] [RFC PATCH v2 01/13] Add an I/O tracing feature Simon Glass
2014-05-05 16:08 ` [U-Boot] [RFC PATCH v2 02/13] arm: Support iotrace feature Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 03/13] sandbox: " Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 04/13] Makefile: Support include files for .dts files Simon Glass
2014-05-05 16:54   ` Stephen Warren
2014-05-07  2:15     ` Masahiro Yamada
2014-05-07 22:37       ` Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 05/13] tegra: dts: Bring in GPIO bindings from linux Simon Glass
2014-05-05 16:57   ` Stephen Warren
2014-05-07 23:11     ` Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 06/13] dm: Update README to encourage conversion to driver model Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 07/13] dm: Use case-insensitive comparison for GPIO banks Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 08/13] dm: Add missing header files in lists and root Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 09/13] dm: Case away the const-ness of the global_data pointer Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 10/13] dm: Allow driver model tests only for sandbox Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 11/13] dm: Fix printf() strings in the 'dm' command Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 12/13] tegra: Enable driver model Simon Glass
2014-05-05 16:58   ` Stephen Warren
2014-05-05 19:01     ` Simon Glass
2014-05-05 16:09 ` [U-Boot] [RFC PATCH v2 13/13] tegra: Convert tegra GPIO driver to use " Simon Glass
2014-05-05 17:29   ` Stephen Warren
2014-05-05 19:53     ` Simon Glass
2014-05-05 21:14       ` Stephen Warren
2014-05-05 21:30         ` Simon Glass
2014-05-05 22:07           ` Stephen Warren
2014-05-05 23:00             ` Simon Glass
2014-05-06 17:34               ` Stephen Warren
2014-05-06 20:28                 ` Simon Glass
2014-05-06 20:37                   ` Stephen Warren
2014-05-06 20:41                     ` Simon Glass
2014-05-09 17:28 [U-Boot] [RFC PATCH v2 0/13] Enable driver model for GPIOs on Tegra Simon Glass
2014-05-09 17:28 ` [U-Boot] [RFC PATCH v2 06/13] dm: Update README to encourage conversion to driver model Simon Glass

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.