mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-06 00:39:48 +00:00
ARM: davinci: dm365-evm: use cell nvmem lookup for mac address
We now support nvmem lookups and cell definitions for machine code. Add relevant data structures for the mac-address stored in at24 EEPROM. Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
This commit is contained in:
parent
651022382c
commit
d3f12777e6
1 changed files with 25 additions and 0 deletions
|
@ -24,6 +24,7 @@
|
||||||
#include <linux/mtd/partitions.h>
|
#include <linux/mtd/partitions.h>
|
||||||
#include <linux/slab.h>
|
#include <linux/slab.h>
|
||||||
#include <linux/mtd/rawnand.h>
|
#include <linux/mtd/rawnand.h>
|
||||||
|
#include <linux/nvmem-provider.h>
|
||||||
#include <linux/input.h>
|
#include <linux/input.h>
|
||||||
#include <linux/spi/spi.h>
|
#include <linux/spi/spi.h>
|
||||||
#include <linux/spi/eeprom.h>
|
#include <linux/spi/eeprom.h>
|
||||||
|
@ -203,6 +204,27 @@ static struct platform_device davinci_aemif_device = {
|
||||||
.num_resources = ARRAY_SIZE(davinci_aemif_resources),
|
.num_resources = ARRAY_SIZE(davinci_aemif_resources),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct nvmem_cell_info davinci_nvmem_cells[] = {
|
||||||
|
{
|
||||||
|
.name = "macaddr",
|
||||||
|
.offset = 0x7f00,
|
||||||
|
.bytes = ETH_ALEN,
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct nvmem_cell_table davinci_nvmem_cell_table = {
|
||||||
|
.nvmem_name = "1-00500",
|
||||||
|
.cells = davinci_nvmem_cells,
|
||||||
|
.ncells = ARRAY_SIZE(davinci_nvmem_cells),
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct nvmem_cell_lookup davinci_nvmem_cell_lookup = {
|
||||||
|
.nvmem_name = "1-00500",
|
||||||
|
.cell_name = "macaddr",
|
||||||
|
.dev_id = "davinci_emac.1",
|
||||||
|
.con_id = "mac-address",
|
||||||
|
};
|
||||||
|
|
||||||
static struct at24_platform_data eeprom_info = {
|
static struct at24_platform_data eeprom_info = {
|
||||||
.byte_len = (256*1024) / 8,
|
.byte_len = (256*1024) / 8,
|
||||||
.page_size = 64,
|
.page_size = 64,
|
||||||
|
@ -781,6 +803,9 @@ static __init void dm365_evm_init(void)
|
||||||
if (ret)
|
if (ret)
|
||||||
pr_warn("%s: GPIO init failed: %d\n", __func__, ret);
|
pr_warn("%s: GPIO init failed: %d\n", __func__, ret);
|
||||||
|
|
||||||
|
nvmem_add_cell_table(&davinci_nvmem_cell_table);
|
||||||
|
nvmem_add_cell_lookups(&davinci_nvmem_cell_lookup, 1);
|
||||||
|
|
||||||
evm_init_i2c();
|
evm_init_i2c();
|
||||||
davinci_serial_init(dm365_serial_device);
|
davinci_serial_init(dm365_serial_device);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue