@@ -1844,100 +1844,6 @@ static const struct qcom_icc_desc sm8450_system_noc = {
18441844 .num_bcms = ARRAY_SIZE (system_noc_bcms ),
18451845};
18461846
1847- static int qnoc_probe (struct platform_device * pdev )
1848- {
1849- const struct qcom_icc_desc * desc ;
1850- struct icc_onecell_data * data ;
1851- struct icc_provider * provider ;
1852- struct qcom_icc_node * const * qnodes ;
1853- struct qcom_icc_provider * qp ;
1854- struct icc_node * node ;
1855- size_t num_nodes , i ;
1856- int ret ;
1857-
1858- desc = device_get_match_data (& pdev -> dev );
1859- if (!desc )
1860- return - EINVAL ;
1861-
1862- qnodes = desc -> nodes ;
1863- num_nodes = desc -> num_nodes ;
1864-
1865- qp = devm_kzalloc (& pdev -> dev , sizeof (* qp ), GFP_KERNEL );
1866- if (!qp )
1867- return - ENOMEM ;
1868-
1869- data = devm_kcalloc (& pdev -> dev , num_nodes , sizeof (* node ), GFP_KERNEL );
1870- if (!data )
1871- return - ENOMEM ;
1872-
1873- provider = & qp -> provider ;
1874- provider -> dev = & pdev -> dev ;
1875- provider -> set = qcom_icc_set ;
1876- provider -> pre_aggregate = qcom_icc_pre_aggregate ;
1877- provider -> aggregate = qcom_icc_aggregate ;
1878- provider -> xlate_extended = qcom_icc_xlate_extended ;
1879- INIT_LIST_HEAD (& provider -> nodes );
1880- provider -> data = data ;
1881-
1882- qp -> dev = & pdev -> dev ;
1883- qp -> bcms = desc -> bcms ;
1884- qp -> num_bcms = desc -> num_bcms ;
1885-
1886- qp -> voter = of_bcm_voter_get (qp -> dev , NULL );
1887- if (IS_ERR (qp -> voter ))
1888- return PTR_ERR (qp -> voter );
1889-
1890- ret = icc_provider_add (provider );
1891- if (ret ) {
1892- dev_err (& pdev -> dev , "error adding interconnect provider\n" );
1893- return ret ;
1894- }
1895-
1896- for (i = 0 ; i < qp -> num_bcms ; i ++ )
1897- qcom_icc_bcm_init (qp -> bcms [i ], & pdev -> dev );
1898-
1899- for (i = 0 ; i < num_nodes ; i ++ ) {
1900- size_t j ;
1901-
1902- if (!qnodes [i ])
1903- continue ;
1904-
1905- node = icc_node_create (qnodes [i ]-> id );
1906- if (IS_ERR (node )) {
1907- ret = PTR_ERR (node );
1908- goto err ;
1909- }
1910-
1911- node -> name = qnodes [i ]-> name ;
1912- node -> data = qnodes [i ];
1913- icc_node_add (node , provider );
1914-
1915- for (j = 0 ; j < qnodes [i ]-> num_links ; j ++ )
1916- icc_link_create (node , qnodes [i ]-> links [j ]);
1917-
1918- data -> nodes [i ] = node ;
1919- }
1920- data -> num_nodes = num_nodes ;
1921-
1922- platform_set_drvdata (pdev , qp );
1923-
1924- return 0 ;
1925- err :
1926- icc_nodes_remove (provider );
1927- icc_provider_del (provider );
1928- return ret ;
1929- }
1930-
1931- static int qnoc_remove (struct platform_device * pdev )
1932- {
1933- struct qcom_icc_provider * qp = platform_get_drvdata (pdev );
1934-
1935- icc_nodes_remove (& qp -> provider );
1936- icc_provider_del (& qp -> provider );
1937-
1938- return 0 ;
1939- }
1940-
19411847static const struct of_device_id qnoc_of_match [] = {
19421848 { .compatible = "qcom,sm8450-aggre1-noc" ,
19431849 .data = & sm8450_aggre1_noc },
@@ -1966,8 +1872,8 @@ static const struct of_device_id qnoc_of_match[] = {
19661872MODULE_DEVICE_TABLE (of , qnoc_of_match );
19671873
19681874static struct platform_driver qnoc_driver = {
1969- .probe = qnoc_probe ,
1970- .remove = qnoc_remove ,
1875+ .probe = qcom_icc_rpmh_probe ,
1876+ .remove = qcom_icc_rpmh_remove ,
19711877 .driver = {
19721878 .name = "qnoc-sm8450" ,
19731879 .of_match_table = qnoc_of_match ,
0 commit comments