Hi Geert, On Friday, May 12, 2017, Geert Uytterhoeven wrote: > 12 x 16 = 192, not 384. Opps, my math was off! (I think I need another cup of coffee this morning) > Do you need all possible combinations of input, output, and bi-dir? > I assumed they're mutually exclusive. If not, you need 3 bits/pin/function You're right, they are mutually exclusive, so 2 bits are fine. Also, the other pinout variations chips (RZ/A1L,A1LU,A1LC) only have 10 ports: 12 ports x 16 pins x 2bits-per-bit => 384 bytes 10 ports x 16 pins x 2bits-per-bit => 320 bytes 384 + 320 = 704 bytes (of const data) > With packages, do you mean e.g. RZ/A1H vs. RZ/A1L? Yes. > These indeed differ, > but > should use different compatible values. OK. Since r7s72100.dtsi has compatible = "renesas,r7s72100-ports"; We'll just override that in say my-rza1l-board.dts &pinctrl { compatible = "renesas,r7s72102-ports"; }; and then look for that in the driver. > Or do you mean QFP/BGA256 vs. BGA324? Isn't the former a subset of the > latter? The "package" doesn't matter, it's the pin assignments on the die: RZ/A1H = RZ/A1M = pin assignments #1 RZ/A1L = RZ/A1LU = RZ/A1LC = pin assignments #2 Then each of those parts above have multiple 'package options', but of course doesn't change the actual pin/function assignments (that's part of the silicon die) Chris