Lines Matching refs:shared

51 	struct flchip_shared *shared;  in lpddr_cmdset()  local
81 shared = kmalloc(sizeof(struct flchip_shared) * lpddr->numchips, in lpddr_cmdset()
83 if (!shared) { in lpddr_cmdset()
92 shared[i].writing = shared[i].erasing = NULL; in lpddr_cmdset()
93 mutex_init(&shared[i].lock); in lpddr_cmdset()
98 chip->priv = &shared[i]; in lpddr_cmdset()
210 struct flchip_shared *shared = chip->priv; in get_chip() local
212 mutex_lock(&shared->lock); in get_chip()
213 contender = shared->writing; in get_chip()
225 mutex_unlock(&shared->lock); in get_chip()
240 mutex_lock(&shared->lock); in get_chip()
254 if (mode == FL_ERASING && shared->erasing in get_chip()
255 && shared->erasing->oldstate == FL_ERASING) { in get_chip()
256 mutex_unlock(&shared->lock); in get_chip()
267 shared->writing = chip; in get_chip()
269 shared->erasing = chip; in get_chip()
270 mutex_unlock(&shared->lock); in get_chip()
337 struct flchip_shared *shared = chip->priv; in put_chip() local
338 mutex_lock(&shared->lock); in put_chip()
339 if (shared->writing == chip && chip->oldstate == FL_READY) { in put_chip()
341 shared->writing = shared->erasing; in put_chip()
342 if (shared->writing && shared->writing != chip) { in put_chip()
344 struct flchip *loaner = shared->writing; in put_chip()
346 mutex_unlock(&shared->lock); in put_chip()
354 shared->erasing = NULL; in put_chip()
355 shared->writing = NULL; in put_chip()
356 } else if (shared->erasing == chip && shared->writing != chip) { in put_chip()
364 mutex_unlock(&shared->lock); in put_chip()
368 mutex_unlock(&shared->lock); in put_chip()