static long hdmi_pll_round_rate(struct clk_hw *hw, unsigned long rate, unsigned long *parent_rate) { const struct pll_rate *pll_rate = find_rate(rate); return pll_rate->rate; }
static int hdmi_pll_set_rate(struct clk_hw *hw, unsigned long rate, unsigned long parent_rate) { struct hdmi_pll_8960 *pll = hw_clk_to_pll(hw); const struct pll_rate *pll_rate = find_rate(rate); int i; DBG("rate=%lu", rate); for (i = 0; i < pll_rate->num_reg; i++) pll_write(pll, pll_rate->conf[i].reg, pll_rate->conf[i].val); pll->pixclk = rate; return 0; }
static int hdmi_pll_set_rate(struct clk_hw *hw, unsigned long rate, unsigned long parent_rate) { struct hdmi_phy_8960 *phy_8960 = clk_to_phy(hw); struct hdmi *hdmi = phy_8960->hdmi; const struct pll_rate *pll_rate = find_rate(rate); int i; DBG("rate=%lu", rate); for (i = 0; pll_rate->conf[i].reg; i++) hdmi_write(hdmi, pll_rate->conf[i].reg, pll_rate->conf[i].val); phy_8960->pixclk = rate; return 0; }
int rtl_giwrate(struct net_device *dev, struct iw_request_info *info, union iwreq_data *wrqu, char *extra) { #ifdef NETDEV_NO_PRIV RTL_PRIV *priv = ((RTL_PRIV *)netdev_priv(dev))->wlan_priv; #else RTL_PRIV *priv = (RTL_PRIV *)dev->priv; #endif unsigned int txRate; if (priv == NULL) { /* if 1st open fail, pAd will be free; So the net_dev->priv will be NULL in 2rd open */ return -ENETDOWN; } #ifndef WIFI_HAPD //check if the interface is down if (!netif_running(priv->dev)) { //printk("\nFail: interface not opened\n"); return -ENETDOWN; } #endif if (priv->pmib->dot11StationConfigEntry.autoRate) txRate = find_rate(priv, NULL, 1, 0); else txRate = get_rate_from_bit_value(priv->pmib->dot11StationConfigEntry.fixedTxRate); //printk ("txRate = %d\n", txRate); wrqu->bitrate.value = txRate * 1000000; wrqu->bitrate.disabled = 0; return 0; }