diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2012-04-19 21:32:05 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2012-04-19 21:32:05 +0000 |
commit | da2cc2c79a4478ea98fd7e78ab3dfd53c2586198 (patch) | |
tree | fda8cb1863cd63826e57e2075bf40e1e1159755c /target/linux/ar71xx/patches-3.2/401-mtd-physmap-add-lock-unlock.patch | |
parent | 9854d6fb7f6d9c6e83408816cc65645ffa09d633 (diff) | |
download | mtk-20170518-da2cc2c79a4478ea98fd7e78ab3dfd53c2586198.zip mtk-20170518-da2cc2c79a4478ea98fd7e78ab3dfd53c2586198.tar.gz mtk-20170518-da2cc2c79a4478ea98fd7e78ab3dfd53c2586198.tar.bz2 |
ar71xx: nuke 3.2 support
SVN-Revision: 31360
Diffstat (limited to 'target/linux/ar71xx/patches-3.2/401-mtd-physmap-add-lock-unlock.patch')
-rw-r--r-- | target/linux/ar71xx/patches-3.2/401-mtd-physmap-add-lock-unlock.patch | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/target/linux/ar71xx/patches-3.2/401-mtd-physmap-add-lock-unlock.patch b/target/linux/ar71xx/patches-3.2/401-mtd-physmap-add-lock-unlock.patch deleted file mode 100644 index 61c3384..0000000 --- a/target/linux/ar71xx/patches-3.2/401-mtd-physmap-add-lock-unlock.patch +++ /dev/null @@ -1,94 +0,0 @@ ---- a/drivers/mtd/maps/physmap.c -+++ b/drivers/mtd/maps/physmap.c -@@ -29,6 +29,66 @@ struct physmap_flash_info { - struct map_info map[MAX_RESOURCES]; - }; - -+static struct platform_device *physmap_map2pdev(struct map_info *map) -+{ -+ return (struct platform_device *) map->map_priv_1; -+} -+ -+static void physmap_lock(struct map_info *map) -+{ -+ struct platform_device *pdev; -+ struct physmap_flash_data *physmap_data; -+ -+ pdev = physmap_map2pdev(map); -+ physmap_data = pdev->dev.platform_data; -+ physmap_data->lock(pdev); -+} -+ -+static void physmap_unlock(struct map_info *map) -+{ -+ struct platform_device *pdev; -+ struct physmap_flash_data *physmap_data; -+ -+ pdev = physmap_map2pdev(map); -+ physmap_data = pdev->dev.platform_data; -+ physmap_data->unlock(pdev); -+} -+ -+static map_word physmap_flash_read_lock(struct map_info *map, unsigned long ofs) -+{ -+ map_word ret; -+ -+ physmap_lock(map); -+ ret = inline_map_read(map, ofs); -+ physmap_unlock(map); -+ -+ return ret; -+} -+ -+static void physmap_flash_write_lock(struct map_info *map, map_word d, -+ unsigned long ofs) -+{ -+ physmap_lock(map); -+ inline_map_write(map, d, ofs); -+ physmap_unlock(map); -+} -+ -+static void physmap_flash_copy_from_lock(struct map_info *map, void *to, -+ unsigned long from, ssize_t len) -+{ -+ physmap_lock(map); -+ inline_map_copy_from(map, to, from, len); -+ physmap_unlock(map); -+} -+ -+static void physmap_flash_copy_to_lock(struct map_info *map, unsigned long to, -+ const void *from, ssize_t len) -+{ -+ physmap_lock(map); -+ inline_map_copy_to(map, to, from, len); -+ physmap_unlock(map); -+} -+ - static int physmap_flash_remove(struct platform_device *dev) - { - struct physmap_flash_info *info; -@@ -140,6 +200,13 @@ static int physmap_flash_probe(struct pl - - simple_map_init(&info->map[i]); - -+ if (physmap_data->lock && physmap_data->unlock) { -+ info->map[i].read = physmap_flash_read_lock; -+ info->map[i].write = physmap_flash_write_lock; -+ info->map[i].copy_from = physmap_flash_copy_from_lock; -+ info->map[i].copy_to = physmap_flash_copy_to_lock; -+ } -+ - probe_type = rom_probe_types; - if (physmap_data->probe_type == NULL) { - for (; info->mtd[i] == NULL && *probe_type != NULL; probe_type++) ---- a/include/linux/mtd/physmap.h -+++ b/include/linux/mtd/physmap.h -@@ -26,6 +26,8 @@ struct physmap_flash_data { - unsigned int width; - int (*init)(struct platform_device *); - void (*exit)(struct platform_device *); -+ void (*lock)(struct platform_device *); -+ void (*unlock)(struct platform_device *); - void (*set_vpp)(struct platform_device *, int); - unsigned int nr_parts; - unsigned int pfow_base; |