@@ -680,7 +680,6 @@ static inline int tsa_of_parse_tdm_tx_route(struct tsa *tsa,
680
680
681
681
static int tsa_of_parse_tdms (struct tsa * tsa , struct device_node * np )
682
682
{
683
- struct device_node * tdm_np ;
684
683
struct tsa_tdm * tdm ;
685
684
struct clk * clk ;
686
685
u32 tdm_id , val ;
@@ -691,11 +690,10 @@ static int tsa_of_parse_tdms(struct tsa *tsa, struct device_node *np)
691
690
for (i = 0 ; i < ARRAY_SIZE (tsa -> tdm ); i ++ )
692
691
tsa -> tdm [i ].is_enable = false;
693
692
694
- for_each_available_child_of_node (np , tdm_np ) {
693
+ for_each_available_child_of_node_scoped (np , tdm_np ) {
695
694
ret = of_property_read_u32 (tdm_np , "reg" , & tdm_id );
696
695
if (ret ) {
697
696
dev_err (tsa -> dev , "%pOF: failed to read reg\n" , tdm_np );
698
- of_node_put (tdm_np );
699
697
return ret ;
700
698
}
701
699
switch (tdm_id ) {
@@ -719,16 +717,14 @@ static int tsa_of_parse_tdms(struct tsa *tsa, struct device_node *np)
719
717
invalid_tdm :
720
718
dev_err (tsa -> dev , "%pOF: Invalid tdm_id (%u)\n" , tdm_np ,
721
719
tdm_id );
722
- of_node_put (tdm_np );
723
720
return - EINVAL ;
724
721
}
725
722
}
726
723
727
- for_each_available_child_of_node (np , tdm_np ) {
724
+ for_each_available_child_of_node_scoped (np , tdm_np ) {
728
725
ret = of_property_read_u32 (tdm_np , "reg" , & tdm_id );
729
726
if (ret ) {
730
727
dev_err (tsa -> dev , "%pOF: failed to read reg\n" , tdm_np );
731
- of_node_put (tdm_np );
732
728
return ret ;
733
729
}
734
730
@@ -742,14 +738,12 @@ static int tsa_of_parse_tdms(struct tsa *tsa, struct device_node *np)
742
738
dev_err (tsa -> dev ,
743
739
"%pOF: failed to read fsl,rx-frame-sync-delay-bits\n" ,
744
740
tdm_np );
745
- of_node_put (tdm_np );
746
741
return ret ;
747
742
}
748
743
if (val > 3 ) {
749
744
dev_err (tsa -> dev ,
750
745
"%pOF: Invalid fsl,rx-frame-sync-delay-bits (%u)\n" ,
751
746
tdm_np , val );
752
- of_node_put (tdm_np );
753
747
return - EINVAL ;
754
748
}
755
749
tdm -> simode_tdm |= TSA_SIMODE_TDM_RFSD (val );
@@ -761,14 +755,12 @@ static int tsa_of_parse_tdms(struct tsa *tsa, struct device_node *np)
761
755
dev_err (tsa -> dev ,
762
756
"%pOF: failed to read fsl,tx-frame-sync-delay-bits\n" ,
763
757
tdm_np );
764
- of_node_put (tdm_np );
765
758
return ret ;
766
759
}
767
760
if (val > 3 ) {
768
761
dev_err (tsa -> dev ,
769
762
"%pOF: Invalid fsl,tx-frame-sync-delay-bits (%u)\n" ,
770
763
tdm_np , val );
771
- of_node_put (tdm_np );
772
764
return - EINVAL ;
773
765
}
774
766
tdm -> simode_tdm |= TSA_SIMODE_TDM_TFSD (val );
@@ -792,27 +784,23 @@ static int tsa_of_parse_tdms(struct tsa *tsa, struct device_node *np)
792
784
clk = of_clk_get_by_name (tdm_np , tsa_is_qe (tsa ) ? "rsync" : "l1rsync" );
793
785
if (IS_ERR (clk )) {
794
786
ret = PTR_ERR (clk );
795
- of_node_put (tdm_np );
796
787
goto err ;
797
788
}
798
789
ret = clk_prepare_enable (clk );
799
790
if (ret ) {
800
791
clk_put (clk );
801
- of_node_put (tdm_np );
802
792
goto err ;
803
793
}
804
794
tdm -> l1rsync_clk = clk ;
805
795
806
796
clk = of_clk_get_by_name (tdm_np , tsa_is_qe (tsa ) ? "rclk" : "l1rclk" );
807
797
if (IS_ERR (clk )) {
808
798
ret = PTR_ERR (clk );
809
- of_node_put (tdm_np );
810
799
goto err ;
811
800
}
812
801
ret = clk_prepare_enable (clk );
813
802
if (ret ) {
814
803
clk_put (clk );
815
- of_node_put (tdm_np );
816
804
goto err ;
817
805
}
818
806
tdm -> l1rclk_clk = clk ;
@@ -821,27 +809,23 @@ static int tsa_of_parse_tdms(struct tsa *tsa, struct device_node *np)
821
809
clk = of_clk_get_by_name (tdm_np , tsa_is_qe (tsa ) ? "tsync" : "l1tsync" );
822
810
if (IS_ERR (clk )) {
823
811
ret = PTR_ERR (clk );
824
- of_node_put (tdm_np );
825
812
goto err ;
826
813
}
827
814
ret = clk_prepare_enable (clk );
828
815
if (ret ) {
829
816
clk_put (clk );
830
- of_node_put (tdm_np );
831
817
goto err ;
832
818
}
833
819
tdm -> l1tsync_clk = clk ;
834
820
835
821
clk = of_clk_get_by_name (tdm_np , tsa_is_qe (tsa ) ? "tclk" : "l1tclk" );
836
822
if (IS_ERR (clk )) {
837
823
ret = PTR_ERR (clk );
838
- of_node_put (tdm_np );
839
824
goto err ;
840
825
}
841
826
ret = clk_prepare_enable (clk );
842
827
if (ret ) {
843
828
clk_put (clk );
844
- of_node_put (tdm_np );
845
829
goto err ;
846
830
}
847
831
tdm -> l1tclk_clk = clk ;
@@ -859,16 +843,12 @@ static int tsa_of_parse_tdms(struct tsa *tsa, struct device_node *np)
859
843
}
860
844
861
845
ret = tsa_of_parse_tdm_rx_route (tsa , tdm_np , tsa -> tdms , tdm_id );
862
- if (ret ) {
863
- of_node_put (tdm_np );
846
+ if (ret )
864
847
goto err ;
865
- }
866
848
867
849
ret = tsa_of_parse_tdm_tx_route (tsa , tdm_np , tsa -> tdms , tdm_id );
868
- if (ret ) {
869
- of_node_put (tdm_np );
850
+ if (ret )
870
851
goto err ;
871
- }
872
852
873
853
tdm -> is_enable = true;
874
854
}
0 commit comments