Allwinner clocks additions for 4.2
One error fix, and one patch to add support for the USB clock found on the Allwinner A23 and A33 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJVfdWlAAoJEBx+YmzsjxAgijIP/1j0EcaRZOaEkLWDOSSQ4av5 jH/NrMhpnYJRHPgVZg9KgcF8znOIQdutxy67ScpMHpQ2x+1yw7qZ+ET4Y6hCTz0g Z1jUYgwuf1yu0j18VZ7SJQhIWjsOLlOyOyXwzwEUEfJe0p/+h1msQNfW2wqZvvBf ognuEDCduhz2JxmE8Jmcm4RlrVFntcaUilv/abW/oEsWWbPBU6oAt5YkQuCGmxvC oxeyK0UiUAzEh6nq0XoSz6tATAFjo1yLefrH0GlTZUeg4GmUbPmrvKmSRQFOWDnB drWDl/HKWehW/EcK8YcUhhfYJk5NFyYHxYDODHD91xAj1iGAvPO8mmLn0Wl75Tkn oAI/qyUL7brNRpDW4NirAP0+AIgsD6YrAxbZof811+FlJ0WZ9M4i+hIIzzgq31gL Tw5qSSQ730VtJQfgNlDFL6mHxqKM7s/UzHJbIZirEs4FFHEYvOLdOfHqv7ACDAif goYN4M40htseU80rYOfZFrbaNta13Eh7Lqdmi5mat7OJNvhcONbxe9P3kc4BTGbc VRydPObMJzIdRFxJEp3Gu+D/NLSHyJ7O3WwH6OxTQBwnASMMfOutPycdbMZoZXc1 2NQPQq6xhwFIZI2G1uD45Dnt3qX8qQqeLce8UItLIlHZGN3c6hjerQ/+Y+gR4BKY TA15OfxbP/ZgP31xgYC0 =uxrz -----END PGP SIGNATURE----- Merge tag 'sunxi-clocks-for-4.2' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into clk-next Allwinner clocks additions for 4.2 One error fix, and one patch to add support for the USB clock found on the Allwinner A23 and A33
This commit is contained in:
Коммит
91990d213c
|
@ -67,6 +67,7 @@ Required properties:
|
|||
"allwinner,sun4i-a10-usb-clk" - for usb gates + resets on A10 / A20
|
||||
"allwinner,sun5i-a13-usb-clk" - for usb gates + resets on A13
|
||||
"allwinner,sun6i-a31-usb-clk" - for usb gates + resets on A31
|
||||
"allwinner,sun8i-a23-usb-clk" - for usb gates + resets on A23
|
||||
"allwinner,sun9i-a80-usb-mod-clk" - for usb gates + resets on A80
|
||||
"allwinner,sun9i-a80-usb-phy-clk" - for usb phy gates + resets on A80
|
||||
|
||||
|
|
|
@ -93,7 +93,7 @@ static void __init sun9i_a80_pll4_setup(struct device_node *node)
|
|||
void __iomem *reg;
|
||||
|
||||
reg = of_io_request_and_map(node, 0, of_node_full_name(node));
|
||||
if (!reg) {
|
||||
if (IS_ERR(reg)) {
|
||||
pr_err("Could not get registers for a80-pll4-clk: %s\n",
|
||||
node->name);
|
||||
return;
|
||||
|
@ -154,7 +154,7 @@ static void __init sun9i_a80_gt_setup(struct device_node *node)
|
|||
struct clk *gt;
|
||||
|
||||
reg = of_io_request_and_map(node, 0, of_node_full_name(node));
|
||||
if (!reg) {
|
||||
if (IS_ERR(reg)) {
|
||||
pr_err("Could not get registers for a80-gt-clk: %s\n",
|
||||
node->name);
|
||||
return;
|
||||
|
@ -218,7 +218,7 @@ static void __init sun9i_a80_ahb_setup(struct device_node *node)
|
|||
void __iomem *reg;
|
||||
|
||||
reg = of_io_request_and_map(node, 0, of_node_full_name(node));
|
||||
if (!reg) {
|
||||
if (IS_ERR(reg)) {
|
||||
pr_err("Could not get registers for a80-ahb-clk: %s\n",
|
||||
node->name);
|
||||
return;
|
||||
|
@ -244,7 +244,7 @@ static void __init sun9i_a80_apb0_setup(struct device_node *node)
|
|||
void __iomem *reg;
|
||||
|
||||
reg = of_io_request_and_map(node, 0, of_node_full_name(node));
|
||||
if (!reg) {
|
||||
if (IS_ERR(reg)) {
|
||||
pr_err("Could not get registers for a80-apb0-clk: %s\n",
|
||||
node->name);
|
||||
return;
|
||||
|
@ -310,7 +310,7 @@ static void __init sun9i_a80_apb1_setup(struct device_node *node)
|
|||
void __iomem *reg;
|
||||
|
||||
reg = of_io_request_and_map(node, 0, of_node_full_name(node));
|
||||
if (!reg) {
|
||||
if (IS_ERR(reg)) {
|
||||
pr_err("Could not get registers for a80-apb1-clk: %s\n",
|
||||
node->name);
|
||||
return;
|
||||
|
|
|
@ -198,6 +198,8 @@ static void __init sun6i_ahb1_clk_setup(struct device_node *node)
|
|||
int i = 0;
|
||||
|
||||
reg = of_io_request_and_map(node, 0, of_node_full_name(node));
|
||||
if (IS_ERR(reg))
|
||||
return;
|
||||
|
||||
/* we have a mux, we will have >1 parents */
|
||||
while (i < SUN6I_AHB1_MAX_PARENTS &&
|
||||
|
|
|
@ -204,6 +204,17 @@ static void __init sun6i_a31_usb_setup(struct device_node *node)
|
|||
}
|
||||
CLK_OF_DECLARE(sun6i_a31_usb, "allwinner,sun6i-a31-usb-clk", sun6i_a31_usb_setup);
|
||||
|
||||
static const struct usb_clk_data sun8i_a23_usb_clk_data __initconst = {
|
||||
.clk_mask = BIT(16) | BIT(11) | BIT(10) | BIT(9) | BIT(8),
|
||||
.reset_mask = BIT(2) | BIT(1) | BIT(0),
|
||||
};
|
||||
|
||||
static void __init sun8i_a23_usb_setup(struct device_node *node)
|
||||
{
|
||||
sunxi_usb_clk_setup(node, &sun8i_a23_usb_clk_data, &sun4i_a10_usb_lock);
|
||||
}
|
||||
CLK_OF_DECLARE(sun8i_a23_usb, "allwinner,sun8i-a23-usb-clk", sun8i_a23_usb_setup);
|
||||
|
||||
static const struct usb_clk_data sun9i_a80_usb_mod_data __initconst = {
|
||||
.clk_mask = BIT(6) | BIT(5) | BIT(4) | BIT(3) | BIT(2) | BIT(1),
|
||||
.reset_mask = BIT(19) | BIT(18) | BIT(17),
|
||||
|
|
Загрузка…
Ссылка в новой задаче