* Mike Rapoport <mike.rapoport@xxxxxxxxx> [091029 14:19]: > Hi Tony, > > On Thu, Oct 29, 2009 at 10:35 PM, Tony Lindgren <tony@xxxxxxxxxxx> wrote: > > Hi all, > > > > Here's an initial version of the new mux code to play with. > > Big thanks to Paul & Benoit for the 34xx mux data! > > > > To try out the new code, compile a kernel with CONFIG_OMAP_MUX > > and CONFIG_DEBUG_FS and these patches. The series is also > > availabe in the l-o git in mux branch. > > Great work! I'm too sleepy now to make proper review, and I'm trying > not to take work home, so I'll pull and test your patches only next > week. OK, I guess what we now need to figure out if can we just convert all omap_cfg_reg() straight to omap_mux_set(). > And, still, I'm missing PXA-style defines for particular pin > configuration :) I really like > OMAP3_CAM_D0_GPIO_99, > more than > OMAP3_MUX(CAM_D0, OMAP_PIN_OUTPUT | OMAP_PIN_OFF_NONE | > OMAP_MUX_MODE4, 0), > :) Yeah too many options.. Maybe we could have some macro like OMAP_MUX_GPIO_OUT(99)? We should be able to find it now with the gpio number during init, don't know if we want to keep all the gpio to mux mappings in memory except for active gpio pins. Regards, Tony > > > To see the mux configuration on your board: > > > > # mount -t debugfs debugfs /sys/kernel/debug > > # cat /sys/kernel/debug/omap_mux | less > > OMAP3_MUX(CAM_D0, OMAP_PIN_INPUT | OMAP_PIN_OFF_NONE | OMAP_PIN_OFF_WAKEUPENABLE > > | OMAP_MUX_MODE4, 0), > > padconf: cam_d0 signal: gpio_99: offset: 0x0e6 value: 0x4104 > > m0: cam_d0 m1: m2: m3: > > m4: gpio_99 m5: m6: m7: safe_mode > > phys: 0x48002116 ball bottom: ag17 ball top: > > > > OMAP3_MUX(CAM_D10, OMAP_PIN_OUTPUT | OMAP_PIN_OFF_NONE | OMAP_MUX_MODE7, 0), > > padconf: cam_d10 signal: safe_mode: offset: 0x0fa value: 0x0007 > > m0: cam_d10 m1: m2: m3: > > m4: gpio_109 m5: m6: m7: safe_mode > > phys: 0x4800212a ball bottom: b25 ball top: > > ... > > > > Then to produce a list of board mux entries from a working > > system, do: > > > > # cat /sys/kernel/debug/omap_mux | grep OMAP3_MUX > > OMAP3_MUX(CAM_D0, OMAP_PIN_INPUT | OMAP_PIN_OFF_NONE | OMAP_PIN_OFF_WAKEUPENABLE > > | OMAP_MUX_MODE4, 0), > > OMAP3_MUX(CAM_D10, OMAP_PIN_OUTPUT | OMAP_PIN_OFF_NONE | OMAP_MUX_MODE7, 0), > > OMAP3_MUX(CAM_D11, OMAP_PIN_INPUT | OMAP_PIN_OFF_NONE | OMAP_PIN_OFF_WAKEUPENABL > > E | OMAP_MUX_MODE4, 0), > > OMAP3_MUX(CAM_D1, OMAP_PIN_INPUT | OMAP_PIN_INPUT_PULLUP | OMAP_PIN_OFF_NONE | O > > MAP_PIN_OFF_WAKEUPENABLE | OMAP_MUX_MODE4, 0), > > ... > > > > Currenly no write support to tweak the pins via debugfs, > > but I'll add that soon with command line support too. > > > > I have not really verified the data yet, but it mostly looks > > right. Adding support for 3630 and omap4 should be easy > > after generating the data. It's currently implemented only > > for 34xx. > > > > I guess the next step would be to convert all omap3 calls > > to omap_cfg_reg() to use omap_mux_set() instead with the > > new data and make sure things work. Then we can remove the > > old data for 34xx. > > > > Comments welcome as always. > > > > Regards, > > > > Tony > > > > > > --- > > > > Mike Rapoport (1): > > omap2: mux: intoduce omap_mux_{read,write} > > > > Tony Lindgren (4): > > omap: mux: Add debugfs support for new mux code > > omap: mux: Add new style init functions to omap3 board-*.c files > > omap: mux: Add new style pin multiplexing data for 34xx > > omap: mux: Add new style pin multiplexing code for omap3 > > > > > > arch/arm/mach-omap2/Makefile | 4 > > arch/arm/mach-omap2/board-3430sdp.c | 9 > > arch/arm/mach-omap2/board-cm-t35.c | 9 > > arch/arm/mach-omap2/board-ldp.c | 9 > > arch/arm/mach-omap2/board-omap3beagle.c | 9 > > arch/arm/mach-omap2/board-omap3evm.c | 9 > > arch/arm/mach-omap2/board-omap3pandora.c | 9 > > arch/arm/mach-omap2/board-overo.c | 8 > > arch/arm/mach-omap2/board-rx51.c | 10 > > arch/arm/mach-omap2/board-zoom2.c | 8 > > arch/arm/mach-omap2/mux.c | 424 ++++++++ > > arch/arm/mach-omap2/mux.h | 127 ++ > > arch/arm/mach-omap2/mux34xx.c | 1552 ++++++++++++++++++++++++++++++ > > arch/arm/mach-omap2/mux34xx.h | 352 +++++++ > > 14 files changed, 2533 insertions(+), 6 deletions(-) > > create mode 100644 arch/arm/mach-omap2/mux.h > > create mode 100644 arch/arm/mach-omap2/mux34xx.c > > create mode 100644 arch/arm/mach-omap2/mux34xx.h > > > > -- > > Signature > > > > > > -- > Sincerely Yours, > Mike. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html