21 #define cpld_write_nolock(channel, reg, val) \
22 bootrom_write((channel), CPLD_MAP_REG(reg, channel), val)
31 spin_unlock_irqrestore(&channel->
card->bootrom_lock, flags);
41 unsigned long addr = channel->
card->bootrom_addr;
65 unsigned long addr = channel->
card->bootrom_addr;
89 unsigned long addr = channel->
card->bootrom_addr;
111 unsigned long addr = channel->
card->bootrom_addr;
116 if (bit != lastbit) {
146 unsigned long addr = channel->
card->bootrom_addr;
165 serialrom_write_bit(channel, 0);
166 serialrom_write_bit(channel, 1);
167 serialrom_write_bit(channel, 1);
168 serialrom_write_bit(channel, 0);
170 for (i = 0x20;
i; i >>= 1)
171 serialrom_write_bit(channel, address & i ? 1 : 0);
174 for (i = 0x8000;
i; i >>= 1)
175 val |= (serialrom_read_bit(channel) ? i : 0);
187 spin_unlock_irqrestore(&channel->
card->bootrom_lock, flags);
207 spin_unlock_irqrestore(&channel->
card->bootrom_lock, flags);
224 spin_unlock_irqrestore(&channel->
card->bootrom_lock, flags);
234 unsigned long addr = channel->
card->bootrom_addr,
flags;
251 serialrom_write_bit(channel, 1);
255 for (i = 0; i < 4; i++, reg >>= 1)
256 serialrom_write_bit(channel, reg & 1);
257 for (i = 0; i < 3; i++)
258 serialrom_write_bit(channel, 0);
261 for (i = 0; i < 8; i++)
262 val += (serialrom_read_bit(channel) << i);
274 spin_unlock_irqrestore(&channel->
card->bootrom_lock,
flags);
281 unsigned long addr = channel->
card->bootrom_addr,
flags;
300 serialrom_write_bit(channel, 0);
304 for (i = 0; i < 4; i++) {
305 serialrom_write_bit(channel, reg & 1);
308 for (i = 0; i < 3; i++)
309 serialrom_write_bit(channel, 0);
312 for (i = 0; i < 5; i++) {
313 serialrom_write_bit(channel, val & 1);
316 for (i = 0; i < 3; i++)
317 serialrom_write_bit(channel, 0);
329 spin_unlock_irqrestore(&channel->
card->bootrom_lock,
flags);