summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 876b65b)
raw | patch | inline | side by side (parent: 876b65b)
author | Nikhil Devshatwar <nikhil.nd@ti.com> | |
Fri, 20 Nov 2015 11:31:10 +0000 (17:01 +0530) | ||
committer | Nikhil Devshatwar <nikhil.nd@ti.com> | |
Mon, 23 Nov 2015 11:50:25 +0000 (17:20 +0530) |
For MMC instance, there can be nodes for all the supported
delay modes. These are differentiated by the mode name.
To do this, pass the delay mode in the pad data.
Update the parameter extraction for linux/bios/uboot.
Use the modename to generate unique DTS nodes for MMC pads.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
delay modes. These are differentiated by the mode name.
To do this, pass the delay mode in the pad data.
Update the parameter extraction for linux/bios/uboot.
Use the modename to generate unique DTS nodes for MMC pads.
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
iodelay-autogen.py | patch | blob | history |
diff --git a/iodelay-autogen.py b/iodelay-autogen.py
index 0967eaf5735cb9cd4ebc17cc893cf2a94f9118a4..130a310455a00f4c2ea3c4924ea2aa669a8ad1ef 100755 (executable)
--- a/iodelay-autogen.py
+++ b/iodelay-autogen.py
if (args.interactive == 0):
print "WARN: No delay modes for %s found, skipping" % module
mode = "SKIP"
- sel[module] = mode
return mode
# Display the menu and ask user to select the 'right' mode
print "# Works only for the input signals"
gpio_data_addrs = (0, 0x4ae10138, 0x48055138, 0x48057138, 0x48059138, 0x4805b138, 0x4805d138, 0x48051138, 0x48053138)
for i in padconf:
- (pad_name, pin_name, addr, val, delayinfo) = i
+ (pad_name, pin_name, addr, val, mode, delayinfo) = i
offset = addr - 0x4a002000
gpio_name = xml_pad_get_pin(offset, 14)
def uboot_format_pad_regs(padconf, per_padconf):
print "\nconst struct pad_conf_entry dra74x_core_padconf_array[] = {"
for i in padconf:
- (pad_name, pin_name, addr, val, delayinfo) = i
+ (pad_name, pin_name, addr, val, mode, delayinfo) = i
if (re.match("MMC.*", pin_name) != None):
print "WARN: Skipping MMC padconf in uboot"
print "ERR: Only MMC padconf is recommended in kernel"
continue
- dtsnode = ("%s_pins_default" % per).lower()
+ # Get the mode from the first entry
+ (pad_name, pin_name, addr, val, mode, delayinfo) = per_padconf[per][0]
+
+ dtsnode = ("%s_pins_%s" % (per, mode)).lower()
print ""
print "\t%s: %s {" % (dtsnode, dtsnode)
print "\t\tpinctrl-single,pins = <"
for i in per_padconf[per]:
- (pad_name, pin_name, addr, val, delayinfo) = i
+ (pad_name, pin_name, addr, val, mode, delayinfo) = i
muxmode = val & 0xf
(method, data) = delayinfo
# Generate output in bios format
def bios_format_pad_regs(padconf, per_padconf):
for i in padconf:
- (pad_name, pin_name, addr, val, delayinfo) = i
+ (pad_name, pin_name, addr, val, mode, delayinfo) = i
delaylist = []
(method, data) = delayinfo
mode = select_mode(pad_name, pin_name, module, virt, man, modehelp, sel)
# Remember the selection for that module, for later reuse
- if (args.strict == False):
+ if (args.strict == False and module not in sel.keys()):
sel[module] = mode
if (mode == "SKIP"):
if (args.debug >= 1):
print " => Using mode %s" % mode
- paddata = (pad_name, pin_name, addr, val, delayinfo)
+ paddata = (pad_name, pin_name, addr, val, mode, delayinfo)
if (module not in per_padconf.keys()):
per_padconf[module] = []
padconf.append(paddata)