[FE training-materials-updates] Update a20 pin muxing example
Michael Opdenacker
michael.opdenacker at free-electrons.com
Wed May 17 14:07:11 CEST 2017
Repository : git://git.free-electrons.com/training-materials.git
On branch : master
Link : http://git.free-electrons.com/training-materials/commit/?id=776021bc908dd2a4f9307148bfa08771502a3451
>---------------------------------------------------------------
commit 776021bc908dd2a4f9307148bfa08771502a3451
Author: Michael Opdenacker <michael.opdenacker at free-electrons.com>
Date: Wed May 17 14:07:11 2017 +0200
Update a20 pin muxing example
- The latest version is cleaner, you use a phandle to
the pin muxing section.
Signed-off-by: Michael Opdenacker <michael.opdenacker at free-electrons.com>
>---------------------------------------------------------------
776021bc908dd2a4f9307148bfa08771502a3451
slides/kernel-device-model/kernel-device-model.tex | 5 +-
slides/kernel-pinmuxing/allwinner-example.dia | 245 +++++++++++++--------
2 files changed, 157 insertions(+), 93 deletions(-)
diff --git a/slides/kernel-device-model/kernel-device-model.tex b/slides/kernel-device-model/kernel-device-model.tex
index f0eba69..4e8c0ab 100644
--- a/slides/kernel-device-model/kernel-device-model.tex
+++ b/slides/kernel-device-model/kernel-device-model.tex
@@ -685,12 +685,15 @@ static struct platform_driver serial_omap_driver = {
\item {\em Device tree bindings} are all documented in
\kerneldoctext{devicetree/bindings}.
\item Since the Device Tree is normally part of the kernel ABI, the
- {\em bindings} must remain compatible over-time.
+ {\em bindings} must remain compatible over time.
\begin{itemize}
\item A new kernel must be capable of using an old Device Tree.
\item This requires a very careful design of the bindings. They
are all reviewed on the \code{devicetree at vger.kernel.org}
mailing list.
+ \item See Thomas Petazzoni's presentation on this topic:
+ {\em Device Tree as a stable ABI: a fairy tale?}
+ (\url{http://bit.ly/1U1tYkT}).
\end{itemize}
\item A Device Tree binding should contain only a {\em description
of the hardware} and not {\em configuration}.
diff --git a/slides/kernel-pinmuxing/allwinner-example.dia b/slides/kernel-pinmuxing/allwinner-example.dia
index 0d1b5d5..67cc648 100644
--- a/slides/kernel-pinmuxing/allwinner-example.dia
+++ b/slides/kernel-pinmuxing/allwinner-example.dia
@@ -2,10 +2,10 @@
<dia:diagram xmlns:dia="http://www.lysator.liu.se/~alla/dia/">
<dia:diagramdata>
<dia:attribute name="background">
- <dia:color val="#ffffff"/>
+ <dia:color val="#ffffffff"/>
</dia:attribute>
<dia:attribute name="pagebreak">
- <dia:color val="#000099"/>
+ <dia:color val="#000099ff"/>
</dia:attribute>
<dia:attribute name="paper">
<dia:composite type="paper">
@@ -37,6 +37,9 @@
</dia:attribute>
<dia:attribute name="grid">
<dia:composite type="grid">
+ <dia:attribute name="dynamic">
+ <dia:boolean val="true"/>
+ </dia:attribute>
<dia:attribute name="width_x">
<dia:real val="1"/>
</dia:attribute>
@@ -53,7 +56,7 @@
</dia:composite>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#d8e5e5"/>
+ <dia:color val="#d8e5e5ff"/>
</dia:attribute>
<dia:attribute name="guides">
<dia:composite type="guides">
@@ -61,32 +64,51 @@
<dia:attribute name="vguides"/>
</dia:composite>
</dia:attribute>
+ <dia:attribute name="display">
+ <dia:composite type="display">
+ <dia:attribute name="antialiased">
+ <dia:boolean val="false"/>
+ </dia:attribute>
+ <dia:attribute name="snap-to-grid">
+ <dia:boolean val="false"/>
+ </dia:attribute>
+ <dia:attribute name="snap-to-object">
+ <dia:boolean val="true"/>
+ </dia:attribute>
+ <dia:attribute name="show-grid">
+ <dia:boolean val="true"/>
+ </dia:attribute>
+ <dia:attribute name="show-connection-points">
+ <dia:boolean val="true"/>
+ </dia:attribute>
+ </dia:composite>
+ </dia:attribute>
</dia:diagramdata>
- <dia:layer name="Arrière-plan" visible="true">
+ <dia:layer name="Arrière-plan" visible="true" connectable="true">
<dia:object type="Standard - Box" version="0" id="O0">
<dia:attribute name="obj_pos">
<dia:point val="31.9441,-2.26936"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="31.8941,-2.31936;59.7026,31.1206"/>
+ <dia:rectangle val="31.8941,-2.31936;63.7375,34.9993"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="31.9441,-2.26936"/>
</dia:attribute>
<dia:attribute name="elem_width">
- <dia:real val="27.708528390539524"/>
+ <dia:real val="31.743400000000001"/>
</dia:attribute>
<dia:attribute name="elem_height">
- <dia:real val="33.339965917827193"/>
+ <dia:real val="37.218690000000002"/>
</dia:attribute>
<dia:attribute name="border_width">
<dia:real val="0.10000000149011612"/>
</dia:attribute>
<dia:attribute name="border_color">
- <dia:color val="#6a8954"/>
+ <dia:color val="#6a8954ff"/>
</dia:attribute>
<dia:attribute name="inner_color">
- <dia:color val="#c5e387"/>
+ <dia:color val="#c5e387ff"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="true"/>
@@ -112,10 +134,10 @@
<dia:real val="0.10000000149011612"/>
</dia:attribute>
<dia:attribute name="border_color">
- <dia:color val="#5cacff"/>
+ <dia:color val="#5cacffff"/>
</dia:attribute>
<dia:attribute name="inner_color">
- <dia:color val="#add8e6"/>
+ <dia:color val="#add8e6ff"/>
</dia:attribute>
<dia:attribute name="show_background">
<dia:boolean val="true"/>
@@ -160,7 +182,7 @@
<dia:point val="5.73784,-0.963624"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
@@ -173,46 +195,48 @@
</dia:object>
<dia:object type="Standard - Text" version="1" id="O3">
<dia:attribute name="obj_pos">
- <dia:point val="35.2132,-1.2248"/>
+ <dia:point val="35.2132,-1.1748"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="35.2132,-1.9323;54.6482,31.7335"/>
+ <dia:rectangle val="35.2132,-1.8823;62.2532,33.9002"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#/ {
- soc at 01c00000 {
+...
+ leds {
+ compatible = "gpio-leds";
+ pinctrl-names = "default";
+ pinctrl-0 = <&led_pins_olinuxino>;
- pio: pinctrl at 01c20800 {
- led_pins_olinuxino: led_pins at 0 {
- allwinner,pins = "PH2";
- allwinner,function = "gpio_out";
- allwinner,drive = <1>;
- allwinner,pull = <0>;
- };
- };
+ green {
+ label = "a20-olinuxino-micro:green:usr";
+ gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>;
+ default-state = "on";
+ };
+ };
+...
+};
- uart0: serial at 01c28000 {
- pinctrl-names = "default";
- pinctrl-0 = <&uart0_pins_a>;
- status = "okay";
- };
- };
- leds {
- compatible = "gpio-leds";
- pinctrl-names = "default";
- pinctrl-0 = <&led_pins_olinuxino>;
+&pio {
+ ....
- green {
- label = "a20-olinuxino-micro:green:usr";
- gpios = <&pio 7 2 0>;
- default-state = "on";
- };
- };
+ led_pins_olinuxino: led_pins at 0 {
+ pins = "PH2";
+ function = "gpio_out";
+ drive-strength = <20>;
+ };
+
+...
};
-#</dia:string>
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_pins_a>;
+ status = "okay";
+};#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="Inconsolata" style="48" name="Courier"/>
@@ -221,10 +245,10 @@
<dia:real val="1.0583332926034927"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="35.2132,-1.2248"/>
+ <dia:point val="35.2132,-1.1748"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
@@ -236,20 +260,20 @@
</dia:attribute>
</dia:object>
</dia:layer>
- <dia:layer name="Arrows" visible="true"/>
- <dia:layer name="Nouveau calque 1" visible="true" active="true">
+ <dia:layer name="Arrows" visible="true" connectable="true"/>
+ <dia:layer name="Nouveau calque 1" visible="true" connectable="true" active="true">
<dia:object type="Standard - ZigZagLine" version="1" id="O4">
<dia:attribute name="obj_pos">
- <dia:point val="55.0097,21.884"/>
+ <dia:point val="57.0875,3.89933"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="54.3176,2.10774;58.9057,22.034"/>
+ <dia:rectangle val="52.9375,3.74933;62.6875,20.3347"/>
</dia:attribute>
<dia:attribute name="orth_points">
- <dia:point val="55.0097,21.884"/>
- <dia:point val="58.7557,21.884"/>
- <dia:point val="58.7557,2.69315"/>
- <dia:point val="54.653,2.69315"/>
+ <dia:point val="57.0875,3.89933"/>
+ <dia:point val="62.5375,3.89933"/>
+ <dia:point val="62.5375,19.7493"/>
+ <dia:point val="53.0875,19.7493"/>
</dia:attribute>
<dia:attribute name="orth_orient">
<dia:enum val="0"/>
@@ -260,7 +284,7 @@
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="line_color">
- <dia:color val="#cc1f1a"/>
+ <dia:color val="#cc1f1aff"/>
</dia:attribute>
<dia:attribute name="line_width">
<dia:real val="0.30000001192092896"/>
@@ -277,14 +301,14 @@
</dia:object>
<dia:object type="Standard - ZigZagLine" version="1" id="O5">
<dia:attribute name="obj_pos">
- <dia:point val="37.7662,13.2771"/>
+ <dia:point val="37.9,31.4493"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="20.5441,5.54157;37.9162,13.4271"/>
+ <dia:rectangle val="20.7295,5.54157;38.05,31.5993"/>
</dia:attribute>
<dia:attribute name="orth_points">
- <dia:point val="37.7662,13.2771"/>
- <dia:point val="28.902,13.2771"/>
+ <dia:point val="37.9,31.4493"/>
+ <dia:point val="28.902,31.4493"/>
<dia:point val="28.902,6.12698"/>
<dia:point val="20.8795,6.12698"/>
</dia:attribute>
@@ -297,7 +321,7 @@
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="line_color">
- <dia:color val="#cc1f1a"/>
+ <dia:color val="#cc1f1aff"/>
</dia:attribute>
<dia:attribute name="line_width">
<dia:real val="0.30000001192092896"/>
@@ -327,7 +351,7 @@
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="line_color">
- <dia:color val="#868686"/>
+ <dia:color val="#868686ff"/>
</dia:attribute>
<dia:attribute name="line_width">
<dia:real val="0.30000001192092896"/>
@@ -338,7 +362,7 @@
<dia:point val="7.68424,8.02971"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="5.43424,7.44971;7.68424,9.76721"/>
+ <dia:rectangle val="5.43674,7.28971;7.68424,9.82971"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
@@ -357,7 +381,7 @@ config#</dia:string>
<dia:point val="7.68424,8.02971"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="2"/>
@@ -370,20 +394,20 @@ config#</dia:string>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O8">
<dia:attribute name="obj_pos">
- <dia:point val="37.5908,2.49953"/>
+ <dia:point val="37.5908,19.2995"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="37.4406,2.34925;37.7516,8.2853"/>
+ <dia:rectangle val="37.4405,19.1493;37.7516,25.0853"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
- <dia:point val="37.5908,2.49953"/>
- <dia:point val="37.6013,8.13502"/>
+ <dia:point val="37.5908,19.2995"/>
+ <dia:point val="37.6013,24.935"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="line_color">
- <dia:color val="#868686"/>
+ <dia:color val="#868686ff"/>
</dia:attribute>
<dia:attribute name="line_width">
<dia:real val="0.30000001192092896"/>
@@ -391,10 +415,10 @@ config#</dia:string>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O9">
<dia:attribute name="obj_pos">
- <dia:point val="37.3367,4.68249"/>
+ <dia:point val="36.9367,21.6325"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="35.0992,4.10249;37.3367,6.41999"/>
+ <dia:rectangle val="34.7792,20.8925;36.9367,23.4325"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
@@ -410,10 +434,10 @@ config#</dia:string>
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="37.3367,4.68249"/>
+ <dia:point val="36.9367,21.6325"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="2"/>
@@ -426,20 +450,20 @@ config#</dia:string>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O10">
<dia:attribute name="obj_pos">
- <dia:point val="52.8741,10.6327"/>
+ <dia:point val="52.8741,28.8827"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="52.7241,10.4827;53.0244,15.8371"/>
+ <dia:rectangle val="52.7241,28.7327;53.0244,34.0871"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
- <dia:point val="52.8741,10.6327"/>
- <dia:point val="52.8744,15.6871"/>
+ <dia:point val="52.8741,28.8827"/>
+ <dia:point val="52.8744,33.9371"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="line_color">
- <dia:color val="#868686"/>
+ <dia:color val="#868686ff"/>
</dia:attribute>
<dia:attribute name="line_width">
<dia:real val="0.30000001192092896"/>
@@ -447,10 +471,10 @@ config#</dia:string>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O11">
<dia:attribute name="obj_pos">
- <dia:point val="53.3498,12.2381"/>
+ <dia:point val="53.3498,30.4881"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="53.3498,11.6581;57.6023,14.7756"/>
+ <dia:rectangle val="53.3498,29.7481;57.3848,33.0881"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
@@ -467,10 +491,10 @@ config#</dia:string>
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="53.3498,12.2381"/>
+ <dia:point val="53.3498,30.4881"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
@@ -483,20 +507,20 @@ config#</dia:string>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O12">
<dia:attribute name="obj_pos">
- <dia:point val="36.6947,19.5688"/>
+ <dia:point val="36.6947,0.4188"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="36.5445,19.4186;36.8554,28.5058"/>
+ <dia:rectangle val="36.5441,0.268242;36.8881,12.0499"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
- <dia:point val="36.6947,19.5688"/>
- <dia:point val="36.7052,28.3557"/>
+ <dia:point val="36.6947,0.4188"/>
+ <dia:point val="36.7375,11.8993"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="line_color">
- <dia:color val="#868686"/>
+ <dia:color val="#868686ff"/>
</dia:attribute>
<dia:attribute name="line_width">
<dia:real val="0.30000001192092896"/>
@@ -504,10 +528,10 @@ config#</dia:string>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O13">
<dia:attribute name="obj_pos">
- <dia:point val="36.3441,22.3315"/>
+ <dia:point val="36.3441,3.4815"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="32.7191,21.7515;36.3441,25.669"/>
+ <dia:rectangle val="32.9591,2.7415;36.3441,6.8815"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
@@ -525,10 +549,10 @@ config#</dia:string>
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
- <dia:point val="36.3441,22.3315"/>
+ <dia:point val="36.3441,3.4815"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="2"/>
@@ -544,7 +568,7 @@ config#</dia:string>
<dia:point val="5.00853,-2.44854"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="5.00853,-3.34354;9.24103,-2.23854"/>
+ <dia:rectangle val="5.00853,-3.58854;8.81353,-2.14104"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
@@ -561,7 +585,7 @@ config#</dia:string>
<dia:point val="5.00853,-2.44854"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
@@ -577,7 +601,7 @@ config#</dia:string>
<dia:point val="32.1069,-2.66067"/>
</dia:attribute>
<dia:attribute name="obj_bb">
- <dia:rectangle val="32.1069,-3.55567;37.0569,-2.45067"/>
+ <dia:rectangle val="32.1069,-3.80067;36.6869,-2.35317"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
@@ -594,7 +618,7 @@ config#</dia:string>
<dia:point val="32.1069,-2.66067"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
@@ -627,7 +651,7 @@ config#</dia:string>
<dia:point val="18.8033,-2.62692"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
@@ -660,7 +684,7 @@ config#</dia:string>
<dia:point val="41.1009,-2.86475"/>
</dia:attribute>
<dia:attribute name="color">
- <dia:color val="#000000"/>
+ <dia:color val="#000000ff"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
@@ -671,5 +695,42 @@ config#</dia:string>
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
+ <dia:object type="Standard - ZigZagLine" version="1" id="O18">
+ <dia:attribute name="obj_pos">
+ <dia:point val="34.4801,16.5493"/>
+ </dia:attribute>
+ <dia:attribute name="obj_bb">
+ <dia:rectangle val="17.7801,0.26392;34.6302,16.6993"/>
+ </dia:attribute>
+ <dia:attribute name="orth_points">
+ <dia:point val="34.4801,16.5493"/>
+ <dia:point val="30.3801,16.5493"/>
+ <dia:point val="30.3801,0.84933"/>
+ <dia:point val="17.9301,0.84933"/>
+ </dia:attribute>
+ <dia:attribute name="orth_orient">
+ <dia:enum val="0"/>
+ <dia:enum val="1"/>
+ <dia:enum val="0"/>
+ </dia:attribute>
+ <dia:attribute name="autorouting">
+ <dia:boolean val="false"/>
+ </dia:attribute>
+ <dia:attribute name="line_color">
+ <dia:color val="#cc1f1aff"/>
+ </dia:attribute>
+ <dia:attribute name="line_width">
+ <dia:real val="0.30000001192092896"/>
+ </dia:attribute>
+ <dia:attribute name="end_arrow">
+ <dia:enum val="22"/>
+ </dia:attribute>
+ <dia:attribute name="end_arrow_length">
+ <dia:real val="0.5"/>
+ </dia:attribute>
+ <dia:attribute name="end_arrow_width">
+ <dia:real val="0.5"/>
+ </dia:attribute>
+ </dia:object>
</dia:layer>
</dia:diagram>
More information about the training-materials-updates
mailing list