Lines Matching refs:sharpsl
65 struct sharpsl_nand *sharpsl = mtd_to_sharpsl(mtd); in sharpsl_nand_hwcontrol() local
75 writeb((readb(sharpsl->io + FLASHCTL) & ~0x17) | bits, sharpsl->io + FLASHCTL); in sharpsl_nand_hwcontrol()
84 struct sharpsl_nand *sharpsl = mtd_to_sharpsl(mtd); in sharpsl_nand_dev_ready() local
85 return !((readb(sharpsl->io + FLASHCTL) & FLRYBY) == 0); in sharpsl_nand_dev_ready()
90 struct sharpsl_nand *sharpsl = mtd_to_sharpsl(mtd); in sharpsl_nand_enable_hwecc() local
91 writeb(0, sharpsl->io + ECCCLRR); in sharpsl_nand_enable_hwecc()
96 struct sharpsl_nand *sharpsl = mtd_to_sharpsl(mtd); in sharpsl_nand_calculate_ecc() local
97 ecc_code[0] = ~readb(sharpsl->io + ECCLPUB); in sharpsl_nand_calculate_ecc()
98 ecc_code[1] = ~readb(sharpsl->io + ECCLPLB); in sharpsl_nand_calculate_ecc()
99 ecc_code[2] = (~readb(sharpsl->io + ECCCP) << 2) | 0x03; in sharpsl_nand_calculate_ecc()
100 return readb(sharpsl->io + ECCCNTR) != 0; in sharpsl_nand_calculate_ecc()
112 struct sharpsl_nand *sharpsl; in sharpsl_nand_probe() local
121 sharpsl = kzalloc(sizeof(struct sharpsl_nand), GFP_KERNEL); in sharpsl_nand_probe()
122 if (!sharpsl) in sharpsl_nand_probe()
133 sharpsl->io = ioremap(r->start, resource_size(r)); in sharpsl_nand_probe()
134 if (!sharpsl->io) { in sharpsl_nand_probe()
141 this = (struct nand_chip *)(&sharpsl->chip); in sharpsl_nand_probe()
148 platform_set_drvdata(pdev, sharpsl); in sharpsl_nand_probe()
153 writeb(readb(sharpsl->io + FLASHCTL) | FLWP, sharpsl->io + FLASHCTL); in sharpsl_nand_probe()
156 this->IO_ADDR_R = sharpsl->io + FLASHIO; in sharpsl_nand_probe()
157 this->IO_ADDR_W = sharpsl->io + FLASHIO; in sharpsl_nand_probe()
193 iounmap(sharpsl->io); in sharpsl_nand_probe()
196 kfree(sharpsl); in sharpsl_nand_probe()
205 struct sharpsl_nand *sharpsl = platform_get_drvdata(pdev); in sharpsl_nand_remove() local
208 nand_release(nand_to_mtd(&sharpsl->chip)); in sharpsl_nand_remove()
210 iounmap(sharpsl->io); in sharpsl_nand_remove()
213 kfree(sharpsl); in sharpsl_nand_remove()