[gpio:gpio-descriptors-mmc-cd-wp 1/3] drivers/mmc/host/mmci.c:1507:6: error: implicit declaration of function 'of_get_property'; did you mean '__get_order'?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git gpio-descriptors-mmc-cd-wp
head:   fcf12e570a8286150c15701bc1d8e82ce37c9f77
commit: b320303d17758d5100d73723ddb7673ea009ac74 [1/3] mmc: mmci: Drop support for pdata GPIO numbers
config: arm64-defconfig (attached as .config)
compiler: aarch64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout b320303d17758d5100d73723ddb7673ea009ac74
        # save the attached .config to linux build tree
        GCC_VERSION=7.2.0 make.cross ARCH=arm64 

All errors (new ones prefixed by >>):

   drivers/mmc/host/mmci.c: In function 'mmci_of_parse':
>> drivers/mmc/host/mmci.c:1507:6: error: implicit declaration of function 'of_get_property'; did you mean '__get_order'? [-Werror=implicit-function-declaration]
     if (of_get_property(np, "st,sig-dir-dat0", NULL))
         ^~~~~~~~~~~~~~~
         __get_order
   drivers/mmc/host/mmci.c: In function 'mmci_probe':
>> drivers/mmc/host/mmci.c:1678:12: error: 'struct mmci_platform_data' has no member named 'cd_invert'
      if (!plat->cd_invert)
               ^~
   cc1: some warnings being treated as errors

vim +1507 drivers/mmc/host/mmci.c

