• Georgi Djakov's avatar
    clk: qcom: Introduce parent_map tables · 293d2e97
    Georgi Djakov authored
    In the current parent mapping code, we can get duplicate or inconsistent
    indexes, which leads to discrepancy between the number of elements in the
    array and the number of parents. Until now, this was solved with some
    reordering but this is not always possible.
    
    This patch introduces index tables that are used to define the relations
    between the PLL source and the hardware mux configuration value.
    To accomplish this, here we do the following:
     - Define a parent_map struct to map the relations between PLL source index
     and register configuration value.
     - Add a qcom_find_src_index() function for finding the index of a clock
     matching the specific PLL configuration.
     - Update the {set,get}_parent RCG functions use the newly introduced
     parent_map struct.
     - Convert all existing drivers to the new parent_map tables.
    Signed-off-by: default avatarGeorgi Djakov <georgi.djakov@linaro.org>
    Signed-off-by: default avatarStephen Boyd <sboyd@codeaurora.org>
    293d2e97
clk-rcg2.c 13.7 KB