ARM: dts: ast2600: Add SGPIO to device tree
Add SGPIO DTS node and enable them for AST2600 EVB. Signed-off-by: Billy Tsai <billy_tsai@aspeedtech.com>
This commit is contained in:
@@ -266,3 +266,13 @@
|
|||||||
bootph-all;
|
bootph-all;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&sgpiom0 {
|
||||||
|
status = "okay";
|
||||||
|
ngpios = <128>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&sgpiom1 {
|
||||||
|
status = "okay";
|
||||||
|
ngpios = <80>;
|
||||||
|
};
|
||||||
|
|||||||
@@ -501,6 +501,36 @@
|
|||||||
ngpios = <208>;
|
ngpios = <208>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
sgpiom0: sgpiom@1e780500 {
|
||||||
|
compatible = "aspeed,ast2600-sgpiom";
|
||||||
|
reg = <0x1e780500 0x100>;
|
||||||
|
interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&scu ASPEED_CLK_APB2>;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
interrupt-controller;
|
||||||
|
bus-frequency = <1000000>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_sgpm1_default>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
sgpiom1: sgpiom@1e780600 {
|
||||||
|
compatible = "aspeed,ast2600-sgpiom";
|
||||||
|
reg = <0x1e780600 0x100>;
|
||||||
|
interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&scu ASPEED_CLK_APB2>;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
gpio-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
interrupt-controller;
|
||||||
|
bus-frequency = <12000000>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pinctrl_sgpm2_default>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
gpio1: gpio@1e780800 {
|
gpio1: gpio@1e780800 {
|
||||||
compatible = "aspeed,ast2600-gpio";
|
compatible = "aspeed,ast2600-gpio";
|
||||||
reg = <0x1e780800 0x800>;
|
reg = <0x1e780800 0x800>;
|
||||||
@@ -2167,4 +2197,14 @@
|
|||||||
function = "PCIE1RC";
|
function = "PCIE1RC";
|
||||||
groups = "PCIE1RC";
|
groups = "PCIE1RC";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pinctrl_sgpm1_default: sgpm1_default {
|
||||||
|
function = "SGPM1";
|
||||||
|
groups = "SGPM1";
|
||||||
|
};
|
||||||
|
|
||||||
|
pinctrl_sgpm2_default: sgpm2_default {
|
||||||
|
function = "SGPM2";
|
||||||
|
groups = "SGPM2";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -454,6 +454,14 @@ static struct aspeed_sig_desc pwm15g1[] = {
|
|||||||
{0x41c, BIT(31), 0},
|
{0x41c, BIT(31), 0},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct aspeed_sig_desc sgpm1[] = {
|
||||||
|
{0x414, GENMASK(27, 24), 0},
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct aspeed_sig_desc sgpm2[] = {
|
||||||
|
{0x6d0, GENMASK(7, 4), 0},
|
||||||
|
};
|
||||||
|
|
||||||
static const struct aspeed_group_config ast2600_groups[] = {
|
static const struct aspeed_group_config ast2600_groups[] = {
|
||||||
{ "MAC1LINK", ARRAY_SIZE(mac1_link), mac1_link },
|
{ "MAC1LINK", ARRAY_SIZE(mac1_link), mac1_link },
|
||||||
{ "MAC2LINK", ARRAY_SIZE(mac2_link), mac2_link },
|
{ "MAC2LINK", ARRAY_SIZE(mac2_link), mac2_link },
|
||||||
@@ -543,6 +551,8 @@ static const struct aspeed_group_config ast2600_groups[] = {
|
|||||||
{ "PWM14G1", ARRAY_SIZE(pwm14g1), pwm14g1 },
|
{ "PWM14G1", ARRAY_SIZE(pwm14g1), pwm14g1 },
|
||||||
{ "PWM15G0", ARRAY_SIZE(pwm15g0), pwm15g0 },
|
{ "PWM15G0", ARRAY_SIZE(pwm15g0), pwm15g0 },
|
||||||
{ "PWM15G1", ARRAY_SIZE(pwm15g1), pwm15g1 },
|
{ "PWM15G1", ARRAY_SIZE(pwm15g1), pwm15g1 },
|
||||||
|
{ "SGPM1", ARRAY_SIZE(sgpm1), sgpm1 },
|
||||||
|
{ "SGPM2", ARRAY_SIZE(sgpm2), sgpm2 },
|
||||||
};
|
};
|
||||||
|
|
||||||
static int ast2600_pinctrl_get_groups_count(struct udevice *dev)
|
static int ast2600_pinctrl_get_groups_count(struct udevice *dev)
|
||||||
|
|||||||
Reference in New Issue
Block a user