^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1498  
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1499  static int mmci_of_parse(struct device_node *np, struct mmc_host *mmc)
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1500  {
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1501  	struct mmci_host *host = mmc_priv(mmc);
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1502  	int ret = mmc_of_parse(mmc);
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1503  
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1504  	if (ret)
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1505  		return ret;
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1506  
ae94cafe2 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-18 @1507  	if (of_get_property(np, "st,sig-dir-dat0", NULL))
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1508  		host->pwr_reg_add |= MCI_ST_DATA0DIREN;
ae94cafe2 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-18  1509  	if (of_get_property(np, "st,sig-dir-dat2", NULL))
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1510  		host->pwr_reg_add |= MCI_ST_DATA2DIREN;
ae94cafe2 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-18  1511  	if (of_get_property(np, "st,sig-dir-dat31", NULL))
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1512  		host->pwr_reg_add |= MCI_ST_DATA31DIREN;
ae94cafe2 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-18  1513  	if (of_get_property(np, "st,sig-dir-dat74", NULL))
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1514  		host->pwr_reg_add |= MCI_ST_DATA74DIREN;
ae94cafe2 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-18  1515  	if (of_get_property(np, "st,sig-dir-cmd", NULL))
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1516  		host->pwr_reg_add |= MCI_ST_CMDDIREN;
1a7e99c1f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-31  1517  	if (of_get_property(np, "st,sig-pin-fbclk", NULL))
4593df29b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1518  		host->pwr_reg_add |= MCI_ST_FBCLKEN;
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1519  
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1520  	if (of_get_property(np, "mmc-cap-mmc-highspeed", NULL))
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1521  		mmc->caps |= MMC_CAP_MMC_HIGHSPEED;
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1522  	if (of_get_property(np, "mmc-cap-sd-highspeed", NULL))
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1523  		mmc->caps |= MMC_CAP_SD_HIGHSPEED;
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1524  
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1525  	return 0;
c0a120a4b drivers/mmc/host/mmci.c Lee Jones           2012-05-08  1526  }
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1527  
c3be1efd4 drivers/mmc/host/mmci.c Bill Pemberton      2012-11-19  1528  static int mmci_probe(struct amba_device *dev,
aa25afad2 drivers/mmc/host/mmci.c Russell King        2011-02-19  1529  	const struct amba_id *id)
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1530  {
6ef297f86 drivers/mmc/host/mmci.c Linus Walleij       2009-09-22  1531  	struct mmci_platform_data *plat = dev->dev.platform_data;
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1532  	struct device_node *np = dev->dev.of_node;
4956e1090 drivers/mmc/host/mmci.c Rabin Vincent       2010-07-21  1533  	struct variant_data *variant = id->data;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1534  	struct mmci_host *host;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1535  	struct mmc_host *mmc;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1536  	int ret;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1537  
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1538  	/* Must have platform data or Device Tree. */
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1539  	if (!plat && !np) {
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1540  		dev_err(&dev->dev, "No plat data or DT found\n");
000bc9d5e drivers/mmc/host/mmci.c Lee Jones           2012-04-16  1541  		return -EINVAL;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1542  	}
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1543  
b9b52918a drivers/mmc/host/mmci.c Lee Jones           2012-06-12  1544  	if (!plat) {
b9b52918a drivers/mmc/host/mmci.c Lee Jones           2012-06-12  1545  		plat = devm_kzalloc(&dev->dev, sizeof(*plat), GFP_KERNEL);
b9b52918a drivers/mmc/host/mmci.c Lee Jones           2012-06-12  1546  		if (!plat)
b9b52918a drivers/mmc/host/mmci.c Lee Jones           2012-06-12  1547  			return -ENOMEM;
b9b52918a drivers/mmc/host/mmci.c Lee Jones           2012-06-12  1548  	}
b9b52918a drivers/mmc/host/mmci.c Lee Jones           2012-06-12  1549  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1550  	mmc = mmc_alloc_host(sizeof(struct mmci_host), &dev->dev);
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1551  	if (!mmc)
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1552  		return -ENOMEM;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1553  
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1554  	ret = mmci_of_parse(np, mmc);
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1555  	if (ret)
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1556  		goto host_free;
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1557  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1558  	host = mmc_priv(mmc);
4ea580f1d drivers/mmc/host/mmci.c Rabin Vincent       2009-04-17  1559  	host->mmc = mmc;
012b7d339 drivers/mmc/host/mmci.c Russell King        2009-07-09  1560  
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1561  	/*
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1562  	 * Some variant (STM32) doesn't have opendrain bit, nevertheless
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1563  	 * pins can be set accordingly using pinctrl
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1564  	 */
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1565  	if (!variant->opendrain) {
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1566  		host->pinctrl = devm_pinctrl_get(&dev->dev);
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1567  		if (IS_ERR(host->pinctrl)) {
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1568  			dev_err(&dev->dev, "failed to get pinctrl");
310eb252a drivers/mmc/host/mmci.c Wei Yongjun         2018-01-23  1569  			ret = PTR_ERR(host->pinctrl);
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1570  			goto host_free;
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1571  		}
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1572  
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1573  		host->pins_default = pinctrl_lookup_state(host->pinctrl,
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1574  							  PINCTRL_STATE_DEFAULT);
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1575  		if (IS_ERR(host->pins_default)) {
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1576  			dev_err(mmc_dev(mmc), "Can't select default pins\n");
310eb252a drivers/mmc/host/mmci.c Wei Yongjun         2018-01-23  1577  			ret = PTR_ERR(host->pins_default);
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1578  			goto host_free;
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1579  		}
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1580  
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1581  		host->pins_opendrain = pinctrl_lookup_state(host->pinctrl,
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1582  							    MMCI_PINCTRL_STATE_OPENDRAIN);
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1583  		if (IS_ERR(host->pins_opendrain)) {
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1584  			dev_err(mmc_dev(mmc), "Can't select opendrain pins\n");
310eb252a drivers/mmc/host/mmci.c Wei Yongjun         2018-01-23  1585  			ret = PTR_ERR(host->pins_opendrain);
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1586  			goto host_free;
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1587  		}
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1588  	}
f9bb304ce drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1589  
012b7d339 drivers/mmc/host/mmci.c Russell King        2009-07-09  1590  	host->hw_designer = amba_manf(dev);
012b7d339 drivers/mmc/host/mmci.c Russell King        2009-07-09  1591  	host->hw_revision = amba_rev(dev);
64de02894 drivers/mmc/host/mmci.c Linus Walleij       2010-02-19  1592  	dev_dbg(mmc_dev(mmc), "designer ID = 0x%02x\n", host->hw_designer);
64de02894 drivers/mmc/host/mmci.c Linus Walleij       2010-02-19  1593  	dev_dbg(mmc_dev(mmc), "revision = 0x%01x\n", host->hw_revision);
012b7d339 drivers/mmc/host/mmci.c Russell King        2009-07-09  1594  
665ba56fd drivers/mmc/host/mmci.c Ulf Hansson         2013-05-13  1595  	host->clk = devm_clk_get(&dev->dev, NULL);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1596  	if (IS_ERR(host->clk)) {
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1597  		ret = PTR_ERR(host->clk);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1598  		goto host_free;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1599  	}
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1600  
ac940938d drivers/mmc/host/mmci.c Julia Lawall        2012-08-26  1601  	ret = clk_prepare_enable(host->clk);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1602  	if (ret)
665ba56fd drivers/mmc/host/mmci.c Ulf Hansson         2013-05-13  1603  		goto host_free;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1604  
9c34b73de drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1605  	if (variant->qcom_fifo)
9c34b73de drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1606  		host->get_rx_fifocnt = mmci_qcom_get_rx_fifocnt;
9c34b73de drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1607  	else
9c34b73de drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1608  		host->get_rx_fifocnt = mmci_get_rx_fifocnt;
9c34b73de drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1609  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1610  	host->plat = plat;
4956e1090 drivers/mmc/host/mmci.c Rabin Vincent       2010-07-21  1611  	host->variant = variant;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1612  	host->mclk = clk_get_rate(host->clk);
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1613  	/*
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1614  	 * According to the spec, mclk is max 100 MHz,
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1615  	 * so we try to adjust the clock down to this,
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1616  	 * (if possible).
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1617  	 */
dc6500bfe drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1618  	if (host->mclk > variant->f_max) {
dc6500bfe drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1619  		ret = clk_set_rate(host->clk, variant->f_max);
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1620  		if (ret < 0)
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1621  			goto clk_disable;
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1622  		host->mclk = clk_get_rate(host->clk);
64de02894 drivers/mmc/host/mmci.c Linus Walleij       2010-02-19  1623  		dev_dbg(mmc_dev(mmc), "eventual mclk rate: %u Hz\n",
64de02894 drivers/mmc/host/mmci.c Linus Walleij       2010-02-19  1624  			host->mclk);
c8df9a53e drivers/mmc/host/mmci.c Linus Walleij       2008-04-29  1625  	}
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1626  
c8ebae370 drivers/mmc/host/mmci.c Russell King        2011-01-11  1627  	host->phybase = dev->res.start;
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1628  	host->base = devm_ioremap_resource(&dev->dev, &dev->res);
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1629  	if (IS_ERR(host->base)) {
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1630  		ret = PTR_ERR(host->base);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1631  		goto clk_disable;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1632  	}
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1633  
ed9067fd5 drivers/mmc/host/mmci.c Ulf Hansson         2018-07-13  1634  	if (variant->init)
ed9067fd5 drivers/mmc/host/mmci.c Ulf Hansson         2018-07-13  1635  		variant->init(host);
ed9067fd5 drivers/mmc/host/mmci.c Ulf Hansson         2018-07-13  1636  
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1637  	/*
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1638  	 * The ARM and ST versions of the block have slightly different
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1639  	 * clock divider equations which means that the minimum divider
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1640  	 * differs too.
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1641  	 * on Qualcomm like controllers get the nearest minimum clock to 100Khz
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1642  	 */
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1643  	if (variant->st_clkdiv)
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1644  		mmc->f_min = DIV_ROUND_UP(host->mclk, 257);
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1645  	else if (variant->explicit_mclk_control)
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1646  		mmc->f_min = clk_round_rate(host->clk, 100000);
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1647  	else
7f294e498 drivers/mmc/host/mmci.c Linus Walleij       2011-07-08  1648  		mmc->f_min = DIV_ROUND_UP(host->mclk, 512);
808d97ccb drivers/mmc/host/mmci.c Linus Walleij       2010-04-08  1649  	/*
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1650  	 * If no maximum operating frequency is supplied, fall back to use
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1651  	 * the module parameter, which has a (low) default value in case it
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1652  	 * is not specified. Either value must not exceed the clock rate into
5080a08d0 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-21  1653  	 * the block, of course.
808d97ccb drivers/mmc/host/mmci.c Linus Walleij       2010-04-08  1654  	 */
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1655  	if (mmc->f_max)
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1656  		mmc->f_max = variant->explicit_mclk_control ?
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1657  				min(variant->f_max, mmc->f_max) :
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1658  				min(host->mclk, mmc->f_max);
808d97ccb drivers/mmc/host/mmci.c Linus Walleij       2010-04-08  1659  	else
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1660  		mmc->f_max = variant->explicit_mclk_control ?
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1661  				fmax : min(host->mclk, fmax);
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1662  
3f4e6f7b9 drivers/mmc/host/mmci.c Srinivas Kandagatla 2014-06-02  1663  
64de02894 drivers/mmc/host/mmci.c Linus Walleij       2010-02-19  1664  	dev_dbg(mmc_dev(mmc), "clocking block at %u Hz\n", mmc->f_max);
64de02894 drivers/mmc/host/mmci.c Linus Walleij       2010-02-19  1665  
599c1d5c7 drivers/mmc/host/mmci.c Ulf Hansson         2013-01-07  1666  	/* Get regulators and the supported OCR mask */
9369c97cc drivers/mmc/host/mmci.c Bjorn Andersson     2015-03-24  1667  	ret = mmc_regulator_get_supply(mmc);
510069527 drivers/mmc/host/mmci.c Wolfram Sang        2017-10-14  1668  	if (ret)
9369c97cc drivers/mmc/host/mmci.c Bjorn Andersson     2015-03-24  1669  		goto clk_disable;
9369c97cc drivers/mmc/host/mmci.c Bjorn Andersson     2015-03-24  1670  
599c1d5c7 drivers/mmc/host/mmci.c Ulf Hansson         2013-01-07  1671  	if (!mmc->ocr_avail)
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1672  		mmc->ocr_avail = plat->ocr_mask;
599c1d5c7 drivers/mmc/host/mmci.c Ulf Hansson         2013-01-07  1673  	else if (plat->ocr_mask)
599c1d5c7 drivers/mmc/host/mmci.c Ulf Hansson         2013-01-07  1674  		dev_warn(mmc_dev(mmc), "Platform OCR mask is ignored\n");
599c1d5c7 drivers/mmc/host/mmci.c Ulf Hansson         2013-01-07  1675  
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1676  	/* DT takes precedence over platform data. */
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1677  	if (!np) {
d27620901 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17 @1678  		if (!plat->cd_invert)
d27620901 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1679  			mmc->caps2 |= MMC_CAP2_CD_ACTIVE_HIGH;
d27620901 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1680  		mmc->caps2 |= MMC_CAP2_RO_ACTIVE_HIGH;
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1681  	}
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1682  
9dd8a8b81 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-19  1683  	/* We support these capabilities. */
9dd8a8b81 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-19  1684  	mmc->caps |= MMC_CAP_CMD23;
9dd8a8b81 drivers/mmc/host/mmci.c Ulf Hansson         2014-03-19  1685  
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1686  	/*
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1687  	 * Enable busy detection.
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1688  	 */
8d94b54d9 drivers/mmc/host/mmci.c Ulf Hansson         2014-01-13  1689  	if (variant->busy_detect) {
8d94b54d9 drivers/mmc/host/mmci.c Ulf Hansson         2014-01-13  1690  		mmci_ops.card_busy = mmci_card_busy;
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1691  		/*
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1692  		 * Not all variants have a flag to enable busy detection
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1693  		 * in the DPSM, but if they do, set it here.
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1694  		 */
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1695  		if (variant->busy_dpsm_flag)
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1696  			mmci_write_datactrlreg(host,
49adc0cac drivers/mmc/host/mmci.c Linus Walleij       2016-10-25  1697  					       host->variant->busy_dpsm_flag);
8d94b54d9 drivers/mmc/host/mmci.c Ulf Hansson         2014-01-13  1698  		mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY;
8d94b54d9 drivers/mmc/host/mmci.c Ulf Hansson         2014-01-13  1699  		mmc->max_busy_timeout = 0;
8d94b54d9 drivers/mmc/host/mmci.c Ulf Hansson         2014-01-13  1700  	}
8d94b54d9 drivers/mmc/host/mmci.c Ulf Hansson         2014-01-13  1701  
8d94b54d9 drivers/mmc/host/mmci.c Ulf Hansson         2014-01-13  1702  	mmc->ops = &mmci_ops;
8d94b54d9 drivers/mmc/host/mmci.c Ulf Hansson         2014-01-13  1703  
70be208f0 drivers/mmc/host/mmci.c Ulf Hansson         2013-01-07  1704  	/* We support these PM capabilities. */
78f87df2b drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1705  	mmc->pm_caps |= MMC_PM_KEEP_POWER;
70be208f0 drivers/mmc/host/mmci.c Ulf Hansson         2013-01-07  1706  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1707  	/*
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1708  	 * We can do SGIO
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1709  	 */
a36274e01 drivers/mmc/host/mmci.c Martin K. Petersen  2010-09-10  1710  	mmc->max_segs = NR_SG;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1711  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1712  	/*
08458ef6e drivers/mmc/host/mmci.c Rabin Vincent       2010-07-21  1713  	 * Since only a certain number of bits are valid in the data length
08458ef6e drivers/mmc/host/mmci.c Rabin Vincent       2010-07-21  1714  	 * register, we must ensure that we don't exceed 2^num-1 bytes in a
08458ef6e drivers/mmc/host/mmci.c Rabin Vincent       2010-07-21  1715  	 * single request.
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1716  	 */
08458ef6e drivers/mmc/host/mmci.c Rabin Vincent       2010-07-21  1717  	mmc->max_req_size = (1 << variant->datalength_bits) - 1;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1718  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1719  	/*
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1720  	 * Set the maximum segment size.  Since we aren't doing DMA
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1721  	 * (yet) we are only limited by the data length register.
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1722  	 */
55db890a8 drivers/mmc/mmci.c      Pierre Ossman       2006-11-21  1723  	mmc->max_seg_size = mmc->max_req_size;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1724  
fe4a3c7a2 drivers/mmc/mmci.c      Pierre Ossman       2006-11-21  1725  	/*
fe4a3c7a2 drivers/mmc/mmci.c      Pierre Ossman       2006-11-21  1726  	 * Block size can be up to 2048 bytes, but must be a power of two.
fe4a3c7a2 drivers/mmc/mmci.c      Pierre Ossman       2006-11-21  1727  	 */
8f7f6b7e4 drivers/mmc/host/mmci.c Will Deacon         2012-02-24  1728  	mmc->max_blk_size = 1 << 11;
fe4a3c7a2 drivers/mmc/mmci.c      Pierre Ossman       2006-11-21  1729  
55db890a8 drivers/mmc/mmci.c      Pierre Ossman       2006-11-21  1730  	/*
8f7f6b7e4 drivers/mmc/host/mmci.c Will Deacon         2012-02-24  1731  	 * Limit the number of blocks transferred so that we don't overflow
8f7f6b7e4 drivers/mmc/host/mmci.c Will Deacon         2012-02-24  1732  	 * the maximum request size.
55db890a8 drivers/mmc/mmci.c      Pierre Ossman       2006-11-21  1733  	 */
8f7f6b7e4 drivers/mmc/host/mmci.c Will Deacon         2012-02-24  1734  	mmc->max_blk_count = mmc->max_req_size >> 11;
55db890a8 drivers/mmc/mmci.c      Pierre Ossman       2006-11-21  1735  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1736  	spin_lock_init(&host->lock);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1737  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1738  	writel(0, host->base + MMCIMASK0);
6ea9cdf39 drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1739  
6ea9cdf39 drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1740  	if (variant->mmcimask1)
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1741  		writel(0, host->base + MMCIMASK1);
6ea9cdf39 drivers/mmc/host/mmci.c Patrice Chotard     2018-01-18  1742  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1743  	writel(0xfff, host->base + MMCICLEAR);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1744  
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1745  	/*
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1746  	 * If:
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1747  	 * - not using DT but using a descriptor table, or
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1748  	 * - using a table of descriptors ALONGSIDE DT, or
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1749  	 * look up these descriptors named "cd" and "wp" right here, fail
b320303d1 drivers/mmc/host/mmci.c Linus Walleij       2018-09-19  1750  	 * silently of these do not exist
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1751  	 */
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1752  	if (!np) {
89168b489 drivers/mmc/host/mmci.c Linus Walleij       2014-10-02  1753  		ret = mmc_gpiod_request_cd(mmc, "cd", 0, false, 0, NULL);
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1754  		if (ret == -EPROBE_DEFER)
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1755  			goto clk_disable;
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1756  
89168b489 drivers/mmc/host/mmci.c Linus Walleij       2014-10-02  1757  		ret = mmc_gpiod_request_ro(mmc, "wp", 0, false, 0, NULL);
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1758  		if (ret == -EPROBE_DEFER)
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1759  			goto clk_disable;
ce437aa45 drivers/mmc/host/mmci.c Linus Walleij       2014-08-27  1760  	}
890014469 drivers/mmc/host/mmci.c Russell King        2009-07-09  1761  
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1762  	ret = devm_request_irq(&dev->dev, dev->irq[0], mmci_irq, IRQF_SHARED,
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1763  			DRIVER_NAME " (cmd)", host);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1764  	if (ret)
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1765  		goto clk_disable;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1766  
dfb85185b drivers/mmc/host/mmci.c Russell King        2012-05-03  1767  	if (!dev->irq[1])
2686b4b40 drivers/mmc/host/mmci.c Linus Walleij       2010-10-19  1768  		host->singleirq = true;
2686b4b40 drivers/mmc/host/mmci.c Linus Walleij       2010-10-19  1769  	else {
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1770  		ret = devm_request_irq(&dev->dev, dev->irq[1], mmci_pio_irq,
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1771  				IRQF_SHARED, DRIVER_NAME " (pio)", host);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1772  		if (ret)
ef289982f drivers/mmc/host/mmci.c Ulf Hansson         2014-03-17  1773  			goto clk_disable;
2686b4b40 drivers/mmc/host/mmci.c Linus Walleij       2010-10-19  1774  	}
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1775  
8cb281557 drivers/mmc/host/mmci.c Linus Walleij       2011-01-24  1776  	writel(MCI_IRQENABLE, host->base + MMCIMASK0);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1777  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1778  	amba_set_drvdata(dev, mmc);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1779  
c8ebae370 drivers/mmc/host/mmci.c Russell King        2011-01-11  1780  	dev_info(&dev->dev, "%s: PL%03x manf %x rev%u at 0x%08llx irq %d,%d (pio)\n",
c8ebae370 drivers/mmc/host/mmci.c Russell King        2011-01-11  1781  		 mmc_hostname(mmc), amba_part(dev), amba_manf(dev),
c8ebae370 drivers/mmc/host/mmci.c Russell King        2011-01-11  1782  		 amba_rev(dev), (unsigned long long)dev->res.start,
c8ebae370 drivers/mmc/host/mmci.c Russell King        2011-01-11  1783  		 dev->irq[0], dev->irq[1]);
c8ebae370 drivers/mmc/host/mmci.c Russell King        2011-01-11  1784  
c8ebae370 drivers/mmc/host/mmci.c Russell King        2011-01-11  1785  	mmci_dma_setup(host);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1786  
2cd976c46 drivers/mmc/host/mmci.c Ulf Hansson         2011-12-13  1787  	pm_runtime_set_autosuspend_delay(&dev->dev, 50);
2cd976c46 drivers/mmc/host/mmci.c Ulf Hansson         2011-12-13  1788  	pm_runtime_use_autosuspend(&dev->dev);
1c3be369c drivers/mmc/host/mmci.c Russell King        2011-08-14  1789  
8c11a94d8 drivers/mmc/host/mmci.c Russell King        2010-12-28  1790  	mmc_add_host(mmc);
8c11a94d8 drivers/mmc/host/mmci.c Russell King        2010-12-28  1791  
6f2d3c89d drivers/mmc/host/mmci.c Ulf Hansson         2014-12-11  1792  	pm_runtime_put(&dev->dev);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1793  	return 0;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1794  
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1795   clk_disable:
ac940938d drivers/mmc/host/mmci.c Julia Lawall        2012-08-26  1796  	clk_disable_unprepare(host->clk);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1797   host_free:
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1798  	mmc_free_host(mmc);
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1799  	return ret;
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1800  }
^1da177e4 drivers/mmc/mmci.c      Linus Torvalds      2005-04-16  1801  

:::::: The code at line 1507 was first introduced by commit
:::::: ae94cafe293343c2680c638c7af8499d708e4d71 mmc: mmci: Add DT bindings for signal direction

:::::: TO: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
:::::: CC: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux