Based on kernel version 6.13
. Page generated on 2025-01-21 08:20 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause %YAML 1.2 --- $id: http://devicetree.org/schemas/pinctrl/canaan,k230-pinctrl.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Canaan Kendryte K230 Pin Controller maintainers: - Ze Huang <18771902331@163.com> description: The Canaan Kendryte K230 platform includes 64 IO pins, each capable of multiplexing up to 5 different functions. Pin function configuration is performed on a per-pin basis. properties: compatible: const: canaan,k230-pinctrl reg: maxItems: 1 patternProperties: '-pins$': type: object additionalProperties: false description: A pinctrl node should contain at least one subnode representing the pinctrl groups available on the machine. patternProperties: '-cfg$': type: object allOf: - $ref: /schemas/pinctrl/pincfg-node.yaml - $ref: /schemas/pinctrl/pinmux-node.yaml additionalProperties: false description: Each subnode will list the pins it needs, and how they should be configured, with regard to muxer configuration, bias, input enable/disable, input schmitt trigger, slew-rate enable/disable, slew-rate, drive strength. properties: pinmux: description: The list of GPIOs and their mux settings that properties in the node apply to. This should be set with the macro 'K230_PINMUX(pin, mode)' bias-disable: true bias-pull-up: true bias-pull-down: true drive-strength: minimum: 0 maximum: 15 input-enable: true output-enable: true input-schmitt-enable: true slew-rate: description: | slew rate control enable 0: disable 1: enable enum: [0, 1] power-source: description: | Specifies the power source voltage for the IO bank that the pin belongs to. Each bank of IO pins operate at a specific, fixed voltage levels. Incorrect voltage configuration can damage the chip. The defined constants represent the possible voltage configurations: - K230_MSC_3V3 (value 0): 3.3V power supply - K230_MSC_1V8 (value 1): 1.8V power supply The following banks have the corresponding voltage configurations: - bank IO0 to IO1: Fixed at 1.8V - bank IO2 to IO13: Fixed at 1.8V - bank IO14 to IO25: Fixed at 1.8V - bank IO26 to IO37: Fixed at 1.8V - bank IO38 to IO49: Fixed at 1.8V - bank IO50 to IO61: Fixed at 3.3V - bank IO62 to IO63: Fixed at 1.8V enum: [0, 1] required: - pinmux required: - compatible - reg additionalProperties: false examples: - | pinctrl@91105000 { compatible = "canaan,k230-pinctrl"; reg = <0x91105000 0x100>; uart2-pins { uart2-pins-cfg { pinmux = <0x503>, /* uart2 txd */ <0x603>; /* uart2 rxd */ slew-rate = <0>; drive-strength = <4>; power-source = <1>; input-enable; output-enable; bias-disable; }; }; }; |